DataConnection就是一个状态机,有下面这几个状态.

mDefaultState是其他几个状态的父状态,如果有其他几个状态无法处理的事件,那么就会给mDefaultState进行处理,初始化的状态是mInactiveState.

addState(mDefaultState);

addState(mInactiveState, mDefaultState);

addState(mActivatingState, mDefaultState);

addState(mActiveState, mDefaultState);

addState(mDisconnectingState, mDefaultState);

addState(mDisconnectingErrorCreatingConnection, mDefaultState);

setInitialState(mInactiveState);

在Dctracker的方法createDataConnection()中会调用DataConnection 的makeDataConnection()方法来创建Dataconnection对象,

public static DataConnection makeDataConnection(Phone phone, int id,DcTracker dct, DcTesterFailBringUpAll failBringUpAll,DcController dcc) {

DataConnection dc = new DataConnection(phone,

"DC-" + mInstanceNumber.incrementAndGet(), id, dct, failBringUpAll, dcc);

dc.start();

if (DBG) dc.log("Made " + dc.getName());

return dc;

}

results matching ""

    No results matching ""