示例#1
0
        static DocState SetupStates(StateMachine machine)
        {
            var docState   = new DocState();
            var docIdState = new DocIdState();

            docState.Transfers.Add(docIdState, new DocStateTransfer()
            {
                NewState = docIdState, PreviousState = docState
            });

            var docIdEndState = new DocIdEndState();

            docIdState.Transfers.Add(docIdEndState, new DocIdTransfer()
            {
                NewState = docIdEndState, PreviousState = docIdState
            });

            var docIdEndTransfer = new DocIdEndTransfer()
            {
                PreviousState = docIdEndState
            };
            var spamState = new SpamState(docIdEndTransfer, machine);

            docIdEndTransfer.NewState = spamState;
            docIdEndState.Transfers.Add(spamState, docIdEndTransfer);

            spamState.Transfers.Add(docState, new DocEndTransfer()
            {
                NewState = docState, PreviousState = spamState
            });

            return(docState);
        }
示例#2
0
 public DocState()
 {
     StateName = "DocState";
     var docIdState = new DocIdState();
     //Transfers.Add(docIdState, new DocStateTransfer() {NewState = docIdState, PreviousState = this});
 }