pam: use a pam object method instead of pam module function
[cascardo/ipsilon.git] / ipsilon / providers / saml2 / rest.py
index 1610ac4..7ef5576 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 2015  Ipsilon project Contributors, for licensee see COPYING
+# Copyright (C) 2015 Ipsilon project Contributors, for license see COPYING
 
 import cherrypy
 from ipsilon.providers.common import RestProviderBase
@@ -70,7 +70,7 @@ class SPS(RestProviderBase):
         else:
             data = idp.get_data()
 
-        for idval in data.keys():
+        for idval in data:
             result = dict(provider=data[idval].get('name'),
                           metadata=data[idval].get('metadata'),)
             results.append(result)
@@ -90,13 +90,19 @@ class SPS(RestProviderBase):
         if len(args) != 1:
             return rest_error(400, 'Invalid arguments. Found %d'
                                    ' there should be one.')
+        self.debug('REST POST %s' % kwargs)
         name = args[0]
         metadata = kwargs.get('metadata')
+        description = kwargs.get('description', '')
+        visible = kwargs.get('visible', True)
+        imagefile = kwargs.get('image', None)
+        splink = kwargs.get('splink', '')
 
         obj = self._site[FACILITY].available[self.parent.plugin_name]
         try:
             spc = ServiceProviderCreator(obj)
-            sp = spc.create_from_buffer(name, metadata)
+            sp = spc.create_from_buffer(name, metadata, description,
+                                        visible, imagefile, splink)
         except (InvalidProviderId, ServerAddProviderFailedError) as e:
             self.debug(repr(e))
             return rest_error(400, str(e))