tzservices/tzloc/src/TzLocalizationDbAccessor.cpp
changeset 35 13fd6fd25fe7
parent 0 2e3d3ce01487
child 46 eea20ed08f4b
equal deleted inserted replaced
29:6a787171e1de 35:13fd6fd25fe7
    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