diff options
| author | bsirish <sirish.bitra@gmail.com> | 2011-04-17 23:13:44 +0530 |
|---|---|---|
| committer | bsirish <sirish.bitra@gmail.com> | 2011-04-17 23:13:44 +0530 |
| commit | b4389b177b478d029f479ca8d49e07a1ddcd0ca5 (patch) | |
| tree | 5e34df50ae2652cda819f32e190cec706651af44 /echo/echo.py | |
| parent | 38bf1b3b257b98ba3467b98ced057c82ab03a809 (diff) | |
| download | keystone-b4389b177b478d029f479ca8d49e07a1ddcd0ca5.tar.gz keystone-b4389b177b478d029f479ca8d49e07a1ddcd0ca5.tar.xz keystone-b4389b177b478d029f479ca8d49e07a1ddcd0ca5.zip | |
Dev Team: validate_token , create_user ( created for test purpose) and
update_tenant
Diffstat (limited to 'echo/echo.py')
| -rw-r--r-- | echo/echo.py | 41 |
1 files changed, 39 insertions, 2 deletions
diff --git a/echo/echo.py b/echo/echo.py index 28bc05c7..2b7f6690 100644 --- a/echo/echo.py +++ b/echo/echo.py @@ -21,8 +21,11 @@ try: except ImportError: import json import eventlet +import urllib2 +import pprint class EchoApp: + def __init__(self, environ, start_response): self.envr = environ self.start = start_response @@ -32,15 +35,29 @@ class EchoApp: def __iter__(self): accept = self.envr.get("HTTP_ACCEPT","application/json") if accept == "application/xml": + return self.toXML() else: return self.toJSON() def toJSON(self): + + + token = str(self.envr.get("HTTP_X_AUTH_TOKEN","")) + + if token !='': + response=self.ValidateToken({'type':'json','token':token}) + + r=json.loads('{"auth" : { "token": {"id": "fad94013a5b3b836dbc18", "expires": "2011-04-18 16:17:59"}}}') + + self.start('200 OK', [('Content-Type', 'application/json')]) yield str(self.transform(self.dom)) + + def toXML(self): + self.start('200 OK', [('Content-Type', 'application/xml')]) yield etree.tostring (self.dom) @@ -57,7 +74,27 @@ class EchoApp: content.text = content.text + line echo.append (content) return echo + + + def ValidateToken(self,params): + + + if params['token']: + url = "http://localhost:8080/token/"+str(params['token']) + #print url + data = '{"test":""}' + if params['type']=='json': + headers = { "Accept" : "application/json", "Content-Type": "application/json",'REQUEST_METHOD':'GET' } + elif type =='xml': + headers = { "Accept" : "application/xml", "Content-Type": "application/xml" } + + req = urllib2.Request(url, data, headers) + response = urllib2.urlopen(req) + + return response.read() + else: + return abort(401, "No Token Found!") + - -wsgi.server(eventlet.listen(('', 8090)), EchoApp) +wsgi.server(eventlet.listen(('127.0.0.1', 8090)), EchoApp) #wsgi.server(eventlet.listen(('', 8090)), loadapp("config:echo.ini", relative_to=".")) |
