osaf/services/saf/amf/amfd/include/si.h      |   3 +-
 osaf/services/saf/amf/amfd/sg_2n_fsm.cc      |  17 +++++++-------
 osaf/services/saf/amf/amfd/sg_nored_fsm.cc   |  14 ++++++------
 osaf/services/saf/amf/amfd/sg_npm_fsm.cc     |  10 ++++----
 osaf/services/saf/amf/amfd/sg_nway_fsm.cc    |  10 ++++----
 osaf/services/saf/amf/amfd/sg_nwayact_fsm.cc |  32 ++++++++++++++--------------
 osaf/services/saf/amf/amfd/si.cc             |  32 ++++++++++++++--------------
 7 files changed, 60 insertions(+), 58 deletions(-)


diff --git a/osaf/services/saf/amf/amfd/include/si.h 
b/osaf/services/saf/amf/amfd/include/si.h
--- a/osaf/services/saf/amf/amfd/include/si.h
+++ b/osaf/services/saf/amf/amfd/include/si.h
@@ -120,6 +120,8 @@ public:
        void adjust_si_assignments(uint32_t mod_pref_assignments);
        void update_ass_state();
 
+       void set_admin_state(SaAmfAdminStateT state);
+
 private:
        AVD_SI(const AVD_SI&);
        AVD_SI& operator=(const AVD_SI&);
@@ -178,7 +180,6 @@ extern void avd_svctype_constructor(void
 extern SaAisErrorT avd_svctypecstypes_config_get(SaNameT *svctype_name);
 extern void avd_svctypecstypes_constructor(void);
 
-extern void avd_si_admin_state_set(AVD_SI* si, SaAmfAdminStateT state);
 extern void avd_si_assignments_delete(AVD_CL_CB *cb, AVD_SI *si);
 extern void avd_si_add_rankedsu(AVD_SI *si, const SaNameT *suname, uint32_t 
saAmfRank);
 extern void avd_si_remove_rankedsu(AVD_SI *si, const SaNameT *suname);
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
@@ -1167,9 +1167,9 @@ static uint32_t avd_sg_2n_su_fault_si_op
                                }
 
                                if (sidep_flag)
-                                       
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_LOCKED);
+                                       
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                                else
-                                       
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_UNLOCKED);
+                                       
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_UNLOCKED);
                                m_AVD_CLEAR_SG_ADMIN_SI(cb, (su->sg_of_su));
                                avd_sg_su_oper_list_add(cb, su, false);
                                m_AVD_SET_SG_FSM(cb, (su->sg_of_su), 
AVD_SG_FSM_SU_OPER);
@@ -1184,7 +1184,7 @@ static uint32_t avd_sg_2n_su_fault_si_op
                                if (avd_susi_mod_send(o_susi, SA_AMF_HA_ACTIVE) 
!= NCSCC_RC_SUCCESS)
                                        goto done;
 
-                               
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_LOCKED);
+                               
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                                m_AVD_CLEAR_SG_ADMIN_SI(cb, (su->sg_of_su));
                                avd_sg_su_si_del_snd(cb, su);
                                avd_sg_su_oper_list_add(cb, su, false);
@@ -1203,7 +1203,8 @@ static uint32_t avd_sg_2n_su_fault_si_op
                        if (avd_susi_mod_send(o_susi, SA_AMF_HA_ACTIVE) != 
NCSCC_RC_SUCCESS)
                                goto done;
 
-                       avd_si_admin_state_set((su->sg_of_su->admin_si), 
SA_AMF_ADMIN_UNLOCKED);
+                       
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_UNLOCKED);
+                       
                        m_AVD_CLEAR_SG_ADMIN_SI(cb, (su->sg_of_su));
                        avd_sg_su_si_del_snd(cb, su);
                        avd_sg_su_oper_list_add(cb, su, false);
@@ -2345,7 +2346,7 @@ static uint32_t avd_sg_2n_susi_sucss_si_
                        if (avd_susi_del_send(susi) == NCSCC_RC_FAILURE)
                                goto done;
 
-                       avd_si_admin_state_set((susi->si), SA_AMF_ADMIN_LOCKED);
+                       susi->si->set_admin_state(SA_AMF_ADMIN_LOCKED);
 
                        avd_sg_su_oper_list_add(cb, susi->su, false);
 
