github.com/treeverse/lakefs@v1.24.1-0.20240520134607-95648127bfb0/clients/python/lakefs_sdk/models/config.py (about)

     1  # coding: utf-8
     2  
     3  """
     4      lakeFS API
     5  
     6      lakeFS HTTP API
     7  
     8      The version of the OpenAPI document: 1.0.0
     9      Contact: services@treeverse.io
    10      Generated by OpenAPI Generator (https://openapi-generator.tech)
    11  
    12      Do not edit the class manually.
    13  """  # noqa: E501
    14  
    15  
    16  from __future__ import annotations
    17  import pprint
    18  import re  # noqa: F401
    19  import json
    20  
    21  
    22  from typing import Optional
    23  try:
    24      from pydantic.v1 import BaseModel
    25  except ImportError:
    26      from pydantic import BaseModel
    27  from lakefs_sdk.models.storage_config import StorageConfig
    28  from lakefs_sdk.models.version_config import VersionConfig
    29  
    30  class Config(BaseModel):
    31      """
    32      Config
    33      """
    34      version_config: Optional[VersionConfig] = None
    35      storage_config: Optional[StorageConfig] = None
    36      __properties = ["version_config", "storage_config"]
    37  
    38      class Config:
    39          """Pydantic configuration"""
    40          allow_population_by_field_name = True
    41          validate_assignment = True
    42  
    43      def to_str(self) -> str:
    44          """Returns the string representation of the model using alias"""
    45          return pprint.pformat(self.dict(by_alias=True))
    46  
    47      def to_json(self) -> str:
    48          """Returns the JSON representation of the model using alias"""
    49          return json.dumps(self.to_dict())
    50  
    51      @classmethod
    52      def from_json(cls, json_str: str) -> Config:
    53          """Create an instance of Config from a JSON string"""
    54          return cls.from_dict(json.loads(json_str))
    55  
    56      def to_dict(self):
    57          """Returns the dictionary representation of the model using alias"""
    58          _dict = self.dict(by_alias=True,
    59                            exclude={
    60                            },
    61                            exclude_none=True)
    62          # override the default output from pydantic by calling `to_dict()` of version_config
    63          if self.version_config:
    64              _dict['version_config'] = self.version_config.to_dict()
    65          # override the default output from pydantic by calling `to_dict()` of storage_config
    66          if self.storage_config:
    67              _dict['storage_config'] = self.storage_config.to_dict()
    68          return _dict
    69  
    70      @classmethod
    71      def from_dict(cls, obj: dict) -> Config:
    72          """Create an instance of Config from a dict"""
    73          if obj is None:
    74              return None
    75  
    76          if not isinstance(obj, dict):
    77              return Config.parse_obj(obj)
    78  
    79          _obj = Config.parse_obj({
    80              "version_config": VersionConfig.from_dict(obj.get("version_config")) if obj.get("version_config") is not None else None,
    81              "storage_config": StorageConfig.from_dict(obj.get("storage_config")) if obj.get("storage_config") is not None else None
    82          })
    83          return _obj
    84  
    85