97 } |
97 } |
98 //Connect to database server session |
98 //Connect to database server session |
99 User::LeaveIfError(iDbsSession.Connect()); |
99 User::LeaveIfError(iDbsSession.Connect()); |
100 //Attempt to open the database |
100 //Attempt to open the database |
101 TInt error = iLocalizedTimeZoneDb.Open(iDbsSession,KTzLocalizationDbName,KTzLocalizationDbSecurityPolicy); |
101 TInt error = iLocalizedTimeZoneDb.Open(iDbsSession,KTzLocalizationDbName,KTzLocalizationDbSecurityPolicy); |
|
102 if (error == KErrNotFound) |
|
103 { |
|
104 //Database file doesn't exist. Attempt to create a new one. |
|
105 error = iLocalizedTimeZoneDb.Create(iDbsSession,KTzLocalizationDbName,KTzLocalizationDbSecurityPolicy); |
|
106 if (error == KErrNone) |
|
107 { |
|
108 User::LeaveIfError(CreateFrequentlyUsedZoneTableL()); |
|
109 User::LeaveIfError(CreateUserCityTableL()); |
|
110 } |
|
111 } |
102 User::LeaveIfError(error); |
112 User::LeaveIfError(error); |
|
113 // Check if both tables are created. |
|
114 TRAP(error, iLocalizedTimeZoneDb.ColSetL(KCZTableName)); |
|
115 if (error) |
|
116 { |
|
117 User::LeaveIfError(CreateFrequentlyUsedZoneTableL()); |
|
118 } |
|
119 TRAP(error, iLocalizedTimeZoneDb.ColSetL(KUCTableName)); |
|
120 if (error) |
|
121 { |
|
122 User::LeaveIfError(CreateUserCityTableL()); |
|
123 } |
103 } |
124 } |
104 |
125 |
105 /** |
126 /** |
106 Destructor |
127 Destructor |
107 Closes the database tables, the database and the database session |
128 Closes the database tables, the database and the database session |