@@ -2815,7 +2816,7 @@ uint32_t avd_sg_2n_susi_fail_func(AVD_CL
                        if (avd_susi_del_send(susi) == NCSCC_RC_FAILURE)
                                goto done;
 
-                       avd_si_admin_state_set((susi->si), SA_AMF_ADMIN_LOCKED);
+                       susi->si->set_admin_state(SA_AMF_ADMIN_LOCKED);
 
                        avd_sg_su_oper_list_add(cb, susi->su, false);
 
@@ -3345,12 +3346,12 @@ static void avd_sg_2n_node_fail_si_oper(
                                        m_AVD_SET_SG_FSM(cb, (su->sg_of_su), 
AVD_SG_FSM_SG_REALIGN);
                                }
 
-                               
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_UNLOCKED);
+                               
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_UNLOCKED);
                                m_AVD_CLEAR_SG_ADMIN_SI(cb, (su->sg_of_su));
                                su->delete_all_susis();
                        } /* if (s_susi != AVD_SU_SI_REL_NULL) */
                        else {
-                               
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_LOCKED);
+                               
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                                m_AVD_CLEAR_SG_ADMIN_SI(cb, (su->sg_of_su));
                                su->delete_all_susis();
                                m_AVD_SET_SG_FSM(cb, (su->sg_of_su), 
AVD_SG_FSM_STABLE);
diff --git a/osaf/services/saf/amf/amfd/sg_nored_fsm.cc 
b/osaf/services/saf/amf/amfd/sg_nored_fsm.cc
--- a/osaf/services/saf/amf/amfd/sg_nored_fsm.cc
+++ b/osaf/services/saf/amf/amfd/sg_nored_fsm.cc
@@ -210,7 +210,7 @@ uint32_t avd_sg_nored_su_fault_func(AVD_
                                if (avd_susi_mod_send(su->list_of_susi, 
SA_AMF_HA_QUIESCED) != NCSCC_RC_SUCCESS)
                                        return NCSCC_RC_FAILURE;
 
-                               avd_si_admin_state_set((su->list_of_susi->si), 
SA_AMF_ADMIN_LOCKED);
+                               
su->list_of_susi->si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                        }
 
                        avd_sg_su_oper_list_add(cb, su, false);
