def list_artifacts() -> Sequence[artifact_pb2.ArtifactDescriptor]: """Lists all registered artifacts. Returns: A list of artifact descriptors. """ return [artifact.data for artifact in _api.get().ListArtifacts()]
def list_artifacts(): """Lists all registered artifacts. Returns: A list of artifact descriptors. """ return [artifact.data for artifact in _api.get().ListArtifacts()]
def search(cls, ip: Optional[Text] = None, mac: Optional[Text] = None, host: Optional[Text] = None, version: Optional[int] = None, labels: Optional[List[Text]] = None, user: Optional[Text] = None) -> Sequence['Client']: """Searches for clients specified with keywords. Args: ip: Client IP address. mac: Client MAC address. host: Client hostname. version: Client version. labels: Client labels. user: Client username. Returns: A sequence of clients. """ def format_keyword(key: Text, value: Text) -> Text: return '{}:{}'.format(key, value) keywords = [] if ip is not None: keywords.append(format_keyword('ip', ip)) if mac is not None: keywords.append(format_keyword('mac', mac)) if host is not None: keywords.append(format_keyword('host', host)) if version is not None: keywords.append(format_keyword('client', str(version))) if labels: for label in labels: keywords.append(format_keyword('label', label)) if user is not None: keywords.append(format_keyword('user', user)) query = ' '.join(keywords) clients = _api.get().SearchClients(query) return representer.ClientList([cls(_) for _ in clients])
def search(cls, ip=None, mac=None, host=None, version=None, labels=None, user=None): """Searches for clients specified with keywords. Args: ip: Client IP address. mac: Client MAC address. host: Client hostname. version: Client version. labels: Client labels. user: Client username. Returns: A sequence of clients. """ def format_keyword(key, value): return '{}:{}'.format(key, value) keywords = [] if ip is not None: keywords.append(format_keyword('ip', ip)) if mac is not None: keywords.append(format_keyword('mac', mac)) if host is not None: keywords.append(format_keyword('host', host)) if version is not None: keywords.append(format_keyword('client', str(version))) if labels: for label in labels: keywords.append(format_keyword('label', label)) if user is not None: keywords.append(format_keyword('user', user)) query = ' '.join(keywords) clients = _api.get().SearchClients(query) return [cls(_) for _ in clients]
def with_id(cls, client_id: Text) -> 'Client': try: return cls(_api.get().Client(client_id).Get()) except api_errors.UnknownError as e: raise errors.UnknownClientError(client_id, e)
def _get_fake_api_client(cls): return _api.get().Client(cls.FAKE_CLIENT_ID).Get()