osaf/services/saf/amf/amfd/comp.cc | 8 +++-----
osaf/services/saf/amf/amfd/include/su.h | 4 +++-
osaf/services/saf/amf/amfd/sgproc.cc | 6 ++----
osaf/services/saf/amf/amfd/su.cc | 16 +++++++++++-----
4 files changed, 19 insertions(+), 15 deletions(-)
This patch adds member functions to access su->surestart.This was
a minor comment on #315 (for amfd code) given by Hans N.
It will be pushed only in default branch.
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
@@ -188,7 +188,7 @@ void avd_comp_readiness_state_set(AVD_CO
comp->comp_info.name.value,
avd_readiness_state_name[comp->saAmfCompReadinessState],
avd_readiness_state_name[readiness_state]);
comp->saAmfCompReadinessState = readiness_state;
- if (comp->su->surestart == false)
+ if (comp->su->get_surestart() == false)
avd_saImmOiRtObjectUpdate(&comp->comp_info.name,
"saAmfCompReadinessState",
SA_IMM_ATTR_SAUINT32T,
&comp->saAmfCompReadinessState);
m_AVSV_SEND_CKPT_UPDT_ASYNC_UPDT(avd_cb, comp,
AVSV_CKPT_COMP_READINESS_STATE);
@@ -820,10 +820,8 @@ static void comp_admin_op_cb(SaImmOiHand
Thus PI applications modeled on NWay and
Nway Active model
this is spec deviation.
*/
- if (comp->su->saAmfSUPreInstantiable == true) {
- TRACE("surestart flag in '%s' is set to
true",comp->su->name.value);
- comp->su->surestart = true;
- }
+ if (comp->su->saAmfSUPreInstantiable == true)
+ comp->su->set_surestart(true);
comp->su->set_readiness_state(SA_AMF_READINESS_OUT_OF_SERVICE);
comp->su->sg_of_su->su_fault(avd_cb, comp->su);
} else {
diff --git a/osaf/services/saf/amf/amfd/include/su.h
b/osaf/services/saf/amf/amfd/include/su.h
--- a/osaf/services/saf/amf/amfd/include/su.h
+++ b/osaf/services/saf/amf/amfd/include/su.h
@@ -87,7 +87,6 @@ class AVD_SU {
int su_act_state; // not used, kept for EDU, remove later
AVD_SG *sg_of_su; /* the service group of this SU */
- bool surestart; /* used during surestart recovery and restart op on non
restartable comp*/
AVD_AVND *su_on_node; /* the node on which this SU resides */
struct avd_su_si_rel_tag *list_of_susi; /* the list of su si
relationship elements */
@@ -147,9 +146,12 @@ class AVD_SU {
bool all_pi_comps_nonrestartable();
SaAmfAdminOperationIdT get_admin_op_id();
bool all_comps_in_presence_state(SaAmfPresenceStateT pres);
+ void set_surestart(bool state);
+ bool get_surestart();
private:
void initialize();
+ bool surestart; /* used during surestart recovery and restart op on non
restartable comp*/
void send_attribute_update(AVSV_AMF_SU_ATTR_ID attrib_id);
void set_saAmfSUPreInstantiable(bool value);
diff --git a/osaf/services/saf/amf/amfd/sgproc.cc
b/osaf/services/saf/amf/amfd/sgproc.cc
--- a/osaf/services/saf/amf/amfd/sgproc.cc
+++ b/osaf/services/saf/amf/amfd/sgproc.cc
@@ -715,8 +715,7 @@ void avd_su_oper_state_evh(AVD_CL_CB *cb
*/
if (n2d_msg->msg_info.n2d_opr_state.rec_rcvr.raw ==
AVSV_ERR_RCVR_SU_RESTART) {
TRACE("surestart recovery request for '%s'", su->name.value);
- su->surestart = true;
- TRACE("surestart flag is set true");
+ su->set_surestart(true);
/*Readiness is temporarliy kept OOS so as to reuse sg_fsm.
It will not be updated to IMM and thus not visible to user.
*/
@@ -941,8 +940,7 @@ void process_su_si_response_for_comp(AVD
there will be instantiation only when assignments
are given.
*/
comp_complete_admin_op(comp, SA_AIS_OK);
- TRACE("surestart flag is set falsefor
'%s'",comp->su->name.value);
- comp->su->surestart = false;
+ comp->su->set_surestart(false);
comp->su->set_readiness_state(SA_AMF_READINESS_IN_SERVICE);
comp->su->sg_of_su->su_insvc(avd_cb, su);
TRACE_LEAVE();
diff --git a/osaf/services/saf/amf/amfd/su.cc b/osaf/services/saf/amf/amfd/su.cc
--- a/osaf/services/saf/amf/amfd/su.cc
+++ b/osaf/services/saf/amf/amfd/su.cc
@@ -726,10 +726,9 @@ void AVD_SU::set_pres_state(SaAmfPresenc
avd_saImmOiRtObjectUpdate(&name, "saAmfSUPresenceState",
SA_IMM_ATTR_SAUINT32T, &saAmfSUPresenceState);
m_AVSV_SEND_CKPT_UPDT_ASYNC_UPDT(avd_cb, this, AVSV_CKPT_SU_PRES_STATE);
- if ((saAmfSUPresenceState == SA_AMF_PRESENCE_INSTANTIATED) &&
(surestart == true)) {
- TRACE("setting surestart flag to false");
- surestart = false;
- }
+ if ((saAmfSUPresenceState == SA_AMF_PRESENCE_INSTANTIATED) &&
+ (get_surestart() == true))
+ set_surestart(false);
//Section 3.2.1.4 Readiness State: presence state affects readiness
state of a PI SU.
if (saAmfSUPreInstantiable == true) {
if (((saAmfSUPresenceState == SA_AMF_PRESENCE_INSTANTIATED) ||
@@ -787,7 +786,7 @@ void AVD_SU::set_readiness_state(SaAmfRe
avd_readiness_state_name[saAmfSuReadinessState],
avd_readiness_state_name[readiness_state]);
saAmfSuReadinessState = readiness_state;
- if (surestart == false)
+ if (get_surestart() == false)
avd_saImmOiRtObjectUpdate(&name, "saAmfSUReadinessState",
SA_IMM_ATTR_SAUINT32T, &saAmfSuReadinessState);
m_AVSV_SEND_CKPT_UPDT_ASYNC_UPDT(avd_cb, this,
AVSV_CKPT_SU_READINESS_STATE);
@@ -2382,3 +2381,10 @@ bool AVD_SU::all_comps_in_presence_state
return false;
}
+void AVD_SU::set_surestart(bool value)
+{
+ surestart = value;
+ TRACE("surestart flag set to '%u' for '%s'",surestart, name.value);
+}
+bool AVD_SU::get_surestart()
+{ return surestart; }
------------------------------------------------------------------------------
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel