Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so just use oauth login instead. :)
Paste
Pasted as Plain Text by db ( 13 years ago )
class RootFactory(object):
__parent__ = None
__name__ = None
def __init__(self, request):
self.request = request
def __getitem__(self, key):
if key == "api":
dispatch = APIDispatcher(self.request)
dispatch.__name__ = key
dispatch.__parent__ = self
return dispatch
raise KeyError
class APIDispatcher(object):
__parent__ = None
__name__ = None
def __init__(self, request):
self.request = request
def __getitem__(self, key):
if key == "companies":
dispatch = CompanySelector(self.request)
dispatch.__name__ = key
dispatch.__parent__ = self
return dispatch
raise KeyError
class CompanySelector(object):
__parent__ = None
__name__ = None
def __init__(self, request):
self.request = request
def __getitem__(self, key):
company = get_db_session().query(Company)
company = company.get(key)
if not company:
raise KeyError
self.request.company = company
dispatcher = CompanyDispatcher(self.request)
dispatcher.__name__ = key
dispatcher.__parent__ = self
return dispatcher
class CompanyDispatcher(object):
__parent__ = None
__name__ = None
def __init__(self, request):
self.request = request
def __getitem__(self, key):
if key == "documents":
dispatch = DocumentDispatcher(self.request)
dispatch.__name__ = key
dispatch.__parent__ = self
return dispatch
elif key == "invites":
dispatch = InviteDispatcher(self.request)
dispatch.__name__ = key
dispatch.__parent__ = self
return dispatch
elif key == "employees":
dispatch = EmployeeDispatcher(self.request)
dispatch.__name__ = key
dispatch.__parent__ = self
return dispatch
raise KeyError
Revise this Paste