datacommsserver/esockserver/test/providers/dummy/inc/dummypr_subconnprov.h
branchRCL_3
changeset 18 9644881fedd0
parent 17 9ddb1d67ebaf
--- a/datacommsserver/esockserver/test/providers/dummy/inc/dummypr_subconnprov.h	Tue May 11 17:20:19 2010 +0300
+++ b/datacommsserver/esockserver/test/providers/dummy/inc/dummypr_subconnprov.h	Tue May 25 14:00:39 2010 +0300
@@ -158,6 +158,64 @@
 	virtual TBool Accept();
 DECLARE_SMELEMENT_FOOTER( TAwaitingBrokenStart )
 
+DECLARE_SMELEMENT_HEADER( TRebindSelf, MeshMachine::TStateTransition<TContext>, NetStateMachine::MStateTransition, DummySCPRStates::TContext )
+    virtual void DoL();
+DECLARE_SMELEMENT_FOOTER( TRebindSelf )
+
+
+
+
+
+struct TWaitForBindToMutex
+    {
+    static TBool IsBlocked(const MeshMachine::TNodeContextBase& aContext)
+        {
+        return aContext.iNode.CountActivities(ESock::ECFActivityBindTo) == 0;
+        }
+    };
+
+struct TWaitForNoDataClients
+    {
+    static TBool IsBlocked(const MeshMachine::TNodeContextBase& aContext)
+        {
+        return aContext.iNode.GetFirstClient<Messages::TDefaultClientMatchPolicy>(Messages::TClientType(ESock::TCFClientType::EData)) != NULL;
+        }
+    };
+
+DECLARE_SERIALIZABLE_STATE(
+    TNoTagWaitForBindTo,
+    TWaitForBindToMutex,
+    MeshMachine::TNoTag
+    )
+
+DECLARE_SERIALIZABLE_STATE(
+    TNoTagWaitNoDataClients,
+    TWaitForNoDataClients,
+    MeshMachine::TNoTag
+    )
+
+
+
+DECLARE_SMELEMENT_HEADER( TCancelPreviousSelfRequest, MeshMachine::TStateTransition<TContext>, NetStateMachine::MStateTransition, DummySCPRStates::TContext )
+    virtual void DoL();
+DECLARE_SMELEMENT_FOOTER( TCancelPreviousSelfRequest )
+
+class CrazyIdle : public MeshMachine::CNodeRetryActivity
+    {
+public:
+    DECLARE_SMELEMENT_HEADER( TAwaitingCancelled, MeshMachine::TState<TContext>, NetStateMachine::MState, TContext )
+        virtual TBool Accept();
+    DECLARE_SMELEMENT_FOOTER( TAwaitingCancelled )
+
+    static MeshMachine::CNodeActivityBase* CrazyIdle::NewL( const MeshMachine::TNodeActivity& aActivitySig, MeshMachine::AMMNodeBase& aNode );
+protected:
+    CrazyIdle( const MeshMachine::TNodeActivity& aActivitySig, MeshMachine::AMMNodeBase& aNode )
+    :MeshMachine::CNodeRetryActivity(aActivitySig, aNode) 
+     {};
+private:
+    ~CrazyIdle();
+    };
+
 DECLARE_ACTIVITY_MAP(stateMap)
 } // namespace DummyCPRStates
 
@@ -239,5 +297,6 @@
 	ESock::RCFParameterFamilyBundleC iFlowParameters;
 	};
 
+
 #endif	// __DummySCPR_SUBCONNPROV_H__