📄 smbmusicapsyncservercontentscontroller.cpp
字号:
service = new(ELeave)CSmbMusicAPSyncServerContentsServiceDeleteItem(
iLog, iModel, *this, *iContentsFunc, *this, *iTraceManager, aMessage
);
break;
case ESmbMusicAPSyncServerFuncGetSongID:
// 嬋ID傪庢摼
service = new(ELeave)CSmbMusicAPSyncServerContentsServiceGetSongID(
iLog, iModel, *this, *iContentsFunc, *this, *iTraceManager, aMessage
);
break;
case ESmbMusicAPSyncServerFuncGetPlaySongInfo:
// 嵞惗嬋忣曬傪庢摼
service = new(ELeave)CSmbMusicAPSyncServerContentsServiceGetPlaySongInfo(
iLog, iModel, *this, *iContentsFunc, *this, *iTraceManager, aMessage
);
break;
case ESmbMusicAPSyncServerFuncGetPrevList:
// 慗堏尦儕僗僩忣曬傪庢摼
service = new(ELeave)CSmbMusicAPSyncServerContentsServiceGetPrevList(
iLog, iModel, *this, *iContentsFunc, *this, *iTraceManager, aMessage
);
break;
case ESmbMusicAPSyncServerFuncGetListType:
// 儕僗僩庬暿傪庢摼
service = new(ELeave)CSmbMusicAPSyncServerContentsServiceGetListType(
iLog, iModel, *this, *iContentsFunc, *this, *iTraceManager, aMessage
);
break;
case ESmbMusicAPSyncServerFuncGetActiveFocus:
// 儗僕儏乕儉忣曬偵娷傑傟傞儕僗僩偺昞帵帪偵偍偗傞傾僋僥傿僽僼僅乕僇僗傪庢摼
service = new(ELeave)CSmbMusicAPSyncServerContentsServiceGetActiveFocus(
iLog, iModel, *this, *iContentsFunc, *this, *iTraceManager, aMessage
);
break;
case ESmbMusicAPSyncServerFuncGetListTitle:
// 巜掕偝傟偨儕僗僩偺僞僀僩儖傪暥帤楍偱庢摼偡傞
service = new(ELeave)CSmbMusicAPSyncServerContentsServiceGetListTitle(
iLog, iModel, *this, *iContentsFunc, *this, *iTraceManager, aMessage
);
break;
case ESmbMusicAPSyncServerFuncGetItemCount:
// 巜掕偝傟偨儕僗僩撪偺傾僀僥儉悢傪庢摼偡傞
service = new(ELeave)CSmbMusicAPSyncServerContentsServiceGetItemCount(
iLog, iModel, *this, *iContentsFunc, *this, *iTraceManager, aMessage
);
break;
case ESmbMusicAPSyncServerFuncGetItemContentsID:
// 巜掕偝傟偨傾僀僥儉偺僐儞僥儞僣ID傪庢摼偡傞
service = new(ELeave)CSmbMusicAPSyncServerContentsServiceGetContentsID(
iLog, iModel, *this, *iContentsFunc, *this, *iTraceManager, aMessage
);
break;
case ESmbMusicAPSyncServerFuncGetOriginalPlayListForInsert:
// 僆儕僕僫儖僾儗僀儕僗僩堦棗傪庢摼偡傞
service = new(ELeave)CSmbMusicAPSyncServerContentsServiceGetOriginalPLList(
iLog, iModel, *this, *iContentsFunc, *this, *iTraceManager, aMessage
);
break;
// ADD-S PTX824 k3-sugimoto
case ESmbMusicAPSyncServerFuncDupelicatePlaylist:
// 僾儗僀儕僗僩傪暋惢偡傞
service = new(ELeave)CSmbMusicAPSyncServerContentsServicePLDuplicate(
iLog, iModel, *this, *iContentsFunc, *this, *iTraceManager, aMessage
);
break;
case ESmbMusicAPSyncServerFuncGetCpList:
// 儔僀僙儞僗峏怴偺昁梫側CP儕僗僩堦棗傪庢摼偡傞
service = new(ELeave)CSmbMusicAPSyncServerContentsServiceGetCpList(
iLog, iModel, *this, *iContentsFunc, *this, *iTraceManager, aMessage
);
break;
case ESmbMusicAPSyncServerFuncGetSongLimitInfo:
// 巜掕嬋偺惂尷忣曬傪庢摼偡傞
service = new(ELeave)CSmbMusicAPSyncServerContentsServiceGetSongLimitInfo(
iLog, iModel, *this, *iContentsFunc, *this, *iTraceManager, aMessage
);
break;
case ESmbMusicAPSyncServerFuncGetImageTypeInfo:
// 巜掕偝傟偨庬暿偺夋憸忣曬傪庢摼偡傞
service = new(ELeave)CSmbMusicAPSyncServerContentsServiceGetImageTypeInfo(
iLog, iModel, *this, *iContentsFunc, *this, *iTraceManager, aMessage
);
break;
// ADD-E PTX824 k3-sugimoto
default:
break;
}
return service;
}
//
/**
* 僐儅儞僪偵懳偡傞僒乕價僗慖掕
*
* @param[in] aCommand 僒乕僶撪僐儅儞僪
*
* @return 僐儅儞僪偵懳墳偡傞僐儞僥儞僣僒乕價僗(NULL偺応崌偼懳墳僒乕價僗尒偮偐傜偢)
**/
CSmbMusicAPSyncServerContentsServiceBase* CSmbMusicAPSyncServerContentsController::SelectServiceL(
TSmbMusicAPSyncServerInternalCommandPkg aCommand
)
{
#ifdef __SMBMUSICAPSYNCSERVER_ENABLEALLLOG__
TUint32 logCode = EMusicAPSyncServerClassNumber_ContentsController | EMusicAPSyncServerLocationNumber24;
_LIT(KContentsControllerSelectServiceL01, "SyncServerContentsController::SelectServiceL Command(0x%08x)");
SmbMusicAPSyncServerLog(iLog, logCode, ELogLevelNormal, KContentsControllerSelectServiceL01, aCommand.iCommand);
#endif
CSmbMusicAPSyncServerContentsServiceBase* service(NULL);
// 僒乕價僗敾暿
switch(aCommand.iCommand)
{
case ESmbMsuicAPSyncServerIndexFromIHandle: // Index偐傜Iterator僴儞僪儖傪庢摼偡傞
service = new(ELeave)CSmbMusicAPSyncServerContentsServiceIndexFromIHandle(
iLog, iModel, *this, *iContentsFunc, *this, *iTraceManager, iDmyMessage
);
break;
case ESmbMsuicAPSyncServerHandleFromIndex: // Iterator僴儞僪儖偐傜Index傪庢摼偡傞
service = new(ELeave)CSmbMusicAPSyncServerContentsServiceHandleFromIndex(
iLog, iModel, *this, *iContentsFunc, *this, *iTraceManager, iDmyMessage
);
break;
case ESmbMsuicAPSyncServerCheckLineOut: // 僗僺乕僇/僀儎偺弌椡愭僠僃僢僋
break;
case ESmbMsuicAPSyncServerInsertMS: // MS憓擖
case ESmbMsuicAPSyncServerInsertSD: // SD憓擖
case ESmbMsuicAPSyncServerRemoveMS: // MS敳嫀
case ESmbMsuicAPSyncServerRemoveSD: // SD敳嫀
case ESmbMsuicAPSyncServerChangeExtMemState: // 奜晹儊儌儕偺忬懺曄峏捠抦
case ESmbMusicAPSyncServerDeleteResumeInfo: // 儗僕儏乕儉忣曬嶍彍
// 儗僕儏乕儉忣曬傪攋婞
service = new(ELeave)CSmbMusicAPSyncServerContentsServiceDeleteResumeInfo(
iLog, iModel, *this, *iContentsFunc, *this, *iTraceManager, iDmyMessage
);
break;
case ESmbMusicAPSyncServerSetResumeInfo: // 儗僕儏乕儉忣曬曐懚
// 儗僕儏乕儉忣曬傪惗惉
service = new(ELeave)CSmbMusicAPSyncServerContentsServiceSetResumeInfo(
iLog, iModel, *this, *iContentsFunc, *this, *iTraceManager, iDmyMessage
);
break;
case ESmbMsuicAPSyncServerIncrementPlaySongTimes: // 専嶕梡偺嵞惗夞悢傪峏怴偡傞
// 専嶕梡偺嵞惗夞悢傪峏怴
service = new(ELeave)CSmbMusicAPSyncServerContentsServiceIncrementPlaySongTimes(
iLog, iModel, *this, *iContentsFunc, *this, *iTraceManager, iDmyMessage
);
break;
case ESmbMusicAPSyncServerUpDateAvailableInfo: // 傾僀僥儉桳岠惈忣曬峏怴
// 傾僀僥儉桳岠惈忣曬峏怴
service = new(ELeave)CSmbMusicAPSyncServerContentsServiceUpdateItemAvailable(
iLog, iModel, *this, *iContentsFunc, *this, *iTraceManager, iDmyMessage
);
break;
// ADD-S 婜尷愗傟僒僽僗僋儕僾僔儑儞偺僌儗乕傾僂僩懳墳
case ESmbMsuicAPSyncServerDeleteCacheItem: // 傾僀僥儉僉儍僢僔儏攋婞
// 傾僀僥儉桳岠惈忣曬峏怴
service = new(ELeave)CSmbMusicAPSyncServerContentsServiceDeleteItemCache(
iLog, iModel, *this, *iContentsFunc, *this, *iTraceManager, iDmyMessage
);
break;
// ADD-E 婜尷愗傟僒僽僗僋儕僾僔儑儞偺僌儗乕傾僂僩懳墳
default:
break;
}
if (service != NULL)
{ // 奩摉僒乕價僗偑懚嵼偟偨応崌
// 僐儅儞僪僷僢働乕僕傪搉偡
service -> SetCommand(aCommand);
}
return service;
}
/**
* 僒乕價僗偺僉儍儞僙儖梫媮
*
* @param[in] aMessage 僋儔僀傾儞僩偐傜偺儊僢僙乕僕(僉儍儞僙儖梫媮)
**/
void CSmbMusicAPSyncServerContentsController::CancelService(const RMessage2& aMessage)
{
// MODIFY-S [iKeeper(TRK):10587] 僉儍儞僙儖弴偺僨僢僪儘僢僋栤戣懳張
TSmbMusicAPSyncServerFunction func(static_cast<TSmbMusicAPSyncServerFunction>(aMessage.Function() & ESmbMusicAPSyncServerFuncMaskFunction));
// MODIFY-E [iKeeper(TRK):10587] 僉儍儞僙儖弴偺僨僢僪儘僢僋栤戣懳張
// ADD-S [iKeeper(TRK):10587] 僉儍儞僙儖弴偺僨僢僪儘僢僋栤戣懳張
TInt reqId(aMessage.Function() & ESmbMusicAPSyncServerFuncMaskReqestId);
// ADD-E [iKeeper(TRK):10587] 僉儍儞僙儖弴偺僨僢僪儘僢僋栤戣懳張
#ifdef __SMBMUSICAPSYNCSERVER_ENABLEALLLOG__
TUint32 logCode = EMusicAPSyncServerClassNumber_ContentsController | EMusicAPSyncServerLocationNumber25;
_LIT(KContentsControllerCancelService01, "SyncServerContentsController::CancelService(0x%08x)");
SmbMusicAPSyncServerLog(iLog, logCode, ELogLevelNormal, KContentsControllerCancelService01, func);
#endif
// ADD-S [iKeeper(TRK):10587] 僉儍儞僙儖弴偺僨僢僪儘僢僋栤戣懳張
if (reqId == 0)
{ // 梫媮ID偑0偺応崌廬棃偺僉儍儞僙儖張棟傪幚峴偡傞丅
// ADD-E [iKeeper(TRK):10587] 僉儍儞僙儖弴偺僨僢僪儘僢僋栤戣懳張
if (CurrentService() != NULL)
{ // 尰嵼幚峴拞偺僒乕價僗偑懚嵼偡傞応崌
CSmbMusicAPSyncServerContentsServiceBase& service(*CurrentService());
if (service.CheckCancel(func) != EFalse)
{ // 尰嵼偺僒乕價僗偑僉儍儞僙儖懳徾偩偭偨応崌
service.CancelService();
aMessage.Complete(KErrNone);
ServiceCompleteCancel();
}
else
{ // 尰嵼偺僒乕價僗偑僉儍儞僙儖懳徾偱側偐偭偨応崌
TInt result = iServiceQueue -> CancelService(func);
#ifdef __SMBMUSICAPSYNCSERVER_ENABLEALLLOG__
logCode = EMusicAPSyncServerClassNumber_ContentsController | EMusicAPSyncServerLocationNumber26;
_LIT(KContentsControllerCancelService02, "SyncServerContentsController::CancelService Que::CancelService1(0x%08x):%d");
SmbMusicAPSyncServerLog(iLog, logCode, ELogLevelLowest, KContentsControllerCancelService02, func, result);
#endif
aMessage.Complete(result);
}
}
else
{ // 僒乕價僗枹幚峴偺応崌
TInt result = iServiceQueue -> CancelService(func);
#ifdef __SMBMUSICAPSYNCSERVER_ENABLEALLLOG__
logCode = EMusicAPSyncServerClassNumber_ContentsController | EMusicAPSyncServerLocationNumber27;
_LIT(KContentsControllerCancelService03, "SyncServerContentsController::CancelService Que::CancelService2(0x%08x):%d");
SmbMusicAPSyncServerLog(iLog, logCode, ELogLevelLowest, KContentsControllerCancelService03, func, result);
#endif
aMessage.Complete(result);
}
// ADD-S [iKeeper(TRK):10587] 僉儍儞僙儖弴偺僨僢僪儘僢僋栤戣懳張
}
else
{
CSession2* session(aMessage.Session());
if (CurrentService() != NULL)
{ // 尰嵼幚峴拞偺僒乕價僗偑懚嵼偡傞応崌
CSmbMusicAPSyncServerContentsServiceBase& service(*CurrentService());
if (service.CheckCancel(reqId, session) != EFalse)
{ // 尰嵼偺僒乕價僗偑僉儍儞僙儖懳徾偩偭偨応崌
service.CancelService();
aMessage.Complete(KErrNone);
ServiceCompleteCancel();
}
else
{ // 尰嵼偺僒乕價僗偑僉儍儞僙儖懳徾偱側偐偭偨応崌
TInt result = iServiceQueue -> CancelService(reqId, session);
#ifdef __SMBMUSICAPSYNCSERVER_ENABLEALLLOG__
logCode = EMusicAPSyncServerClassNumber_ContentsController | EMusicAPSyncServerLocationNumber28;
_LIT(KContentsControllerCancelService04, "SyncServerContentsController::CancelService Que::CancelService1(0x%04x, 0x%08x):%d");
SmbMusicAPSyncServerLog(iLog, logCode, ELogLevelLowest, KContentsControllerCancelService04, func, session, result);
#endif
aMessage.Complete(result);
}
}
else
{ // 僒乕價僗枹幚峴偺応崌
TInt result = iServiceQueue -> CancelService(reqId, session);
#ifdef __SMBMUSICAPSYNCSERVER_ENABLEALLLOG__
logCode = EMusicAPSyncServerClassNumber_ContentsController | EMusicAPSyncServerLocationNumber29;
_LIT(KContentsControllerCancelService05, "SyncServerContentsController::CancelService Que::CancelService2(0x%04x, 0x%08x):%d");
SmbMusicAPSyncServerLog(iLog, logCode, ELogLevelLowest, KContentsControllerCancelService05, func, session, result);
#endif
aMessage.Complete(result);
}
}
// ADD-E [iKeeper(TRK):10587] 僉儍儞僙儖弴偺僨僢僪儘僢僋栤戣懳張
}
/**
* 傾僾儕働乕僔儑儞偺廔椆張棟
**/
void CSmbMusicAPSyncServerContentsController::ServiceAllEnd()
{
iServiceQueue -> ServiceAllEnd();
iPLOrderManager -> Reset();
iTraceManager -> ResetWithoutResume();
iNotifyManager -> Reset();
// ADD-S [iKeeper(TRK):10028] 傾僾儕廔椆帪偵嵞惗嬋忣曬傪嶍彍偡傞張棟傪捛壛
iPlSongInfoManager -> ClearPlaySongData(NULL); // NULL偟偰偱曐帩偟偰偄傞忣曬慡偰傪嶍彍
// ADD-E [iKeeper(TRK):10028] 傾僾儕廔椆帪偵嵞惗嬋忣曬傪嶍彍偡傞張棟傪捛壛
iImageDataManager -> AllClear();
iObserveUpdateManager -> StopObservation(0); // 峏怴捠抦偺娔帇傪慡偰僉儍儞僙儖
}
// end of SmbMusicAPSyncServerContentsController.cpp
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -