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