private void EnterState(FileDownloadStateId stateId) { Logger.LogInfo("下载模块进入状态:" + stateId.ToString()); if (null != mCurState) { mCurState.Exit(); } System.Type newStateType = mAllState [(int)stateId]; mCurState = System.Activator.CreateInstance(newStateType) as IDownloadState; mCurState.Init(mData, EnterState, OnFinish, OnError); mCurState.Enter(); }
private void RegistState(FileDownloadStateId stateId, System.Type type) { mAllState.Add((int)stateId, type); }