def get(cls, context, node_id): """Find a node based on its id or uuid and return a Node object. :param node_id: the id *or* uuid of a node. :returns: a :class:`Node` object. """ if strutils.is_int_like(node_id): return cls.get_by_id(context, node_id) elif uuidutils.is_uuid_like(node_id): return cls.get_by_uuid(context, node_id) else: raise exception.InvalidIdentity(identity=node_id)
def get(cls, context, board_id): """Find a board based on its id or uuid and return a Board object. :param board_id: the id *or* uuid of a board. :returns: a :class:`Board` object. """ if strutils.is_int_like(board_id): return cls.get_by_id(context, board_id) elif uuidutils.is_uuid_like(board_id): return cls.get_by_uuid(context, board_id) else: raise exception.InvalidIdentity(identity=board_id)
def get(cls, context, session_or_board_uuid): """Find a session based on its id or uuid and return a SessionWP object. :param session_id: the id *or* uuid of a session. :returns: a :class:`SessionWP` object. """ if strutils.is_int_like(session_or_board_uuid): return cls.get_by_id(context, session_or_board_uuid) elif uuidutils.is_uuid_like(session_or_board_uuid): return cls.get_by_uuid(context, session_or_board_uuid) else: raise exception.InvalidIdentity(identity=session_or_board_uuid)
def get(cls, context, location_id): """Find a location based on its id or uuid and return a Location object. :param location_id: the id *or* uuid of a location. :returns: a :class:`Location` object. """ if strutils.is_int_like(location_id): return cls.get_by_id(context, location_id) elif uuidutils.is_uuid_like(location_id): return cls.get_by_uuid(context, location_id) else: raise exception.InvalidIdentity(identity=location_id)
def get(cls, context, port_id): """Find a port based on its id or uuid and return a Port object. :param port_id: the id *or* uuid of a port. :returns: a :class:`Port` object. """ if strutils.is_int_like(port_id): return cls.get_by_id(context, port_id) elif uuidutils.is_uuid_like(port_id): return cls.get_by_uuid(context, port_id) else: raise exception.InvalidIdentity(identity=port_id)
def add_identity_filter(query, value): """Adds an identity filter to a query. Filters results by ID, if supplied value is a valid integer. Otherwise attempts to filter results by UUID. :param query: Initial query to add filter to. :param value: Value for filtering results by. :return: Modified query. """ if strutils.is_int_like(value): return query.filter_by(id=value) elif uuidutils.is_uuid_like(value): return query.filter_by(uuid=value) else: raise exception.InvalidIdentity(identity=value)