osaf/services/saf/amf/amfd/include/sg.h |   11 +
 osaf/services/saf/amf/amfd/sg_2n_fsm.cc |  210 +++++--------------------------
 2 files changed, 48 insertions(+), 173 deletions(-)


diff --git a/osaf/services/saf/amf/amfd/include/sg.h 
b/osaf/services/saf/amf/amfd/include/sg.h
--- a/osaf/services/saf/amf/amfd/include/sg.h
+++ b/osaf/services/saf/amf/amfd/include/sg.h
@@ -391,6 +391,17 @@ public:
                struct avd_su_si_rel_tag *susi, AVSV_SUSI_ACT act, 
SaAmfHAStateT state);
        uint32_t susi_failed(AVD_CL_CB *cb, AVD_SU *su,
                struct avd_su_si_rel_tag *susi, AVSV_SUSI_ACT act, 
SaAmfHAStateT state);
+private:
+       void node_fail_si_oper(AVD_SU *su);
+       void node_fail_su_oper(AVD_SU *su);
+       uint32_t susi_success_si_oper(AVD_SU *su, struct avd_su_si_rel_tag 
*susi,
+               AVSV_SUSI_ACT act, SaAmfHAStateT state);
+       uint32_t susi_success_su_oper(AVD_SU *su, struct avd_su_si_rel_tag 
*susi,
+               AVSV_SUSI_ACT act, SaAmfHAStateT state);
+       uint32_t susi_success_sg_realign(AVD_SU *su, struct avd_su_si_rel_tag 
*susi,
+               AVSV_SUSI_ACT act, SaAmfHAStateT state);
+       uint32_t su_fault_si_oper(AVD_SU *su);
+       uint32_t su_fault_su_oper(AVD_SU *su);
 };
 
 /**
diff --git a/osaf/services/saf/amf/amfd/sg_2n_fsm.cc 
b/osaf/services/saf/amf/amfd/sg_2n_fsm.cc
--- a/osaf/services/saf/amf/amfd/sg_2n_fsm.cc
+++ b/osaf/services/saf/amf/amfd/sg_2n_fsm.cc
@@ -850,30 +850,13 @@ done:
        return rc;
 }
 
- /*****************************************************************************
- * Function: avd_sg_2n_su_fault_su_oper
- *
- * Purpose:  This function is a subfunctionality of avd_sg_2n_su_fault_func.
- * It is called if the SG is in AVD_SG_FSM_SU_OPER.
- *
- * Input: cb - the AVD control block
- *        su - The pointer to the service unit.
- *        
- *
- * Returns: NCSCC_RC_SUCCESS/NCSCC_RC_FAILURE.
- *
- * NOTES: None.
- *
- * 
- **************************************************************************/
-
-static uint32_t avd_sg_2n_su_fault_su_oper(AVD_CL_CB *cb, AVD_SU *su)
-{
+uint32_t SG_2N::su_fault_su_oper(AVD_SU *su) {
        AVD_SU *a_su;
        bool flag;
        AVD_AVND *su_node_ptr = NULL;
        uint32_t rc = NCSCC_RC_FAILURE;
        SaAmfHAStateT su_ha_state, a_su_ha_state;
+       AVD_CL_CB *cb = avd_cb;
 
        /* If the SU is same as the SU in the list and if the SI relationships 
to
         * the SU is quiesced or  quiescing. If this SU admin is shutdown change
@@ -1027,27 +1010,10 @@ done:
        return rc;
 }
 
- /*****************************************************************************
- * Function: avd_sg_2n_su_fault_si_oper
- *
- * Purpose:  This function is a subfunctionality of avd_sg_2n_su_fault_func.
- * It is called if the SG is in AVD_SG_FSM_SI_OPER.
- *
- * Input: cb - the AVD control block
- *        su - The pointer to the service unit.
- *        
- *
- * Returns: NCSCC_RC_SUCCESS/NCSCC_RC_FAILURE.
- *
- * NOTES: None.
- *
- * 
- **************************************************************************/
-
-static uint32_t avd_sg_2n_su_fault_si_oper(AVD_CL_CB *cb, AVD_SU *su)
-{
+uint32_t SG_2N::su_fault_si_oper(AVD_SU *su) {
        AVD_SU_SI_REL *l_susi, *o_susi;
        uint32_t rc = NCSCC_RC_FAILURE;
+       AVD_CL_CB *cb = avd_cb;
 
        TRACE_ENTER2("'%s'", su->name.value);
 
@@ -1289,15 +1255,13 @@ uint32_t SG_2N::su_fault(AVD_CL_CB *cb, 
 
                break;          /* case AVD_SG_FSM_SG_REALIGN: */
        case AVD_SG_FSM_SU_OPER:
-               if (avd_sg_2n_su_fault_su_oper(cb, su) == NCSCC_RC_FAILURE)
-                       goto done;
-
-               break;          /* case AVD_SG_FSM_SU_OPER: */
+               rc = su_fault_su_oper(su);
+               goto done; // TODO(hafe) remove later
+               break;
        case AVD_SG_FSM_SI_OPER:
-               if (avd_sg_2n_su_fault_si_oper(cb, su) == NCSCC_RC_FAILURE)
-                       goto done;
-
-               break;          /* case AVD_SG_FSM_SI_OPER: */
+               rc = su_fault_si_oper(su);
+               goto done; // TODO(hafe) remove later
+               break;
        case AVD_SG_FSM_SG_ADMIN:
                if (su->sg_of_su->saAmfSGAdminState == SA_AMF_ADMIN_LOCKED) {
                        /* the SG is lock no action. */
@@ -1427,33 +1391,13 @@ uint32_t SG_2N::su_insvc(AVD_CL_CB *cb, 
        return rc;
 }
 
- /*****************************************************************************
- * Function: avd_sg_2n_susi_sucss_sg_reln
- *
- * Purpose:  This function is a subfunctionality of avd_sg_2n_susi_sucss_func.
- * It is called if the SG is in AVD_SG_FSM_SG_REALIGN.
- *
- * Input: cb - the AVD control block
- *        su - In case of entire SU related operation the SU for
- *               which the ack is received.
- *        susi - The pointer to the service unit service instance relationship.
- *        act  - The action received in the ack message.
- *        state - The HA state in the message.
- *
- * Returns: NCSCC_RC_SUCCESS/NCSCC_RC_FAILURE.
- *
- * NOTES: None.
- *
- * 
- **************************************************************************/
-
-static uint32_t avd_sg_2n_susi_sucss_sg_reln(AVD_CL_CB *cb, AVD_SU *su, 
AVD_SU_SI_REL *susi,
-                                         AVSV_SUSI_ACT act, SaAmfHAStateT 
state)
-{
+uint32_t SG_2N::susi_success_sg_realign(AVD_SU *su, AVD_SU_SI_REL *susi,
+                                        AVSV_SUSI_ACT act, SaAmfHAStateT 
state) {
        AVD_SU_SI_REL *i_susi, *s_susi, *o_susi, *a_susi, *n_susi;
        AVD_SU *o_su, *l_su;
        bool flag, as_flag;
        uint32_t rc = NCSCC_RC_FAILURE;
+       AVD_CL_CB *cb = avd_cb;
 
        TRACE_ENTER2("'%s' act=%u, state=%u", su->name.value, act, state);
        m_AVD_CHK_OPLIST(su, flag);
@@ -1824,35 +1768,16 @@ done:
        TRACE_LEAVE2("rc:%u", rc);
        return rc;
 }
- /*****************************************************************************
- * Function: avd_sg_2n_susi_sucss_su_oper
- *
- * Purpose:  This function is a subfunctionality of avd_sg_2n_susi_sucss_func.
- * It is called if the SG is in AVD_SG_FSM_SU_OPER.
- *
- * Input: cb - the AVD control block
- *        su - In case of entire SU related operation the SU for
- *               which the ack is received.
- *        susi - The pointer to the service unit service instance relationship.
- *        act  - The action received in the ack message.
- *        state - The HA state in the message.
- *
- * Returns: NCSCC_RC_SUCCESS/NCSCC_RC_FAILURE.
- *
- * NOTES: None.
- *
- * 
- **************************************************************************/
-
-static uint32_t avd_sg_2n_susi_sucss_su_oper(AVD_CL_CB *cb, AVD_SU *su, 
AVD_SU_SI_REL *susi,
-                                         AVSV_SUSI_ACT act, SaAmfHAStateT 
state)
-{
+
+uint32_t SG_2N::susi_success_su_oper(AVD_SU *su, AVD_SU_SI_REL *susi,
+                                     AVSV_SUSI_ACT act, SaAmfHAStateT state) {
        AVD_SU_SI_REL *s_susi, *a_susi, *l_susi, *n_susi, *s_susi_temp;
        AVD_SU *l_su;
        bool flag;
        AVD_AVND *su_node_ptr = NULL;
        uint32_t rc = NCSCC_RC_FAILURE;
        SaAmfHAStateT ha_state;
+       AVD_CL_CB *cb = avd_cb;
 
        TRACE_ENTER2("'%s' act=%u, state=%u", su->name.value, act, state);
 
@@ -2205,30 +2130,10 @@ done:
        return rc;
 }
 
- /*****************************************************************************
- * Function: avd_sg_2n_susi_sucss_si_oper
- *
- * Purpose:  This function is a subfunctionality of avd_sg_2n_susi_sucss_func.
- * It is called if the SG is in AVD_SG_FSM_SI_OPER.
- *
- * Input: cb - the AVD control block
- *        su - In case of entire SU related operation the SU for
- *               which the ack is received.
- *        susi - The pointer to the service unit service instance relationship.
- *        act  - The action received in the ack message.
- *        state - The HA state in the message.
- *
- * Returns: NCSCC_RC_SUCCESS/NCSCC_RC_FAILURE.
- *
- * NOTES: None.
- *
- * 
- **************************************************************************/
-
-static uint32_t avd_sg_2n_susi_sucss_si_oper(AVD_CL_CB *cb, AVD_SU *su, 
AVD_SU_SI_REL *susi,
-                                         AVSV_SUSI_ACT act, SaAmfHAStateT 
state)
-{
+uint32_t SG_2N::susi_success_si_oper(AVD_SU *su, AVD_SU_SI_REL *susi,
+                                     AVSV_SUSI_ACT act, SaAmfHAStateT state) {
        uint32_t rc = NCSCC_RC_FAILURE;
+       AVD_CL_CB *cb = avd_cb;
 
        TRACE_ENTER2("'%s', act:%u, state:%u", su->name.value, act, state);
 
@@ -2374,20 +2279,17 @@ uint32_t SG_2N::susi_success(AVD_CL_CB *
                LOG_EM("%s:%u: %s (%u)", __FILE__, __LINE__, su->name.value, 
su->name.length);
                break;          /* case AVD_SG_FSM_STABLE: */
        case AVD_SG_FSM_SG_REALIGN:
-               if (avd_sg_2n_susi_sucss_sg_reln(cb, su, susi, act, state) == 
NCSCC_RC_FAILURE)
-                       goto done;
-
-               break;          /* case AVD_SG_FSM_SG_REALIGN: */
+               rc = susi_success_sg_realign(su, susi, act, state);
+               goto done; // TODO(hafe) remove later
+               break;
        case AVD_SG_FSM_SU_OPER:
-               if (avd_sg_2n_susi_sucss_su_oper(cb, su, susi, act, state) == 
NCSCC_RC_FAILURE)
-                       goto done;
-
-               break;          /* case AVD_SG_FSM_SU_OPER: */
+               rc = susi_success_su_oper(su, susi, act, state);
+               goto done; // TODO(hafe) remove later
+               break;
        case AVD_SG_FSM_SI_OPER:
-               if (avd_sg_2n_susi_sucss_si_oper(cb, su, susi, act, state) == 
NCSCC_RC_FAILURE)
-                       goto done;
-
-               break;          /* case AVD_SG_FSM_SI_OPER: */
+               rc = susi_success_si_oper(su, susi, act, state);
+               goto done; // TODO(hafe) remove later
+               break;
        case AVD_SG_FSM_SG_ADMIN:
                if (su->sg_of_su->saAmfSGAdminState == SA_AMF_ADMIN_LOCKED) {
                        /* SG is admin lock */
@@ -2822,29 +2724,12 @@ uint32_t SG_2N::realign(AVD_CL_CB *cb, A
        return NCSCC_RC_SUCCESS;
 }
 
-/*****************************************************************************
- * Function: avd_sg_2n_node_fail_su_oper
- *
- * Purpose:  This function is a subfunctionality of avd_sg_2n_node_fail_func.
- * It is called if the SG is in AVD_SG_FSM_SU_OPER.
- *
- * Input: cb - the AVD control block
- *        su - The SU that has faulted because of the node failure.
- *        
- *
- * Returns: None.
- *
- * NOTES: None.
- *
- * 
- **************************************************************************/
-
-static void avd_sg_2n_node_fail_su_oper(AVD_CL_CB *cb, AVD_SU *su)
-{
+void SG_2N::node_fail_su_oper(AVD_SU *su) {
        AVD_SU_SI_REL *a_susi, *s_susi, *s_susi_temp;
        AVD_SU *o_su;
        bool flag;
        AVD_AVND *su_node_ptr = NULL;
+       AVD_CL_CB *cb = avd_cb;
 
        TRACE_ENTER();
 
@@ -3057,27 +2942,10 @@ static void avd_sg_2n_node_fail_su_oper(
        TRACE_LEAVE();
 }
 
-/*****************************************************************************
- * Function: avd_sg_2n_node_fail_si_oper
- *
- * Purpose:  This function is a subfunctionality of avd_sg_2n_node_fail_func.
- * It is called if the SG is in AVD_SG_FSM_SI_OPER.
- *
- * Input: cb - the AVD control block
- *        su - The SU that has faulted because of the node failure.
- *        
- *
- * Returns: None.
- *
- * NOTES: None.
- *
- * 
- **************************************************************************/
-
-static void avd_sg_2n_node_fail_si_oper(AVD_CL_CB *cb, AVD_SU *su)
-{
+void SG_2N::node_fail_si_oper(AVD_SU *su) {
        AVD_SU_SI_REL *s_susi, *susi_temp;
        AVD_SU *o_su;
+       AVD_CL_CB *cb = avd_cb;
 
        TRACE_ENTER();
 
@@ -3431,15 +3299,11 @@ void SG_2N::node_fail(AVD_CL_CB *cb, AVD
 
                break;          /* case AVD_SG_FSM_SG_REALIGN: */
        case AVD_SG_FSM_SU_OPER:
-
-               avd_sg_2n_node_fail_su_oper(cb, su);
-
-               break;          /* case AVD_SG_FSM_SU_OPER: */
+               node_fail_su_oper(su);
+               break;
        case AVD_SG_FSM_SI_OPER:
-
-               avd_sg_2n_node_fail_si_oper(cb, su);
-
-               break;          /* case AVD_SG_FSM_SI_OPER: */
+               node_fail_si_oper(su);
+               break;
        case AVD_SG_FSM_SG_ADMIN:
 
                if (su->sg_of_su->saAmfSGAdminState == SA_AMF_ADMIN_LOCKED) {

------------------------------------------------------------------------------
_______________________________________________
Opensaf-devel mailing list
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to