@@ -506,7 +506,7 @@ uint32_t avd_sg_nored_susi_sucss_func(AV
                        su_node_ptr = su->get_node_ptr();
 
                        if (su->sg_of_su->admin_si == su->list_of_susi->si) {
-                               
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_LOCKED);
+                               
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                                m_AVD_CLEAR_SG_ADMIN_SI(cb, (su->sg_of_su));
                                avd_sg_su_oper_list_add(cb, su, false);
                        } else if (su->saAmfSUAdminState == 
SA_AMF_ADMIN_SHUTTING_DOWN) {
@@ -668,7 +668,7 @@ uint32_t avd_sg_nored_susi_sucss_func(AV
 
                        m_AVD_CLEAR_SG_ADMIN_SI(cb, (su->sg_of_su));
                        avd_sg_su_oper_list_add(cb, su, false);
-                       avd_si_admin_state_set((su->list_of_susi->si), 
SA_AMF_ADMIN_LOCKED);
+                       
su->list_of_susi->si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                        m_AVD_SET_SG_FSM(cb, (su->sg_of_su), 
AVD_SG_FSM_SG_REALIGN);
 
                }
@@ -782,7 +782,7 @@ uint32_t avd_sg_nored_susi_fail_func(AVD
                        su_node_ptr = su->get_node_ptr();
 
                        if (su->sg_of_su->admin_si == su->list_of_susi->si) {
-                               
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_LOCKED);
+                               
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                                m_AVD_CLEAR_SG_ADMIN_SI(cb, (su->sg_of_su));
                                avd_sg_su_oper_list_add(cb, su, false);
                        } else if (su->saAmfSUAdminState == 
SA_AMF_ADMIN_SHUTTING_DOWN) {
@@ -863,7 +863,7 @@ uint32_t avd_sg_nored_susi_fail_func(AVD
 
                        m_AVD_CLEAR_SG_ADMIN_SI(cb, (su->sg_of_su));
                        avd_sg_su_oper_list_add(cb, su, false);
-                       avd_si_admin_state_set((su->list_of_susi->si), 
SA_AMF_ADMIN_LOCKED);
+                       
su->list_of_susi->si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                        m_AVD_SET_SG_FSM(cb, (su->sg_of_su), 
AVD_SG_FSM_SG_REALIGN);
 
                }
@@ -1017,7 +1017,7 @@ void avd_sg_nored_node_fail_func(AVD_CL_
 
                if (su->sg_of_su->admin_si == l_si) {
                        m_AVD_CLEAR_SG_ADMIN_SI(cb, (su->sg_of_su));
-                       avd_si_admin_state_set(l_si, SA_AMF_ADMIN_LOCKED);
+                       l_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                } else {
 
                        avd_sg_su_oper_list_del(cb, su, false);
@@ -1110,7 +1110,7 @@ void avd_sg_nored_node_fail_func(AVD_CL_
 
                if (su->sg_of_su->admin_si == l_si) {
                        m_AVD_CLEAR_SG_ADMIN_SI(cb, (su->sg_of_su));
-                       avd_si_admin_state_set(l_si, SA_AMF_ADMIN_LOCKED);
+                       l_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
 
                        if (avd_sg_nored_su_chose_asgn(cb, su->sg_of_su) != 
NULL) {
                                /* New assignments are been done in the SG, 
change state to SG realign. */
diff --git a/osaf/services/saf/amf/amfd/sg_npm_fsm.cc 
b/osaf/services/saf/amf/amfd/sg_npm_fsm.cc
--- a/osaf/services/saf/amf/amfd/sg_npm_fsm.cc
+++ b/osaf/services/saf/amf/amfd/sg_npm_fsm.cc
@@ -1193,7 +1193,7 @@ static uint32_t avd_sg_npm_su_fault_si_o
                                return NCSCC_RC_FAILURE;
                        }
                        avd_sg_su_oper_list_add(cb, su, false);
-                       avd_si_admin_state_set((su->sg_of_su->admin_si), 
SA_AMF_ADMIN_UNLOCKED);
+                       
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_UNLOCKED);
                        m_AVD_CLEAR_SG_ADMIN_SI(cb, (su->sg_of_su));
 
                        if (su->sg_of_su->sg_fsm_state == AVD_SG_FSM_SI_OPER) {
@@ -2056,7 +2056,7 @@ static uint32_t avd_sg_npm_susi_sucss_sg
                        if (avd_susi_del_send(susi) == NCSCC_RC_FAILURE)
                                return NCSCC_RC_FAILURE;
                        avd_sg_su_oper_list_add(cb, susi->su, false);
-                       avd_si_admin_state_set((su->sg_of_su->admin_si), 
SA_AMF_ADMIN_LOCKED);
+                       
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                        if (su->sg_of_su->admin_si->list_of_sisu == susi)
                                i_susi = susi->si_next;
                        else
@@ -2745,7 +2745,7 @@ static uint32_t avd_sg_npm_susi_sucss_si
                                return NCSCC_RC_FAILURE;
 
                        avd_sg_su_oper_list_add(cb, susi->su, false);
-                       avd_si_admin_state_set((su->sg_of_su->admin_si), 
SA_AMF_ADMIN_LOCKED);
+                       
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                        if (su->sg_of_su->admin_si->list_of_sisu == susi)
                                i_susi = susi->si_next;
                        else
@@ -3544,7 +3544,7 @@ static void avd_sg_npm_node_fail_sg_relg
                                /* admin pointer SI admin operation is 
LOCK/shutdown. */
                                if ((l_susi->state == SA_AMF_HA_QUIESCING) || 
(l_susi->state == SA_AMF_HA_QUIESCED)) {
                                        /* Change the admin operation to 
UNLOCK. */
-                                       
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_UNLOCKED);
+                                       
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_UNLOCKED);
 
                                        if (o_susi != AVD_SU_SI_REL_NULL) {
                                                if ((o_susi->fsm == 
AVD_SU_SI_STATE_ASGND) &&
@@ -4101,7 +4101,7 @@ static void avd_sg_npm_node_fail_si_oper
                        /* admin pointer SI admin operation is LOCK/shutdown. */
                        if ((l_susi->state == SA_AMF_HA_QUIESCING) || 
(l_susi->state == SA_AMF_HA_QUIESCED)) {
                                /* Change the admin operation to UNLOCK. */
-                               
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_UNLOCKED);
+                               
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_UNLOCKED);
 
                                if (o_susi != AVD_SU_SI_REL_NULL) {
                                        if (o_susi->su->saAmfSuReadinessState 
== SA_AMF_READINESS_IN_SERVICE) {
diff --git a/osaf/services/saf/amf/amfd/sg_nway_fsm.cc 
b/osaf/services/saf/amf/amfd/sg_nway_fsm.cc
--- a/osaf/services/saf/amf/amfd/sg_nway_fsm.cc
+++ b/osaf/services/saf/amf/amfd/sg_nway_fsm.cc
@@ -2213,7 +2213,7 @@ uint32_t avd_sg_nway_su_fault_si_oper(AV
                        if ((SA_AMF_HA_QUIESCING == curr_susi->state) ||
                            ((SA_AMF_HA_QUIESCED == curr_susi->state) && 
(AVD_SU_SI_STATE_MODIFY == curr_susi->fsm))) {
                                /* si operation aborted */
-                               avd_si_admin_state_set(si, 
SA_AMF_ADMIN_UNLOCKED);
+                               si->set_admin_state(SA_AMF_ADMIN_UNLOCKED);
                                m_AVD_CLEAR_SG_ADMIN_SI(cb, sg);
 
                                /* if quiescing, send quiesced assignment */
@@ -2232,7 +2232,7 @@ uint32_t avd_sg_nway_su_fault_si_oper(AV
                                AVD_SU_SI_REL *susi = 0;
 
                                /* si operation aborted */
-                               avd_si_admin_state_set(si, 
SA_AMF_ADMIN_UNLOCKED);
+                               si->set_admin_state(SA_AMF_ADMIN_UNLOCKED);
                                m_AVD_CLEAR_SG_ADMIN_SI(cb, sg);
 
                                /* identify the quiesced assigning susi */
@@ -2259,7 +2259,7 @@ uint32_t avd_sg_nway_su_fault_si_oper(AV
                        AVD_SU_SI_REL *susi = 0;
 
                        /* si operation aborted */
-                       avd_si_admin_state_set(si, SA_AMF_ADMIN_UNLOCKED);
+                       si->set_admin_state(SA_AMF_ADMIN_UNLOCKED);
                        m_AVD_CLEAR_SG_ADMIN_SI(cb, sg);
 
                        /* identify the quiesced assigning susi */
@@ -2940,7 +2940,7 @@ uint32_t avd_sg_nway_susi_succ_si_oper(A
 
                        /* transition to locked admin state (if shutdown) */
                        if (SA_AMF_ADMIN_SHUTTING_DOWN == 
susi->si->saAmfSIAdminState) {
-                               avd_si_admin_state_set(susi->si, 
SA_AMF_ADMIN_LOCKED);
+                               susi->si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                        }
                } else if (AVSV_SI_TOGGLE_SWITCH == susi->si->si_switch) {
                        /* si switch semantics in progress.. 
@@ -3455,7 +3455,7 @@ void avd_sg_nway_node_fail_si_oper(AVD_C
                        m_AVD_SET_SG_FSM(cb, sg, AVD_SG_FSM_SG_REALIGN);
                } else {
                        /* abort the si lock / shutdown operation */
-                       avd_si_admin_state_set(susi->si, SA_AMF_ADMIN_UNLOCKED);
+                       susi->si->set_admin_state(SA_AMF_ADMIN_UNLOCKED);
                        m_AVD_CLEAR_SG_ADMIN_SI(cb, sg);
 
                        if (((SA_AMF_HA_QUIESCED == susi->state) ||
diff --git a/osaf/services/saf/amf/amfd/sg_nwayact_fsm.cc 
b/osaf/services/saf/amf/amfd/sg_nwayact_fsm.cc
--- a/osaf/services/saf/amf/amfd/sg_nwayact_fsm.cc
+++ b/osaf/services/saf/amf/amfd/sg_nwayact_fsm.cc
@@ -334,7 +334,7 @@ uint32_t avd_sg_nacvred_su_fault_func(AV
 
                                if ((su->sg_of_su->admin_si->list_of_sisu->su 
== su) &&
                                    
(su->sg_of_su->admin_si->list_of_sisu->si_next == AVD_SU_SI_REL_NULL)) {
-                                       
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_LOCKED);
+                                       
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                                        m_AVD_CLEAR_SG_ADMIN_SI(cb, 
(su->sg_of_su));
                                }
                        } else {        /* if ((susi = 
@@ -475,7 +475,7 @@ uint32_t avd_sg_nacvred_su_fault_func(AV
 
                        if ((su->sg_of_su->admin_si->list_of_sisu->su == su) &&
                            (su->sg_of_su->admin_si->list_of_sisu->si_next == 
AVD_SU_SI_REL_NULL)) {
-                               
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_LOCKED);
+                               
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                                m_AVD_CLEAR_SG_ADMIN_SI(cb, (su->sg_of_su));
                                m_AVD_SET_SG_FSM(cb, (su->sg_of_su), 
AVD_SG_FSM_SU_OPER);
                        } else {
@@ -674,11 +674,11 @@ uint32_t avd_sg_nacvred_susi_sucss_func(
                                             == AVD_SU_SI_STATE_UNASGN) &&
                                            
(su->sg_of_su->admin_si->list_of_sisu->si_next == AVD_SU_SI_REL_NULL)) {
                                                avd_sg_su_oper_list_add(cb, 
su->sg_of_su->admin_si->list_of_sisu->su, false);
-                                               
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_LOCKED);
+                                               
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                                                m_AVD_CLEAR_SG_ADMIN_SI(cb, 
(su->sg_of_su));
                                        }
                                } else {
-                                       
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_LOCKED);
+                                       
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                                        m_AVD_CLEAR_SG_ADMIN_SI(cb, 
(su->sg_of_su));
                                }
 
@@ -726,7 +726,7 @@ uint32_t avd_sg_nacvred_susi_sucss_func(
                                    (su->sg_of_su->admin_si->list_of_sisu->su 
== su) &&
                                    
(su->sg_of_su->admin_si->list_of_sisu->si_next == AVD_SU_SI_REL_NULL)) {
                                        avd_sg_su_oper_list_add(cb, su, false);
-                                       
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_LOCKED);
+                                       
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                                        m_AVD_CLEAR_SG_ADMIN_SI(cb, 
(su->sg_of_su));
                                }
 
@@ -751,7 +751,7 @@ uint32_t avd_sg_nacvred_susi_sucss_func(
                                        if 
((su->sg_of_su->admin_si->list_of_sisu->su == su) &&
                                            
(su->sg_of_su->admin_si->list_of_sisu->si_next == AVD_SU_SI_REL_NULL)) {
                                                avd_sg_su_oper_list_add(cb, su, 
false);
-                                               
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_LOCKED);
+                                               
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                                                m_AVD_CLEAR_SG_ADMIN_SI(cb, 
(su->sg_of_su));
 
                                        }
@@ -988,12 +988,12 @@ uint32_t avd_sg_nacvred_susi_sucss_func(
                                     == AVD_SU_SI_STATE_UNASGN) &&
                                    
(su->sg_of_su->admin_si->list_of_sisu->si_next == AVD_SU_SI_REL_NULL)) {
                                        avd_sg_su_oper_list_add(cb, 
su->sg_of_su->admin_si->list_of_sisu->su, false);
-                                       
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_LOCKED);
+                                       
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                                        m_AVD_CLEAR_SG_ADMIN_SI(cb, 
(su->sg_of_su));
                                        m_AVD_SET_SG_FSM(cb, (su->sg_of_su), 
AVD_SG_FSM_SG_REALIGN);
                                }
                        } else {
-                               
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_LOCKED);
+                               
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                                m_AVD_CLEAR_SG_ADMIN_SI(cb, (su->sg_of_su));
                                m_AVD_SET_SG_FSM(cb, (su->sg_of_su), 
AVD_SG_FSM_STABLE);
                                /*As sg is stable, screen for si dependencies 
and take action on whole sg*/
@@ -1024,7 +1024,7 @@ uint32_t avd_sg_nacvred_susi_sucss_func(
                        if ((su->sg_of_su->admin_si->list_of_sisu->su == su) &&
                            (su->sg_of_su->admin_si->list_of_sisu->si_next == 
AVD_SU_SI_REL_NULL)) {
                                avd_sg_su_oper_list_add(cb, su, false);
-                               
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_LOCKED);
+                               
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                                m_AVD_CLEAR_SG_ADMIN_SI(cb, (su->sg_of_su));
                                m_AVD_SET_SG_FSM(cb, (su->sg_of_su), 
AVD_SG_FSM_SG_REALIGN);
                        }
@@ -1149,7 +1149,7 @@ uint32_t avd_sg_nacvred_susi_fail_func(A
                                    (su->sg_of_su->admin_si->list_of_sisu->su 
== su) &&
                                    
(su->sg_of_su->admin_si->list_of_sisu->si_next == AVD_SU_SI_REL_NULL)) {
                                        avd_sg_su_oper_list_add(cb, su, false);
-                                       
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_LOCKED);
+                                       
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                                        m_AVD_CLEAR_SG_ADMIN_SI(cb, 
(su->sg_of_su));
                                }
 
@@ -1174,7 +1174,7 @@ uint32_t avd_sg_nacvred_susi_fail_func(A
                                        if 
((su->sg_of_su->admin_si->list_of_sisu->su == su) &&
                                            
(su->sg_of_su->admin_si->list_of_sisu->si_next == AVD_SU_SI_REL_NULL)) {
                                                avd_sg_su_oper_list_add(cb, su, 
false);
-                                               
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_LOCKED);
+                                               
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                                                m_AVD_CLEAR_SG_ADMIN_SI(cb, 
(su->sg_of_su));
 
                                        }
@@ -1287,7 +1287,7 @@ uint32_t avd_sg_nacvred_susi_fail_func(A
                        if ((su->sg_of_su->admin_si->list_of_sisu->su == su) &&
                            (su->sg_of_su->admin_si->list_of_sisu->si_next == 
AVD_SU_SI_REL_NULL)) {
                                avd_sg_su_oper_list_add(cb, su, false);
-                               
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_LOCKED);
+                               
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                                m_AVD_CLEAR_SG_ADMIN_SI(cb, (su->sg_of_su));
                                m_AVD_SET_SG_FSM(cb, (su->sg_of_su), 
AVD_SG_FSM_SG_REALIGN);
                        }
@@ -1477,11 +1477,11 @@ void avd_sg_nacvred_node_fail_func(AVD_C
                                     == AVD_SU_SI_STATE_UNASGN) &&
                                    
(su->sg_of_su->admin_si->list_of_sisu->si_next == AVD_SU_SI_REL_NULL)) {
                                        avd_sg_su_oper_list_add(cb, 
su->sg_of_su->admin_si->list_of_sisu->su, false);
-                                       
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_LOCKED);
+                                       
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                                        m_AVD_CLEAR_SG_ADMIN_SI(cb, 
(su->sg_of_su));
                                }
                        } else {
-                               
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_LOCKED);
+                               
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                                m_AVD_CLEAR_SG_ADMIN_SI(cb, (su->sg_of_su));
                        }
 
@@ -1589,12 +1589,12 @@ void avd_sg_nacvred_node_fail_func(AVD_C
                             == AVD_SU_SI_STATE_UNASGN) &&
                            (su->sg_of_su->admin_si->list_of_sisu->si_next == 
AVD_SU_SI_REL_NULL)) {
                                avd_sg_su_oper_list_add(cb, 
su->sg_of_su->admin_si->list_of_sisu->su, false);
-                               
avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_LOCKED);
+                               
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                                m_AVD_CLEAR_SG_ADMIN_SI(cb, (su->sg_of_su));
                                m_AVD_SET_SG_FSM(cb, (su->sg_of_su), 
AVD_SG_FSM_SG_REALIGN);
                        }
                } else {
-                       avd_si_admin_state_set((su->sg_of_su->admin_si), 
SA_AMF_ADMIN_LOCKED);
+                       
su->sg_of_su->admin_si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                        m_AVD_CLEAR_SG_ADMIN_SI(cb, (su->sg_of_su));
                        if (avd_sg_nacvred_su_chose_asgn(cb, su->sg_of_su) == 
NULL) {
                                /* No New assignments are been done in the SG. 
change the FSM state */
diff --git a/osaf/services/saf/amf/amfd/si.cc b/osaf/services/saf/amf/amfd/si.cc
--- a/osaf/services/saf/amf/amfd/si.cc
+++ b/osaf/services/saf/amf/amfd/si.cc
@@ -807,7 +807,7 @@ static void si_admin_op_cb(SaImmOiHandle
                        goto done;
                }
 
-               avd_si_admin_state_set(si, SA_AMF_ADMIN_UNLOCKED);
+               si->set_admin_state(SA_AMF_ADMIN_UNLOCKED);
 
                err = si->sg_of_si->si_func(avd_cb, si);
                if (si->list_of_sisu == NULL)
@@ -816,7 +816,7 @@ static void si_admin_op_cb(SaImmOiHandle
                if (err != NCSCC_RC_SUCCESS) {
                        report_admin_op_error(immOiHandle, invocation, 
SA_AIS_ERR_BAD_OPERATION, NULL,
                                        "SI unlock of %s failed", 
objectName->value);
-                       avd_si_admin_state_set(si, SA_AMF_ADMIN_LOCKED);
+                       si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                        goto done;
                }
 
@@ -850,7 +850,7 @@ static void si_admin_op_cb(SaImmOiHandle
                }
 
                if (si->list_of_sisu == AVD_SU_SI_REL_NULL) {
-                       avd_si_admin_state_set(si, SA_AMF_ADMIN_LOCKED);
+                       si->set_admin_state(SA_AMF_ADMIN_LOCKED);
                        /* This may happen when SUs are locked before SI is 
locked. */
                        LOG_WA("SI lock of %s, has no assignments", 
objectName->value);
                        rc = SA_AIS_OK;
@@ -873,11 +873,11 @@ static void si_admin_op_cb(SaImmOiHandle
                }
 
                back_val = si->saAmfSIAdminState;
-               avd_si_admin_state_set(si, (adm_state));
+               si->set_admin_state(adm_state);
 
                err = si->sg_of_si->si_admin_down(avd_cb, si);
                if (err != NCSCC_RC_SUCCESS) {
-                       avd_si_admin_state_set(si, back_val);
+                       si->set_admin_state(back_val);
                        report_admin_op_error(immOiHandle, invocation, 
SA_AIS_ERR_BAD_OPERATION, NULL,
                                        "SI shutdown/lock of %s failed", 
objectName->value);
                        goto done;
@@ -1346,19 +1346,19 @@ void avd_si_constructor(void)
                si_ccb_completed_cb, si_ccb_apply_cb);
 }
 
-void avd_si_admin_state_set(AVD_SI* si, SaAmfAdminStateT state)
+void AVD_SI::set_admin_state(SaAmfAdminStateT state)
 {
-          SaAmfAdminStateT old_state = si->saAmfSIAdminState;
+          SaAmfAdminStateT old_state = saAmfSIAdminState;
        
        osafassert(state <= SA_AMF_ADMIN_SHUTTING_DOWN);
-       TRACE_ENTER2("%s AdmState %s => %s", si->name.value,
-                  avd_adm_state_name[si->saAmfSIAdminState], 
avd_adm_state_name[state]);
-       saflog(LOG_NOTICE, amfSvcUsrName, "%s AdmState %s => %s", 
si->name.value,
-                  avd_adm_state_name[si->saAmfSIAdminState], 
avd_adm_state_name[state]);
-       si->saAmfSIAdminState = state;
-       avd_saImmOiRtObjectUpdate(&si->name, "saAmfSIAdminState",
-       SA_IMM_ATTR_SAUINT32T, &si->saAmfSIAdminState);
-       m_AVSV_SEND_CKPT_UPDT_ASYNC_UPDT(avd_cb, si, AVSV_CKPT_SI_ADMIN_STATE);
-       avd_send_admin_state_chg_ntf(&si->name, SA_AMF_NTFID_SI_ADMIN_STATE, 
old_state, si->saAmfSIAdminState);
+       TRACE_ENTER2("%s AdmState %s => %s", name.value,
+                  avd_adm_state_name[saAmfSIAdminState], 
avd_adm_state_name[state]);
+       saflog(LOG_NOTICE, amfSvcUsrName, "%s AdmState %s => %s", name.value,
+                  avd_adm_state_name[saAmfSIAdminState], 
avd_adm_state_name[state]);
+       saAmfSIAdminState = state;
+       avd_saImmOiRtObjectUpdate(&name, "saAmfSIAdminState",
+       SA_IMM_ATTR_SAUINT32T, &saAmfSIAdminState);
+       m_AVSV_SEND_CKPT_UPDT_ASYNC_UPDT(avd_cb, this, 
AVSV_CKPT_SI_ADMIN_STATE);
+       avd_send_admin_state_chg_ntf(&name, SA_AMF_NTFID_SI_ADMIN_STATE, 
old_state, saAmfSIAdminState);
 }
 

------------------------------------------------------------------------------
HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions
Find What Matters Most in Your Big Data with HPCC Systems
Open Source. Fast. Scalable. Simple. Ideal for Dirty Data.
Leverages Graph Analysis for Fast Processing & Easy Data Exploration
http://p.sf.net/sfu/hpccsystems
_______________________________________________
Opensaf-devel mailing list
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to