osaf/services/saf/amf/amfd/ckpt_edu.cc | 59 -----------
osaf/services/saf/amf/amfd/ckpt_enc.cc | 139 ++++++++-----------------
osaf/services/saf/amf/amfd/include/ckpt_edu.h | 3 -
3 files changed, 48 insertions(+), 153 deletions(-)
diff --git a/osaf/services/saf/amf/amfd/ckpt_edu.cc
b/osaf/services/saf/amf/amfd/ckpt_edu.cc
--- a/osaf/services/saf/amf/amfd/ckpt_edu.cc
+++ b/osaf/services/saf/amf/amfd/ckpt_edu.cc
@@ -65,10 +65,6 @@ uint32_t avd_compile_ckpt_edp(AVD_CL_CB
if (rc != NCSCC_RC_SUCCESS)
goto error;
- rc = m_NCS_EDU_COMPILE_EDP(&cb->edu_hdl, avsv_edp_ckpt_msg_sg, &err);
- if (rc != NCSCC_RC_SUCCESS)
- goto error;
-
rc = m_NCS_EDU_COMPILE_EDP(&cb->edu_hdl, avsv_edp_ckpt_msg_si, &err);
if (rc != NCSCC_RC_SUCCESS)
goto error;
@@ -304,61 +300,6 @@ uint32_t avsv_edp_ckpt_msg_app(EDU_HDL *
/*****************************************************************************
- PROCEDURE NAME: avsv_edp_ckpt_msg_sg
-
- DESCRIPTION: EDU program handler for "AVD_SG" data. This
- function is invoked by EDU for performing encode/decode
- operation on "AVD_SG" data.
-
- RETURNS: NCSCC_RC_SUCCESS/NCSCC_RC_FAILURE
-
-*****************************************************************************/
-uint32_t avsv_edp_ckpt_msg_sg(EDU_HDL *hdl, EDU_TKN *edu_tkn,
- NCSCONTEXT ptr, uint32_t *ptr_data_len, EDU_BUF_ENV
*buf_env, EDP_OP_TYPE op, EDU_ERR *o_err)
-{
- uint32_t rc = NCSCC_RC_SUCCESS;
- AVD_SG *struct_ptr = NULL, **d_ptr = NULL;
-
- EDU_INST_SET avsv_ckpt_msg_sg_rules[] = {
- {EDU_START, avsv_edp_ckpt_msg_sg, 0, 0, 0, sizeof(AVD_SG), 0,
NULL},
-
- /* AVD SG runtime attribute encoding rules */
- {EDU_EXEC, ncs_edp_sanamet, 0, 0, 0, (long)&((AVD_SG
*)0)->name, 0, NULL},
- {EDU_EXEC, ncs_edp_uns32, 0, 0, 0, (long)&((AVD_SG
*)0)->saAmfSGAdminState, 0, NULL},
- {EDU_EXEC, ncs_edp_uns32, 0, 0, 0, (long)&((AVD_SG
*)0)->saAmfSGNumCurrAssignedSUs, 0, NULL},
- {EDU_EXEC, ncs_edp_uns32, 0, 0, 0, (long)&((AVD_SG
*)0)->saAmfSGNumCurrInstantiatedSpareSUs, 0, NULL},
- {EDU_EXEC, ncs_edp_uns32, 0, 0, 0, (long)&((AVD_SG
*)0)->saAmfSGNumCurrNonInstantiatedSpareSUs, 0, NULL},
- {EDU_EXEC, ncs_edp_int, 0, 0, 0, (long)&((AVD_SG
*)0)->adjust_state, 0, NULL},
- {EDU_EXEC, ncs_edp_int, 0, 0, 0, (long)&((AVD_SG
*)0)->sg_fsm_state, 0, NULL},
-
- /*
- * Rules for Admin SI and SU operation list to be added
- * here.
- */
- {EDU_END, 0, 0, 0, 0, 0, 0, NULL},
- };
-
- if (op == EDP_OP_TYPE_ENC) {
- struct_ptr = (AVD_SG *)ptr;
- } else if (op == EDP_OP_TYPE_DEC) {
- d_ptr = (AVD_SG **)ptr;
- if (*d_ptr == NULL) {
- *o_err = EDU_ERR_MEM_FAIL;
- return NCSCC_RC_FAILURE;
- }
- memset(*d_ptr, '\0', sizeof(AVD_SG));
- struct_ptr = *d_ptr;
- } else {
- struct_ptr = static_cast<AVD_SG*>(ptr);
- }
-
- rc = m_NCS_EDU_RUN_RULES(hdl, edu_tkn, avsv_ckpt_msg_sg_rules,
struct_ptr, ptr_data_len, buf_env, op, o_err);
-
- return rc;
-}
-
-/*****************************************************************************
-
PROCEDURE NAME: avsv_edp_ckpt_msg_si
DESCRIPTION: EDU program handler for "AVD_SI" data. This
diff --git a/osaf/services/saf/amf/amfd/ckpt_enc.cc
b/osaf/services/saf/amf/amfd/ckpt_enc.cc
--- a/osaf/services/saf/amf/amfd/ckpt_enc.cc
+++ b/osaf/services/saf/amf/amfd/ckpt_enc.cc
@@ -375,8 +375,18 @@ static uint32_t enc_app_config(AVD_CL_CB
return status;
}
+static void encode_sg(NCS_UBAID *ub, const AVD_SG *sg)
+{
+ osaf_encode_sanamet(ub, &sg->name);
+ osaf_encode_uint32(ub, sg->saAmfSGAdminState);
+ osaf_encode_uint32(ub, sg->saAmfSGNumCurrAssignedSUs);
+ osaf_encode_uint32(ub, sg->saAmfSGNumCurrInstantiatedSpareSUs);
+ osaf_encode_uint32(ub, sg->saAmfSGNumCurrNonInstantiatedSpareSUs);
+ osaf_encode_uint32(ub, sg->adjust_state);
+ osaf_encode_uint32(ub, sg->sg_fsm_state);
+}
+
/****************************************************************************\
- * Function: enc_sg_config
*
* Purpose: Encode entire AVD_SG data..
*
@@ -391,39 +401,24 @@ static uint32_t enc_app_config(AVD_CL_CB
\**************************************************************************/
static uint32_t enc_sg_config(AVD_CL_CB *cb, NCS_MBCSV_CB_ENC *enc)
{
- uint32_t status = NCSCC_RC_SUCCESS;
- EDU_ERR ederror = static_cast<EDU_ERR>(0);
+ const AVD_SG *sg = (AVD_SG *)(NCS_INT64_TO_PTR_CAST(enc->io_reo_hdl));
+
TRACE_ENTER2("io_action '%u'", enc->io_action);
- /*
- * Check for the action type (whether it is add, rmv or update) and act
- * accordingly. If it is update or add, encode entire data. If it is rmv
- * send key information only.
- */
switch (enc->io_action) {
case NCS_MBCSV_ACT_ADD:
case NCS_MBCSV_ACT_UPDATE:
- /* Send entire data */
- status = m_NCS_EDU_VER_EXEC(&cb->edu_hdl, avsv_edp_ckpt_msg_sg,
&enc->io_uba,
- EDP_OP_TYPE_ENC, (AVD_SG
*)(NCS_INT64_TO_PTR_CAST(enc->io_reo_hdl)),
- &ederror, enc->i_peer_version);
+ encode_sg(&enc->io_uba, sg);
break;
case NCS_MBCSV_ACT_RMV:
- /* Send only key information */
- status = m_NCS_EDU_SEL_VER_EXEC(&cb->edu_hdl,
avsv_edp_ckpt_msg_sg, &enc->io_uba,
- EDP_OP_TYPE_ENC, (AVD_SG
*)(NCS_INT64_TO_PTR_CAST(enc->io_reo_hdl)),
- &ederror, enc->i_peer_version, 1, 1);
+ osaf_encode_sanamet(&enc->io_uba, &sg->name);
break;
default:
osafassert(0);
}
- if (status != NCSCC_RC_SUCCESS) {
- LOG_ER("%s: encode failed, ederror=%u", __FUNCTION__, ederror);
- }
-
- TRACE_LEAVE2("status '%u'", status);
- return status;
+ TRACE_LEAVE();
+ return NCSCC_RC_SUCCESS;
}
static void encode_su(NCS_UBAID *ub, AVD_SU *su, uint16_t peer_version)
@@ -1005,7 +1000,6 @@ static uint32_t enc_node_snd_msg_id(AVD_
}
/****************************************************************************\
- * Function: enc_sg_admin_state
*
* Purpose: Encode SG admin state.
*
@@ -1020,23 +1014,18 @@ static uint32_t enc_node_snd_msg_id(AVD_
\**************************************************************************/
static uint32_t enc_sg_admin_state(AVD_CL_CB *cb, NCS_MBCSV_CB_ENC *enc)
{
- uint32_t status = NCSCC_RC_SUCCESS;
- EDU_ERR ederror = static_cast<EDU_ERR>(0);
TRACE_ENTER();
osafassert(NCS_MBCSV_ACT_UPDATE == enc->io_action);
- status = m_NCS_EDU_SEL_VER_EXEC(&cb->edu_hdl, avsv_edp_ckpt_msg_sg,
&enc->io_uba,
- EDP_OP_TYPE_ENC, (AVD_SG
*)(NCS_INT64_TO_PTR_CAST(enc->io_reo_hdl)),
- &ederror, enc->i_peer_version, 2, 1, 2);
-
- osafassert(status == NCSCC_RC_SUCCESS);
+ const AVD_SG *sg = (AVD_SG *)(NCS_INT64_TO_PTR_CAST(enc->io_reo_hdl));
+ osaf_encode_sanamet(&enc->io_uba, &sg->name);
+ osaf_encode_uint32(&enc->io_uba, sg->saAmfSGAdminState);
TRACE_LEAVE();
- return status;
+ return NCSCC_RC_SUCCESS;
}
/****************************************************************************\
- * Function: enc_sg_su_assigned_num
*
* Purpose: Encode SG su assign number.
*
@@ -1051,24 +1040,18 @@ static uint32_t enc_sg_admin_state(AVD_C
\**************************************************************************/
static uint32_t enc_sg_su_assigned_num(AVD_CL_CB *cb, NCS_MBCSV_CB_ENC *enc)
{
- uint32_t status = NCSCC_RC_SUCCESS;
- EDU_ERR ederror = static_cast<EDU_ERR>(0);
TRACE_ENTER();
osafassert(NCS_MBCSV_ACT_UPDATE == enc->io_action);
+ const AVD_SG *sg = (AVD_SG *)(NCS_INT64_TO_PTR_CAST(enc->io_reo_hdl));
+ osaf_encode_sanamet(&enc->io_uba, &sg->name);
+ osaf_encode_uint32(&enc->io_uba, sg->saAmfSGNumCurrAssignedSUs);
- status = m_NCS_EDU_SEL_VER_EXEC(&cb->edu_hdl, avsv_edp_ckpt_msg_sg,
&enc->io_uba,
- EDP_OP_TYPE_ENC, (AVD_SG
*)(NCS_INT64_TO_PTR_CAST(enc->io_reo_hdl)),
- &ederror, enc->i_peer_version, 2, 1, 3);
-
- osafassert(status == NCSCC_RC_SUCCESS);
-
- TRACE_LEAVE2("status '%u'", status);
- return status;
+ TRACE_LEAVE();
+ return NCSCC_RC_SUCCESS;
}
/****************************************************************************\
- * Function: enc_sg_su_spare_num
*
* Purpose: Encode SG su spare number.
*
@@ -1083,22 +1066,18 @@ static uint32_t enc_sg_su_assigned_num(A
\**************************************************************************/
static uint32_t enc_sg_su_spare_num(AVD_CL_CB *cb, NCS_MBCSV_CB_ENC *enc)
{
- uint32_t status = NCSCC_RC_SUCCESS;
- EDU_ERR ederror = static_cast<EDU_ERR>(0);
TRACE_ENTER();
osafassert(NCS_MBCSV_ACT_UPDATE == enc->io_action);
- status = m_NCS_EDU_SEL_VER_EXEC(&cb->edu_hdl, avsv_edp_ckpt_msg_sg,
&enc->io_uba,
- EDP_OP_TYPE_ENC, (AVD_SG
*)(NCS_INT64_TO_PTR_CAST(enc->io_reo_hdl)),
- &ederror, enc->i_peer_version, 2, 1, 4);
+ const AVD_SG *sg = (AVD_SG *)(NCS_INT64_TO_PTR_CAST(enc->io_reo_hdl));
+ osaf_encode_sanamet(&enc->io_uba, &sg->name);
+ osaf_encode_uint32(&enc->io_uba,
sg->saAmfSGNumCurrInstantiatedSpareSUs);
- osafassert(status == NCSCC_RC_SUCCESS);
-
- return status;
+ TRACE_LEAVE();
+ return NCSCC_RC_SUCCESS;
}
/****************************************************************************\
- * Function: enc_sg_su_uninst_num
*
* Purpose: Encode SG su uninst number.
*
@@ -1113,23 +1092,18 @@ static uint32_t enc_sg_su_spare_num(AVD_
\**************************************************************************/
static uint32_t enc_sg_su_uninst_num(AVD_CL_CB *cb, NCS_MBCSV_CB_ENC *enc)
{
- uint32_t status = NCSCC_RC_SUCCESS;
- EDU_ERR ederror = static_cast<EDU_ERR>(0);
TRACE_ENTER();
osafassert(NCS_MBCSV_ACT_UPDATE == enc->io_action);
- status = m_NCS_EDU_SEL_VER_EXEC(&cb->edu_hdl, avsv_edp_ckpt_msg_sg,
&enc->io_uba,
- EDP_OP_TYPE_ENC, (AVD_SG
*)(NCS_INT64_TO_PTR_CAST(enc->io_reo_hdl)),
- &ederror, enc->i_peer_version, 2, 1, 5);
+ const AVD_SG *sg = (AVD_SG *)(NCS_INT64_TO_PTR_CAST(enc->io_reo_hdl));
+ osaf_encode_sanamet(&enc->io_uba, &sg->name);
+ osaf_encode_uint32(&enc->io_uba,
sg->saAmfSGNumCurrNonInstantiatedSpareSUs);
- osafassert(status == NCSCC_RC_SUCCESS);
-
- TRACE_LEAVE2("status '%u'", status);
- return status;
+ TRACE_LEAVE();
+ return NCSCC_RC_SUCCESS;
}
/****************************************************************************\
- * Function: enc_sg_adjust_state
*
* Purpose: Encode SG adjust state.
*
@@ -1144,23 +1118,18 @@ static uint32_t enc_sg_su_uninst_num(AVD
\**************************************************************************/
static uint32_t enc_sg_adjust_state(AVD_CL_CB *cb, NCS_MBCSV_CB_ENC *enc)
{
- uint32_t status = NCSCC_RC_SUCCESS;
- EDU_ERR ederror = static_cast<EDU_ERR>(0);
TRACE_ENTER();
osafassert(NCS_MBCSV_ACT_UPDATE == enc->io_action);
- status = m_NCS_EDU_SEL_VER_EXEC(&cb->edu_hdl, avsv_edp_ckpt_msg_sg,
&enc->io_uba,
- EDP_OP_TYPE_ENC, (AVD_SG
*)(NCS_INT64_TO_PTR_CAST(enc->io_reo_hdl)),
- &ederror, enc->i_peer_version, 2, 1, 6);
+ const AVD_SG *sg = (AVD_SG *)(NCS_INT64_TO_PTR_CAST(enc->io_reo_hdl));
+ osaf_encode_sanamet(&enc->io_uba, &sg->name);
+ osaf_encode_uint32(&enc->io_uba, sg->adjust_state);
- osafassert(status == NCSCC_RC_SUCCESS);
-
- TRACE_LEAVE2("status '%u'", status);
- return status;
+ TRACE_LEAVE();
+ return NCSCC_RC_SUCCESS;
}
/****************************************************************************\
- * Function: enc_sg_fsm_state
*
* Purpose: Encode SG FSM state.
*
@@ -1175,19 +1144,15 @@ static uint32_t enc_sg_adjust_state(AVD_
\**************************************************************************/
static uint32_t enc_sg_fsm_state(AVD_CL_CB *cb, NCS_MBCSV_CB_ENC *enc)
{
- uint32_t status = NCSCC_RC_SUCCESS;
- EDU_ERR ederror = static_cast<EDU_ERR>(0);
TRACE_ENTER();
osafassert(NCS_MBCSV_ACT_UPDATE == enc->io_action);
- status = m_NCS_EDU_SEL_VER_EXEC(&cb->edu_hdl, avsv_edp_ckpt_msg_sg,
&enc->io_uba,
- EDP_OP_TYPE_ENC, (AVD_SG
*)(NCS_INT64_TO_PTR_CAST(enc->io_reo_hdl)),
- &ederror, enc->i_peer_version, 2, 1, 7);
+ const AVD_SG *sg = (AVD_SG *)(NCS_INT64_TO_PTR_CAST(enc->io_reo_hdl));
+ osaf_encode_sanamet(&enc->io_uba, &sg->name);
+ osaf_encode_uint32(&enc->io_uba, sg->sg_fsm_state);
- osafassert(status == NCSCC_RC_SUCCESS);
-
- TRACE_LEAVE2("status '%u'", status);
- return status;
+ TRACE_LEAVE();
+ return NCSCC_RC_SUCCESS;
}
/****************************************************************************\
@@ -2198,8 +2163,7 @@ static uint32_t enc_cs_sg_config(AVD_CL_
{
uint32_t status = NCSCC_RC_SUCCESS;
SaNameT sg_name;
- AVD_SG *sg;
- EDU_ERR ederror = static_cast<EDU_ERR>(0);
+ const AVD_SG *sg;
TRACE_ENTER();
/*
@@ -2207,14 +2171,7 @@ static uint32_t enc_cs_sg_config(AVD_CL_
*/
sg_name.length = 0;
for (sg = avd_sg_getnext(&sg_name); sg != NULL; sg =
avd_sg_getnext(&sg_name)) {
- status = m_NCS_EDU_VER_EXEC(&cb->edu_hdl, avsv_edp_ckpt_msg_sg,
&enc->io_uba,
- EDP_OP_TYPE_ENC, sg, &ederror,
enc->i_peer_version);
-
- if (status != NCSCC_RC_SUCCESS) {
- LOG_ER("%s: encode failed, ederror=%u", __FUNCTION__,
ederror);
- return NCSCC_RC_FAILURE;
- }
-
+ encode_sg(&enc->io_uba, sg);
sg_name = sg->name;
(*num_of_obj)++;
}
diff --git a/osaf/services/saf/amf/amfd/include/ckpt_edu.h
b/osaf/services/saf/amf/amfd/include/ckpt_edu.h
--- a/osaf/services/saf/amf/amfd/include/ckpt_edu.h
+++ b/osaf/services/saf/amf/amfd/include/ckpt_edu.h
@@ -48,9 +48,6 @@ uint32_t avsv_edp_ckpt_msg_node(EDU_HDL
uint32_t avsv_edp_ckpt_msg_app(EDU_HDL *hdl, EDU_TKN *edu_tkn,
NCSCONTEXT ptr, uint32_t *ptr_data_len,
EDU_BUF_ENV *buf_env, EDP_OP_TYPE op,
EDU_ERR *o_err);
-uint32_t avsv_edp_ckpt_msg_sg(EDU_HDL *hdl, EDU_TKN *edu_tkn,
- NCSCONTEXT ptr, uint32_t *ptr_data_len,
- EDU_BUF_ENV *buf_env, EDP_OP_TYPE op,
EDU_ERR *o_err);
uint32_t avsv_edp_ckpt_msg_si(EDU_HDL *hdl, EDU_TKN *edu_tkn,
NCSCONTEXT ptr, uint32_t *ptr_data_len,
EDU_BUF_ENV *buf_env, EDP_OP_TYPE op,
EDU_ERR *o_err);
------------------------------------------------------------------------------
Time is money. Stop wasting it! Get your web API in 5 minutes.
www.restlet.com/download
http://p.sf.net/sfu/restlet
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel