コード例 #1
0
ファイル: Context.cpp プロジェクト: mini-tbnn/engine
void Context::Destroy()
{
#if !defined(FINAL) && defined(WIN32)
	DestroyConsole();
#endif

	LogMessageL("Destroyed context");
}
コード例 #2
0
EXPORT_C void CBaseSmsActiveSocketWatcher::StoreMsgL(CSmsMessage* aSmsMessage, TBool aCheckForSID)
	{
	BIOWATCHERLOG(iWatcherLog.Printf(_L("Bio: StoreMsgL: %S"), &iBioMsgText));

	CleanupStack::PushL(aSmsMessage);

	CMsvSession* session = CMsvSession::OpenSyncL(*this);
	CleanupStack::PushL(session);

	BIOWATCHERLOG(LogMessageL(*aSmsMessage));
	// The trap error code is ignored here. We already have loaded the settings
	// in the SetupL method. Any catastrophic failure would be reported later
	// when the message store is attempted.
	TRAP_IGNORE(RestoreSettingsL(*session));

	PreStoreActionL(*session, *aSmsMessage);

	CMsvEntry* msvEntry = session->GetEntryL(KMsvGlobalInBoxIndexEntryId);
	CleanupStack::PushL(msvEntry);
	TInt systemDrive = RFs::GetSystemDrive();
  	TInt driveUnit = session->CurrentDriveL();
  	 
  	TVolumeInfo volumeInfo;
  	User::LeaveIfError(iFs.Volume(volumeInfo, driveUnit));
  	 
  	 
  	BIOWATCHERLOG(iWatcherLog.Printf(_L("BioNbs: driveUnit: %d "),driveUnit));
  	BIOWATCHERLOG(iWatcherLog.Printf(_L("BioNbs: volumeInfo  : %d"), volumeInfo.iFree));
  	BIOWATCHERLOG(iWatcherLog.Printf(_L("BioNbs: threshold level= : %d"), KSmsThresholdDiskSpaceValue));
 
 
  	//Check if  non-system drive has enough space to store the message
  	if (driveUnit != systemDrive ) 
  	  	{
  	  	BIOWATCHERLOG(iWatcherLog.Printf(_L8("Low Memory")));
  	  	
  	  	TInt value;
  	  	TInt err = RProperty::Get(KUidSystemCategory,KUidPSDiskSpaceMonitorKeyType, value);
  	  	
  	  	BIOWATCHERLOG(iWatcherLog.Printf(_L("RProperty Get Value: %d "),err));
		
		if (volumeInfo.iFree < KSmsThresholdDiskSpaceValue)
  	  	 	{
  	  	 	if(value == ESmsDiskSpaceAvailable)
  	  	 	    {
  	  	 	    User::LeaveIfError(RProperty::Set(KUidSystemCategory,KUidPSDiskSpaceMonitorKeyType, ESmsDiskSpaceFull));
  	  	 	    }
  	  	 	User::Leave(KErrDiskFull);
  	  	 	}
  	  	 else
  	  	 	{
  	  	 	if(value == ESmsDiskSpaceFull)
  	  	 	    {
  	  	 	    User::LeaveIfError(RProperty::Set(KUidSystemCategory,KUidPSDiskSpaceMonitorKeyType, ESmsDiskSpaceAvailable));
  	  	 	    }
  	  	 	}
  	  	}


	if( CanStoreMessage() )
		{
		TBool retainReplaceMessage = ETrue;
		ReplaceTypeMessageL(*msvEntry, *aSmsMessage, retainReplaceMessage);
		CleanupStack::Pop(3, aSmsMessage); 
		CleanupStack::PushL(session); //guaranteed not leave because of the 3 previous POPs
		CleanupStack::PushL(msvEntry);

		if( retainReplaceMessage )
			CreateMessageL(*msvEntry, aSmsMessage, aCheckForSID); //destroys the CSmsMessage
		else
			delete aSmsMessage; //destroy the CSmsMessage as CreateMessageL() would have done

		CleanupStack::PopAndDestroy(2, session);
		}
	else
		{
		CleanupStack::PopAndDestroy(3, aSmsMessage);
		BIOWATCHERLOG(iWatcherLog.Printf(_L8("Not Creating Message")));
		}
	}