# Manifold API Python interface
import copy, xmlrpclib
-from myslice.config import Config
+from myslice.configengine import ConfigEngine
from django.contrib import messages
from manifoldresult import ManifoldResult, ManifoldCode, ManifoldException
self.trace = []
self.calls = {}
self.multicall = False
- config = Config()
- self.url = config.manifold_url()
+ self.url = ConfigEngine().manifold_url()
self.server = xmlrpclib.Server(self.url, verbose=False, allow_none=True)
def __repr__ (self): return "ManifoldAPI[%s]"%self.url
# this is gross; at the very least we need to logout()
# but most importantly there is a need to refine that test, since
# code==2 does not necessarily mean an expired session
- # del request.session['manifold']
- raise Exception, 'Error running query: %r' % result
+ # XXX only if we know it is the issue
+ del request.session['manifold']
+ # Flush django session
+ request.session.flush()
+ #raise Exception, 'Error running query: %r' % result
if result['code'] == 1:
print "WARNING"
def execute_query(request, query):
if not 'manifold' in request.session or not 'auth' in request.session['manifold']:
+ request.session.flush()
raise Exception, "User not authenticated"
manifold_api_session_auth = request.session['manifold']['auth']
return _execute_query(request, query, manifold_api_session_auth)
def execute_admin_query(request, query):
- config = Config()
- admin_user, admin_password = config.manifold_admin_user_password()
+ admin_user, admin_password = ConfigEngine().manifold_admin_user_password()
admin_auth = {'AuthMethod': 'password', 'Username': admin_user, 'AuthString': admin_password}
return _execute_query(request, query, admin_auth)