⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 smbmusicapsyncservercontentsserviceplcommitorderitem.cpp

📁 索爱相关代码。实现功能是server。很有参考价值。代码很难弄到。symbian。
💻 CPP
📖 第 1 页 / 共 2 页
字号:


	// 懳徾僾儗僀儕僗僩嬋堦棗偺僴儞僪儖傪庢摼偡傞丅
	TInt targetListHandle = iManagers.PLOrderManager().GetTargetListHandle();

	// 僾儗僀儕僗僩嬋堦棗偺傾僀僥儉傪慡偰攋婞偡傞丅
	iScreenData.DeleteItem(targetListHandle);

	CSmbMusicAPSyncServerContentsList* contentsList = iScreenData.GetList(targetListHandle);

	if(contentsList)
		{
		// 捛壛懳徾偺僾儗僀儕僗僩偑嵞惗拞偺応崌偵偼丄儗僕儏乕儉忣曬傪嶍彍偡傞
		CSmbMusicMWLibListItem& listItem = contentsList->GetListItem();
		if(EFalse != iScreenData.CheckResume(listItem))
			{
			iModel.DeleteResume();
			}
		}

//  ADD-S  [iKeeper(TRK):11872] 屆偄夋憸忣曬偑庢摼偝傟偰偄偨栤戣偺懳張
	//  MW偵梫媮姰椆偟偨帪揰偱僉儍僢僔儏偝傟偰偄傞夋憸忣曬傪慡僋儕傾偡傞丅
	iManagers.ImageDataManager().AllClear();
//  ADD-E  [iKeeper(TRK):11872] 屆偄夋憸忣曬偑庢摼偝傟偰偄偨栤戣偺懳張
//  ADD-S  [iKeeper(TRK):12290] 嵞惗嬋忣曬偺僉儍僢僔儏偑僋儕傾偝傟偰偄側偄栤戣偺懳張
	//  MW偵梫媮姰椆偟偨帪揰偱僉儍僢僔儏偝傟偰偄傞嵞惗嬋忣曬傪僋儕傾偡傞丅
	//  偨偩偟僋儕傾偡傞偺偼搊榐夝彍嬋偑娷傑傟偰偄傞僾儗僀儕僗僩偵強懏偡傞嵞惗嬋忣曬偺傒丅
	iManagers.PlaySongInfoManager().ClearPlaySongData(&targetListHandle);
//  ADD-E  [iKeeper(TRK):12290] 嵞惗嬋忣曬偺僉儍僢僔儏偑僋儕傾偝傟偰偄側偄栤戣偺懳張

	iServiceState = EContentsServicePLCommitOrderItemStateCommitting;
	CSmbMusicAPSyncServerContentsServiceBase::Start();

#ifdef __SMBMUSICAPSYNCSERVER_ENABLEALLLOG__
	logCode = EMusicAPSyncServerClassNumber_ContentsServicePLCommitOrderItem | EMusicAPSyncServerLocationNumber05;
	_LIT(KServicePLCommitOrderItemStartServiceL04, "SyncServerContentsServicePLCommitOrderItem::StartServiceL End");
	SmbMusicAPSyncServerLog(iRLog, logCode, ELogLevelLowest, KServicePLCommitOrderItemStartServiceL04);
#endif

	return ESmbMusicAPSyncServerContetnsServiceStateContinue;
	}


/**
 *  僒乕價僗僄儔乕捠抦
 *
 *  @param[in]	aError	僄儔乕僐乕僪
 *
 *  @return	僒乕價僗張棟偺宲懕忬嫷
 **/
TSmbMusicAPSyncServerContentsServiceState CSmbMusicAPSyncServerContentsServicePLCommitOrderItem::ServiceErr(TInt aError)
	{
#ifdef __SMBMUSICAPSYNCSERVER_ENABLEALLLOG__
	TUint32 logCode = EMusicAPSyncServerClassNumber_ContentsServicePLCommitOrderItem | EMusicAPSyncServerLocationNumber06;
	_LIT(KServicePLCommitOrderItemServiceErr01, "SyncServerContentsServicePLCommitOrderItem::ServiceErr(%d)");
	SmbMusicAPSyncServerLog(iRLog, logCode, ELogLevelNormal, KServicePLCommitOrderItemServiceErr01, aError);
#endif

	//  僾儗僀儕僗僩暲懼姰椆梫媮偺栠傝偑僄儔乕偩偭偨応崌丄
	//  傾僾儕懁偱張棟偡傞偺偐丄僒乕僶偱儘乕儖僶僢僋偝偣傞偺偐嵞峫偺梋抧桳
	//  偲傝偁偊偢儘乕儖僶僢僋偝偣傞曽岦偱張棟
	TInt error(iManagers.PLOrderManager().RollbackOrderItem());
	if (error != KErrNone)
		{
		TUint32 logCode = EMusicAPSyncServerClassNumber_ContentsServicePLCommitOrderItem | EMusicAPSyncServerLocationNumber07;
		_LIT(KServicePLCommitOrderItemServiceErr02, "SyncServerContentsServicePLCommitOrderItem::ServiceErr RollbackOrderItem Error:%d");
		SmbMusicAPSyncServerLog(iRLog, logCode, ELogLevelNormal, KServicePLCommitOrderItemServiceErr02, error);
		}

	MessageComplete(aError);

	//  枹幚峴忬懺傊
	iServiceState = EContentsServicePLCommitOrderItemStateIdle;

	return ESmbMusicAPSyncServerContetnsServiceStateErr;
	}


