github.com/treeverse/lakefs@v1.24.1-0.20240520134607-95648127bfb0/clients/python-legacy/lakefs_client/model/external_principal.py (about) 1 """ 2 lakeFS API 3 4 lakeFS HTTP API # noqa: E501 5 6 The version of the OpenAPI document: 1.0.0 7 Contact: services@treeverse.io 8 Generated by: https://openapi-generator.tech 9 """ 10 11 12 import re # noqa: F401 13 import sys # noqa: F401 14 15 from lakefs_client.model_utils import ( # noqa: F401 16 ApiTypeError, 17 ModelComposed, 18 ModelNormal, 19 ModelSimple, 20 cached_property, 21 change_keys_js_to_python, 22 convert_js_args_to_python_args, 23 date, 24 datetime, 25 file_type, 26 none_type, 27 validate_get_composed_info, 28 ) 29 from ..model_utils import OpenApiModel 30 from lakefs_client.exceptions import ApiAttributeError 31 32 33 def lazy_import(): 34 from lakefs_client.model.external_principal_settings import ExternalPrincipalSettings 35 globals()['ExternalPrincipalSettings'] = ExternalPrincipalSettings 36 37 38 class ExternalPrincipal(ModelNormal): 39 """NOTE: This class is auto generated by OpenAPI Generator. 40 Ref: https://openapi-generator.tech 41 42 Do not edit the class manually. 43 44 Attributes: 45 allowed_values (dict): The key is the tuple path to the attribute 46 and the for var_name this is (var_name,). The value is a dict 47 with a capitalized key describing the allowed value and an allowed 48 value. These dicts store the allowed enum values. 49 attribute_map (dict): The key is attribute name 50 and the value is json key in definition. 51 discriminator_value_class_map (dict): A dict to go from the discriminator 52 variable value to the discriminator class name. 53 validations (dict): The key is the tuple path to the attribute 54 and the for var_name this is (var_name,). The value is a dict 55 that stores validations for max_length, min_length, max_items, 56 min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, 57 inclusive_minimum, and regex. 58 additional_properties_type (tuple): A tuple of classes accepted 59 as additional properties values. 60 """ 61 62 allowed_values = { 63 } 64 65 validations = { 66 } 67 68 @cached_property 69 def additional_properties_type(): 70 """ 71 This must be a method because a model may have properties that are 72 of type self, this must run after the class is loaded 73 """ 74 lazy_import() 75 return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501 76 77 _nullable = False 78 79 @cached_property 80 def openapi_types(): 81 """ 82 This must be a method because a model may have properties that are 83 of type self, this must run after the class is loaded 84 85 Returns 86 openapi_types (dict): The key is attribute name 87 and the value is attribute type. 88 """ 89 lazy_import() 90 return { 91 'id': (str,), # noqa: E501 92 'user_id': (str,), # noqa: E501 93 'settings': ([ExternalPrincipalSettings],), # noqa: E501 94 } 95 96 @cached_property 97 def discriminator(): 98 return None 99 100 101 attribute_map = { 102 'id': 'id', # noqa: E501 103 'user_id': 'user_id', # noqa: E501 104 'settings': 'settings', # noqa: E501 105 } 106 107 read_only_vars = { 108 } 109 110 _composed_schemas = {} 111 112 @classmethod 113 @convert_js_args_to_python_args 114 def _from_openapi_data(cls, id, user_id, *args, **kwargs): # noqa: E501 115 """ExternalPrincipal - a model defined in OpenAPI 116 117 Args: 118 id (str): A unique identifier for the external principal i.e aws:sts::123:assumed-role/role-name 119 user_id (str): lakeFS user ID to associate with an external principal. 120 121 Keyword Args: 122 _check_type (bool): if True, values for parameters in openapi_types 123 will be type checked and a TypeError will be 124 raised if the wrong type is input. 125 Defaults to True 126 _path_to_item (tuple/list): This is a list of keys or values to 127 drill down to the model in received_data 128 when deserializing a response 129 _spec_property_naming (bool): True if the variable names in the input data 130 are serialized names, as specified in the OpenAPI document. 131 False if the variable names in the input data 132 are pythonic names, e.g. snake case (default) 133 _configuration (Configuration): the instance to use when 134 deserializing a file_type parameter. 135 If passed, type conversion is attempted 136 If omitted no type conversion is done. 137 _visited_composed_classes (tuple): This stores a tuple of 138 classes that we have traveled through so that 139 if we see that class again we will not use its 140 discriminator again. 141 When traveling through a discriminator, the 142 composed schema that is 143 is traveled through is added to this set. 144 For example if Animal has a discriminator 145 petType and we pass in "Dog", and the class Dog 146 allOf includes Animal, we move through Animal 147 once using the discriminator, and pick Dog. 148 Then in Dog, we will make an instance of the 149 Animal class but this time we won't travel 150 through its discriminator because we passed in 151 _visited_composed_classes = (Animal,) 152 settings ([ExternalPrincipalSettings]): [optional] # noqa: E501 153 """ 154 155 _check_type = kwargs.pop('_check_type', True) 156 _spec_property_naming = kwargs.pop('_spec_property_naming', False) 157 _path_to_item = kwargs.pop('_path_to_item', ()) 158 _configuration = kwargs.pop('_configuration', None) 159 _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) 160 161 self = super(OpenApiModel, cls).__new__(cls) 162 163 if args: 164 raise ApiTypeError( 165 "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( 166 args, 167 self.__class__.__name__, 168 ), 169 path_to_item=_path_to_item, 170 valid_classes=(self.__class__,), 171 ) 172 173 self._data_store = {} 174 self._check_type = _check_type 175 self._spec_property_naming = _spec_property_naming 176 self._path_to_item = _path_to_item 177 self._configuration = _configuration 178 self._visited_composed_classes = _visited_composed_classes + (self.__class__,) 179 180 self.id = id 181 self.user_id = user_id 182 for var_name, var_value in kwargs.items(): 183 if var_name not in self.attribute_map and \ 184 self._configuration is not None and \ 185 self._configuration.discard_unknown_keys and \ 186 self.additional_properties_type is None: 187 # discard variable. 188 continue 189 setattr(self, var_name, var_value) 190 return self 191 192 required_properties = set([ 193 '_data_store', 194 '_check_type', 195 '_spec_property_naming', 196 '_path_to_item', 197 '_configuration', 198 '_visited_composed_classes', 199 ]) 200 201 @convert_js_args_to_python_args 202 def __init__(self, id, user_id, *args, **kwargs): # noqa: E501 203 """ExternalPrincipal - a model defined in OpenAPI 204 205 Args: 206 id (str): A unique identifier for the external principal i.e aws:sts::123:assumed-role/role-name 207 user_id (str): lakeFS user ID to associate with an external principal. 208 209 Keyword Args: 210 _check_type (bool): if True, values for parameters in openapi_types 211 will be type checked and a TypeError will be 212 raised if the wrong type is input. 213 Defaults to True 214 _path_to_item (tuple/list): This is a list of keys or values to 215 drill down to the model in received_data 216 when deserializing a response 217 _spec_property_naming (bool): True if the variable names in the input data 218 are serialized names, as specified in the OpenAPI document. 219 False if the variable names in the input data 220 are pythonic names, e.g. snake case (default) 221 _configuration (Configuration): the instance to use when 222 deserializing a file_type parameter. 223 If passed, type conversion is attempted 224 If omitted no type conversion is done. 225 _visited_composed_classes (tuple): This stores a tuple of 226 classes that we have traveled through so that 227 if we see that class again we will not use its 228 discriminator again. 229 When traveling through a discriminator, the 230 composed schema that is 231 is traveled through is added to this set. 232 For example if Animal has a discriminator 233 petType and we pass in "Dog", and the class Dog 234 allOf includes Animal, we move through Animal 235 once using the discriminator, and pick Dog. 236 Then in Dog, we will make an instance of the 237 Animal class but this time we won't travel 238 through its discriminator because we passed in 239 _visited_composed_classes = (Animal,) 240 settings ([ExternalPrincipalSettings]): [optional] # noqa: E501 241 """ 242 243 _check_type = kwargs.pop('_check_type', True) 244 _spec_property_naming = kwargs.pop('_spec_property_naming', False) 245 _path_to_item = kwargs.pop('_path_to_item', ()) 246 _configuration = kwargs.pop('_configuration', None) 247 _visited_composed_classes = kwargs.pop('_visited_composed_classes', ()) 248 249 if args: 250 raise ApiTypeError( 251 "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % ( 252 args, 253 self.__class__.__name__, 254 ), 255 path_to_item=_path_to_item, 256 valid_classes=(self.__class__,), 257 ) 258 259 self._data_store = {} 260 self._check_type = _check_type 261 self._spec_property_naming = _spec_property_naming 262 self._path_to_item = _path_to_item 263 self._configuration = _configuration 264 self._visited_composed_classes = _visited_composed_classes + (self.__class__,) 265 266 self.id = id 267 self.user_id = user_id 268 for var_name, var_value in kwargs.items(): 269 if var_name not in self.attribute_map and \ 270 self._configuration is not None and \ 271 self._configuration.discard_unknown_keys and \ 272 self.additional_properties_type is None: 273 # discard variable. 274 continue 275 setattr(self, var_name, var_value) 276 if var_name in self.read_only_vars: 277 raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " 278 f"class with read only attributes.")