1.1 --- a/examples/BaseHTTPRequestHandler/OpenIDLoginApp.py Mon Nov 19 00:23:50 2007 +0000
1.2 +++ b/examples/BaseHTTPRequestHandler/OpenIDLoginApp.py Sat Nov 24 01:38:48 2007 +0000
1.3 @@ -1,59 +1,12 @@
1.4 #!/usr/bin/env python
1.5
1.6 from WebStack.Adapters.BaseHTTPRequestHandler import deploy
1.7 -from WebStack.Resources.OpenIDLogin import OpenIDLoginResource, Authenticator
1.8 -from WebStack.Resources.ResourceMap import MapResource
1.9 -from WebStack.Resources.Static import StringResource
1.10 -from WebStack.Generic import ContentType
1.11 +from OpenIDLogin import get_site_map
1.12
1.13 app_url = "http://localhost:8081" # No trailing "/"!
1.14 +resource = get_site_map(app_url)
1.15
1.16 print "Serving..."
1.17 -deploy(
1.18 - MapResource({
1.19 - "login" :
1.20 - OpenIDLoginResource(
1.21 - app_url=app_url,
1.22 - authenticator=Authenticator(
1.23 - credentials=(
1.24 - # Local identifier, username, password
1.25 - ((app_url + "/badger", "badger"), "abc"),
1.26 - ((app_url + "/vole", "vole"), "xyz"),
1.27 - )
1.28 - )
1.29 - ),
1.30 -
1.31 - # Some local OpenID pages.
1.32 -
1.33 - "badger" :
1.34 - StringResource("""
1.35 - <html>
1.36 - <head>
1.37 - <link rel="openid2.provider openid.server" href="%s/login" />
1.38 - <link rel="openid2.local_id openid.delegate" href="%s/badger" />
1.39 - <title>Badger's Home Page</title>
1.40 - </head>
1.41 - <body>
1.42 - <p>Home page for the OpenID authenticated user, <code>badger</code>.</p>
1.43 - </body>
1.44 - </html>
1.45 - """ % (app_url, app_url), ContentType("text/html")),
1.46 - "vole" :
1.47 - StringResource("""
1.48 - <html>
1.49 - <head>
1.50 - <link rel="openid2.provider openid.server" href="%s/login" />
1.51 - <link rel="openid2.local_id openid.delegate" href="%s/vole" />
1.52 - <title>Vole's Home Page</title>
1.53 - </head>
1.54 - <body>
1.55 - <p>Home page for the OpenID authenticated user, <code>vole</code>.</p>
1.56 - </body>
1.57 - </html>
1.58 - """ % (app_url, app_url), ContentType("text/html"))
1.59 - }),
1.60 - address=("", 8081),
1.61 - handle_errors=0
1.62 -)
1.63 +deploy(resource, address=("", 8081), handle_errors=0)
1.64
1.65 # vim: tabstop=4 expandtab shiftwidth=4
2.1 --- a/examples/BaseHTTPRequestHandler/SimpleWithOpenIDApp.py Mon Nov 19 00:23:50 2007 +0000
2.2 +++ b/examples/BaseHTTPRequestHandler/SimpleWithOpenIDApp.py Sat Nov 24 01:38:48 2007 +0000
2.3 @@ -1,36 +1,15 @@
2.4 #!/usr/bin/env python
2.5
2.6 from WebStack.Adapters.BaseHTTPRequestHandler import deploy
2.7 -from WebStack.Resources.OpenIDRedirect import OpenIDRedirectResource, OpenIDRedirectAuthenticator
2.8 -from WebStack.Resources.OpenIDInitiation import OpenIDInitiationResource
2.9 -from WebStack.Resources.ResourceMap import MapResource
2.10 -from Simple import SimpleResource
2.11 +from SimpleWithOpenID import get_site_map
2.12
2.13 app_url = "http://localhost:8080" # No trailing "/"!
2.14 initiation_url = "http://localhost:8080/login"
2.15 secret_key = "horses" # Must match the login authenticator's key.
2.16
2.17 +resource = get_site_map(app_url, initiation_url, secret_key)
2.18 +
2.19 print "Serving..."
2.20 -deploy(
2.21 - MapResource({
2.22 - "simple" :
2.23 - OpenIDRedirectResource(
2.24 - login_url=initiation_url,
2.25 - app_url=app_url,
2.26 - resource=SimpleResource(),
2.27 - authenticator=OpenIDRedirectAuthenticator(
2.28 - secret_key=secret_key,
2.29 - app_url=app_url
2.30 - ),
2.31 - anonymous_parameter_name="anonymous",
2.32 - logout_parameter_name="logout"
2.33 - ),
2.34 -
2.35 - # The "login" is really OpenID initiation.
2.36 -
2.37 - "login" : OpenIDInitiationResource()
2.38 - }),
2.39 - handle_errors=0
2.40 -)
2.41 +deploy(resource, handle_errors=0)
2.42
2.43 # vim: tabstop=4 expandtab shiftwidth=4
3.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
3.2 +++ b/examples/Common/OpenIDLogin/__init__.py Sat Nov 24 01:38:48 2007 +0000
3.3 @@ -0,0 +1,57 @@
3.4 +#!/usr/bin/env python
3.5 +
3.6 +"An OpenID login example with some local user pages."
3.7 +
3.8 +from WebStack.Resources.OpenIDLogin import OpenIDLoginResource, Authenticator
3.9 +from WebStack.Resources.ResourceMap import MapResource
3.10 +from WebStack.Resources.Static import StringResource
3.11 +from WebStack.Generic import ContentType
3.12 +
3.13 +def get_site_map(app_url):
3.14 +
3.15 + "Return a resource for the site having the given 'app_url'."
3.16 +
3.17 + return MapResource({
3.18 + "login" :
3.19 + OpenIDLoginResource(
3.20 + app_url=app_url,
3.21 + authenticator=Authenticator(
3.22 + credentials=(
3.23 + # Local identifier, username, password
3.24 + ((app_url + "/badger", "badger"), "abc"),
3.25 + ((app_url + "/vole", "vole"), "xyz"),
3.26 + )
3.27 + )
3.28 + ),
3.29 +
3.30 + # Some local OpenID pages.
3.31 +
3.32 + "badger" :
3.33 + StringResource("""
3.34 + <html>
3.35 + <head>
3.36 + <link rel="openid2.provider openid.server" href="%s/login" />
3.37 + <link rel="openid2.local_id openid.delegate" href="%s/badger" />
3.38 + <title>Badger's Home Page</title>
3.39 + </head>
3.40 + <body>
3.41 + <p>Home page for the OpenID authenticated user, <code>badger</code>.</p>
3.42 + </body>
3.43 + </html>
3.44 + """ % (app_url, app_url), ContentType("text/html")),
3.45 + "vole" :
3.46 + StringResource("""
3.47 + <html>
3.48 + <head>
3.49 + <link rel="openid2.provider openid.server" href="%s/login" />
3.50 + <link rel="openid2.local_id openid.delegate" href="%s/vole" />
3.51 + <title>Vole's Home Page</title>
3.52 + </head>
3.53 + <body>
3.54 + <p>Home page for the OpenID authenticated user, <code>vole</code>.</p>
3.55 + </body>
3.56 + </html>
3.57 + """ % (app_url, app_url), ContentType("text/html"))
3.58 + })
3.59 +
3.60 +# vim: tabstop=4 expandtab shiftwidth=4
4.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
4.2 +++ b/examples/Common/SimpleWithOpenID/__init__.py Sat Nov 24 01:38:48 2007 +0000
4.3 @@ -0,0 +1,52 @@
4.4 +#!/usr/bin/env python
4.5 +
4.6 +from WebStack.Generic import ContentType
4.7 +from WebStack.Resources.OpenIDRedirect import OpenIDRedirectResource, OpenIDRedirectAuthenticator
4.8 +from WebStack.Resources.OpenIDInitiation import OpenIDInitiationResource
4.9 +from WebStack.Resources.ResourceMap import MapResource
4.10 +from WebStack.Resources.Static import StringResource
4.11 +from Simple import SimpleResource
4.12 +
4.13 +def get_site_map(app_url, initiation_url, secret_key):
4.14 +
4.15 + """
4.16 + Resource a resource for the site having the given 'app_url', using the given
4.17 + 'initiation_url' for the OpenID initiation page, and the specified
4.18 + 'secret_key' for authentication tokens.
4.19 + """
4.20 +
4.21 + return MapResource({
4.22 + "simple" :
4.23 + OpenIDRedirectResource(
4.24 + login_url=initiation_url,
4.25 + app_url=app_url,
4.26 + resource=SimpleResource(),
4.27 + authenticator=OpenIDRedirectAuthenticator(
4.28 + secret_key=secret_key,
4.29 + app_url=app_url
4.30 + ),
4.31 + anonymous_parameter_name="anonymous",
4.32 + logout_parameter_name="logout"
4.33 + ),
4.34 +
4.35 + # The "login" is really OpenID initiation.
4.36 +
4.37 + "login" : OpenIDInitiationResource(),
4.38 +
4.39 + # A root page.
4.40 +
4.41 + "" :
4.42 + StringResource("""
4.43 + <html>
4.44 + <head>
4.45 + <title>Simple Application with OpenID Login</title>
4.46 + </head>
4.47 + <body>
4.48 + <p>Access the application <a href="simple">here</a>.</p>
4.49 + </body>
4.50 + </html>
4.51 + """, ContentType("text/html"))
4.52 +
4.53 + })
4.54 +
4.55 +# vim: tabstop=4 expandtab shiftwidth=4