swh.indexer.storage.api.server module#

swh.indexer.storage.api.server.get_storage()[source]#
class swh.indexer.storage.api.server.IndexerStorageServerApp(*args, backend_class=None, backend_factory=None, **kwargs)[source]#

Bases: RPCServerApp

extra_type_decoders: Dict[str, Callable] = {'idx_model': <function <lambda>>}#

Value of extra_decoders passed to json_loads or msgpack_loads to be able to deserialize more object types.

extra_type_encoders: List[Tuple[type, str, Callable]] = [(<class 'swh.indexer.storage.model.BaseRow'>, 'idx_model', <function _encode_model_object>)]#

Value of extra_encoders passed to json_dumps or msgpack_dumps to be able to serialize more object types.

swh.indexer.storage.api.server.my_error_handler(exception)[source]#
swh.indexer.storage.api.server.argument_error_handler(exception)[source]#
swh.indexer.storage.api.server.index()[source]#
swh.indexer.storage.api.server.load_and_check_config(config_path: str | None) Dict[str, Any][source]#
Check the minimal configuration is set to run the api or raise an

error explanation.

Parameters:
  • config_path – Path to the configuration file to load

  • cls – backend class (as declared in swh.indexer.classes entry point)

Raises:

Error if the setup is not as expected

Returns:

configuration as a dict

swh.indexer.storage.api.server.make_app_from_configfile()[source]#

Run the WSGI app from the webserver, loading the configuration from a configuration file.

SWH_CONFIG_FILENAME environment variable defines the configuration path to load.