summaryrefslogtreecommitdiffstats
path: root/echo/echo.py
diff options
context:
space:
mode:
authorbsirish <sirish.bitra@gmail.com>2011-04-17 23:13:44 +0530
committerbsirish <sirish.bitra@gmail.com>2011-04-17 23:13:44 +0530
commitb4389b177b478d029f479ca8d49e07a1ddcd0ca5 (patch)
tree5e34df50ae2652cda819f32e190cec706651af44 /echo/echo.py
parent38bf1b3b257b98ba3467b98ced057c82ab03a809 (diff)
downloadkeystone-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.py41
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="."))