/**
 *  僒乕價僗僉儍儞僙儖捠抦
 **/
void CSmbMusicAPSyncServerContentsServicePLCommitOrderItem::CancelService()
	{
#ifdef __SMBMUSICAPSYNCSERVER_ENABLEALLLOG__
	TUint32 logCode = EMusicAPSyncServerClassNumber_ContentsServicePLCommitOrderItem | EMusicAPSyncServerLocationNumber08;
	_LIT(KServicePLCommitOrderItemCancelService01, "SyncServerContentsServicePLCommitOrderItem::CancelService()");
	SmbMusicAPSyncServerLog(iRLog, logCode, ELogLevelLow, KServicePLCommitOrderItemCancelService01);
#endif

	switch(iServiceState)
		{
		case EContentsServicePLCommitOrderItemStateCommitting:	//  僾儗僀儕僗僩嬋弴曄峏寛掕梫媮拞
			{
			TInt error(KErrNone);
			//  僾儗僀儕僗僩嬋弴曄峏寛掕梫媮拞巭
			error = iManagers.PLOrderManager().CancelCommitOrderItem(iManagers.AppNotifyManager());
			if (error != KErrNone)
				{
#ifdef __SMBMUSICAPSYNCSERVER_ENABLEALLLOG__
				logCode = EMusicAPSyncServerClassNumber_ContentsServicePLCommitOrderItem | EMusicAPSyncServerLocationNumber09;
				_LIT(KServicePLCommitOrderItemCancelService02, "SyncServerContentsServicePLCommitOrderItem::CancelService CancelCommitOrderItem Error:%d");
				SmbMusicAPSyncServerLog(iRLog, logCode, ELogLevelNormal, KServicePLCommitOrderItemCancelService02, error);
#endif
				}
			}
			break;
		case EContentsServicePLCommitOrderItemStateIdle:		//  張棟柍偟
			break;
		default:
			{
			TUint32 logCode = EMusicAPSyncServerClassNumber_ContentsServicePLCommitOrderItem | EMusicAPSyncServerLocationNumber10;
			_LIT(KServicePLCommitOrderItemCancelService03, "SyncServerContentsServicePLCommitOrderItem::CancelService illegal default-route:%d");
			SmbMusicAPSyncServerLog(iRLog, logCode, ELogLevelHighest, KServicePLCommitOrderItemCancelService03, iServiceState);

			ASSERT(EFalse);
			}
			break;
		}

	MessageComplete(KErrCancel);

	//  枹幚峴忬懺傊
	iServiceState = EContentsServicePLCommitOrderItemStateIdle;

	if (IsActive() != EFalse)
		{
		CSmbMusicAPSyncServerContentsServiceBase::Cancel();
		}
	}


/**
 *  僒乕價僗宲懕
 *
 *  @return	僒乕價僗張棟偺宲懕忬嫷
 **/
TSmbMusicAPSyncServerContentsServiceState CSmbMusicAPSyncServerContentsServicePLCommitOrderItem::ContinueServiceL()
	{
#ifdef __SMBMUSICAPSYNCSERVER_ENABLEALLLOG__
	TUint32 logCode = EMusicAPSyncServerClassNumber_ContentsServicePLCommitOrderItem | EMusicAPSyncServerLocationNumber11;
	_LIT(KServicePLCommitOrderItemContinueServiceL01, "SyncServerContentsServicePLCommitOrderItem::ContinueServiceL()");
	SmbMusicAPSyncServerLog(iRLog, logCode, ELogLevelLow, KServicePLCommitOrderItemContinueServiceL01);
#endif

	switch(iServiceState)
		{
		case EContentsServicePLCommitOrderItemStateCommitting:	//  嬋弴曄峏寛掕梫媮拞
			{
			//  僾儗僀儕僗僩暲懼儅僱乕僕儍偵姰椆捠抦傪峴偆
			iManagers.PLOrderManager().CompleteOrderItem(iManagers.AppNotifyManager());

			//  枹幚峴忬懺傊
			iServiceState = EContentsServicePLCommitOrderItemStateIdle;

			MessageComplete(KErrNone);
			}
			break;
		case EContentsServicePLCommitOrderItemStateIdle:		//  張棟柍偟
		//  張棟柍偟忬懺偵ContinueService偑屇偽傟傞偙偲偼堎忢宯偱偁傞偨傔default摨條偵張棟偡傞丅
		default:
			{
			TUint32 logCode = EMusicAPSyncServerClassNumber_ContentsServicePLCommitOrderItem | EMusicAPSyncServerLocationNumber12;
			_LIT(KServicePLCommitOrderItemContinueServiceL02, "SyncServerContentsServicePLCommitOrderItem::ContinueServiceL illegal default-route:%d");
			SmbMusicAPSyncServerLog(iRLog, logCode, ELogLevelHighest, KServicePLCommitOrderItemContinueServiceL02, iServiceState);

			ASSERT(EFalse);
			}
			break;
		}

	return ESmbMusicAPSyncServerContetnsServiceStateEnd;
	}


// end of SmbMusicAPSyncServerContentsServicePLCommitOrderItem.cpp

/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -