text_json¶
Strategy class for text/json.
        
JSONDataParseStrategy        
  
      dataclass
  
¶
    Parse strategy for JSON.
Registers strategies:
("mediaType", "text/json")
Source code in oteapi/strategies/parse/text_json.py
          @dataclass
@StrategyFactory.register(("mediaType", "text/json"))
class JSONDataParseStrategy:
    """Parse strategy for JSON.
    **Registers strategies**:
    - `("mediaType", "text/json")`
    """
    resource_config: "ResourceConfig"
    def initialize(
        self, session: "Optional[Dict[str, Any]]" = None
    ) -> "Dict[str, Any]":
        """Initialize."""
        return {}
    def parse(self, session: "Optional[Dict[str, Any]]" = None) -> "Dict[str, Any]":
        """Parse json."""
        downloader = create_download_strategy(self.resource_config)
        output = downloader.get()
        cache = DataCache(self.resource_config.configuration)
        content = cache.get(output["key"])
        if isinstance(content, dict):
            return content
        return json.loads(content)
initialize(self, session=None)
¶
    Initialize.
Source code in oteapi/strategies/parse/text_json.py
          def initialize(
    self, session: "Optional[Dict[str, Any]]" = None
) -> "Dict[str, Any]":
    """Initialize."""
    return {}
parse(self, session=None)
¶
    Parse json.
Source code in oteapi/strategies/parse/text_json.py
          def parse(self, session: "Optional[Dict[str, Any]]" = None) -> "Dict[str, Any]":
    """Parse json."""
    downloader = create_download_strategy(self.resource_config)
    output = downloader.get()
    cache = DataCache(self.resource_config.configuration)
    content = cache.get(output["key"])
    if isinstance(content, dict):
        return content
    return json.loads(content)