os/persistentdata/loggingservices/eventlogger/LogServ/inc/LogServSqlStrings.h
author sl@SLION-WIN7.fritz.box
Fri, 15 Jun 2012 03:10:57 +0200
changeset 0 bde4ae8d615e
permissions -rw-r--r--
First public contribution.
sl@0
     1
// Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
sl@0
     2
// All rights reserved.
sl@0
     3
// This component and the accompanying materials are made available
sl@0
     4
// under the terms of "Eclipse Public License v1.0"
sl@0
     5
// which accompanies this distribution, and is available
sl@0
     6
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
sl@0
     7
//
sl@0
     8
// Initial Contributors:
sl@0
     9
// Nokia Corporation - initial contribution.
sl@0
    10
//
sl@0
    11
// Contributors:
sl@0
    12
//
sl@0
    13
// Description:
sl@0
    14
//
sl@0
    15
sl@0
    16
#ifndef __LOGSERVSQLSTRINGS_H__
sl@0
    17
#define __LOGSERVSQLSTRINGS_H__
sl@0
    18
sl@0
    19
#include <e32std.h>
sl@0
    20
sl@0
    21
#ifdef __LOGSRV_STRINGS__
sl@0
    22
	#define CONST_LIT8(var, val) extern const TLitC8<sizeof(val)> var = {sizeof(val) - 1, val}
sl@0
    23
	#define CONST_LIT16(var, val) extern const TLitC16<sizeof(L##val)/2> var = {sizeof(L##val)/2 - 1, L##val}
sl@0
    24
	#define CONST_TTEXT(var, val) extern const TText var = val
sl@0
    25
#else
sl@0
    26
	#define CONST_LIT8(var, val) extern const TLitC8<sizeof(val)> var
sl@0
    27
	#define CONST_LIT16(var, val) extern const TLitC16<sizeof(L##val)/2> var
sl@0
    28
	#define CONST_TTEXT(var, val) extern const TText var
sl@0
    29
#endif
sl@0
    30
sl@0
    31
#ifdef _UNICODE
sl@0
    32
	#define CONST_LIT(var, val) CONST_LIT16(var, val)
sl@0
    33
#else
sl@0
    34
	#define CONST_LIT(var, val) CONST_LIT8(var, val)
sl@0
    35
#endif
sl@0
    36
sl@0
    37
const  TInt KMaxSqlStringLength = 1024;
sl@0
    38
extern TBuf<KMaxSqlStringLength> TheSql;
sl@0
    39
sl@0
    40
/////////// Create tables
sl@0
    41
#ifdef SYMBIAN_ENABLE_EVENTLOGGER_DUALSIM	
sl@0
    42
CONST_LIT(KLogTableEventString, "CREATE TABLE Event (Id INTEGER NOT NULL, EType UNSIGNED TINYINT NOT NULL, Remote CHAR(%d), Direction SMALLINT, ETime DATE NOT NULL, DType TINYINT NOT NULL, Duration UNSIGNED INTEGER, Status SMALLINT, Subject CHAR(%d), Number CHAR(%d), Contact INTEGER, Link UNSIGNED INTEGER, Data LONG VARBINARY, Recent TINYINT, Duplicate INTEGER, Flag1 BIT NOT NULL, Flag2 BIT NOT NULL, Flag3 BIT NOT NULL, Flag4 BIT NOT NULL, SimId UNSIGNED INTEGER)");
sl@0
    43
#else
sl@0
    44
CONST_LIT(KLogTableEventString, "CREATE TABLE Event (Id INTEGER NOT NULL, EType UNSIGNED TINYINT NOT NULL, Remote CHAR(%d), Direction SMALLINT, ETime DATE NOT NULL, DType TINYINT NOT NULL, Duration UNSIGNED INTEGER, Status SMALLINT, Subject CHAR(%d), Number CHAR(%d), Contact INTEGER, Link UNSIGNED INTEGER, Data LONG VARBINARY, Recent TINYINT, Duplicate INTEGER, Flag1 BIT NOT NULL, Flag2 BIT NOT NULL, Flag3 BIT NOT NULL, Flag4 BIT NOT NULL)");
sl@0
    45
#endif
sl@0
    46
CONST_LIT(KLogTableTypeString, "CREATE TABLE Type (Id SMALLINT NOT NULL, UId UNSIGNED INTEGER NOT NULL, Description CHAR(%d) NOT NULL, Enabled BIT)");
sl@0
    47
CONST_LIT(KLogTableStringString, "CREATE TABLE String (Id SMALLINT NOT NULL, TEXT CHAR(%d) NOT NULL)");
sl@0
    48
