blackfennec.document_system.mime_type.json package
Submodules
blackfennec.document_system.mime_type.json.json_mime_type module
- class blackfennec.document_system.mime_type.json.json_mime_type.JsonMimeType(structure_serializer: StructureSerializer)[source]
Bases:
MimeType
- export_structure(output: IO, structure: Structure)[source]
Exports a structure to a IO Stream
- Parameters
output (IO) – The IO Stream to export to
structure (Structure) – The structure to export
- import_structure(to_import: IO) Structure [source]
Imports a structure from a IO Stream
- Parameters
to_import (IO) – The IO Stream to import from
- Returns
The imported structure
- Return type
- property mime_type_id: str
Returns the mime type id of this mime type e.g. application/json
blackfennec.document_system.mime_type.json.json_pointer_serializer module
- class blackfennec.document_system.mime_type.json.json_pointer_serializer.JsonPointerSerializer[source]
Bases:
object
JsonPointer Implementation according to RFC6901
Class is able to serialize and deserialize JsonPointers in relative and absolute format.
- ABSOLUTE_POINTER_PATTERN = re.compile('^(/?(([^/~])|(~[01]))*)+$')
- RELATIVE_POINTER_PATTERN = re.compile('^([0-9]+([+][0-9]+|[-][0-9]+)?)(/(([^/~])|(~[01]))*)*$')
- classmethod deserialize_absolute_pointer(json_pointer: str) list[blackfennec.structure.reference_navigation.navigator.Navigator] [source]
Parses absolute JsonPointer.
- Returns
Parsed absolute json pointer
- Return type
- classmethod deserialize_relative_pointer(json_pointer: str) list[blackfennec.structure.reference_navigation.navigator.Navigator] [source]
Deserialized relative JsonPointer.
- Parameters
json_pointer (str) – Json pointer in string form
- Returns
Parsed json pointer
- Return type
- Raises
ValueError – if the first navigator in path did not match the expected format. [0-9]+([+-][0-9]+)?
- classmethod is_absolute_json_pointer(pointer: str)[source]
Checks if pointer is absolute JsonPointer
- Parameters
pointer (str) – JsonPointer string
- Returns
True if pointer is absolute JsonPointer
- Return type
bool
- classmethod is_relative_json_pointer(pointer: str)[source]
Checks if pointer is relative JsonPointer
- Parameters
pointer (str) – JsonPointer string
- Returns
True if pointer is relative JsonPointer
- Return type
bool
- classmethod serialize(navigator_list: list[blackfennec.structure.reference_navigation.navigator.Navigator]) str [source]
Serializes a list of navigators into a Json Pointer String
- Parameters
navigator_list (list[Navigator]) – A list of navigators
- Returns
A Json Pointer String
- Return type
str
blackfennec.document_system.mime_type.json.json_reference_serializer module
- class blackfennec.document_system.mime_type.json.json_reference_serializer.JsonReferenceSerializer(document_factory, pointer_serializer: Type[JsonPointerSerializer])[source]
Bases:
object
Parses Json References
- ABSOLUTE_POINTER_PATTERN = re.compile('^(/?(([^/~])|(~[01]))*)+$')
- REFERENCE_KEY = '$ref'
- RELATIVE_POINTER_PATTERN = re.compile('^([0-9]+([+][0-9]+|[-][0-9]+)?)(/(([^/~])|(~[01]))*)*$')
- deserialize(raw: dict) list[blackfennec.structure.reference_navigation.navigator.Navigator] [source]
- serialize(navigator_list: list[blackfennec.structure.reference_navigation.navigator.Navigator]) dict [source]
Serializes a list of navigators into a json reference string
- Parameters
navigator_list (list[Navigator]) – A list of navigators
- Returns
A json reference string
- Return type
str