ARSperl
view release on metacpan or search on metacpan
AMALLOCNN(query,1,ARQualifierStruct);
(void) ARError_reset();
Zero(&assignedGroupList, 1, ARInternalIdList);
Zero(&groupList, 1, ARInternalIdList);
Zero(×tamp, 1, ARTimestamp);
Zero(owner, 1, ARAccessNameType);
Zero(lastChanged, 1, ARAccessNameType);
Zero(&diaryList, 1, ARDiaryList);
Zero(&status, 1, ARStatusList);
Zero(&actionList, 1, ARActiveLinkActionList);
Zero(&elseList, 1, ARActiveLinkActionList);
Zero(&schemaList, 1, ARWorkflowConnectStruct);
Zero(&objPropList, 1, ARPropList);
ret = ARGetActiveLink(ctrl, name, &order,
&schemaList, /* new in 4.5 */
#if AR_CURRENT_API_VERSION >= 17
&assignedGroupList,
#endif
&groupList,
&executeMask, &controlField, &focusField,
&enable, query, &actionList, &elseList, &helpText,
×tamp, owner, lastChanged, &changeDiary,
&objPropList, /* new in 4.5 */
#if AR_CURRENT_API_VERSION >= 14
NULL, /* errorActlinkOptions, reserved for future use */
NULL, /* errorActlinkName, reserved for future use */
#endif
&status);
#ifdef PROFILE
((ars_ctrl *)ctrl)->queries++;
#endif
if (!ARError( ret,status)) {
RETVAL = newHV();
sv_2mortal( (SV*) RETVAL );
hv_store(RETVAL, "name", strlen("name") , newSVpv(name, 0), 0);
hv_store(RETVAL, "order", strlen("order") , newSViv(order),0);
hv_store(RETVAL, "schemaList", strlen("schemaList") , /* WorkflowConnectStruct */
perl_ARNameList(ctrl, schemaList.u.schemaList), 0);
hv_store(RETVAL, "objPropList", strlen("objPropList") ,
perl_ARPropList(ctrl, &objPropList), 0);
#if AR_CURRENT_API_VERSION >= 17
hv_store(RETVAL, "assignedGroupList", strlen("assignedGroupList") ,
perl_ARList( ctrl,
(ARList *)&assignedGroupList,
(ARS_fn)perl_ARInternalId,
sizeof(ARInternalId)), 0);
#endif
hv_store(RETVAL, "groupList", strlen("groupList") ,
perl_ARList( ctrl,
(ARList *)&groupList,
(ARS_fn)perl_ARInternalId,
sizeof(ARInternalId)), 0);
hv_store(RETVAL, "executeMask", strlen("executeMask") , newSViv(executeMask),0);
hv_store(RETVAL, "focusField", strlen("focusField") , newSViv(focusField), 0);
hv_store(RETVAL, "controlField", strlen("controlField") ,
newSViv(controlField), 0);
hv_store(RETVAL, "enable", strlen("enable") , newSViv(enable), 0);
/* a bit of a hack -- makes blessed reference to qualifier */
ref = newSViv(0);
sv_setref_pv(ref, "ARQualifierStructPtr", (void*)query);
hv_store(RETVAL, "query", strlen("query") , ref, 0);
hv_store(RETVAL, "actionList", strlen("actionList") ,
perl_ARList(ctrl,
(ARList *)&actionList,
(ARS_fn)perl_ARActiveLinkActionStruct,
sizeof(ARActiveLinkActionStruct)), 0);
hv_store(RETVAL, "elseList", strlen("elseList") ,
perl_ARList(ctrl,
(ARList *)&elseList,
(ARS_fn)perl_ARActiveLinkActionStruct,
sizeof(ARActiveLinkActionStruct)), 0);
if (helpText)
hv_store(RETVAL, "helpText", strlen("helpText") , newSVpv(helpText,0), 0);
hv_store(RETVAL, "timestamp", strlen("timestamp") , newSViv(timestamp), 0);
hv_store(RETVAL, "owner", strlen("owner") , newSVpv(owner,0), 0);
hv_store(RETVAL, "lastChanged", strlen("lastChanged") , newSVpv(lastChanged,0), 0);
if (changeDiary) {
ret = ARDecodeDiary(ctrl, changeDiary, &diaryList, &status);
if (!ARError(ret, status)) {
hv_store(RETVAL, "changeDiary", strlen("changeDiary") ,
perl_ARList(ctrl, (ARList *)&diaryList,
(ARS_fn)perl_diary,
sizeof(ARDiaryStruct)), 0);
FreeARDiaryList(&diaryList, FALSE);
}
}
FreeARInternalIdList(&groupList,FALSE);
FreeARActiveLinkActionList(&actionList,FALSE);
FreeARActiveLinkActionList(&elseList,FALSE);
FreeARWorkflowConnectStruct(&schemaList, FALSE);
FreeARPropList(&objPropList, FALSE);
if(helpText) arsperl_FreeARTextString(helpText);
if(changeDiary) arsperl_FreeARTextString(changeDiary);
}else{
XSRETURN_UNDEF;
}
}
OUTPUT:
RETVAL
HV *
ars_GetFilter(ctrl,name)
ARControlStruct * ctrl
char * name
CODE:
{
int ret;
unsigned int order;
unsigned int opSet;
unsigned int enable;
char *helpText = CPNULL;
char *changeDiary = CPNULL;
ARFilterActionList actionList;
ARFilterActionList elseList;
ARTimestamp timestamp;
ARAccessNameType owner;
ARAccessNameType lastChanged;
ARStatusList status;
SV *ref;
ARQualifierStruct *query;
ARDiaryList diaryList;
ARWorkflowConnectStruct schemaList;
ARPropList objPropList;
#if AR_CURRENT_API_VERSION >= 13
unsigned int errorFilterOptions;
ARNameType errorFilterName;
#endif
AMALLOCNN(query,1,ARQualifierStruct);
(void) ARError_reset();
Zero(&actionList, 1, ARFilterActionList);
Zero(&elseList, 1, ARFilterActionList);
Zero(×tamp, 1, ARTimestamp);
Zero(owner, 1, ARAccessNameType);
Zero(lastChanged, 1, ARAccessNameType);
Zero(&diaryList, 1, ARDiaryList);
Zero(&status, 1,ARStatusList);
Zero(&schemaList, 1, ARWorkflowConnectStruct);
Zero(&objPropList, 1, ARPropList);
#if AR_CURRENT_API_VERSION >= 13
Zero(&errorFilterName, 1,ARNameType);
#endif
ret = ARGetFilter(ctrl, name, &order,
&schemaList,
&opSet, &enable,
query, &actionList, &elseList, &helpText,
×tamp, owner, lastChanged, &changeDiary,
&objPropList,
#if AR_CURRENT_API_VERSION >= 13
&errorFilterOptions,
errorFilterName,
#endif
&status);
#ifdef PROFILE
((ars_ctrl *)ctrl)->queries++;
#endif
if (!ARError( ret,status)) {
RETVAL = newHV();
sv_2mortal( (SV*) RETVAL );
hv_store(RETVAL, "name", strlen("name") , newSVpv(name, 0), 0);
hv_store(RETVAL, "order", strlen("order") , newSViv(order), 0);
hv_store(RETVAL, "schemaList", strlen("schemaList") , /* WorkflowConnectStruct */
perl_ARNameList(ctrl, schemaList.u.schemaList), 0);
hv_store(RETVAL, "objPropList", strlen("objPropList") ,
perl_ARPropList(ctrl, &objPropList), 0);
hv_store(RETVAL, "opSet", strlen("opSet") , newSViv(opSet), 0);
hv_store(RETVAL, "enable", strlen("enable") , newSViv(enable), 0);
/* a bit of a hack -- makes blessed reference to qualifier */
ref = newSViv(0);
sv_setref_pv(ref, "ARQualifierStructPtr", (void *)query);
hv_store(RETVAL, "query", strlen("query") , ref, 0);
hv_store(RETVAL, "actionList", strlen("actionList") ,
perl_ARList(ctrl,
(ARList *)&actionList,
(ARS_fn)perl_ARFilterActionStruct,
sizeof(ARFilterActionStruct)), 0);
hv_store(RETVAL, "elseList", strlen("elseList") ,
perl_ARList(ctrl,
(ARList *)&elseList,
(ARS_fn)perl_ARFilterActionStruct,
sizeof(ARFilterActionStruct)), 0);
if(helpText)
hv_store(RETVAL, "helpText", strlen("helpText") , newSVpv(helpText, 0), 0);
hv_store(RETVAL, "timestamp", strlen("timestamp") , newSViv(timestamp), 0);
hv_store(RETVAL, "owner", strlen("owner") , newSVpv(owner, 0), 0);
hv_store(RETVAL, "lastChanged", strlen("lastChanged") , newSVpv(lastChanged, 0), 0);
if (changeDiary) {
ret = ARDecodeDiary(ctrl, changeDiary, &diaryList, &status);
if (!ARError(ret, status)) {
hv_store(RETVAL, "changeDiary", strlen("changeDiary") ,
perl_ARList(ctrl, (ARList *)&diaryList,
(ARS_fn)perl_diary,
sizeof(ARDiaryStruct)), 0);
FreeARDiaryList(&diaryList, FALSE);
}
}
#if AR_CURRENT_API_VERSION >= 13
hv_store(RETVAL, "errorFilterOptions", strlen("errorFilterOptions") , newSViv(errorFilterOptions), 0);
hv_store(RETVAL, "errorFilterName", strlen("errorFilterName") , newSVpv(errorFilterName, 0), 0);
#endif
FreeARFilterActionList(&actionList,FALSE);
FreeARFilterActionList(&elseList,FALSE);
FreeARWorkflowConnectStruct(&schemaList, FALSE);
FreeARPropList(&objPropList, FALSE);
if(helpText) {
AP_FREE(helpText);
}
if(changeDiary) {
AP_FREE(changeDiary);
}
}else{
XSRETURN_UNDEF;
}
}
OUTPUT:
RETVAL
void
ars_GetServerStatistics(ctrl,...)
ARControlStruct * ctrl
PPCODE:
{
ARServerInfoRequestList requestList;
ARServerInfoList serverInfo;
int i = 0, ret = 0;
unsigned int ui = 0;
ARStatusList status;
( run in 0.534 second using v1.01-cache-2.11-cpan-39bf76dae61 )