application_json¶
Strategy class for application/json.
JSONDataParseStrategy
dataclass
¶
Parse strategy for JSON.
Registers strategies:
("mediaType", "application/json")
Source code in oteapi/strategies/parse/application_json.py
@dataclass
class JSONDataParseStrategy:
"""Parse strategy for JSON.
**Registers strategies**:
- `("mediaType", "application/json")`
"""
parse_config: "ResourceConfig"
def initialize(self, session: "Optional[Dict[str, Any]]" = None) -> SessionUpdate:
"""Initialize."""
return SessionUpdate()
def get(self, session: "Optional[Dict[str, Any]]" = None) -> SessionUpdateJSONParse:
"""Parse json."""
downloader = create_strategy("download", self.parse_config)
output = downloader.get()
cache = DataCache(self.parse_config.configuration)
content = cache.get(output["key"])
if isinstance(content, dict):
return SessionUpdateJSONParse(content=content)
return SessionUpdateJSONParse(content=json.loads(content))
get(self, session=None)
¶
Parse json.
Source code in oteapi/strategies/parse/application_json.py
def get(self, session: "Optional[Dict[str, Any]]" = None) -> SessionUpdateJSONParse:
"""Parse json."""
downloader = create_strategy("download", self.parse_config)
output = downloader.get()
cache = DataCache(self.parse_config.configuration)
content = cache.get(output["key"])
if isinstance(content, dict):
return SessionUpdateJSONParse(content=content)
return SessionUpdateJSONParse(content=json.loads(content))
initialize(self, session=None)
¶
Initialize.
Source code in oteapi/strategies/parse/application_json.py
def initialize(self, session: "Optional[Dict[str, Any]]" = None) -> SessionUpdate:
"""Initialize."""
return SessionUpdate()
SessionUpdateJSONParse (SessionUpdate)
pydantic-model
¶
Class for returning values from JSON Parse.
Source code in oteapi/strategies/parse/application_json.py
class SessionUpdateJSONParse(SessionUpdate):
"""Class for returning values from JSON Parse."""
content: dict = Field(..., description="Content of the JSON document.")
content: dict
pydantic-field
required
¶
Content of the JSON document.