CONST_LIT(KLogTableConfigString, "CREATE TABLE Config (Size UNSIGNED SMALLINT NOT NULL, Recent UNSIGNED TINYINT NOT NULL, Age UNSIGNED INTEGER NOT NULL)");
sl@0
    49
/////////// Config table: operations 
sl@0
    50
CONST_LIT(KLogSqlInsertConfigString, "INSERT INTO Config VALUES (%d, %d, %d)") ;
sl@0
    51
/////////// Type table: operations
sl@0
    52
CONST_LIT(KLogSqlUpdateTypeString, "UPDATE Type SET Description = '%S', Enabled = %d WHERE UId = %d") ;
sl@0
    53
CONST_LIT(KLogSqlDeleteTypeString, "DELETE FROM Type WHERE UId = %d") ;
sl@0
    54
//
sl@0
    55
CONST_LIT(KLogSqlSelectOldestString, "SELECT Id FROM Event WHERE ETime < #%S#") ;
sl@0
    56
CONST_LIT(KLogSqlDeleteOldestString, "DELETE FROM Event WHERE ETime < #%S#") ;
sl@0
    57
CONST_LIT(KLogSqlSelectAllRecent,    "SELECT Id, Recent, Duplicate FROM Event") ;
sl@0
    58
CONST_LIT(KLogSqlSelectDuplicateString, "SELECT Id, Duplicate FROM EVENT WHERE Recent = %d %S AND NOT Id = %d ORDER BY Id DESC") ;
sl@0
    59
CONST_LIT(KLogSqlGetRecent, "SELECT Id FROM Event WHERE Recent = %d AND Duplicate IS NULL ORDER BY Id DESC") ;
sl@0
    60
CONST_LIT(KLogSqlRemoveDuplicateEvents, "UPDATE Event SET Recent = NULL, Duplicate = NULL WHERE ");
sl@0
    61
//The next 4 queries must have exactly the same set of columns in the list => see CLogServViewBase::InitializeColumnsL()
sl@0
    62
_LIT(KLogViewSelectColList, "SELECT Id, EType, Flag1, Flag2, Flag3, Flag4 FROM Event");
sl@0
    63
_LIT(KLogSqlEventViewString,        "%S %S ORDER BY Id DESC") ;
sl@0
    64
_LIT(KLogSqlAllRecentViewString,    "%S WHERE Recent IS NOT NULL AND Duplicate IS NULL %S ORDER BY Id DESC") ;
sl@0
    65
_LIT(KLogSqlRecentViewString,       "%S WHERE Recent=%d AND Duplicate IS NULL %S ORDER BY Id DESC") ;
sl@0
    66
_LIT(KLogSqlDuplicateViewString2,   "%S WHERE Duplicate=%d %S ORDER BY Id DESC");
sl@0
    67
// Selects all duplicate events for a particular recent list
sl@0
    68
_LIT(KLogSqlSelectAllDuplicatesString, "SELECT Id, Recent, Duplicate FROM Event WHERE Recent = %d AND Duplicate IS NOT NULL");
sl@0
    69
// Get duplicate events
sl@0
    70
CONST_LIT(KLogSqlDuplicateViewString, "SELECT Id, EType, Duplicate, Flag1, Flag2, Flag3, Flag4 FROM Event WHERE Duplicate = %d %S ORDER BY Id DESC");
sl@0
    71
// Remove duplicate event
sl@0
    72
CONST_LIT(KLogSqlRemoveDuplicateString, "UPDATE Event SET Recent = NULL, Duplicate = NULL WHERE Id = %d AND Duplicate = %d");
sl@0
    73
//Field names
sl@0
    74
CONST_LIT(KLogNameEventString, "Event") ;
sl@0
    75
CONST_LIT(KLogNameTypeString, "Type");
sl@0
    76
CONST_LIT(KLogNameStringString, "String");
sl@0
    77
CONST_LIT(KLogNameConfigString, "Config");
sl@0
    78
CONST_LIT(KLogFieldIdString, "Id");
sl@0
    79
CONST_LIT(KLogFieldEventTypeString, "EType");
sl@0
    80
CONST_LIT(KLogFieldEventRemoteString, "Remote");
sl@0
    81
CONST_LIT(KLogFieldEventDirectionString, "Direction");
sl@0
    82
CONST_LIT(KLogFieldEventTimeString, "ETime");
sl@0
    83
CONST_LIT(KLogFieldEventDTypeString, "DType");
sl@0
    84
CONST_LIT(KLogFieldEventDurationString, "Duration");
sl@0
    85
