intern.service.boss.service module
# Copyright 2016 The Johns Hopkins University Applied Physics Laboratory # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. from intern.service.service import Service from requests import Session class BossService(Service): """Partial implementation of intern.service.service.Service for the Boss' services. Attributes: _versions (dictionary): Stores supported versions of the Boss API. _session (requests.Session): The HTTP session used for each service. _session_send_opts (dictionary): Options to use when sending requests. See http://docs.python-requests.org/en/master/api/#sessionapi """ def __init__(self): Service.__init__(self) self._versions = {} self._session = Session() self._session_send_opts = {} def __del__(self): if self._session is not None: self._session.close() @property def session(self): return self._session @property def session_send_opts(self): return self._session_send_opts @session_send_opts.setter def session_send_opts(self, opts_dict): self._session_send_opts = opts_dict def set_auth(self, token, **kwargs): """Set the token for authentication/authorization. Args: token (string): Token generated by the Django Rest Framework. """ self._auth = token def get_api_impl(self, version): """Get service object that implements the given version. Args: version (string): Requested version such as '0.4'. Returns: (intern.service.boss.Service): A service object that implements the requested version of the API. Raises: KeyError """ return self._versions[version] @property def url_prefix(self): return self.base_protocol + '://' + self.base_url
Classes
class BossService
Partial implementation of intern.service.service.Service for the Boss' services.
Attributes:
_versions (dictionary): Stores supported versions of the Boss API.
_session (requests.Session): The HTTP session used for each service.
_session_send_opts (dictionary): Options to use when sending requests. See http://docs.python-requests.org/en/master/api/#sessionapi
class BossService(Service): """Partial implementation of intern.service.service.Service for the Boss' services. Attributes: _versions (dictionary): Stores supported versions of the Boss API. _session (requests.Session): The HTTP session used for each service. _session_send_opts (dictionary): Options to use when sending requests. See http://docs.python-requests.org/en/master/api/#sessionapi """ def __init__(self): Service.__init__(self) self._versions = {} self._session = Session() self._session_send_opts = {} def __del__(self): if self._session is not None: self._session.close() @property def session(self): return self._session @property def session_send_opts(self): return self._session_send_opts @session_send_opts.setter def session_send_opts(self, opts_dict): self._session_send_opts = opts_dict def set_auth(self, token, **kwargs): """Set the token for authentication/authorization. Args: token (string): Token generated by the Django Rest Framework. """ self._auth = token def get_api_impl(self, version): """Get service object that implements the given version. Args: version (string): Requested version such as '0.4'. Returns: (intern.service.boss.Service): A service object that implements the requested version of the API. Raises: KeyError """ return self._versions[version] @property def url_prefix(self): return self.base_protocol + '://' + self.base_url
Ancestors (in MRO)
- BossService
- intern.service.service.Service
- __builtin__.object
Instance variables
var auth
var base_protocol
var base_url
var session
var session_send_opts
var url_prefix
Methods
def __init__(
self)
def __init__(self): Service.__init__(self) self._versions = {} self._session = Session() self._session_send_opts = {}
def get_api_impl(
self, version)
Get service object that implements the given version.
Args:
version (string): Requested version such as '0.4'.
Returns
(intern.service.boss.Service): A service object that implements the
requested version of the API.
Raises
KeyError
def get_api_impl(self, version): """Get service object that implements the given version. Args: version (string): Requested version such as '0.4'. Returns: (intern.service.boss.Service): A service object that implements the requested version of the API. Raises: KeyError """ return self._versions[version]
def set_auth(
self, token, **kwargs)
Set the token for authentication/authorization.
Args:
token (string): Token generated by the Django Rest Framework.
def set_auth(self, token, **kwargs): """Set the token for authentication/authorization. Args: token (string): Token generated by the Django Rest Framework. """ self._auth = token