X-Git-Url: http://git.cascardo.eti.br/?a=blobdiff_plain;f=ipsilon%2Fproviders%2Fsaml2%2Frest.py;h=7ef55763f3e91a386c9e7e45e872bb4a108d2773;hb=a7c8333f98f4030e02d434fa78e8fc79c0340939;hp=730b37472c7d44f24402a314864465bae315e4e3;hpb=13b359d8e4682fb239cf02293aef3a1b235a2cf6;p=cascardo%2Fipsilon.git diff --git a/ipsilon/providers/saml2/rest.py b/ipsilon/providers/saml2/rest.py index 730b374..7ef5576 100644 --- a/ipsilon/providers/saml2/rest.py +++ b/ipsilon/providers/saml2/rest.py @@ -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,18 +90,24 @@ 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)) + self.debug(repr(e)) return rest_error(400, str(e)) except Exception, e: # pylint: disable=broad-except - self._debug(repr(e)) + self.debug(repr(e)) return rest_error(500, "Failed to create Service Provider") obj.admin.add_sp(name, sp)