CONST_LIT(KLogFieldEventStatusString,  "Status");
sl@0
    86
CONST_LIT(KLogFieldEventSubjectString,  "Subject");
sl@0
    87
CONST_LIT(KLogFieldEventNumberString, "Number");
sl@0
    88
CONST_LIT(KLogFieldEventContactString, "Contact");
sl@0
    89
CONST_LIT(KLogFieldEventLinkString, "Link");
sl@0
    90
CONST_LIT(KLogFieldEventDataString, "Data");
sl@0
    91
CONST_LIT(KLogFieldEventRecentString, "Recent");
sl@0
    92
CONST_LIT(KLogFieldEventDuplicateString, "Duplicate");
sl@0
    93
CONST_LIT(KLogFieldEventFlagString, "Flag%d");
sl@0
    94
#ifdef SYMBIAN_ENABLE_EVENTLOGGER_DUALSIM	
sl@0
    95
CONST_LIT(KLogFieldEventSimId, "SimId");
sl@0
    96
#endif
sl@0
    97
CONST_LIT(KLogFieldTypeIdString, "Id");
sl@0
    98
CONST_LIT(KLogFieldTypeUidString, "UId");
sl@0
    99
CONST_LIT(KLogFieldTypeEnabledString, "Enabled");
sl@0
   100
CONST_LIT(KLogFieldTypeDescriptionString, "Description");
sl@0
   101
CONST_LIT(KLogFieldStringIdString, "Id");
sl@0
   102
CONST_LIT(KLogFieldStringTextString, "Text");
sl@0
   103
CONST_LIT(KLogFieldConfigSizeString, "Size");
sl@0
   104
CONST_LIT(KLogFieldConfigRecentString, "Recent");
sl@0
   105
CONST_LIT(KLogFieldConfigAgeString, "Age");
sl@0
   106
sl@0
   107
CONST_LIT(KLogNameEventIdx1, "Index1") ;
sl@0
   108
CONST_LIT(KLogFlagString, "Flag");
sl@0
   109
CONST_LIT(KIdEqStr, "Id=");
sl@0
   110
CONST_LIT(KDuplicateEqStr, "Duplicate=");
sl@0
   111
CONST_LIT(KLogOpenBracket, "(");
sl@0
   112
CONST_LIT(KLogCloseBracket, ")");
sl@0
   113
CONST_LIT(KLogAnd, " AND ");
sl@0
   114
CONST_LIT(KLogOr, " OR ");
sl@0
   115
CONST_LIT(KLogWhere, " WHERE ");
sl@0
   116
CONST_LIT(KLogStringPredicate, "%S='%S'");
sl@0
   117
CONST_LIT(KLogNumberPredicate, "%S=%d");
sl@0
   118
CONST_LIT(KLogUNumberPredicate, "%S=%u");
sl@0
   119
CONST_LIT(KLogFlagPredicate, "%S%d=%d");
sl@0
   120
CONST_LIT(KLogNullPredicate, "%S IS NULL");
sl@0
   121
CONST_LIT(KLogLikePredicate, "%S LIKE '*%S'");
sl@0
   122
CONST_LIT(KLogDateBeforePredicate, "%S<=#%S#");
sl@0
   123
CONST_LIT(KLogDateAfterPredicate, "%S>=#%S#");
sl@0
   124
sl@0
   125
//
sl@0
   126
CONST_LIT(KLogUnknownString, "Unknown") ;
sl@0
   127
sl@0
   128
CONST_LIT(KLogServ, "LogServ");
sl@0
   129
sl@0
   130
#ifdef SYSLIBS_TEST
sl@0
   131
//Complex recent list with a lot of fields. These are the fields values.
sl@0
   132
CONST_LIT(KLogRctTListRemoteParty, "TestRemParty");
sl@0
   133
CONST_LIT(KLogRctTListDirection, "TestDir");
sl@0
   134
CONST_LIT(KLogRctTListStatus, "TestStatus");
sl@0
   135
CONST_LIT(KLogRctTListNumber, "11111999");
sl@0
   136
const TInt KLogRctTListDurationType = 123;
sl@0
   137
const TUint KLogRctTListFlags = 0x9;
sl@0
   138
#ifdef SYMBIAN_ENABLE_EVENTLOGGER_DUALSIM	
sl@0
   139
const TUint KLogRctTListSimId = 891711;
sl@0
   140
#endif
sl@0
   141
const TInt KLogRctTListId = 97;
sl@0
   142
#endif//SYSLIBS_TEST
sl@0
   143
sl@0
   144
#endif