summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrederic Peters <fpeters@entrouvert.com>2005-08-12 22:16:07 +0000
committerFrederic Peters <fpeters@entrouvert.com>2005-08-12 22:16:07 +0000
commit36997b0cedbdea0f6a3d3a0b3c7f2046405236aa (patch)
treeeadcb40d1f0cf5a135d840255b10daabbbdb0155
parent8423a16027fb612798343924f5a6e032077570a7 (diff)
expose identity/resourceoffering functions to developer
-rw-r--r--lasso/id-ff/identity.c1
-rw-r--r--lasso/id-wsf/Makefile.am5
-rw-r--r--swig/Lasso.i33
3 files changed, 37 insertions, 2 deletions
diff --git a/lasso/id-ff/identity.c b/lasso/id-ff/identity.c
index 5071eb62..b120461c 100644
--- a/lasso/id-ff/identity.c
+++ b/lasso/id-ff/identity.c
@@ -24,6 +24,7 @@
#include <lasso/lasso_config.h>
#include <lasso/id-ff/identity.h>
+#include <lasso/id-wsf/identity.h>
#include <lasso/id-ff/identityprivate.h>
struct _LassoIdentityPrivate
diff --git a/lasso/id-wsf/Makefile.am b/lasso/id-wsf/Makefile.am
index 44ee80ed..3510cc59 100644
--- a/lasso/id-wsf/Makefile.am
+++ b/lasso/id-wsf/Makefile.am
@@ -16,9 +16,13 @@ WSF_C_FILES = \
profile_service.c \
wsf_profile.c
+lasso_private_h_sources = \
+ profile_service_private.h
+
WSF_H_FILES = \
authentication.h \
discovery.h \
+ identity.h \
interaction_profile_service.h \
personal_profile_service.h \
profile_service.h \
@@ -29,3 +33,4 @@ liblasso_id_wsf_la_SOURCES = $(WSF_C_FILES)
liblassoinclude_HEADERS = $(WSF_H_FILES)
+EXTRA_DIST = $(lasso_private_h_sources)
diff --git a/swig/Lasso.i b/swig/Lasso.i
index 43ece7e2..71e4a034 100644
--- a/swig/Lasso.i
+++ b/swig/Lasso.i
@@ -1332,8 +1332,6 @@ static void set_xml_string(xmlNode **xmlnode, const char* string)
xmlDoc *doc;
xmlNode *node;
- fprintf(stderr, "setting string: %s\n", string);
-
doc = xmlReadDoc(string, NULL, NULL, XML_PARSE_NONET);
node = xmlDocGetRootElement(doc);
if (node != NULL)
@@ -5233,6 +5231,19 @@ typedef struct {
char *dump();
LassoFederation *getFederation(char *providerId);
+
+#ifdef LASSO_WSF_ENABLED
+ THROW_ERROR
+ int addResourceOffering(LassoDiscoResourceOffering *offering);
+ END_THROW_ERROR
+
+ THROW_ERROR
+ int removeResourceOffering(const char *entry_id);
+ END_THROW_ERROR
+
+ %newobject getOfferings;
+ LassoNodeList *getOfferings(const char *service_type);
+#endif
}
%{
@@ -5262,6 +5273,24 @@ LassoStringList *LassoIdentity_providerIds_get(LassoIdentity *self) {
#define LassoIdentity_dump lasso_identity_dump
#define LassoIdentity_getFederation lasso_identity_get_federation
+#ifdef LASSO_WSF_ENABLED
+#define LassoIdentity_addResourceOffering lasso_identity_add_resource_offering
+#define LassoIdentity_removeResourceOffering lasso_identity_remove_resource_offering
+
+LassoNodeList *LassoIdentity_getOfferings(LassoIdentity *self, const char *service_type) {
+ GPtrArray *array = NULL;
+ GList *list;
+
+ list = lasso_identity_get_offerings(self, service_type);
+ if (list) {
+ array = get_node_list(list);
+ g_list_foreach(list, (GFunc) free_node_list_item, NULL);
+ g_list_free(list);
+ }
+ return array;
+}
+#endif
+
%}