当前位置: 首页>>代码示例>>C#>>正文


C# JTS.InternalEvent类代码示例

本文整理汇总了C#中JTS.InternalEvent的典型用法代码示例。如果您正苦于以下问题:C# InternalEvent类的具体用法?C# InternalEvent怎么用?C# InternalEvent使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


InternalEvent类属于JTS命名空间,在下文中一共展示了InternalEvent类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: processTransitions

        //    This is the function that will process an event either generated
        //  by the service, sent to it by another service on the same component,
        //  or as a message sent by a different component.
        public override bool processTransitions(InternalEvent ie)
        {
            bool done = false;

               // Since this function can be called from multiple threads,
               // we use a mutex to ensure only one state transition is
               // active at a time.
               mutex.WaitOne();

                // Invoke the FSM transition for this event.
            try
            {
                if (ie.getName().CompareTo("Receive") == 0 && (ie.getSource().CompareTo("PingClient_PingClientFSM") != 0) && (!done))
                {
                    Receive casted_ie = (Receive) ie;
                    int pos = 0;
                    ushort id = BitConverter.ToUInt16(casted_ie.getBody().getReceiveRec().getMessagePayload().getData(), pos);
                    if ( id == new ReportHeartbeatPulse().getID())
                    {
                        ReportHeartbeatPulse msg = new ReportHeartbeatPulse();
                        msg.decode(casted_ie.getBody().getReceiveRec().getMessagePayload().getData(), pos);
                        pPingClient_PingClientFSM.context.ReportHeartbeatPulseTransition();
                        done = true;
                    }
                }
            } catch (Exception e) {}

            mutex.ReleaseMutex();
            return done;
        }
开发者ID:nikola-v,项目名称:jaustoolset,代码行数:33,代码来源:PingClientService.cs

示例2: InternalStateChange_To_AdditionClientServiceDef_additionClientFSM_InitTransition

 public void InternalStateChange_To_AdditionClientServiceDef_additionClientFSM_InitTransition(InternalEvent ie)
 {
     transition_ = "InternalStateChange_To_AdditionClientServiceDef_additionClientFSM_InitTransition";
     State.InternalStateChange_To_AdditionClientServiceDef_additionClientFSM_InitTransition(this, ie);
     transition_ = "";
     return;
 }
开发者ID:nikola-v,项目名称:jaustoolset,代码行数:7,代码来源:AdditionClientServiceDef_additionClientFSM_sm.cs

示例3: processTransitions

        //    This is the function that will process an event either generated
        //  by the service, sent to it by another service on the same component,
        //  or as a message sent by a different component.
        public override bool processTransitions(InternalEvent ie)
        {
            bool done = false;

               // Since this function can be called from multiple threads,
               // we use a mutex to ensure only one state transition is
               // active at a time.
               mutex.WaitOne();

                // Invoke the FSM transition for this event.
            try
            {
                if (ie.getName().CompareTo("InitToReadyEventDef") == 0 && (ie.getSource().CompareTo("AdditionClientServiceDef_additionClientFSM") != 0) && (!done))
                {
                    InitToReadyEventDef casted_ie = (InitToReadyEventDef) ie;
                        pAdditionClientServiceDef_additionClientFSM.context.InitToReadyEventDefTransition();
                        done = true;
                }
            } catch (Exception e) {}

            try
            {
                if (ie.getName().CompareTo("InternalStateChange_To_AdditionClientServiceDef_additionClientFSM_Ready") == 0 && (ie.getSource().CompareTo("AdditionClientServiceDef_additionClientFSM") != 0) && (!done))
                {
                        pAdditionClientServiceDef_additionClientFSM.context.InternalStateChange_To_AdditionClientServiceDef_additionClientFSM_ReadyTransition(ie);
                        done = true;
                }
            } catch (Exception e) {}

            try
            {
                if (ie.getName().CompareTo("Receive") == 0 && (ie.getSource().CompareTo("AdditionClientServiceDef_additionClientFSM") != 0) && (!done))
                {
                    Receive casted_ie = (Receive) ie;
                    int pos = 0;
                    ushort id = BitConverter.ToUInt16(casted_ie.getBody().getReceiveRec().getMessagePayload().getData(), pos);
                    if ( id == new ReportAddition().getID())
                    {
                        ReportAddition msg = new ReportAddition();
                        msg.decode(casted_ie.getBody().getReceiveRec().getMessagePayload().getData(), pos);
                        pAdditionClientServiceDef_additionClientFSM.context.ReportAdditionTransition(msg);
                        done = true;
                    }
                }
            } catch (Exception e) {}

            try
            {
                if (ie.getName().CompareTo("InternalStateChange_To_AdditionClientServiceDef_additionClientFSM_Init") == 0 && (ie.getSource().CompareTo("AdditionClientServiceDef_additionClientFSM") != 0) && (!done))
                {
                        pAdditionClientServiceDef_additionClientFSM.context.InternalStateChange_To_AdditionClientServiceDef_additionClientFSM_InitTransition(ie);
                        done = true;
                }
            } catch (Exception e) {}

            mutex.ReleaseMutex();
            return done;
        }
开发者ID:nikola-v,项目名称:jaustoolset,代码行数:61,代码来源:AdditionClientServiceDefService.cs

示例4: processInternalEvent

 public override void processInternalEvent(InternalEvent ie)
 {
     // Invoke the FSM transition for this event.  If no explicit transition
     // is defined, try a default transition...
     if (processTransitions(ie) == false)
     {
         defaultTransitions(ie);
     }
 }
开发者ID:nikola-v,项目名称:jaustoolset,代码行数:9,代码来源:Service.cs

示例5: invoked

 /// <summary>
 /// Pulls the next event off of the queue and gives it to the service.
 /// </summary>
 /// <returns>the event to be started - an empty event if no events waiting</returns>
 public InternalEvent invoked()
 {
     InternalEvent ie = new InternalEvent();
     lock (Lock) {
         if (internalEventQueue.Count != 0) {
             ie = internalEventQueue.Dequeue ();
         }
     }
     return ie;
 }
开发者ID:nikola-v,项目名称:jaustoolset,代码行数:14,代码来源:InternalEventHandler.cs

示例6: processNotifications

 /*
 * Checks to see if an event triggers an notification
 */
 public void processNotifications(string state, InternalEvent ie)
 {
     if (state.IndexOf(".") != -1)
         state = state.Substring(state.LastIndexOf(".")+1);
     for (int i=0; i < notifications.Count; i++)
     {
         if (notifications[i]._state == state)
         {
             // Note that we send a copy of the original internal event,
             // since processing the event will delete it and we might
             // still need the original for future notifications...
             if (ie != null)
                 notifications[i]._handler.invoke( new InternalEvent(notifications[i]._event, ie.getSource()) );
             else
                 notifications[i]._handler.invoke( new InternalEvent(notifications[i]._event, notifications[i]._source) );
         }
     }
 }
开发者ID:nikola-v,项目名称:jaustoolset,代码行数:21,代码来源:StateMachine.cs

示例7: processInternalEvent

    public override void processInternalEvent(InternalEvent ie)
    {
        bool done = false;

        //
        // When a component receives an internal event, it passes it
        // to the services to handling, children services first.  If the
        // event is not processed by normal transitions, it's passed
        // again to the services (children first) for default transitions.
        // A given event may only be processed by at most one service.
        //
        for (int i = serviceList.Count; i>0; i--)
        {
            if (!done) done = serviceList[i-1].processTransitions(ie);
        }
        for (int i = serviceList.Count; i>0; i--)
        {
            if (!done) done = serviceList[i-1].defaultTransitions(ie);
        }
    }
开发者ID:nikola-v,项目名称:jaustoolset,代码行数:20,代码来源:PingComponent.cs

