lce_service.device_class_api.retrieve_classes module
- lce_service.device_class_api.retrieve_classes.get_code_for_device_class(dbc: silo_cursor, device_class_id: int, pretty: bool, include: str | None = None, exclude: str | None = None) Dict[str, Any]
Retrieve and serialize a single device class.
- Parameters:
dbc – A silo_cursor instance used to execute the database query.
device_class_id – The id of the device class.
pretty – Whether enums are serialized by name rather than by value.
include – An optional comma-separated list of the fields to include.
exclude – An optional comma-separated list of the fields to exclude.
- Returns:
The serialized device class.
- Raises:
MissingResourceError – Raised when no device class has the id.
InvalidResourceError – Raised when the stored device class fails a rule of its model that is not about a single field.
DatabaseExecutionError – Raised when the database query fails.
- lce_service.device_class_api.retrieve_classes.get_codes_for_device_classes(dbc: silo_cursor, device_class_ids: List[int], pretty: bool, include: str | None = None, exclude: str | None = None) List[Dict[str, Any]]
Retrieve and serialize device classes, with one query.
- Parameters:
dbc – A silo_cursor instance used to execute the database query.
device_class_ids – The ids of the device classes.
pretty – Whether enums are serialized by name rather than by value.
include – An optional comma-separated list of the fields to include.
exclude – An optional comma-separated list of the fields to exclude.
- Returns:
The serialized device classes, in the order of their ids.
- Raises:
MissingResourceError – Raised when no device class has one of the ids.
InvalidResourceError – Raised when a stored device class fails a rule of its model that is not about a single field.
DatabaseExecutionError – Raised when the database query fails.
- lce_service.device_class_api.retrieve_classes.get_device_class_model(dbc: silo_cursor, device_class_id: int) DeviceClass
Retrieve the model of a single device class.
- Parameters:
dbc – A silo_cursor instance used to execute the database query.
device_class_id – The id of the device class.
- Returns:
The model of the device class. Stored values that fail validation are kept and reported in its validation_errors.
- Raises:
MissingResourceError – Raised when no device class has the id.
DatabaseExecutionError – Raised when the database query fails.
- lce_service.device_class_api.retrieve_classes.get_device_classes_data_by_guids(dbc: silo_cursor, guids: List[str]) Dict[str, Dict[str, Any]]
Retrieve the stored fields of the device classes with the given GUIDs.
- Parameters:
dbc – A silo_cursor instance used to execute the database query.
guids – The GUIDs of the device classes. No query is executed if empty.
- Returns:
The stored fields of each device class found, keyed by uppercase GUID, as GUIDs are compared without regard to case.
- Raises:
DatabaseExecutionError – Raised when the database query fails.
- lce_service.device_class_api.retrieve_classes.get_device_classes_from_filters(dbc: silo_cursor, args: Dict[str, str], pretty: bool, include: str | None, exclude: str | None, require_all: bool) Dict[str, List[Dict[str, Any]]]
Retrieve and serialize the device classes matching filter criteria.
Filters use the same syntax as the other entities of the API, e.g. filter[class_name][contains]=Microsoft&filter[device_type][is]=COMPONENT. Unlike other entities, filters are optional: every device class is listed when none are provided. The limit and offset query parameters page through the device classes, ordered by id.
- Parameters:
dbc – A silo_cursor instance used to execute the database queries.
args – The query parameters of the request, holding the filters and paging.
pretty – Whether enums are serialized by name rather than by value.
include – An optional comma-separated list of the fields to include.
exclude – An optional comma-separated list of the fields to exclude.
require_all – Whether every filter must match (AND), rather than any filter (OR).
- Returns:
A dictionary holding the “device_classes” that match, ordered by id.
- Raises:
ValueError – Raised when a filter is malformed, references an unknown field or uses an unsupported operator, or a paging parameter is not an integer from 0 to MAX_PAGING_VALUE.
MissingResourceError – Raised when filters are provided and no device class matches, unless the page is empty for paging (an offset, or a limit of 0).
InvalidResourceError – Raised when a stored device class fails a rule of its model that is not about a single field.
DatabaseExecutionError – Raised when a database query fails.