本文整理汇总了C++中PDSLH_CPE_CONTROLLER_OBJECT::GetDslhMprIf方法的典型用法代码示例。如果您正苦于以下问题:C++ PDSLH_CPE_CONTROLLER_OBJECT::GetDslhMprIf方法的具体用法?C++ PDSLH_CPE_CONTROLLER_OBJECT::GetDslhMprIf怎么用?C++ PDSLH_CPE_CONTROLLER_OBJECT::GetDslhMprIf使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PDSLH_CPE_CONTROLLER_OBJECT
的用法示例。
在下文中一共展示了PDSLH_CPE_CONTROLLER_OBJECT::GetDslhMprIf方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: AnscTraceEntry
ANSC_STATUS
DslhVarroSetNotification
(
ANSC_HANDLE hThisObject,
int iNotification
)
{
ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS;
PDSLH_VAR_RECORD_OBJECT pMyObject = (PDSLH_VAR_RECORD_OBJECT )hThisObject;
PDSLH_VAR_ENTITY_OBJECT pVarEntity = (PDSLH_VAR_ENTITY_OBJECT )pMyObject->hDslhVarEntity;
PDSLH_OBJ_RECORD_OBJECT pObjRecord = (PDSLH_OBJ_RECORD_OBJECT )pMyObject->hDslhObjRecord;
PDSLH_CPE_CONTROLLER_OBJECT pDslhCpeController = (PDSLH_CPE_CONTROLLER_OBJECT)pObjRecord->hDslhCpeController;
PDSLH_MPR_INTERFACE pDslhMprIf = (PDSLH_MPR_INTERFACE )pDslhCpeController->GetDslhMprIf((ANSC_HANDLE)pDslhCpeController);
PCHAR pFullName = NULL;
/* we don't allow Notification to be changed if it's defined as Forced or always Off notification */
if ( pVarEntity->ParamDescr->NotifyStatus != DSLH_CWMP_NOTIFY_STATUS_configurable && pVarEntity->ParamDescr->NotifyStatus != DSLH_CWMP_NOTIFY_STATUS_configActive)
{
return ANSC_STATUS_UNAPPLICABLE;
}
pFullName = pMyObject->GetFullName(pMyObject);
if(strstr(pFullName,"NumberOfEntries"))
{
AnscTraceEntry(("Param '%s' cannot be set to Notification Active.\n", pFullName));
return ANSC_STATUS_UNAPPLICABLE;
}
if ( iNotification == DSLH_CWMP_NOTIFICATION_active && pVarEntity->ParamDescr->NotifyStatus != DSLH_CWMP_NOTIFY_STATUS_configActive)
{
pFullName = pMyObject->GetFullName(pMyObject);
AnscTraceEntry(("Param '%s' cannot be set to Notification Active.\n", pFullName));
AnscFreeMemory(pFullName);
return ANSC_STATUS_UNAPPLICABLE;
}
if( pMyObject->Notification == iNotification)
{
return ANSC_STATUS_SUCCESS;
}
if ( (pMyObject->Notification == DSLH_CWMP_NOTIFICATION_passive) ||
(pMyObject->Notification == DSLH_CWMP_NOTIFICATION_active ) )
{
if((iNotification == DSLH_CWMP_NOTIFICATION_passive) ||
(iNotification == DSLH_CWMP_NOTIFICATION_active ) )
{
pMyObject->Notification = iNotification;
/* Bin updated in Plugfest on 06/27/2007
*
* Since it's already in the monitor queue and the monitor parameter will retrieve
* the notification state from VarRecord directly, we don't need to
* do anything and exit.
*/
return ANSC_STATUS_SUCCESS;
}
returnStatus =
pDslhMprIf->DelNotifyParam
(
pDslhMprIf->hOwnerContext,
(ANSC_HANDLE)pMyObject
);
}
pMyObject->Notification = iNotification;
/*
* Whenever a parameter change is sent in the Inform message due to a non-zero Notification
* setting, the Event code "4 VALUE CHANGE" MUST be included in the list of events. The CPE may
* return a "notification request rejected" error if an attempt is made to set notification on
* a parameter deemed inappropriate for Active Notification.
*/
if ( (pMyObject->Notification == DSLH_CWMP_NOTIFICATION_passive) ||
(pMyObject->Notification == DSLH_CWMP_NOTIFICATION_active ) )
{
if ( (pVarEntity->DataType == DSLH_CWMP_DATA_TYPE_string) &&
(pVarEntity->FormatValue1 >= 8192 ) )
{
/*
* The parameter value is too big. The backend should initiate the Notification when
* the parameter value is modified.
*/
}
else
{
returnStatus =
pDslhMprIf->RegNotifyParam
(
pDslhMprIf->hOwnerContext,
(ANSC_HANDLE)pMyObject,
(pMyObject->Notification == DSLH_CWMP_NOTIFICATION_active)
);
}
}
//.........这里部分代码省略.........
示例2: AnscFreeMemory
ANSC_STATUS
DslhVarroReset
(
ANSC_HANDLE hThisObject
)
{
ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS;
PDSLH_VAR_RECORD_OBJECT pMyObject = (PDSLH_VAR_RECORD_OBJECT )hThisObject;
PDSLH_OBJ_RECORD_OBJECT pObjRecord = (PDSLH_OBJ_RECORD_OBJECT )pMyObject->hDslhObjRecord;
PDSLH_CPE_CONTROLLER_OBJECT pDslhCpeController = (PDSLH_CPE_CONTROLLER_OBJECT)pObjRecord->hDslhCpeController;
PDSLH_MPR_INTERFACE pDslhMprIf = (PDSLH_MPR_INTERFACE )pDslhCpeController->GetDslhMprIf((ANSC_HANDLE)pDslhCpeController);
/*PPOAM_IREP_FOLDER_OBJECT pPoamIrepFoParameter = (PPOAM_IREP_FOLDER_OBJECT )pMyObject->hIrepFoParameter;*/
if ( (pMyObject->Notification == DSLH_CWMP_NOTIFICATION_passive) ||
(pMyObject->Notification == DSLH_CWMP_NOTIFICATION_active ) )
{
returnStatus =
pDslhMprIf->DelNotifyParam
(
pDslhMprIf->hOwnerContext,
(ANSC_HANDLE)pMyObject
);
}
if ( pMyObject->AccessList )
{
AnscFreeMemory(pMyObject->AccessList);
pMyObject->AccessList = NULL;
}
/*
if ( pPoamIrepFoParameter )
{
pPoamIrepFoParameter->Remove((ANSC_HANDLE)pPoamIrepFoParameter);
}
pMyObject->hIrepFoParameter = (ANSC_HANDLE)NULL;
*/
if ( pMyObject->TempParamValue )
{
SlapFreeVariable(pMyObject->TempParamValue);
pMyObject->TempParamValue = NULL;
}
if ( pMyObject->TempParamValueTrans )
{
if ( (pMyObject->TempParamValueTrans->Syntax == SLAP_VAR_SYNTAX_handle) && pMyObject->TempParamValueTrans->Variant.varHandle )
{
AnscFreeMemory(pMyObject->TempParamValueTrans->Variant.varHandle);
}
SlapFreeVariable(pMyObject->TempParamValueTrans);
pMyObject->TempParamValueTrans = NULL;
}
if ( pMyObject->OldParamValue )
{
SlapFreeVariable(pMyObject->OldParamValue);
pMyObject->OldParamValue = NULL;
}
pMyObject->bAlreadySet = FALSE;
return ANSC_STATUS_SUCCESS;
}
示例3: AnscTraceError
int
CcspCcMbi_GetParameterNames
(
char * parameterName,
dbus_bool nextLevel,
int *size ,
parameterInfoStruct_t ***val,
void * user_data
)
{
ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS;
PDSLH_MPA_INTERFACE pDslhMpaIf = (PDSLH_MPA_INTERFACE )g_pDslhCpeController->GetDslhMpaIf((ANSC_HANDLE)g_pDslhCpeController);
PDSLH_MPR_INTERFACE pDslhMprIf = (PDSLH_MPR_INTERFACE )g_pDslhCpeController->GetDslhMprIf((ANSC_HANDLE)g_pDslhCpeController);
PDSLH_CWMP_PARAM_INFO pParamInfoArray = (PDSLH_CWMP_PARAM_INFO )NULL;
ULONG ulArraySize = (ULONG )0;
parameterInfoStruct_t** ppReturnVal = NULL;
ULONG i = 0;
/*with component binding, we have multiple CpeController handle, each for a component*/
if (user_data)
{
PDSLH_CPE_CONTROLLER_OBJECT pCpeco = user_data;
pDslhMpaIf = (PDSLH_MPA_INTERFACE )pCpeco->GetDslhMpaIf((ANSC_HANDLE)pCpeco);
pDslhMprIf = (PDSLH_MPR_INTERFACE )pCpeco->GetDslhMprIf((ANSC_HANDLE)pCpeco);
}
if ( !parameterName )
{
AnscTraceError(("Input parameter invalid for ssp_SsdMbi_GetParameterNames\n"));
returnStatus = CCSP_ERR_INVALID_PARAMETER_NAME;
goto EXIT;
}
if ( !pDslhMpaIf )
{
AnscTraceError(("pDslhMpaIf is NULL for ssp_SsdMbi_GetParameterNames\n"));
returnStatus = ANSC_STATUS_INTERNAL_ERROR;
goto EXIT;
}
/* increase the request counter by one */
pDslhMprIf->IncReqCounter(pDslhMprIf->hOwnerContext);
returnStatus =
pDslhMpaIf->GetParameterNames
(
pDslhMpaIf->hOwnerContext,
DSLH_MPA_ENTITY_ACS,
parameterName,
nextLevel,
&pParamInfoArray,
&ulArraySize
);
if ( returnStatus != ANSC_STATUS_SUCCESS )
{
/*
* Something serious has screwed up (e.g. we have run out of system memory), abort!
*/
goto EXIT1;
}
ppReturnVal = AnscAllocateMemory(ulArraySize * sizeof(parameterInfoStruct_t *));
if ( !ppReturnVal )
{
AnscTraceError(("ssp_SsdMbi_GetParameterNames -- No Resource\n"));
returnStatus = ANSC_STATUS_RESOURCES;
goto EXIT1;
}
AnscZeroMemory(ppReturnVal, ulArraySize * sizeof(parameterInfoStruct_t *));
for ( i = 0; i < ulArraySize; i++ )
{
ppReturnVal[i] = AnscAllocateMemory(sizeof(parameterInfoStruct_t));
if ( !ppReturnVal[i] )
{
AnscTraceError(("ssp_SsdMbi_GetParameterNames -- No Resource\n"));
returnStatus = ANSC_STATUS_RESOURCES;
goto EXIT1;
}
AnscZeroMemory(ppReturnVal[i], sizeof(parameterInfoStruct_t));
ppReturnVal[i]->parameterName = AnscCloneString(pParamInfoArray[i].Name);
ppReturnVal[i]->writable = pParamInfoArray[i].bWritable;
}
EXIT1:
//.........这里部分代码省略.........
示例4: AnscTraceWarning
int
CcspCcMbi_SetParameterAttributes
(
int sessionId,
parameterAttributeStruct_t *val,
int size,
void * user_data
)
{
ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS;
PDSLH_MPA_INTERFACE pDslhMpaIf = (PDSLH_MPA_INTERFACE )g_pDslhCpeController->GetDslhMpaIf((ANSC_HANDLE)g_pDslhCpeController);
PDSLH_MPR_INTERFACE pDslhMprIf = (PDSLH_MPR_INTERFACE )g_pDslhCpeController->GetDslhMprIf((ANSC_HANDLE)g_pDslhCpeController);
ULONG uMaxParam = 128;
PDSLH_CWMP_SET_PARAM_ATTRIB pParamArray = NULL;
PDSLH_CWMP_SET_PARAM_ATTRIB pParamAttr = NULL;
int i = 0;
/*with component binding, we have multiple CpeController handle, each for a component*/
if (user_data)
{
PDSLH_CPE_CONTROLLER_OBJECT pCpeco = user_data;
pDslhMpaIf = (PDSLH_MPA_INTERFACE )pCpeco->GetDslhMpaIf((ANSC_HANDLE)pCpeco);
pDslhMprIf = (PDSLH_MPR_INTERFACE )pCpeco->GetDslhMprIf((ANSC_HANDLE)pCpeco);
}
if ( (g_currentSessionID != 0) && (sessionId != g_currentSessionID) )
{
AnscTraceWarning(("!!! SetParameterAttributes discarded, session id is NOT match !!!\n"));
return ANSC_STATUS_DISCARD;
}
if ( !val || size == 0 )
{
AnscTraceError(("Input parameter invalid for ssp_SsdMbiSetParameterAttributes\n"));
returnStatus = CCSP_ERR_INVALID_ARGUMENTS;
goto EXIT;
}
if( (ULONG)size >= uMaxParam )
{
AnscTrace("Too many params in 'SetParameterAttributes'\n");
returnStatus = CCSP_ERR_INVALID_ARGUMENTS;
goto EXIT;
}
if ( !pDslhMpaIf )
{
AnscTraceError(("pDslhMpaIf is NULL for ssp_SsdMbiSetParameterValues\n"));
returnStatus = ANSC_STATUS_INTERNAL_ERROR;
goto EXIT;
}
/* increase the request counter by one */
pDslhMprIf->IncReqCounter(pDslhMprIf->hOwnerContext);
pParamArray = (PDSLH_CWMP_SET_PARAM_ATTRIB)
AnscAllocateMemory(sizeof(DSLH_CWMP_SET_PARAM_ATTRIB) * size);
if( pParamArray == NULL)
{
returnStatus = CCSP_ERR_INVALID_ARGUMENTS;
goto EXIT;
}
for ( i = 0; i < size; i++ )
{
pParamAttr = &pParamArray[i];
pParamAttr->Name = AnscCloneString(val[i].parameterName);
pParamAttr->bNotificationChange = val[i].notificationChanged;
pParamAttr->Notification = val[i].notification ? DSLH_CWMP_NOTIFICATION_passive : DSLH_CWMP_NOTIFICATION_off;
pParamAttr->bAccessListChange = val[i].accessControlChanged;
pParamAttr->AccessList = AccessControlBitMaskToAccessList(val[i].accessControlBitmask);
}
returnStatus =
pDslhMpaIf->SetParameterAttributes
(
pDslhMpaIf->hOwnerContext,
DSLH_MPA_ENTITY_ACS,
(ANSC_HANDLE)pParamArray,
size
);
if( pParamArray != NULL)
{
for( i = 0; i < size; i ++ )
{
pParamAttr = &pParamArray[i];
DslhCwmpCleanSetParamAttrib(pParamAttr);
//.........这里部分代码省略.........
示例5: if
int
CcspCcMbi_SetParameterValues
(
int sessionId,
unsigned int writeID,
parameterValStruct_t *val,
int size,
dbus_bool commit,
char ** invalidParameterName,
void * user_data
)
{
ANSC_STATUS returnStatus = ANSC_STATUS_SUCCESS;
PDSLH_MPA_INTERFACE pDslhMpaIf = (PDSLH_MPA_INTERFACE )g_pDslhCpeController->GetDslhMpaIf((ANSC_HANDLE)g_pDslhCpeController);
PDSLH_MPR_INTERFACE pDslhMprIf = (PDSLH_MPR_INTERFACE )g_pDslhCpeController->GetDslhMprIf((ANSC_HANDLE)g_pDslhCpeController);
PDSLH_CWMP_PARAM_VALUE pParamArray = NULL;
PDSLH_CWMP_PARAM_VALUE pParamValue = NULL;
PSLAP_VARIABLE pSlapVariable = (PSLAP_VARIABLE)NULL;
PDSLH_CWMP_SOAP_FAULT pCwmpSoapFault = (PDSLH_CWMP_SOAP_FAULT )NULL;
int iStatus = 0;
int i = 0;
/*with component binding, we have multiple CpeController handle, each for a component*/
if (user_data)
{
PDSLH_CPE_CONTROLLER_OBJECT pCpeco = user_data;
pDslhMpaIf = (PDSLH_MPA_INTERFACE )pCpeco->GetDslhMpaIf((ANSC_HANDLE)pCpeco);
pDslhMprIf = (PDSLH_MPR_INTERFACE )pCpeco->GetDslhMprIf((ANSC_HANDLE)pCpeco);
}
if ( (g_currentSessionID != 0) && (sessionId != g_currentSessionID) )
{
AnscTraceWarning(("!!! SetParameterValues discarded, session id is NOT match !!!\n"));
return ANSC_STATUS_DISCARD;
}
if ( !val || size == 0 )
{
AnscTraceError(("Input parameter invalid for ssp_SsdMbi_GetParameterValues\n"));
returnStatus = CCSP_ERR_INVALID_ARGUMENTS;
goto EXIT;
}
if ( !pDslhMpaIf )
{
AnscTraceError(("pDslhMpaIf is NULL for ssp_SsdMbiSetParameterValues\n"));
returnStatus = ANSC_STATUS_INTERNAL_ERROR;
goto EXIT;
}
/* increase the request counter by one */
pDslhMprIf->IncReqCounter(pDslhMprIf->hOwnerContext);
pParamArray = (PDSLH_CWMP_PARAM_VALUE)
AnscAllocateMemory(sizeof(DSLH_CWMP_PARAM_VALUE) * size);
if( pParamArray == NULL)
{
returnStatus = ANSC_STATUS_RESOURCES;
goto EXIT;
}
for ( i = 0; i < size; i++ )
{
pParamValue = &pParamArray[i];
pParamValue->Name = AnscCloneString(val[i].parameterName);
pSlapVariable = (PSLAP_VARIABLE)AnscAllocateMemory(sizeof(SLAP_VARIABLE));
if ( !pSlapVariable )
{
returnStatus = ANSC_STATUS_RESOURCES;
goto EXIT1;
}
SlapInitVariable(pSlapVariable);
pParamValue->Value = pSlapVariable;
pSlapVariable->Name = NULL;
pSlapVariable->ContentType = 0;
pSlapVariable->UsageType = 0;
if ( val[i].type == ccsp_string )
{
pSlapVariable->Syntax = SLAP_VAR_SYNTAX_string;
pSlapVariable->Variant.varString = AnscCloneString(val[i].parameterValue);
}
else if ( val[i].type == ccsp_int )
{
//.........这里部分代码省略.........