linklayercontrol/networkinterfacemgr/agentprcore/src/agentscpractivities.cpp
changeset 14 b33c3d136b7e
parent 0 af10295192d8
child 25 d15a50675083
equal deleted inserted replaced
1:a579325b79dd 14:b33c3d136b7e
    22 
    22 
    23 //#include <comms-infras/ss_nodestates.h>
    23 //#include <comms-infras/ss_nodestates.h>
    24 //#include <comms-infras/corescprstates.h>
    24 //#include <comms-infras/corescprstates.h>
    25 #include <comms-infras/corescpractivities.h>
    25 #include <comms-infras/corescpractivities.h>
    26 #include <comms-infras/ss_nodemessages_dataclient.h>
    26 #include <comms-infras/ss_nodemessages_dataclient.h>
       
    27 #include <elements/nm_messages_child.h>
    27 
    28 
    28 #include "agentscprstates.h"
    29 #include "agentscprstates.h"
    29 #include "agentscpractivities.h"
    30 #include "agentscpractivities.h"
    30 #include "agentmessages.h"
    31 #include "agentmessages.h"
    31 
    32 
    92 	LAST_NODEACTIVITY_ENTRY(KNoTag, AgentSCprStates::TSendError)
    93 	LAST_NODEACTIVITY_ENTRY(KNoTag, AgentSCprStates::TSendError)
    93 	LAST_NODEACTIVITY_ENTRY(CoreNetStates::KProviderStarted, AgentSCprStates::TSendDataClientGoneDown)
    94 	LAST_NODEACTIVITY_ENTRY(CoreNetStates::KProviderStarted, AgentSCprStates::TSendDataClientGoneDown)
    94 NODEACTIVITY_END()
    95 NODEACTIVITY_END()
    95 }
    96 }
    96 
    97 
       
    98 namespace AgentSCprDestroyActivity
       
    99 {
       
   100 //Overridden destroy for cleaning up the agent if its still about
       
   101 DECLARE_DEFINE_CUSTOM_NODEACTIVITY(ECFActivityDestroy, AgentSCprDestroy, Messages::TEChild::TDestroy, CoreActivities::CDestroyActivity::New)
       
   102     FIRST_NODEACTIVITY_ENTRY(MeshMachine::TAwaitingDestroy, CoreActivities::CDestroyActivity::TNoTagBlockedByActivitiesOrLeavingDataClient)
    97 
   103 
       
   104     ROUTING_NODEACTIVITY_ENTRY(KNoTag, AgentSCprStates::TNoTagOrProviderStopped)
       
   105     NODEACTIVITY_ENTRY(KNoTag, AgentSCprStates::TStopAgent, AgentSCprStates::TAwaitingAgentDown, MeshMachine::TTag<CoreNetStates::KProviderStopped>)
       
   106     ROUTING_NODEACTIVITY_ENTRY(CoreNetStates::KProviderStopped, CoreStates::TNoTagOrNoClients)
       
   107         
       
   108     //The node mustn't go out of scope with clients present. The node must get rid of them first.
       
   109     NODEACTIVITY_ENTRY(KNoTag, CoreActivities::CDestroyActivity::TMakeClientsLeaveOrProcessClientLeave, CoreStates::TAwaitingClientLeave,  CoreActivities::CDestroyActivity::TNoTagOrNoTagBackwards)
       
   110     THROUGH_NODEACTIVITY_ENTRY(KNoTag, CoreActivities::CDestroyActivity::TProcessClientLeave, TTag<CoreNetStates::KNoClients>)
       
   111 
       
   112     THROUGH_NODEACTIVITY_ENTRY(CoreNetStates::KNoClients, PRStates::TProcessDestroy, MeshMachine::TNoTag)
       
   113     NODEACTIVITY_ENTRY(KNoTag, MeshMachine::TDoNothing, MeshMachine::TAwaitingLeaveComplete, CoreActivities::CDestroyActivity::TNoTagOrNoTagBackwards)
       
   114     LAST_NODEACTIVITY_ENTRY(KNoTag, CoreNetStates::TSendClientLeavingAndRemoveControlProvider)
       
   115 NODEACTIVITY_END()
       
   116 }
    98 // Activity Map
   117 // Activity Map
    99 namespace AgentSCprActivities
   118 namespace AgentSCprActivities
   100 {
   119 {
   101 DEFINE_EXPORT_ACTIVITY_MAP(agentSCprActivities)
   120 DEFINE_EXPORT_ACTIVITY_MAP(agentSCprActivities)
       
   121    ACTIVITY_MAP_ENTRY(AgentSCprDestroyActivity, AgentSCprDestroy)
   102    ACTIVITY_MAP_ENTRY(AgentSCprNotificationFromFlowActivity, AgentSCprNotificationFromFlow)
   122    ACTIVITY_MAP_ENTRY(AgentSCprNotificationFromFlowActivity, AgentSCprNotificationFromFlow)
   103    ACTIVITY_MAP_ENTRY(AgentSCprAuthenticationActivity, AgentSCprAuthentication)
   123    ACTIVITY_MAP_ENTRY(AgentSCprAuthenticationActivity, AgentSCprAuthentication)
   104    ACTIVITY_MAP_ENTRY(AgentSCprDataClientGoneDownActivity, AgentSCprDataClientGoneDown)
   124    ACTIVITY_MAP_ENTRY(AgentSCprDataClientGoneDownActivity, AgentSCprDataClientGoneDown)
   105    ACTIVITY_MAP_ENTRY(AgentSCprStartActivity, AgentSCprStart)
   125    ACTIVITY_MAP_ENTRY(AgentSCprStartActivity, AgentSCprStart)
   106    ACTIVITY_MAP_ENTRY(AgentSCprStopActivity, AgentSCprStop)
   126    ACTIVITY_MAP_ENTRY(AgentSCprStopActivity, AgentSCprStop)