smbmusicapmainplayerfilterprocessduplicateplaylist.cpp
来自「symbian」· C++ 代码 · 共 678 行 · 第 1/2 页
CPP
678 行
#endif
if(EEditRequestDuplicatePlaylist == aKind
|| ESearchRequestGetListItems == aKind)
{
iEvent = EFilterProcessDuplicatePlaylistEventSyncServerCancel;
DoSequence();
}
else
{
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist | 81;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist::RequestCancel() Unknown Event :%d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelHigh, KLogFmt, aKind);
}
}
/**
* 僐儞僥儞僣宯僀儀儞僩捠抦
*
* @param[in] aEvent 僐儞僥儞僣宯僀儀儞僩
*/
//void CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist::NotifyContentsEventL(TSmbMusicAPSyncEngineContentsEvent& /* aEvent */)
// {
//#ifdef __DEBUG_LOG_MAINPLAYER__
// TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist | 90;
// _LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist::NotifyContentsEventL() iState:%d");
// SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt, iState);
//#endif
// if(ESmbMusicAPSyncEngineUpdateDuplicateInList == aEvent.iType)
// {
// SetResultIndex(aEvent.iInfo.iParam2);
// iEvent = EFilterProcessDuplicatePlaylistEventSyncServerNotify;
// DoSequence();
// }
// }
/**
* 僐儅儞僪張棟傪幚峴偡傞
* @param 側偟
* @return 側偟
*/
void CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist::DoSequence()
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist |100;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist::DoSequence() iState:%d iEvent:%d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt, iState, iEvent);
#endif
switch(iState)
{
case EFilterProcessDuplicatePlaylistStateWaitStart: // 張棟奐巒懸偪
{
if(EFilterProcessDuplicatePlaylistEventStart == iEvent)
{
// SyncServerController偵捠抦僆僽僓乕僶搊榐傪峴偆
// iSyncServer.SetSyncServerNotifyContentsObserver(this);
TInt result = iSyncServer.DuplicatePlaylist(iPlaylistTitle, iListHandle, iIndex, EOwnerType_Filter, iRequestId, *this);
if(KErrNone == result)
{
iState = EFilterProcessDuplicatePlaylistStateDuplicatePlaylist;
return;
}
else
{
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist |101;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist::DoSequence() DuplicatePlaylist() Error :%d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelHigh, KLogFmt, result);
iResult = result;
iState = EFilterProcessDuplicatePlaylistStateErr;
// NextState();
}
}
else
{
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist |102;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist::DoSequence() Unmatch Event iState:%d iEvent:%d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelHigh, KLogFmt, iState, iEvent);
iState = EFilterProcessDuplicatePlaylistStateErr;
// __ASSERT_DEBUG(EFalse, PANIC(9100044));
}
}
break;
case EFilterProcessDuplicatePlaylistStateDuplicatePlaylist: // 僾儗僀儕僗僩暋惢拞
{
switch(iEvent)
{
case EFilterProcessDuplicatePlaylistEventSyncServerComplete:
{
// if(EFalse != iSetResultIndex)
// {
// if(0 <= iResultIndex)
// {
iTopIndex = 0;
iCount = iSyncServer.GetItemCount(iListHandle);
TInt result = iSyncServer.GetListItemsFromList(iListHandle, iTopIndex, iCount, EOwnerType_Filter, iRequestId, *this);
if(KErrNone == result)
{
iState = EFilterProcessDuplicatePlaylistStateGetListItems;
return;
}
else
{
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle |103;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::DoSequence() GetListItemsFromList() Error :%d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelHigh, KLogFmt, result);
iResult = result;
iState = EFilterProcessDuplicatePlaylistStateErr;
// NextState();
}
// }
// else
// {
// TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist |103;
// _LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist::DoSequence() Illeagal Index :%d");
// SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelHigh, KLogFmt, iResultIndex);
//
// iResult = KErrGeneral;
// iState = EFilterProcessDuplicatePlaylistStateErr;
// NextState();
// }
// }
// else
// {
// iState = EFilterProcessDuplicatePlaylistStateWaitResult; // 寢壥捠抦懸偪
// }
}
break;
case EFilterProcessDuplicatePlaylistEventSyncServerCancel:
{
iResult = KErrCancel;
iState = EFilterProcessDuplicatePlaylistStateErr;
// NextState();
}
break;
case EFilterProcessDuplicatePlaylistEventSyncServerErr:
{
iState = EFilterProcessDuplicatePlaylistStateErr;
// NextState();
}
break;
// Add-S PTX-824懳墳懳墳(TRK-828)丂暯壀
case EFilterProcessDuplicatePlaylistEventSyncServerErrDiskFull:
{
iObserver.HandleDialogCommandL( ECloseModelessDialog,
R_DL_MUSIC_MAIN_FLT_PROGRESS_DUPLICATE);
iObserver.HandleDialogCommandL(EShowWarningModelessDialog,
R_DL_MUSIC_MAIN_FLT_DISK_FULL_ERR);
iState = EFilterProcessDuplicatePlaylistStateErr;
NextState();
}
break;
// Add-E PTX-824懳墳懳墳(TRK-828)丂暯壀
// case EFilterProcessDuplicatePlaylistEventSyncServerNotify:
// {
// // 壗傕偟側偄
// }
// break;
default:
{
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist |104;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist::DoSequence() Unmatch Event iState:%d iEvent:%d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelHigh, KLogFmt, iState, iEvent);
iState = EFilterProcessDuplicatePlaylistStateErr;
// __ASSERT_DEBUG(EFalse, PANIC(9100045));
}
break;
}
}
break;
// case EFilterProcessDuplicatePlaylistStateWaitResult: // 嶌惉寢壥捠抦懸偪
// {
// if(EFilterProcessDuplicatePlaylistEventSyncServerNotify == iEvent)
// {
// if(0 <= iResultIndex)
// {
// iTopIndex = 0;
// iCount = iSyncServer.GetItemCount(iListHandle);
// TInt result = iSyncServer.GetListItemsFromList(iListHandle, iTopIndex, iCount, EOwnerType_Filter, iRequestId, *this);
//
// if(KErrNone == result)
// {
// iState = EFilterProcessDuplicatePlaylistStateGetListItems;
// }
// else
// {
// TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist |105;
// _LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist::DoSequence() GetListItemsFromList() Error :%d");
// SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelHigh, KLogFmt, result);
//
// iResult = result;
// iState = EFilterProcessDuplicatePlaylistStateErr;
// NextState();
// }
// }
// else
// {
// TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist |106;
// _LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist::DoSequence() Illeagal Index :%d");
// SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelHigh, KLogFmt, iResultIndex);
//
// iResult = KErrGeneral;
// iState = EFilterProcessDuplicatePlaylistStateErr;
// NextState();
// }
// }
// else
// {
// TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist |107;
// _LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist::DoSequence() Unmatch Event iState:%d iEvent:%d");
// SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelHigh, KLogFmt, iState, iEvent);
// }
// }
// break;
case EFilterProcessDuplicatePlaylistStateGetListItems: // 傾僀僥儉庢摼拞
{
switch(iEvent)
{
case EFilterProcessDuplicatePlaylistEventSyncServerComplete:
{
iResult = KErrNone;
iState = EFilterProcessDuplicatePlaylistStateEnd;
// NextState();
}
break;
case EFilterProcessDuplicatePlaylistEventSyncServerCancel:
{
iResult = KErrCancel;
iState = EFilterProcessDuplicatePlaylistStateErr;
// NextState();
}
break;
case EFilterProcessDuplicatePlaylistEventSyncServerErr:
{
iState = EFilterProcessDuplicatePlaylistStateErr;
// NextState();
}
break;
default:
{
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist |105;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist::DoSequence() Unmatch Event iState:%d iEvent:%d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelHigh, KLogFmt, iState, iEvent);
iState = EFilterProcessDuplicatePlaylistStateErr;
// __ASSERT_DEBUG(EFalse, PANIC(9100046));
}
break;
}
}
break;
case EFilterProcessDuplicatePlaylistStateErr: // 僄儔乕廔椆
{
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist |106;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist::DoSequence() Invaild State iState:%d iEvent:%d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt, iState, iEvent);
}
break;
case EFilterProcessDuplicatePlaylistStateIdle: // 枹張棟
case EFilterProcessDuplicatePlaylistStateEnd: // 張棟廔椆
default:
{
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist |107;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist::DoSequence() Invaild State iState:%d iEvent:%d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelHigh, KLogFmt, iState, iEvent);
}
break;
}
NextState();
}
/**
* 偡傋偰偺僐儅儞僪幚峴偑廔傢偭偨偐偳偆偐妋擣偡傞
* @param 側偟
* @return 廔椆敾掕(ETrue:姰椆嵪 EFalse丗枹姰椆)
*/
TBool CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist::IsSequenceFinished()
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist |110;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist::IsSequenceFinished() iState:%d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt, iState);
#endif
TBool finish = EFalse;
switch(iState)
{
case EFilterProcessDuplicatePlaylistStateEnd:
case EFilterProcessDuplicatePlaylistStateErr:
finish = ETrue;
break;
default:
break;
}
return finish;
}
/**
* 張棟寢壥偺僀儞僨僢僋僗傪曐懚偡傞
* @param[in] aIndex 僀儞僨僢僋僗
* @return 側偟
*/
//void CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist::SetResultIndex(TInt aIndex)
// {
//#ifdef __DEBUG_LOG_MAINPLAYER__
// TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist |120;
// _LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist::SetResultIndex() iState:%d");
// SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt, iState);
//#endif
// iResultIndex = aIndex;
// iSetResultIndex = ETrue;
// }
SEMCJ_NAMESPACE_END
// end of SmbMusicAPMainPlayerFilterListProcessDuplicatePlaylist.cpp
/* Copyright (C) 2007 Sony Ericsson Mobile Communications Japan, Inc. */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?