def create(self, id, secret=None, homepage=None, capabilities_url=None, room_id=None, token_url=None, capdoc=None): if homepage is None and capdoc is not None: homepage = capdoc['links']['homepage'] if token_url is None and capdoc is not None: token_url = capdoc['capabilities']['oauth2Provider']['tokenUrl'] if capabilities_url is None and capdoc is not None: capabilities_url = capdoc['links']['self'] if capdoc is not None: api_base_url = capdoc['capabilities']['hipchatApiProvider']['url'] else: api_base_url = capabilities_url.rsplit('/', 1)[0] installed_from = token_url and base_url(token_url) or None return BaseManager.create( self, id=id, room_id=room_id, secret=secret, homepage=homepage, token_url=token_url, capabilities_url=capabilities_url, api_base_url=api_base_url, installed_from=installed_from, )
def create_or_update_app(self, sync_id, app_id, project, data=None, platform=DSymPlatform.GENERIC, no_fetch=False): if data is None: data = {} if not no_fetch: _auto_enrich_data(data, app_id, platform) existing_app = DSymApp.objects.filter(app_id=app_id, project=project).first() if existing_app is not None: now = timezone.now() existing_app.update( sync_id=sync_id, data=data, last_synced=now, ) return existing_app return BaseManager.create(self, sync_id=sync_id, app_id=app_id, data=data, project=project, platform=platform)
def create(self, id, secret=None, homepage=None, capabilities_url=None, room_id=None, token_url=None, capdoc=None): if homepage is None and capdoc is not None: homepage = capdoc['links']['homepage'] if token_url is None and capdoc is not None: token_url = capdoc['capabilities']['oauth2Provider']['tokenUrl'] if capabilities_url is None and capdoc is not None: capabilities_url = capdoc['links']['self'] if capdoc is not None: api_base_url = capdoc['capabilities']['hipchatApiProvider']['url'] else: api_base_url = capabilities_url.rsplit('/', 1)[0] installed_from = token_url and base_url(token_url) or None return BaseManager.create(self, id=id, room_id=room_id, secret=secret, homepage=homepage, token_url=token_url, capabilities_url=capabilities_url, api_base_url=api_base_url, installed_from=installed_from, )
def create_or_update_app( self, sync_id, app_id, project, data=None, platform=DSymPlatform.GENERIC, no_fetch=False ): if data is None: data = {} if not no_fetch: _auto_enrich_data(data, app_id, platform) existing_app = DSymApp.objects.filter(app_id=app_id, project=project).first() if existing_app is not None: now = timezone.now() existing_app.update( sync_id=sync_id, data=data, last_synced=now, ) return existing_app return BaseManager.create( self, sync_id=sync_id, app_id=app_id, data=data, project=project, platform=platform )