swh.web.utils.identifiers module#
- swh.web.utils.identifiers.parse_object_type(object_type: str) ObjectType[source]#
- swh.web.utils.identifiers.gen_swhid(object_type: ObjectType, object_id: str, scheme_version: int = 1, metadata: SWHIDContext = {}) str[source]#
- Returns the SoftWare Hash IDentifier for a swh object based on: - the object type 
- the object id 
- the SWHID scheme version 
 - Parameters:
- object_type – the swh object type (content/directory/release/revision/snapshot) 
- object_id – the swh object id (hexadecimal representation of its hash value) 
- scheme_version – the scheme version of the SWHIDs 
 
- Returns:
- the SWHID of the object 
- Raises:
- BadInputExc – if the provided parameters do not enable to generate a valid identifier 
 
- class swh.web.utils.identifiers.ResolvedSWHID[source]#
- Bases: - TypedDict- parsed SWHID with context - swhid_parsed: QualifiedSWHID#
- URL to browse object according to SWHID context 
 
- swh.web.utils.identifiers.resolve_swhid(swhid: str, query_params: Mapping[str, str] | None = None) ResolvedSWHID[source]#
- Try to resolve a SoftWare Hash IDentifier into an url for browsing the targeted object. - Parameters:
- swhid – a SoftWare Hash IDentifier 
- query_params – optional dict filled with query parameters to append to the browse url 
 
- Returns:
- swhid_parsed: the parsed identifier 
- browse_url: the url for browsing the targeted object 
 
- Return type:
- a dict with the following keys 
 
- swh.web.utils.identifiers.get_qualified_swhid(swhid: str) QualifiedSWHID[source]#
- Leniently check if a qualified SWHID is valid and return it parsed. This allows a superset of core SWHIDs, which are badly capitalized or quoted. - Parameters:
- swhid – a SoftWare Hash IDentifier. 
- Raises:
- BadInputExc – if the provided SWHID cannot be parsed. 
- Returns:
- A parsed SWHID. 
 
- swh.web.utils.identifiers.parse_core_swhid(swhid: str) CoreSWHID[source]#
- Check if a core SWHID is valid and return it parsed. - Parameters:
- swhid – a SoftWare Hash IDentifier. 
- Raises:
- BadInputExc – if the provided SWHID cannot be parsed. 
- Returns:
- A parsed SWHID. 
 
- swh.web.utils.identifiers.group_swhids(swhids: Iterable[CoreSWHID]) Dict[ObjectType, List[bytes]][source]#
- Groups many SoftWare Hash IDentifiers into a dictionary depending on their type. - Parameters:
- swhids – an iterable of SoftWare Hash IDentifier objects 
- Returns:
- keys: object types values: object hashes 
- Return type:
- A dictionary with 
 
- swh.web.utils.identifiers.get_swhids_info(swh_objects: Iterable[SWHObjectInfo], snapshot_context: SnapshotContext | None = None, extra_context: Mapping[str, Any] | None = None) List[SWHIDInfo][source]#
- Returns a list of dict containing info related to SWHIDs of objects. - Parameters:
- swh_objects – an iterable of dict describing archived objects 
- snapshot_context – optional dict parameter describing the snapshot in which the objects have been found 
- extra_context – optional dict filled with extra contextual info about the objects 
 
- Returns:
- a list of dict containing SWHIDs info