xdmprotocols/XcapProtocol/XcapCache/Server/src/XcapCacheServer.cpp
changeset 12 e6a66db4e9d0
parent 0 c8caa15ef882
equal deleted inserted replaced
0:c8caa15ef882 12:e6a66db4e9d0
   170     TInt error = lex.Val( ret );
   170     TInt error = lex.Val( ret );
   171     return error == KErrNone ? ret : error;
   171     return error == KErrNone ? ret : error;
   172     }
   172     }
   173 
   173 
   174 // ---------------------------------------------------------
   174 // ---------------------------------------------------------
   175 // CXcapCacheServer::DateL
   175 // CXcapCacheServer::Date
   176 // 
   176 // 
   177 // ---------------------------------------------------------
   177 // ---------------------------------------------------------
   178 //
   178 //
   179 HBufC* CXcapCacheServer::DateL()
   179 TBuf<KDateMaxSize> CXcapCacheServer::Date()
   180     {
   180     {
   181     TTime time;
   181     TTime time;
   182     TBuf<KDateMaxSize> dateBuffer;
   182     TBuf<KDateMaxSize> dateBuffer;
   183     dateBuffer.SetLength( 0 );
   183     dateBuffer.SetLength( 0 );
   184     time.HomeTime();
   184 	time.HomeTime();
   185     time.FormatL( dateBuffer, KCacheDateFormat );
   185     time.FormatL( dateBuffer, KCacheDateFormat );
   186     HBufC* heapDate = dateBuffer.AllocL();
   186     return dateBuffer;
   187     return heapDate;
   187     }
   188     }
   188 
   189 
   189 // ---------------------------------------------------------
   190 // ---------------------------------------------------------
   190 // CXcapCacheServer::DateTime
   191 // CXcapCacheServer::DateTimeL
   191 // 
   192 // 
   192 // ---------------------------------------------------------
   193 // ---------------------------------------------------------
   193 //
   194 //
   194 TBuf<KDateTimeMaxSize> CXcapCacheServer::DateTime()
   195 HBufC* CXcapCacheServer::DateTimeL()
       
   196     {
   195     {
   197     TTime time;
   196     TTime time;
   198     TBuf<KDateMaxSize> dateBuffer;
   197     TBuf<KDateMaxSize> dateBuffer;
   199     time.HomeTime();
   198 	time.HomeTime();
   200     time.FormatL( dateBuffer, KDateFormatFileName );
   199     time.FormatL( dateBuffer, KDateFormatFileName );
   201     TBuf<KDateMaxSize> timeBuffer;
   200     TBuf<KDateMaxSize> timeBuffer;
   202     time.HomeTime();
   201 	time.HomeTime();
   203     time.FormatL( timeBuffer, KTimeFormatFileName );
   202 	time.FormatL( timeBuffer, KTimeFormatFileName );
   204     TBuf<KDateTimeMaxSize> buffer;
   203     TBuf<KDateTimeMaxSize> buffer;
   205     buffer.SetLength( 0 );
   204     buffer.SetLength( 0 );
   206     buffer.Copy( dateBuffer );
   205     buffer.Copy( dateBuffer );
   207     buffer.Append( timeBuffer );
   206     buffer.Append( timeBuffer );
   208     HBufC* ret = HBufC::NewL( buffer.Length() );
   207     return buffer;
   209     ret->Des().Copy( buffer );
   208     }
   210     return ret;
   209 
   211     }
   210 // ---------------------------------------------------------
   212 
   211 // CXcapCacheServer::DateTime
   213 // ---------------------------------------------------------
   212 // 
   214 // CXcapCacheServer::DateTimeL
   213 // ---------------------------------------------------------
   215 // 
   214 //
   216 // ---------------------------------------------------------
   215 TBuf<KDateTimeMaxSize> CXcapCacheServer::DateTime( const TTime& aTime )
   217 //
       
   218 HBufC* CXcapCacheServer::DateTimeL( const TTime& aTime )
       
   219     {
   216     {
   220     TBuf<KDateTimeMaxSize> dateTimeBuffer;
   217     TBuf<KDateTimeMaxSize> dateTimeBuffer;
   221     aTime.FormatL( dateTimeBuffer, KDateTimeFormat );
   218     aTime.FormatL( dateTimeBuffer, KDateTimeFormat );
   222     HBufC* heapDateTime = dateTimeBuffer.AllocL();
   219     return dateTimeBuffer;
   223     return heapDateTime;
       
   224     }
   220     }
   225     
   221     
   226 // ----------------------------------------------------------
   222 // ----------------------------------------------------------
   227 // CXcapCacheServer::MaxCacheSize
   223 // CXcapCacheServer::MaxCacheSize
   228 // 
   224 // 
   260 	aEntryCount = entryCount;
   256 	aEntryCount = entryCount;
   261 	return total;
   257 	return total;
   262     }
   258     }
   263 
   259 
   264 // ---------------------------------------------------------
   260 // ---------------------------------------------------------
   265 // CXcapCacheServer::RandomStringL
   261 // CXcapCacheServer::RandomString
   266 // 
   262 // 
   267 // ---------------------------------------------------------
   263 // ---------------------------------------------------------
   268 //
   264 //
   269 HBufC* CXcapCacheServer::RandomStringL()
   265 TBuf<KRandStringLength> CXcapCacheServer::RandomString()
   270     {
   266     {
   271     const TInt charCount( sizeof( KRandomStringCharArray ) / sizeof( TInt ) );
   267     const TInt charCount( sizeof( KRandomStringCharArray ) / sizeof( TInt ) );
   272     TBuf<KRandStringLength> buffer;
   268     TBuf<KRandStringLength> buffer;
   273     buffer.Zero();
   269     buffer.Zero();
   274     for( TInt i = 0; i < KRandStringLength;i++ )
   270     for( TInt i = 0; i < KRandStringLength;i++ )
   275         {
   271         {
   276         TInt index = Math::Random() % charCount;
   272         TInt index = Math::Random() % charCount;
   277         buffer.Append( ( TChar )KRandomStringCharArray[index] );
   273         buffer.Append( ( TChar )KRandomStringCharArray[index] );
   278         }
   274         }
   279     HBufC* randomHeapBuffer = buffer.AllocL();
   275     return buffer;
   280     return randomHeapBuffer;
   276     }
   281     }
   277 
   282 
   278 // ---------------------------------------------------------
   283 // ---------------------------------------------------------
   279 // CXcapCacheServer::Time
   284 // CXcapCacheServer::TimeL
   280 // 
   285 // 
   281 // ---------------------------------------------------------
   286 // ---------------------------------------------------------
   282 //
   287 //
   283 TBuf<KDateMaxSize> CXcapCacheServer::Time()
   288 HBufC* CXcapCacheServer::TimeL()
       
   289     {
   284     {
   290     TTime time;
   285     TTime time;
   291     TBuf<KDateMaxSize> timeBuffer;
   286     TBuf<KDateMaxSize> timeBuffer;
   292     timeBuffer.SetLength( 0 );
   287 	timeBuffer.SetLength( 0 );
   293     time.HomeTime();
   288 	time.HomeTime();
   294     time.FormatL( timeBuffer, KCacheTimeFormat );
   289 	time.FormatL( timeBuffer, KCacheTimeFormat );
   295     HBufC* heapTime = timeBuffer.AllocL();
   290     return timeBuffer;
   296     return heapTime;
       
   297     }
   291     }
   298 
   292 
   299 // ---------------------------------------------------------
   293 // ---------------------------------------------------------
   300 // CXcapCacheServer::DescriptorCast
   294 // CXcapCacheServer::DescriptorCast
   301 //
   295 //
   338     {
   332     {
   339     return CacheIndexAdmin;
   333     return CacheIndexAdmin;
   340     }
   334     }
   341 
   335 
   342 // ----------------------------------------------------
   336 // ----------------------------------------------------
   343 // CXcapCacheServer::StartThreadL
   337 // CXcapCacheServer::StartThread
   344 // 
   338 // 
   345 // ----------------------------------------------------
   339 // ----------------------------------------------------
   346 //
   340 //
   347 EXPORT_C TInt CXcapCacheServer::StartThreadL()
   341 EXPORT_C TInt CXcapCacheServer::StartThread()
   348     {
   342     {
   349     User::LeaveIfError( User::RenameThread( KXcapCacheServerName ) );
   343 	User::LeaveIfError( User::RenameThread( KXcapCacheServerName ) );
   350     CActiveScheduler* scheduler = new ( ELeave ) CActiveScheduler;
   344 	CActiveScheduler* scheduler = new ( ELeave ) CActiveScheduler;
   351     CleanupStack::PushL( scheduler );
   345 	CleanupStack::PushL( scheduler );
   352     CActiveScheduler::Install( scheduler );
   346 	CActiveScheduler::Install( scheduler );
   353     User::LeaveIfError( FsSession.Connect() );
   347     User::LeaveIfError( FsSession.Connect() );
   354     CleanupClosePushL( FsSession );
   348     CleanupClosePushL( FsSession );
   355     CXcapCacheServer::NewLC();
   349     CXcapCacheServer::NewLC();
   356     CacheIndex = CXcapCacheIndex::NewL();
   350     CacheIndex = CXcapCacheIndex::NewL();
   357     CleanupStack::PushL( CacheIndex );
   351     CleanupStack::PushL( CacheIndex );
   358     CacheIndexAdmin = CXcapCacheIndexAdmin::NewL();
   352     CacheIndexAdmin = CXcapCacheIndexAdmin::NewL();
   359     CleanupStack::PushL( CacheIndexAdmin );
   353     CleanupStack::PushL( CacheIndexAdmin );
   360     RProcess::Rendezvous( KErrNone );
   354     RProcess::Rendezvous( KErrNone );
   361     #ifdef _DEBUG
   355 	#ifdef _DEBUG
   362         CXcapCacheServer::WriteToLog( _L8( "XcapCacheServer fully running" ) );
   356 	    CXcapCacheServer::WriteToLog( _L8( "XcapCacheServer fully running" ) );
       
   357 	#endif
       
   358 	CActiveScheduler::Start();
       
   359 	#ifdef _DEBUG
       
   360 	    CXcapCacheServer::WriteToLog( _L8( "XcapCacheServer closing..." ) );
   363     #endif
   361     #endif
   364     CActiveScheduler::Start();
   362 	CleanupStack::PopAndDestroy( 5 );  //CacheIndexAdmin, CacheIndex, server, FsSession, scheduler
   365     #ifdef _DEBUG
   363 	return KErrNone;
   366         CXcapCacheServer::WriteToLog( _L8( "XcapCacheServer closing..." ) );
       
   367     #endif
       
   368     CleanupStack::PopAndDestroy( 5 );  //CacheIndexAdmin, CacheIndex, server, FsSession, scheduler
       
   369     return KErrNone;
       
   370     }
   364     }
   371 
   365 
   372 // ----------------------------------------------------
   366 // ----------------------------------------------------
   373 // CXcapCacheServer::WriteToLog
   367 // CXcapCacheServer::WriteToLog
   374 // 
   368 //