Remove print lines from openid
[cascardo/ipsilon.git] / ipsilon / providers / openidp.py
old mode 100755 (executable)
new mode 100644 (file)
index 335b41b..13f6819
@@ -1,10 +1,9 @@
-#!/usr/bin/python
-#
 # Copyright (C) 2014  Ipsilon project Contributors, for licensee see COPYING
 
 from __future__ import absolute_import
 
 from ipsilon.providers.common import ProviderBase
+from ipsilon.providers.openid.store import OpenIDStore
 from ipsilon.providers.openid.auth import OpenID
 from ipsilon.providers.openid.extensions.common import LoadExtensions
 from ipsilon.util.plugin import PluginObject
@@ -12,8 +11,6 @@ from ipsilon.util import config as pconfig
 from ipsilon.info.common import InfoMapping
 
 from openid.server.server import Server
-# TODO: Move this to the database
-from openid.store.memstore import MemoryStore
 
 
 class IdpProvider(ProviderBase):
@@ -25,13 +22,15 @@ class IdpProvider(ProviderBase):
         self.server = None
         self.basepath = None
         self.extensions = LoadExtensions()
-        print self.extensions.available()
-        print self.extensions.available().keys()
         self.description = """
 Provides OpenID 2.0 authentication infrastructure. """
 
         self.new_config(
             self.name,
+            pconfig.String(
+                'database url',
+                'Database URL for OpenID temp storage',
+                'openid.sqlite'),
             pconfig.String(
                 'default email domain',
                 'Used for users missing the email property.',
@@ -93,6 +92,13 @@ Provides OpenID 2.0 authentication infrastructure. """
         self.page = OpenID(site, self)
         # self.admin = AdminPage(site, self)
 
+        return self.page
+
+    def init_idp(self):
+        self.server = Server(
+            OpenIDStore(self.get_config_value('database url')),
+            op_endpoint=self.endpoint_url)
+
         # Expose OpenID presence in the root
         headers = self._root.default_headers
         headers['X-XRDS-Location'] = self.endpoint_url+'XRDS'
@@ -103,11 +109,6 @@ Provides OpenID 2.0 authentication infrastructure. """
                         HEAD_LINK % ('openid.server', self.endpoint_url)]
         html_heads['openid'] = openid_heads
 
-        return self.page
-
-    def init_idp(self):
-        self.server = Server(MemoryStore(), op_endpoint=self.endpoint_url)
-
     def on_enable(self):
         super(IdpProvider, self).on_enable()
         self.init_idp()