示例8: processNotifications

 /*
 * Checks to see if an event triggers an notification
 */
 public void processNotifications(string state, InternalEvent ie)
 {
     if (state.IndexOf(".") != -1)
         state = state.Substring(state.LastIndexOf(".")+1);
     for (int i=0; i < notifications.Count; i++)
     {
         if (notifications[i]._state == state)
         {
             if ((ie != null) && (notifications[i]._event.IndexOf(ie.getSource()) > 0))
             {
                 // ... this FSM was actually the CAUSE of the state change in the first place.
                 // In other words, detect the loop and don't send notification back to the
                 // original source of the transition.  This stops a parent from notifying
                 // a child, who in turn notifies the parent, who in turn notifies the child ad nauseum.
             }
             else
             {
                 // Ok... state change not caused by the target FSM, so send a notification to it.
                 notifications[i]._handler.invoke(new InternalEvent(notifications[i]._event, notifications[i]._source));
             }
         }
     }
 }
开发者ID:nikola-v,项目名称:jaustoolset,代码行数:26,代码来源:StateMachine.cs

示例9: processTransitions

        //    This is the function that will process an event either generated
        //  by the service, sent to it by another service on the same component,
        //  or as a message sent by a different component.
        public override bool processTransitions(InternalEvent ie)
        {
            bool done = false;

               // Since this function can be called from multiple threads,
               // we use a mutex to ensure only one state transition is
               // active at a time.
               mutex.WaitOne();

            // Invoke the FSM transition for this event.
            try
            {
                if (ie.getName().CompareTo("Receive") == 0 && (ie.getSource().CompareTo("Events_ReceiveFSM") != 0) && (!done))
                {
                    Receive casted_ie = (Receive) ie;
                    int pos = 0;
                    ushort id = BitConverter.ToUInt16(casted_ie.getBody().getReceiveRec().getMessagePayload().getData(), pos);
                    if ( id == new QueryEvents().getID())
                    {
                        QueryEvents msg = new QueryEvents();
                        msg.decode(casted_ie.getBody().getReceiveRec().getMessagePayload().getData(), pos);
                        Receive.Body.ReceiveRec transportData = casted_ie.getBody().getReceiveRec();
                        pEvents_ReceiveFSM.context.ReceiveTransition(msg, transportData);
                        done = true;
                    }
                }
            } catch (Exception e) {}

            try
            {
                if (ie.getName().CompareTo("Receive") == 0 && (ie.getSource().CompareTo("Events_ReceiveFSM") != 0) && (!done))
                {
                    Receive casted_ie = (Receive) ie;
                    int pos = 0;
                    ushort id = BitConverter.ToUInt16(casted_ie.getBody().getReceiveRec().getMessagePayload().getData(), pos);
                    if ( id == new QueryEventTimeout().getID())
                    {
                        QueryEventTimeout msg = new QueryEventTimeout();
                        msg.decode(casted_ie.getBody().getReceiveRec().getMessagePayload().getData(), pos);
                        Receive.Body.ReceiveRec transportData = casted_ie.getBody().getReceiveRec();
                        pEvents_ReceiveFSM.context.ReceiveTransition(msg, transportData);
                        done = true;
                    }
                }
            } catch (Exception e) {}

            try
            {
                if (ie.getName().CompareTo("Receive") == 0 && (ie.getSource().CompareTo("Events_ReceiveFSM") != 0) && (!done))
                {
                    Receive casted_ie = (Receive) ie;
                    int pos = 0;
                    ushort id = BitConverter.ToUInt16(casted_ie.getBody().getReceiveRec().getMessagePayload().getData(), pos);
                    if ( id == new CreateEvent().getID())
                    {
                        CreateEvent msg = new CreateEvent();
                        msg.decode(casted_ie.getBody().getReceiveRec().getMessagePayload().getData(), pos);
                        Receive.Body.ReceiveRec transportData = casted_ie.getBody().getReceiveRec();
                        pEvents_ReceiveFSM.context.ReceiveTransition(msg, transportData);
                        done = true;
                    }
                }
            } catch (Exception e) {}

            try
            {
                if (ie.getName().CompareTo("Receive") == 0 && (ie.getSource().CompareTo("Events_ReceiveFSM") != 0) && (!done))
                {
                    Receive casted_ie = (Receive) ie;
                    int pos = 0;
                    ushort id = BitConverter.ToUInt16(casted_ie.getBody().getReceiveRec().getMessagePayload().getData(), pos);
                    if ( id == new CreateEvent().getID())
                    {
                        CreateEvent msg = new CreateEvent();
                        msg.decode(casted_ie.getBody().getReceiveRec().getMessagePayload().getData(), pos);
                        Receive.Body.ReceiveRec transportData = casted_ie.getBody().getReceiveRec();
                        pEvents_ReceiveFSM.context.ReceiveTransition(msg, transportData);
                        done = true;
                    }
                }
            } catch (Exception e) {}

            try
            {
                if (ie.getName().CompareTo("Receive") == 0 && (ie.getSource().CompareTo("Events_ReceiveFSM") != 0) && (!done))
                {
                    Receive casted_ie = (Receive) ie;
                    int pos = 0;
                    ushort id = BitConverter.ToUInt16(casted_ie.getBody().getReceiveRec().getMessagePayload().getData(), pos);
                    if ( id == new CreateEvent().getID())
                    {
                        CreateEvent msg = new CreateEvent();
                        msg.decode(casted_ie.getBody().getReceiveRec().getMessagePayload().getData(), pos);
                        Receive.Body.ReceiveRec transportData = casted_ie.getBody().getReceiveRec();
                        pEvents_ReceiveFSM.context.ReceiveTransition(msg, transportData);
                        done = true;
                    }
//.........这里部分代码省略.........
开发者ID:nikola-v,项目名称:jaustoolset,代码行数:101,代码来源:EventsService.cs

示例10: defaultTransitions

        //    This is the function that will check for default transitions if
        //  no other transitions were satisfied.
        //
        public override bool defaultTransitions(InternalEvent ie)
        {
            bool done = false;

               // Since this function can be called from multiple threads,
               // we use a mutex to ensure only one state transition is
               // active at a time.
               mutex.WaitOne();

            // Invoke the FSM transition for this event.
            try
            {
                if (ie.getName().CompareTo("Send") == 0 && (ie.getSource().CompareTo("Transport_ReceiveFSM") != 0) && (!done))
                {
                    Send casted_ie = (Send) ie;
                        pTransport_ReceiveFSM.context.SendTransition();
                        done = true;
                }
            } catch (Exception e) {}

            try
            {
                if (ie.getName().CompareTo("BroadcastLocal") == 0 && (ie.getSource().CompareTo("Transport_ReceiveFSM") != 0) && (!done))
                {
                    BroadcastLocal casted_ie = (BroadcastLocal) ie;
                        pTransport_ReceiveFSM.context.BroadcastLocalTransition();
                        done = true;
                }
            } catch (Exception e) {}

            try
            {
                if (ie.getName().CompareTo("BroadcastGlobal") == 0 && (ie.getSource().CompareTo("Transport_ReceiveFSM") != 0) && (!done))
                {
                    BroadcastGlobal casted_ie = (BroadcastGlobal) ie;
                        pTransport_ReceiveFSM.context.BroadcastGlobalTransition();
                        done = true;
                }
            } catch (Exception e) {}

            try
            {
                if (ie.getName().CompareTo("Send") == 0 && (ie.getSource().CompareTo("Transport_SendFSM") != 0) && (!done))
                {
                    Send casted_ie = (Send) ie;
                        pTransport_SendFSM.context.SendTransition();
                        done = true;
                }
            } catch (Exception e) {}

            try
            {
                if (ie.getName().CompareTo("BroadcastLocal") == 0 && (ie.getSource().CompareTo("Transport_SendFSM") != 0) && (!done))
                {
                    BroadcastLocal casted_ie = (BroadcastLocal) ie;
                        pTransport_SendFSM.context.BroadcastLocalTransition();
                        done = true;
                }
            } catch (Exception e) {}

            try
            {
                if (ie.getName().CompareTo("BroadcastGlobal") == 0 && (ie.getSource().CompareTo("Transport_SendFSM") != 0) && (!done))
                {
                    BroadcastGlobal casted_ie = (BroadcastGlobal) ie;
                        pTransport_SendFSM.context.BroadcastGlobalTransition();
                        done = true;
                }
            } catch (Exception e) {}

            mutex.ReleaseMutex();
            return done;
        }
开发者ID:nikola-v,项目名称:jaustoolset,代码行数:76,代码来源:TransportService.cs

示例11: processInternalEvent

 // Classes to be overridden.
 public virtual void processInternalEvent(InternalEvent ie)
 {
 }
开发者ID:nikola-v,项目名称:jaustoolset,代码行数:4,代码来源:EventReceiver.cs

示例12: InternalStateChange_To_Management_ReceiveFSM_Receiving_Ready_NotControlled_NotAvailable_ShutdownTransition

 public void InternalStateChange_To_Management_ReceiveFSM_Receiving_Ready_NotControlled_NotAvailable_ShutdownTransition(InternalEvent ie)
 {
     transition_ = "InternalStateChange_To_Management_ReceiveFSM_Receiving_Ready_NotControlled_NotAvailable_ShutdownTransition";
     State.InternalStateChange_To_Management_ReceiveFSM_Receiving_Ready_NotControlled_NotAvailable_ShutdownTransition(this, ie);
     transition_ = "";
     return;
 }
开发者ID:nikola-v,项目名称:jaustoolset,代码行数:7,代码来源:Management_ReceiveFSM_sm.cs

示例13: InternalStateChange_To_AccessControl_ReceiveFSM_Receiving_Ready_NotControlled_AvailableTransition

                protected internal override void InternalStateChange_To_AccessControl_ReceiveFSM_Receiving_Ready_NotControlled_AvailableTransition(AccessControl_ReceiveFSMContext context, InternalEvent ie)
                {
                    AccessControl_ReceiveFSM ctxt = context.Owner;

                    #if TRACE
                    Trace.WriteLine(
                        "TRANSITION   : AccessControl_ReceiveFSM_SM.Receiving_Ready_Controlled_Available.InternalStateChange_To_AccessControl_ReceiveFSM_Receiving_Ready_NotControlled_AvailableTransition(, InternalEvent ie)");
                    #endif

                    context.State.Exit(context);
                    context.ClearState();

                    try
                    {
                        ctxt.initAction();
                        ctxt.processNotifications("Receiving_Ready_NotControlled_Available", ie);
                    }
                    finally
                    {
                        context.State = AccessControl_ReceiveFSM_SM.Receiving_Ready_NotControlled_Available;
                        context.State.Entry(context);
                    }

                    return;
                }
开发者ID:nikola-v,项目名称:jaustoolset,代码行数:25,代码来源:AccessControl_ReceiveFSM_sm.cs

示例14: InternalStateChange_To_AccessControl_ReceiveFSM_ReceivingTransition

 protected internal virtual void InternalStateChange_To_AccessControl_ReceiveFSM_ReceivingTransition(AccessControl_ReceiveFSMContext context, InternalEvent ie)
 {
     Default(context);
 }
开发者ID:nikola-v,项目名称:jaustoolset,代码行数:4,代码来源:AccessControl_ReceiveFSM_sm.cs

示例15: defaultTransitions

        //    This is the function that will check for default transitions if
        //  no other transitions were satisfied.
        //
        public override bool defaultTransitions(InternalEvent ie)
        {
            bool done = false;

               // Since this function can be called from multiple threads,
               // we use a mutex to ensure only one state transition is
               // active at a time.
               mutex.WaitOne();

            // Invoke the FSM transition for this event.
            try
            {
                if (ie.getName().CompareTo("Receive") == 0 && (ie.getSource().CompareTo("ManagementOCU_ManagementOcuFSM") != 0) && (!done))
                {
                    Receive casted_ie = (Receive) ie;
                    int pos = 0;
                    ushort id = BitConverter.ToUInt16(casted_ie.getBody().getReceiveRec().getMessagePayload().getData(), pos);
                    if ( id == new ReportStatus().getID())
                    {
                        ReportStatus msg = new ReportStatus();
                        msg.decode(casted_ie.getBody().getReceiveRec().getMessagePayload().getData(), pos);
                        pManagementOCU_ManagementOcuFSM.context.ReportStatusTransition();
                        done = true;
                    }
                }
            } catch (Exception e) {}

            try
            {
                if (ie.getName().CompareTo("Receive") == 0 && (ie.getSource().CompareTo("ManagementOCU_ManagementOcuFSM") != 0) && (!done))
                {
                    Receive casted_ie = (Receive) ie;
                    int pos = 0;
                    ushort id = BitConverter.ToUInt16(casted_ie.getBody().getReceiveRec().getMessagePayload().getData(), pos);
                    if ( id == new ConfirmControl().getID())
                    {
                        ConfirmControl msg = new ConfirmControl();
                        msg.decode(casted_ie.getBody().getReceiveRec().getMessagePayload().getData(), pos);
                        pManagementOCU_ManagementOcuFSM.context.ConfirmControlTransition();
                        done = true;
                    }
                }
            } catch (Exception e) {}

            try
            {
                if (ie.getName().CompareTo("Receive") == 0 && (ie.getSource().CompareTo("ManagementOCU_ManagementOcuFSM") != 0) && (!done))
                {
                    Receive casted_ie = (Receive) ie;
                    int pos = 0;
                    ushort id = BitConverter.ToUInt16(casted_ie.getBody().getReceiveRec().getMessagePayload().getData(), pos);
                    if ( id == new ReportControl().getID())
                    {
                        ReportControl msg = new ReportControl();
                        msg.decode(casted_ie.getBody().getReceiveRec().getMessagePayload().getData(), pos);
                        pManagementOCU_ManagementOcuFSM.context.ReportControlTransition();
                        done = true;
                    }
                }
            } catch (Exception e) {}

            try
            {
                if (ie.getName().CompareTo("Receive") == 0 && (ie.getSource().CompareTo("ManagementOCU_ManagementOcuFSM") != 0) && (!done))
                {
                    Receive casted_ie = (Receive) ie;
                    int pos = 0;
                    ushort id = BitConverter.ToUInt16(casted_ie.getBody().getReceiveRec().getMessagePayload().getData(), pos);
                    if ( id == new RejectControl().getID())
                    {
                        RejectControl msg = new RejectControl();
                        msg.decode(casted_ie.getBody().getReceiveRec().getMessagePayload().getData(), pos);
                        pManagementOCU_ManagementOcuFSM.context.RejectControlTransition();
                        done = true;
                    }
                }
            } catch (Exception e) {}

            try
            {
                if (ie.getName().CompareTo("MenuItemEntered") == 0 && (ie.getSource().CompareTo("ManagementOCU_ManagementOcuFSM") != 0) && (!done))
                {
                    MenuItemEntered casted_ie = (MenuItemEntered) ie;
                        pManagementOCU_ManagementOcuFSM.context.MenuItemEnteredTransition();
                        done = true;
                }
            } catch (Exception e) {}

            mutex.ReleaseMutex();
            return done;
        }
开发者ID:nikola-v,项目名称:jaustoolset,代码行数:94,代码来源:ManagementOCUService.cs


注:本文中的JTS.InternalEvent类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。