self.trace = []
self.calls = {}
self.multicall = False
- self.url = config.manifold_url
+ self.url = config.manifold_url()
self.server = xmlrpclib.Server(self.url, verbose=False, allow_none=True)
def __repr__ (self): return "ManifoldAPI[%s]"%self.url
return ResultValue(**result)
except Exception,error:
- # XXX Connection refused for example
- print "** API ERROR **"
+ print "** MANIFOLD API ERROR **"
+ if "Connection refused" in error:
+ raise ManifoldException ( ManifoldResult (code=ManifoldCode.SERVER_UNREACHABLE,
+ output="%s answered %s"%(self.url,error)))
+ # otherwise
+ print "====> ERROR On ManifoldAPI.%s"%methodName,"auth",self.auth,"args",args,"kwds",kwds
import traceback
traceback.print_exc()
if debug: print "KO (unexpected exception)",error
def execute_query(request, query):
if not 'manifold' in request.session or not 'auth' in request.session['manifold']:
- print "W: Used hardcoded demo account for execute_query"
+ print "W: Using hardcoded demo account for execute_query"
manifold_api_session_auth = {'AuthMethod': 'password', 'Username': 'demo', 'AuthString': 'demo'}
else:
manifold_api_session_auth = request.session['manifold']['auth']
# XXX Handle errors
#Error running query: {'origin': [0, 'XMLRPCAPI'], 'code': 2, 'description': 'No such session: No row was found for one()', 'traceback': 'Traceback (most recent call last):\n File "/usr/local/lib/python2.7/dist-packages/manifold/core/xmlrpc_api.py", line 68, in xmlrpc_forward\n user = Auth(auth).check()\n File "/usr/local/lib/python2.7/dist-packages/manifold/auth/__init__.py", line 245, in check\n return self.auth_method.check()\n File "/usr/local/lib/python2.7/dist-packages/manifold/auth/__init__.py", line 95, in check\n raise AuthenticationFailure, "No such session: %s" % e\nAuthenticationFailure: No such session: No row was found for one()\n', 'type': 2, 'ts': None, 'value': None}
-
return result['value']