DstRefAppData is just a template, don't consider it a string but a container
for anything
This commit is contained in:
parent
7d712234f9
commit
9163f6f4bb
|
@ -232,7 +232,9 @@ lasso_idwsf2_data_service_parse_query_items(LassoIdWsf2DataService *service)
|
|||
node = xpathObj->nodesetval->nodeTab[0];
|
||||
data = lasso_idwsf2_dstref_data_new();
|
||||
data_item = LASSO_IDWSF2_DSTREF_ITEM_DATA(data);
|
||||
data_item->any = g_list_append(data_item->any, xmlCopyNode(node, 1));
|
||||
LASSO_IDWSF2_DSTREF_APP_DATA(data_item)->any = g_list_append(
|
||||
LASSO_IDWSF2_DSTREF_APP_DATA(data_item)->any,
|
||||
xmlCopyNode(node, 1));
|
||||
if (item_result_query_base->itemID != NULL) {
|
||||
data_item->itemIDRef = g_strdup(item_result_query_base->itemID);
|
||||
}
|
||||
|
@ -359,7 +361,7 @@ lasso_idwsf2_data_service_get_attribute_node(LassoIdWsf2DataService *service, co
|
|||
{
|
||||
LassoIdWsf2Profile *profile = LASSO_IDWSF2_PROFILE(service);
|
||||
LassoIdWsf2DstRefQueryResponse *response;
|
||||
LassoIdWsf2DstRefItemData *data = NULL;
|
||||
LassoIdWsf2DstRefAppData *data = NULL;
|
||||
GList *iter;
|
||||
|
||||
g_return_val_if_fail(LASSO_IS_IDWSF2_DATA_SERVICE(service), NULL);
|
||||
|
@ -371,7 +373,7 @@ lasso_idwsf2_data_service_get_attribute_node(LassoIdWsf2DataService *service, co
|
|||
|
||||
/* If no item_id is given, return the first item */
|
||||
if (item_id == NULL && response->Data != NULL && response->Data->data != NULL) {
|
||||
data = LASSO_IDWSF2_DSTREF_ITEM_DATA(response->Data->data);
|
||||
data = LASSO_IDWSF2_DSTREF_APP_DATA(response->Data->data);
|
||||
if (data->any != NULL && data->any->data != NULL) {
|
||||
return xmlCopyNode(data->any->data, 1);
|
||||
}
|
||||
|
@ -386,7 +388,7 @@ lasso_idwsf2_data_service_get_attribute_node(LassoIdWsf2DataService *service, co
|
|||
continue;
|
||||
}
|
||||
if (strcmp(LASSO_IDWSF2_DSTREF_ITEM_DATA(iter->data)->itemIDRef, item_id) == 0) {
|
||||
data = LASSO_IDWSF2_DSTREF_ITEM_DATA(iter->data);
|
||||
data = LASSO_IDWSF2_DSTREF_APP_DATA(iter->data);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -114,7 +114,7 @@ lasso_idwsf2_disco_abstract_new()
|
|||
* Return value: a newly created #LassoIdWsf2DiscoAbstract object
|
||||
**/
|
||||
LassoIdWsf2DiscoAbstract*
|
||||
lasso_idwsf2_disco_abstract_new_with_string(char *content)
|
||||
lasso_idwsf2_disco_abstract_new_with_string(const char *content)
|
||||
{
|
||||
LassoIdWsf2DiscoAbstract *object;
|
||||
object = g_object_new(LASSO_TYPE_IDWSF2_DISCO_ABSTRACT, NULL);
|
||||
|
|
|
@ -72,7 +72,7 @@ struct _LassoIdWsf2DiscoAbstractClass {
|
|||
LASSO_EXPORT GType lasso_idwsf2_disco_abstract_get_type(void);
|
||||
LASSO_EXPORT LassoIdWsf2DiscoAbstract* lasso_idwsf2_disco_abstract_new(void);
|
||||
|
||||
LASSO_EXPORT LassoIdWsf2DiscoAbstract* lasso_idwsf2_disco_abstract_new_with_string(char *content);
|
||||
LASSO_EXPORT LassoIdWsf2DiscoAbstract* lasso_idwsf2_disco_abstract_new_with_string(const char *content);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
|
|
@ -114,7 +114,7 @@ lasso_idwsf2_disco_provider_id_new()
|
|||
* Return value: a newly created #LassoIdWsf2DiscoProviderID object
|
||||
**/
|
||||
LassoIdWsf2DiscoProviderID*
|
||||
lasso_idwsf2_disco_provider_id_new_with_string(char *content)
|
||||
lasso_idwsf2_disco_provider_id_new_with_string(const char *content)
|
||||
{
|
||||
LassoIdWsf2DiscoProviderID *object;
|
||||
object = g_object_new(LASSO_TYPE_IDWSF2_DISCO_PROVIDER_ID, NULL);
|
||||
|
|
|
@ -72,7 +72,7 @@ struct _LassoIdWsf2DiscoProviderIDClass {
|
|||
LASSO_EXPORT GType lasso_idwsf2_disco_provider_id_get_type(void);
|
||||
LASSO_EXPORT LassoIdWsf2DiscoProviderID* lasso_idwsf2_disco_provider_id_new(void);
|
||||
|
||||
LASSO_EXPORT LassoIdWsf2DiscoProviderID* lasso_idwsf2_disco_provider_id_new_with_string(char *content);
|
||||
LASSO_EXPORT LassoIdWsf2DiscoProviderID* lasso_idwsf2_disco_provider_id_new_with_string(const char *content);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
|
|
@ -114,7 +114,7 @@ lasso_idwsf2_disco_service_type_new()
|
|||
* Return value: a newly created #LassoIdWsf2DiscoServiceType object
|
||||
**/
|
||||
LassoIdWsf2DiscoServiceType*
|
||||
lasso_idwsf2_disco_service_type_new_with_string(char *content)
|
||||
lasso_idwsf2_disco_service_type_new_with_string(const char *content)
|
||||
{
|
||||
LassoIdWsf2DiscoServiceType *object;
|
||||
object = g_object_new(LASSO_TYPE_IDWSF2_DISCO_SERVICE_TYPE, NULL);
|
||||
|
|
|
@ -72,7 +72,7 @@ struct _LassoIdWsf2DiscoServiceTypeClass {
|
|||
LASSO_EXPORT GType lasso_idwsf2_disco_service_type_get_type(void);
|
||||
LASSO_EXPORT LassoIdWsf2DiscoServiceType* lasso_idwsf2_disco_service_type_new(void);
|
||||
|
||||
LASSO_EXPORT LassoIdWsf2DiscoServiceType* lasso_idwsf2_disco_service_type_new_with_string(char *content);
|
||||
LASSO_EXPORT LassoIdWsf2DiscoServiceType* lasso_idwsf2_disco_service_type_new_with_string(const char *content);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
|
|
@ -40,8 +40,8 @@
|
|||
|
||||
|
||||
static struct XmlSnippet schema_snippets[] = {
|
||||
{ "content", SNIPPET_TEXT_CHILD,
|
||||
G_STRUCT_OFFSET(LassoIdWsf2DstRefAppData, content) },
|
||||
{ "", SNIPPET_LIST_XMLNODES,
|
||||
G_STRUCT_OFFSET(LassoIdWsf2DstRefAppData, any) },
|
||||
{NULL, 0, 0}
|
||||
};
|
||||
|
||||
|
@ -55,7 +55,7 @@ static LassoNodeClass *parent_class = NULL;
|
|||
static void
|
||||
instance_init(LassoIdWsf2DstRefAppData *node)
|
||||
{
|
||||
node->content = NULL;
|
||||
node->any = NULL;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -106,22 +106,3 @@ lasso_idwsf2_dstref_app_data_new()
|
|||
{
|
||||
return g_object_new(LASSO_TYPE_IDWSF2_DSTREF_APP_DATA, NULL);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* lasso_idwsf2_dstref_app_data_new_with_string:
|
||||
* @content:
|
||||
*
|
||||
* Creates a new #LassoIdWsf2DstRefAppData object and initializes it
|
||||
* with @content.
|
||||
*
|
||||
* Return value: a newly created #LassoIdWsf2DstRefAppData object
|
||||
**/
|
||||
LassoIdWsf2DstRefAppData*
|
||||
lasso_idwsf2_dstref_app_data_new_with_string(char *content)
|
||||
{
|
||||
LassoIdWsf2DstRefAppData *object;
|
||||
object = g_object_new(LASSO_TYPE_IDWSF2_DSTREF_APP_DATA, NULL);
|
||||
object->content = g_strdup(content);
|
||||
return object;
|
||||
}
|
||||
|
|
|
@ -61,7 +61,7 @@ struct _LassoIdWsf2DstRefAppData {
|
|||
|
||||
/*< public >*/
|
||||
/* elements */
|
||||
char *content;
|
||||
GList *any; /* of xmlNode */
|
||||
};
|
||||
|
||||
|
||||
|
@ -72,7 +72,6 @@ struct _LassoIdWsf2DstRefAppDataClass {
|
|||
LASSO_EXPORT GType lasso_idwsf2_dstref_app_data_get_type(void);
|
||||
LASSO_EXPORT LassoIdWsf2DstRefAppData* lasso_idwsf2_dstref_app_data_new(void);
|
||||
|
||||
LASSO_EXPORT LassoIdWsf2DstRefAppData* lasso_idwsf2_dstref_app_data_new_with_string(char *content);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
|
|
@ -42,8 +42,6 @@
|
|||
|
||||
|
||||
static struct XmlSnippet schema_snippets[] = {
|
||||
{ "", SNIPPET_LIST_XMLNODES,
|
||||
G_STRUCT_OFFSET(LassoIdWsf2DstRefItemData, any) },
|
||||
{ "itemIDRef", SNIPPET_ATTRIBUTE,
|
||||
G_STRUCT_OFFSET(LassoIdWsf2DstRefItemData, itemIDRef) },
|
||||
{ "notSorted", SNIPPET_ATTRIBUTE,
|
||||
|
@ -63,7 +61,6 @@ static LassoNodeClass *parent_class = NULL;
|
|||
static void
|
||||
instance_init(LassoIdWsf2DstRefItemData *node)
|
||||
{
|
||||
node->any = NULL;
|
||||
node->itemIDRef = NULL;
|
||||
node->notSorted = NULL;
|
||||
node->changeFormat = NULL;
|
||||
|
@ -99,7 +96,7 @@ lasso_idwsf2_dstref_item_data_get_type()
|
|||
(GInstanceInitFunc) instance_init,
|
||||
};
|
||||
|
||||
this_type = g_type_register_static(LASSO_TYPE_NODE,
|
||||
this_type = g_type_register_static(LASSO_TYPE_IDWSF2_DSTREF_APP_DATA,
|
||||
"LassoIdWsf2DstRefItemData", &this_info, 0);
|
||||
}
|
||||
return this_type;
|
||||
|
|
|
@ -30,6 +30,7 @@ extern "C" {
|
|||
#endif /* __cplusplus */
|
||||
|
||||
#include <lasso/xml/xml.h>
|
||||
#include "dstref_app_data.h"
|
||||
|
||||
#define LASSO_TYPE_IDWSF2_DSTREF_ITEM_DATA (lasso_idwsf2_dstref_item_data_get_type())
|
||||
#define LASSO_IDWSF2_DSTREF_ITEM_DATA(obj) \
|
||||
|
@ -57,11 +58,9 @@ typedef struct _LassoIdWsf2DstRefItemDataClass LassoIdWsf2DstRefItemDataClass;
|
|||
|
||||
|
||||
struct _LassoIdWsf2DstRefItemData {
|
||||
LassoNode parent;
|
||||
LassoIdWsf2DstRefAppData parent;
|
||||
|
||||
/*< public >*/
|
||||
/* elements */
|
||||
GList *any; /* of xmlNode */
|
||||
/* attributes */
|
||||
char *itemIDRef;
|
||||
char *notSorted;
|
||||
|
@ -70,7 +69,7 @@ struct _LassoIdWsf2DstRefItemData {
|
|||
|
||||
|
||||
struct _LassoIdWsf2DstRefItemDataClass {
|
||||
LassoNodeClass parent;
|
||||
LassoIdWsf2DstRefAppDataClass parent;
|
||||
};
|
||||
|
||||
LASSO_EXPORT GType lasso_idwsf2_dstref_item_data_get_type(void);
|
||||
|
|
|
@ -57,6 +57,41 @@ static struct XmlSnippet schema_snippets[] = {
|
|||
static LassoNodeClass *parent_class = NULL;
|
||||
|
||||
|
||||
static xmlNode*
|
||||
get_xmlNode(LassoNode *node, gboolean lasso_dump)
|
||||
{
|
||||
xmlNode *xmlnode;
|
||||
|
||||
xmlnode = parent_class->get_xmlNode(node, lasso_dump);
|
||||
xml_insure_namespace(xmlnode, NULL, TRUE,
|
||||
LASSO_IDWSF2_DSTREF_MODIFY(node)->hrefServiceType,
|
||||
LASSO_IDWSF2_DSTREF_MODIFY(node)->prefixServiceType);
|
||||
|
||||
return xmlnode;
|
||||
}
|
||||
|
||||
static int
|
||||
init_from_xml(LassoNode *node, xmlNode *xmlnode)
|
||||
{
|
||||
LassoIdWsf2DstRefModify *object = LASSO_IDWSF2_DSTREF_MODIFY(node);
|
||||
int res;
|
||||
|
||||
res = parent_class->init_from_xml(node, xmlnode);
|
||||
if (res != 0) {
|
||||
return res;
|
||||
}
|
||||
|
||||
object->hrefServiceType = g_strdup((char*)xmlnode->ns->href);
|
||||
object->prefixServiceType = lasso_get_prefix_for_idwsf2_dst_service_href(
|
||||
object->hrefServiceType);
|
||||
if (object->prefixServiceType == NULL) {
|
||||
/* XXX: what to do here ? */
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
/*****************************************************************************/
|
||||
/* instance and class init functions */
|
||||
/*****************************************************************************/
|
||||
|
@ -66,6 +101,8 @@ instance_init(LassoIdWsf2DstRefModify *node)
|
|||
{
|
||||
node->ModifyItem = NULL;
|
||||
node->ResultQuery = NULL;
|
||||
node->prefixServiceType = NULL;
|
||||
node->hrefServiceType = NULL;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -74,6 +111,8 @@ class_init(LassoIdWsf2DstRefModifyClass *klass)
|
|||
LassoNodeClass *nclass = LASSO_NODE_CLASS(klass);
|
||||
|
||||
parent_class = g_type_class_peek_parent(klass);
|
||||
nclass->get_xmlNode = get_xmlNode;
|
||||
nclass->init_from_xml = init_from_xml;
|
||||
nclass->node_data = g_new0(LassoNodeClassData, 1);
|
||||
lasso_node_class_set_nodename(nclass, "Modify");
|
||||
lasso_node_class_set_ns(nclass, LASSO_IDWSF2_DSTREF_HREF, LASSO_IDWSF2_DSTREF_PREFIX);
|
||||
|
|
|
@ -64,6 +64,10 @@ struct _LassoIdWsf2DstRefModify {
|
|||
/* elements */
|
||||
GList *ModifyItem; /* of LassoIdWsf2DstRefModifyItem */
|
||||
GList *ResultQuery; /* of LassoIdWsf2DstRefResultQuery */
|
||||
|
||||
/*< private >*/
|
||||
char *prefixServiceType;
|
||||
char *hrefServiceType;
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -36,6 +36,8 @@
|
|||
|
||||
|
||||
static struct XmlSnippet schema_snippets[] = {
|
||||
{ "", SNIPPET_LIST_XMLNODES,
|
||||
G_STRUCT_OFFSET(LassoIdWsf2SubsRefAppData, any) },
|
||||
{ "Subscription", SNIPPET_LIST_NODES,
|
||||
G_STRUCT_OFFSET(LassoIdWsf2SubsRefAppData, Subscription) },
|
||||
{NULL, 0, 0}
|
||||
|
@ -51,6 +53,7 @@ static LassoNodeClass *parent_class = NULL;
|
|||
static void
|
||||
instance_init(LassoIdWsf2SubsRefAppData *node)
|
||||
{
|
||||
node->any = NULL;
|
||||
node->Subscription = NULL;
|
||||
}
|
||||
|
||||
|
|
|
@ -61,6 +61,7 @@ struct _LassoIdWsf2SubsRefAppData {
|
|||
|
||||
/*< public >*/
|
||||
/* elements */
|
||||
GList *any; /* of xmlNode */
|
||||
GList *Subscription;
|
||||
};
|
||||
|
||||
|
|
|
@ -26,7 +26,6 @@
|
|||
%rename(IdWsf2DstRefAppData) LassoIdWsf2DstRefAppData;
|
||||
#endif
|
||||
typedef struct {
|
||||
char *content;
|
||||
} LassoIdWsf2DstRefAppData;
|
||||
%extend LassoIdWsf2DstRefAppData {
|
||||
|
||||
|
|
|
@ -111,7 +111,7 @@ SET_NODE_INFO(IdWsf2DstRefModifyItem, Node)
|
|||
SET_NODE_INFO(IdWsf2DstRefAppData, Node)
|
||||
SET_NODE_INFO(IdWsf2DstRefTestItem, IdWsf2DstTestItemBase)
|
||||
SET_NODE_INFO(IdWsf2DstRefCreate, IdWsf2DstRequest)
|
||||
SET_NODE_INFO(IdWsf2DstRefItemData, Node)
|
||||
SET_NODE_INFO(IdWsf2DstRefItemData, IdWsf2DstRefAppData)
|
||||
SET_NODE_INFO(IdWsf2DstRefData, IdWsf2DstRefItemData)
|
||||
SET_NODE_INFO(IdWsf2DstRefModify, IdWsf2DstRequest)
|
||||
SET_NODE_INFO(IdWsf2DstRefResultQuery, IdWsf2DstResultQueryBase)
|
||||
|
|
Loading…
Reference in New Issue