osaf/services/saf/amf/amfd/comp.cc    |  5 +++++
 osaf/services/saf/amf/amfd/ndfsm.cc   |  7 +++++--
 osaf/services/saf/amf/amfnd/compdb.cc |  7 ++-----
 3 files changed, 12 insertions(+), 7 deletions(-)


diff --git a/osaf/services/saf/amf/amfd/comp.cc 
b/osaf/services/saf/amf/amfd/comp.cc
--- a/osaf/services/saf/amf/amfd/comp.cc
+++ b/osaf/services/saf/amf/amfd/comp.cc
@@ -225,6 +225,11 @@ static void comp_add_to_model(AVD_COMP *
                comp->su->saAmfSUPreInstantiable = static_cast<SaBoolT>(true);
        }
 
+       if ((comp->su->su_on_node->node_state == AVD_AVND_STATE_PRESENT) ||
+                       (comp->su->su_on_node->node_state == 
AVD_AVND_STATE_NO_CONFIG) ||
+                       (comp->su->su_on_node->node_state == 
AVD_AVND_STATE_NCS_INIT))
+               avd_comp_oper_state_set(comp, SA_AMF_OPERATIONAL_ENABLED);
+
        /* Set runtime cached attributes. */
        avd_saImmOiRtObjectUpdate(&comp->su->name, 
const_cast<SaImmAttrNameT>("saAmfSUPreInstantiable"),
                SA_IMM_ATTR_SAUINT32T, &comp->su->saAmfSUPreInstantiable);
diff --git a/osaf/services/saf/amf/amfd/ndfsm.cc 
b/osaf/services/saf/amf/amfd/ndfsm.cc
--- a/osaf/services/saf/amf/amfd/ndfsm.cc
+++ b/osaf/services/saf/amf/amfd/ndfsm.cc
@@ -205,9 +205,12 @@ void avd_nd_ncs_su_assigned(AVD_CL_CB *c
                avd_node_oper_state_set(avnd, SA_AMF_OPERATIONAL_ENABLED);
 
                /* Make application SUs operational state ENABLED */
-               for (su = avnd->list_of_su; su != NULL; su = 
su->avnd_list_su_next)
+               for (su = avnd->list_of_su; su != NULL; su = 
su->avnd_list_su_next) {
                        avd_su_oper_state_set(su, SA_AMF_OPERATIONAL_ENABLED);
-
+                       AVD_COMP *comp;
+                       for (comp = su->list_of_comp; comp; comp = 
comp->su_comp_next)
+                               avd_comp_oper_state_set(comp, 
SA_AMF_OPERATIONAL_ENABLED);
+               }
                /* We can now set the LEDS */
                avd_snd_set_leds_msg(cb, avnd);
 
diff --git a/osaf/services/saf/amf/amfnd/compdb.cc 
b/osaf/services/saf/amf/amfnd/compdb.cc
--- a/osaf/services/saf/amf/amfnd/compdb.cc
+++ b/osaf/services/saf/amf/amfnd/compdb.cc
@@ -1482,11 +1482,8 @@ static int comp_init(AVND_COMP *comp, co
                else
                        cmd->timeout = comptype->saAmfCtDefClcCliTimeout;
        }
-
-       if (m_AVND_COMP_TYPE_IS_PREINSTANTIABLE(comp))
-               m_AVND_COMP_OPER_STATE_SET(comp, SA_AMF_OPERATIONAL_DISABLED);
-       else
-               m_AVND_COMP_OPER_STATE_SET(comp, SA_AMF_OPERATIONAL_ENABLED);
+       /* Set oper status to enable irrespective of comp category PI or NPI. */
+       m_AVND_COMP_OPER_STATE_SET(comp, SA_AMF_OPERATIONAL_ENABLED);
 
         /* Remove any previous environment variables */
         if (comp->saAmfCompCmdEnv != NULL) {

------------------------------------------------------------------------------
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to