コード例 #1
0
ファイル: api.py プロジェクト: gnomix/drest
 def __init__(self, baseurl, **kw):
     kw['baseurl'] = baseurl
     super(API, self).__init__(**kw)        
     
     self._resources = []
     self._request = self._meta.request(**kw)
     request.validate(self._request)
コード例 #2
0
ファイル: resource.py プロジェクト: gnomix/drest
 def __init__(self, **kw):
     super(ResourceHandler, self).__init__(**kw)        
     try:
         assert self._meta.name, "name required"
         assert self._meta.path, "path required"
     except AssertionError as e:
         raise exc.dRestResourceError(e.args[0])
         
     self._meta.path = self._meta.path.lstrip('/').rstrip('/')
     
     # instantiate it only if its not
     if not getattr(self._meta.request, '_meta', None):
         if not self._meta.baseurl:
             raise exc.dRestResourceError('baseurl required when passing uninstantiated request handler.')
         self._request = self._meta.request(baseurl=self._meta.baseurl)
     else:
         self._request = self._meta.request
         self._meta.request = self._request.__class__
     request.validate(self._request)
コード例 #3
0
ファイル: api.py プロジェクト: yrik/drest
    def _setup_request_handler(self, **kw):
        request.validate(self._meta.request_handler)
        self.request = self._meta.request_handler(**kw)

        # just makes things easier to be able to wrap meta under the api
        # and pass it to the request handler.
        for meta in dir(self._meta):
            if meta.startswith('_'):
                continue
            if hasattr(self.request._meta, meta):
                setattr(self.request._meta, meta, getattr(self._meta, meta))

        for key in self._meta.extra_headers:
            self.request.add_header(key, self._meta.extra_headers[key])

        for key in self._meta.extra_params:
            self.request.add_param(key, self._meta.extra_params[key])

        for key in self._meta.extra_url_params:
            self.request.add_url_param(key, self._meta.extra_url_params[key])
コード例 #4
0
ファイル: api.py プロジェクト: eirmag/drest
    def _setup_request_handler(self, **kw):
        request.validate(self._meta.request_handler)
        self.request = self._meta.request_handler(**kw)

        # just makes things easier to be able to wrap meta under the api
        # and pass it to the request handler.
        for meta in dir(self._meta):
            if meta.startswith('_'):
                continue
            if hasattr(self.request._meta, meta):
                setattr(self.request._meta, meta, getattr(self._meta, meta))
                
        for key in self._meta.extra_headers:
            self.request.add_header(key, self._meta.extra_headers[key])
        
        for key in self._meta.extra_params:
            self.request.add_param(key, self._meta.extra_params[key])
        
        for key in self._meta.extra_url_params:
            self.request.add_url_param(key, self._meta.extra_url_params[key])