def __init__(self, user_id, tenant_id, is_admin=None, roles=None, timestamp=None, request_id=None, tenant_name=None, user_name=None, overwrite=True, auth_token=None, **kwargs): """Object initialization. :param overwrite: Set to False to ensure that the greenthread local copy of the index is not overwritten. :param kwargs: Extra arguments that might be present, but we ignore because they possibly came in from older rpc messages. """ super(ContextBase, self).__init__(auth_token=auth_token, user=user_id, tenant=tenant_id, is_admin=is_admin, request_id=request_id, overwrite=overwrite, roles=roles) self.user_name = user_name self.tenant_name = tenant_name if not timestamp: timestamp = datetime.datetime.utcnow() self.timestamp = timestamp if self.is_admin is None: self.is_admin = policy.check_is_admin(self)
def __init__(self, user_id=None, tenant_id=None, is_admin=None, timestamp=None, tenant_name=None, user_name=None, is_advsvc=None, **kwargs): # NOTE(jamielennox): We maintain this argument in order for tests that # pass arguments positionally. kwargs.setdefault('project_id', tenant_id) # prefer project_name, as that's what's going to be set by # keystone. Fall back to tenant_name if for some reason it's blank. kwargs.setdefault('project_name', tenant_name) super(ContextBase, self).__init__(is_admin=is_admin, user_id=user_id, **kwargs) self.user_name = user_name if not timestamp: timestamp = datetime.datetime.utcnow() self.timestamp = timestamp # self.is_advsvc = is_advsvc # if self.is_advsvc is None: # self.is_advsvc = self.is_admin or policy.check_is_advsvc(self) if self.is_admin is None: self.is_admin = policy.check_is_admin(self)
def __init__(self, user_id, tenant_id, is_admin=None, read_deleted="no", roles=None, timestamp=None, load_admin_roles=True, request_id=None, tenant_name=None, user_name=None, overwrite=True, auth_token=None, **kwargs): """Object initialization. :param read_deleted: 'no' indicates deleted records are hidden, 'yes' indicates deleted records are visible, 'only' indicates that *only* deleted records are visible. :param overwrite: Set to False to ensure that the greenthread local copy of the index is not overwritten. :param kwargs: Extra arguments that might be present, but we ignore because they possibly came in from older rpc messages. """ super(ContextBase, self).__init__(user=user_id, tenant=tenant_id, is_admin=is_admin, request_id=request_id, auth_token=auth_token) self.user_name = user_name self.tenant_name = tenant_name self.read_deleted = read_deleted if not timestamp: timestamp = datetime.datetime.utcnow() self.timestamp = timestamp self._session = None self.roles = roles or [] if self.is_admin is None: self.is_admin = policy.check_is_admin(self) elif self.is_admin and load_admin_roles: # Ensure context is populated with admin roles admin_roles = policy.get_admin_roles() if admin_roles: self.roles = list(set(self.roles) | set(admin_roles)) # Allow openstack.common.log to access the context if overwrite or not hasattr(local.store, 'context'): local.store.context = self # Log only once the context has been configured to prevent # format errors. if kwargs: LOG.debug(_('Arguments dropped when creating ' 'context: %s'), kwargs)
def __init__(self, user_id=None, tenant_id=None, is_admin=None, timestamp=None, tenant_name=None, user_name=None, is_advsvc=None, **kwargs): # NOTE(jamielennox): We maintain this argument in order for tests that # pass arguments positionally. kwargs.setdefault('project_id', tenant_id) # prefer project_name, as that's what's going to be set by # keystone. Fall back to tenant_name if for some reason it's blank. kwargs.setdefault('project_name', tenant_name) super(ContextBase, self).__init__( is_admin=is_admin, user_id=user_id, **kwargs) self.user_name = user_name if not timestamp: timestamp = datetime.datetime.utcnow() self.timestamp = timestamp # self.is_advsvc = is_advsvc # if self.is_advsvc is None: # self.is_advsvc = self.is_admin or policy.check_is_advsvc(self) if self.is_admin is None: self.is_admin = policy.check_is_admin(self)