コード例 #1
0
                protected internal override void TimeoutTransition(Events_ReceiveFSMContext context)
                {
                    Events_ReceiveFSM ctxt = context.Owner;


#if TRACE
                    Trace.WriteLine(
                        "TRANSITION   : Events_ReceiveFSM_SM.Receiving_Ready.TimeoutTransition()");
#endif

                    Events_ReceiveFSMState endState = context.State;

                    context.ClearState();

                    try
                    {
                        ctxt.cancelEventAction();
                        ctxt.SendAction("ConfirmEventRequest");
                        ctxt.stopEventTimerAction();
                    }
                    finally
                    {
                        context.State = endState;
                    }

                    return;
                }
コード例 #2
0
                protected internal override void ReceiveTransition(Events_ReceiveFSMContext context, QueryEvents msg, Receive.Body.ReceiveRec transportData)
                {
                    Events_ReceiveFSM ctxt = context.Owner;


#if TRACE
                    Trace.WriteLine(
                        "TRANSITION   : Events_ReceiveFSM_SM.Receiving_Ready.ReceiveTransition(, QueryEvents msg, Receive.Body.ReceiveRec transportData)");
#endif

                    Events_ReceiveFSMState endState = context.State;

                    context.ClearState();

                    try
                    {
                        ctxt.SendAction("ReportEvents", msg, transportData);
                    }
                    finally
                    {
                        context.State = endState;
                    }

                    return;
                }
コード例 #3
0
                protected internal override void EventOccurredTransition(Events_ReceiveFSMContext context)
                {
                    Events_ReceiveFSM ctxt = context.Owner;


#if TRACE
                    Trace.WriteLine(
                        "TRANSITION   : Events_ReceiveFSM_SM.Receiving_Ready.EventOccurredTransition()");
#endif

                    if (ctxt.eventExists())
                    {
                        Events_ReceiveFSMState endState = context.State;

                        context.ClearState();

                        try
                        {
                            ctxt.sendEventAction();
                        }
                        finally
                        {
                            context.State = endState;
                        }
                    }
                    else
                    {
                        base.EventOccurredTransition(context);
                    }

                    return;
                }
コード例 #4
0
ファイル: EventsService.cs プロジェクト: nikola-v/jaustoolset
 public EventsService(JausRouter jausRouter , urn_jaus_jss_core_Transport_1_1.TransportService pTransportService)
 {
     pEvents_ReceiveFSM = new Events_ReceiveFSM(pTransportService.pTransport_ReceiveFSM);
     pEvents_ReceiveFSM.setHandlers(ref ieHandler, ref jausRouter);
     pEvents_ReceiveFSM.setupNotifications();
     pEvents_SendFSM = new Events_SendFSM(pTransportService.pTransport_SendFSM);
     pEvents_SendFSM.setHandlers(ref ieHandler, ref jausRouter);
     pEvents_SendFSM.setupNotifications();
 }
コード例 #5
0
ファイル: EventsService.cs プロジェクト: winterjr/jaustoolset
 public EventsService(JausRouter jausRouter, urn_jaus_jss_core_Transport_1_1.TransportService pTransportService)
 {
     pEvents_ReceiveFSM = new Events_ReceiveFSM(pTransportService.pTransport_ReceiveFSM);
     pEvents_ReceiveFSM.setHandlers(ref ieHandler, ref jausRouter);
     pEvents_ReceiveFSM.setupNotifications();
     pEvents_SendFSM = new Events_SendFSM(pTransportService.pTransport_SendFSM);
     pEvents_SendFSM.setHandlers(ref ieHandler, ref jausRouter);
     pEvents_SendFSM.setupNotifications();
 }
コード例 #6
0
                protected internal override void ReceiveTransition(Events_ReceiveFSMContext context, UpdateEvent msg, Receive.Body.ReceiveRec transportData)
                {
                    Events_ReceiveFSM ctxt = context.Owner;


#if TRACE
                    Trace.WriteLine(
                        "TRANSITION   : Events_ReceiveFSM_SM.Receiving_Ready.ReceiveTransition(, UpdateEvent msg, Receive.Body.ReceiveRec transportData)");
#endif

                    if (ctxt.isSupported(msg) && ctxt.eventExists(msg))
                    {
                        Events_ReceiveFSMState endState = context.State;

                        context.ClearState();

                        try
                        {
                            ctxt.updateEventAction(msg);
                            ctxt.SendAction("ConfirmEventRequest", msg, transportData);
                            ctxt.resetEventTimerAction();
                        }
                        finally
                        {
                            context.State = endState;
                        }
                    }
                    else if (!ctxt.isSupported(msg) || !ctxt.eventExists(msg))
                    {
                        Events_ReceiveFSMState endState = context.State;

                        context.ClearState();

                        try
                        {
                            ctxt.SendAction("RejectEventRequest", msg, transportData);
                        }
                        finally
                        {
                            context.State = endState;
                        }
                    }
                    else
                    {
                        base.ReceiveTransition(context, msg, transportData);
                    }

                    return;
                }
コード例 #7
0
 //---------------------------------------------------------------
 // Member methods.
 //
 public Events_ReceiveFSMContext(Events_ReceiveFSM owner)
     : base(Events_ReceiveFSM_SM.Receiving_Ready)
 {
     _owner = owner;
 }
コード例 #8
0
        //---------------------------------------------------------------
        // Member methods.
        //

        public Events_ReceiveFSMContext(Events_ReceiveFSM owner) :
            base(Events_ReceiveFSM_SM.Receiving_Ready)
        {
            _owner = owner;
        }