o
    ɶdT                     @   s8   d dl mZmZmZ d dlmZ eG dd deZdS )    )formatted_flat_dictNONE_SENTINEL#value_allowed_none_or_none_sentinel)init_model_state_from_kwargsc                   @   s  e Zd ZdZdd Zedd Zejdd Zedd Zejd	d Zed
d Z	e	jdd Z	edd Z
e
jdd Z
edd Zejdd Zedd Zejdd Zedd Zejdd Zedd Zejdd Zedd Zejdd Zedd  Zejd!d  Zed"d# Zejd$d# Zed%d& Zejd'd& Zed(d) Zejd*d) Zed+d, Zejd-d, Zed.d/ Zejd0d/ Zed1d2 Zejd3d2 Zed4d5 Zejd6d5 Zed7d8 Zejd9d8 Zed:d; Zejd<d; Zed=d> Zejd?d> Zed@dA ZejdBdA ZedCdD ZejdEdD ZedFdG ZejdHdG ZedIdJ ZejdKdJ ZedLdM ZejdNdM ZedOdP Z e jdQdP Z dRdS Z!dTdU Z"dVdW Z#dXS )YAddressz 
    Address details model.
    c                 K   s  i ddddddddddddddd	dd
ddddddddddddddddddddddddddd	| _ i ddddddddddddddd	d	d
d
ddddddddddddddddddddd d!d"d#d$d	| _d%| _d%| _d%| _d%| _d%| _d%| _d%| _d%| _	d%| _
d%| _d%| _d%| _d%| _d%| _d%| _d%| _d%| _d%| _d%| _d%| _d%| _d%| _d%| _d%| _d%| _d%| _d%S )&a  
        Initializes a new Address object with values from keyword arguments.
        The following keyword arguments are supported (corresponding to the getters/setters of this class):

        :param address_key:
            The value to assign to the address_key property of this Address.
        :type address_key: str

        :param line1:
            The value to assign to the line1 property of this Address.
        :type line1: str

        :param line2:
            The value to assign to the line2 property of this Address.
        :type line2: str

        :param line3:
            The value to assign to the line3 property of this Address.
        :type line3: str

        :param line4:
            The value to assign to the line4 property of this Address.
        :type line4: str

        :param street_name:
            The value to assign to the street_name property of this Address.
        :type street_name: str

        :param street_number:
            The value to assign to the street_number property of this Address.
        :type street_number: str

        :param city:
            The value to assign to the city property of this Address.
        :type city: str

        :param county:
            The value to assign to the county property of this Address.
        :type county: str

        :param country:
            The value to assign to the country property of this Address.
        :type country: str

        :param province:
            The value to assign to the province property of this Address.
        :type province: str

        :param postal_code:
            The value to assign to the postal_code property of this Address.
        :type postal_code: str

        :param state:
            The value to assign to the state property of this Address.
        :type state: str

        :param email_address:
            The value to assign to the email_address property of this Address.
        :type email_address: str

        :param company_name:
            The value to assign to the company_name property of this Address.
        :type company_name: str

        :param first_name:
            The value to assign to the first_name property of this Address.
        :type first_name: str

        :param middle_name:
            The value to assign to the middle_name property of this Address.
        :type middle_name: str

        :param last_name:
            The value to assign to the last_name property of this Address.
        :type last_name: str

        :param phone_country_code:
            The value to assign to the phone_country_code property of this Address.
        :type phone_country_code: str

        :param phone_number:
            The value to assign to the phone_number property of this Address.
        :type phone_number: str

        :param job_title:
            The value to assign to the job_title property of this Address.
        :type job_title: str

        :param department_name:
            The value to assign to the department_name property of this Address.
        :type department_name: str

        :param internal_number:
            The value to assign to the internal_number property of this Address.
        :type internal_number: str

        :param contributor_class:
            The value to assign to the contributor_class property of this Address.
        :type contributor_class: str

        :param state_inscription:
            The value to assign to the state_inscription property of this Address.
        :type state_inscription: str

        :param municipal_inscription:
            The value to assign to the municipal_inscription property of this Address.
        :type municipal_inscription: str

        address_keystrline1line2line3line4street_namestreet_numbercitycountycountryprovincepostal_codestateemail_addresscompany_name
first_namemiddle_name)		last_namephone_country_codephone_number	job_titledepartment_nameinternal_numbercontributor_classstate_inscriptionmunicipal_inscriptionZ
addressKeyZ
streetNameZstreetNumberZ
postalCodeZemailAddressZcompanyNameZ	firstNameZ
middleNameZlastNameZphoneCountryCodeZphoneNumberZjobTitleZdepartmentNameZinternalNumberZcontributorClassZstateInscriptionZmunicipalInscriptionN)Zswagger_typesZattribute_map_address_key_line1_line2_line3_line4_street_name_street_number_city_county_country	_province_postal_code_state_email_address_company_name_first_name_middle_name
_last_name_phone_country_code_phone_number
_job_title_department_name_internal_number_contributor_class_state_inscription_municipal_inscription)selfkwargs r>   Busr/lib/python3.10/site-packages/oci/osp_gateway/models/address.py__init__   s   n	

	


zAddress.__init__c                 C      | j S )z
        Gets the address_key of this Address.
        Address identifier.


        :return: The address_key of this Address.
        :rtype: str
        r"   r<   r>   r>   r?   r         
zAddress.address_keyc                 C   
   || _ dS )z
        Sets the address_key of this Address.
        Address identifier.


        :param address_key: The address_key of this Address.
        :type: str
        NrB   )r<   r   r>   r>   r?   r         

c                 C   rA   )z
        Gets the line1 of this Address.
        Address line 1.


        :return: The line1 of this Address.
        :rtype: str
        r#   rC   r>   r>   r?   r	      rD   zAddress.line1c                 C   rE   )z
        Sets the line1 of this Address.
        Address line 1.


        :param line1: The line1 of this Address.
        :type: str
        NrG   )r<   r	   r>   r>   r?   r	      rF   c                 C   rA   )z
        Gets the line2 of this Address.
        Address line 2.


        :return: The line2 of this Address.
        :rtype: str
        r$   rC   r>   r>   r?   r
     rD   zAddress.line2c                 C   rE   )z
        Sets the line2 of this Address.
        Address line 2.


        :param line2: The line2 of this Address.
        :type: str
        NrH   )r<   r
   r>   r>   r?   r
     rF   c                 C   rA   )z
        Gets the line3 of this Address.
        Address line 3.


        :return: The line3 of this Address.
        :rtype: str
        r%   rC   r>   r>   r?   r     rD   zAddress.line3c                 C   rE   )z
        Sets the line3 of this Address.
        Address line 3.


        :param line3: The line3 of this Address.
        :type: str
        NrI   )r<   r   r>   r>   r?   r   )  rF   c                 C   rA   )z
        Gets the line4 of this Address.
        Address line 4.


        :return: The line4 of this Address.
        :rtype: str
        r&   rC   r>   r>   r?   r   5  rD   zAddress.line4c                 C   rE   )z
        Sets the line4 of this Address.
        Address line 4.


        :param line4: The line4 of this Address.
        :type: str
        NrJ   )r<   r   r>   r>   r?   r   A  rF   c                 C   rA   )z
        Gets the street_name of this Address.
        Street name of the address.


        :return: The street_name of this Address.
        :rtype: str
        r'   rC   r>   r>   r?   r   M  rD   zAddress.street_namec                 C   rE   )z
        Sets the street_name of this Address.
        Street name of the address.


        :param street_name: The street_name of this Address.
        :type: str
        NrK   )r<   r   r>   r>   r?   r   Y  rF   c                 C   rA   )z
        Gets the street_number of this Address.
        Street number of the address.


        :return: The street_number of this Address.
        :rtype: str
        r(   rC   r>   r>   r?   r   e  rD   zAddress.street_numberc                 C   rE   )z
        Sets the street_number of this Address.
        Street number of the address.


        :param street_number: The street_number of this Address.
        :type: str
        NrL   )r<   r   r>   r>   r?   r   q  rF   c                 C   rA   )z
        Gets the city of this Address.
        Name of the city.


        :return: The city of this Address.
        :rtype: str
        r)   rC   r>   r>   r?   r   }  rD   zAddress.cityc                 C   rE   )z
        Sets the city of this Address.
        Name of the city.


        :param city: The city of this Address.
        :type: str
        NrM   )r<   r   r>   r>   r?   r     rF   c                 C   rA   )z
        Gets the county of this Address.
        County of the address.


        :return: The county of this Address.
        :rtype: str
        r*   rC   r>   r>   r?   r     rD   zAddress.countyc                 C   rE   )z
        Sets the county of this Address.
        County of the address.


        :param county: The county of this Address.
        :type: str
        NrN   )r<   r   r>   r>   r?   r     rF   c                 C   rA   )z
        Gets the country of this Address.
        Country of the address.


        :return: The country of this Address.
        :rtype: str
        r+   rC   r>   r>   r?   r     rD   zAddress.countryc                 C   rE   )z
        Sets the country of this Address.
        Country of the address.


        :param country: The country of this Address.
        :type: str
        NrO   )r<   r   r>   r>   r?   r     rF   c                 C   rA   )z
        Gets the province of this Address.
        Province of the address.


        :return: The province of this Address.
        :rtype: str
        r,   rC   r>   r>   r?   r     rD   zAddress.provincec                 C   rE   )z
        Sets the province of this Address.
        Province of the address.


        :param province: The province of this Address.
        :type: str
        NrP   )r<   r   r>   r>   r?   r     rF   c                 C   rA   )z
        Gets the postal_code of this Address.
        Post code of the address.


        :return: The postal_code of this Address.
        :rtype: str
        r-   rC   r>   r>   r?   r     rD   zAddress.postal_codec                 C   rE   )z
        Sets the postal_code of this Address.
        Post code of the address.


        :param postal_code: The postal_code of this Address.
        :type: str
        NrQ   )r<   r   r>   r>   r?   r     rF   c                 C   rA   )z
        Gets the state of this Address.
        State of the address.


        :return: The state of this Address.
        :rtype: str
        r.   rC   r>   r>   r?   r     rD   zAddress.statec                 C   rE   )z
        Sets the state of this Address.
        State of the address.


        :param state: The state of this Address.
        :type: str
        NrR   )r<   r   r>   r>   r?   r     rF   c                 C   rA   )z
        Gets the email_address of this Address.
        Contact person email address.


        :return: The email_address of this Address.
        :rtype: str
        r/   rC   r>   r>   r?   r     rD   zAddress.email_addressc                 C   rE   )z
        Sets the email_address of this Address.
        Contact person email address.


        :param email_address: The email_address of this Address.
        :type: str
        NrS   )r<   r   r>   r>   r?   r     rF   c                 C   rA   )z
        Gets the company_name of this Address.
        Name of the customer company.


        :return: The company_name of this Address.
        :rtype: str
        r0   rC   r>   r>   r?   r   %  rD   zAddress.company_namec                 C   rE   )z
        Sets the company_name of this Address.
        Name of the customer company.


        :param company_name: The company_name of this Address.
        :type: str
        NrT   )r<   r   r>   r>   r?   r   1  rF   c                 C   rA   )z
        Gets the first_name of this Address.
        First name of the contact person.


        :return: The first_name of this Address.
        :rtype: str
        r1   rC   r>   r>   r?   r   =  rD   zAddress.first_namec                 C   rE   )z
        Sets the first_name of this Address.
        First name of the contact person.


        :param first_name: The first_name of this Address.
        :type: str
        NrU   )r<   r   r>   r>   r?   r   I  rF   c                 C   rA   )z
        Gets the middle_name of this Address.
        Middle name of the contact person.


        :return: The middle_name of this Address.
        :rtype: str
        r2   rC   r>   r>   r?   r   U  rD   zAddress.middle_namec                 C   rE   )z
        Sets the middle_name of this Address.
        Middle name of the contact person.


        :param middle_name: The middle_name of this Address.
        :type: str
        NrV   )r<   r   r>   r>   r?   r   a  rF   c                 C   rA   )z
        Gets the last_name of this Address.
        Last name of the contact person.


        :return: The last_name of this Address.
        :rtype: str
        r3   rC   r>   r>   r?   r   m  rD   zAddress.last_namec                 C   rE   )z
        Sets the last_name of this Address.
        Last name of the contact person.


        :param last_name: The last_name of this Address.
        :type: str
        NrW   )r<   r   r>   r>   r?   r   y  rF   c                 C   rA   )z
        Gets the phone_country_code of this Address.
        Phone country code of the contact person.


        :return: The phone_country_code of this Address.
        :rtype: str
        r4   rC   r>   r>   r?   r     rD   zAddress.phone_country_codec                 C   rE   )z
        Sets the phone_country_code of this Address.
        Phone country code of the contact person.


        :param phone_country_code: The phone_country_code of this Address.
        :type: str
        NrX   )r<   r   r>   r>   r?   r     rF   c                 C   rA   )z
        Gets the phone_number of this Address.
        Phone number of the contact person.


        :return: The phone_number of this Address.
        :rtype: str
        r5   rC   r>   r>   r?   r     rD   zAddress.phone_numberc                 C   rE   )z
        Sets the phone_number of this Address.
        Phone number of the contact person.


        :param phone_number: The phone_number of this Address.
        :type: str
        NrY   )r<   r   r>   r>   r?   r     rF   c                 C   rA   )z
        Gets the job_title of this Address.
        Job title of the contact person.


        :return: The job_title of this Address.
        :rtype: str
        r6   rC   r>   r>   r?   r     rD   zAddress.job_titlec                 C   rE   )z
        Sets the job_title of this Address.
        Job title of the contact person.


        :param job_title: The job_title of this Address.
        :type: str
        NrZ   )r<   r   r>   r>   r?   r     rF   c                 C   rA   )z
        Gets the department_name of this Address.
        Department name of the customer company.


        :return: The department_name of this Address.
        :rtype: str
        r7   rC   r>   r>   r?   r     rD   zAddress.department_namec                 C   rE   )z
        Sets the department_name of this Address.
        Department name of the customer company.


        :param department_name: The department_name of this Address.
        :type: str
        Nr[   )r<   r   r>   r>   r?   r     rF   c                 C   rA   )z
        Gets the internal_number of this Address.
        Internal number of the customer company.


        :return: The internal_number of this Address.
        :rtype: str
        r8   rC   r>   r>   r?   r     rD   zAddress.internal_numberc                 C   rE   )z
        Sets the internal_number of this Address.
        Internal number of the customer company.


        :param internal_number: The internal_number of this Address.
        :type: str
        Nr\   )r<   r   r>   r>   r?   r     rF   c                 C   rA   )z
        Gets the contributor_class of this Address.
        Contributor class of the customer company.


        :return: The contributor_class of this Address.
        :rtype: str
        r9   rC   r>   r>   r?   r     rD   zAddress.contributor_classc                 C   rE   )z
        Sets the contributor_class of this Address.
        Contributor class of the customer company.


        :param contributor_class: The contributor_class of this Address.
        :type: str
        Nr]   )r<   r   r>   r>   r?   r   	  rF   c                 C   rA   )z
        Gets the state_inscription of this Address.
        State Inscription.


        :return: The state_inscription of this Address.
        :rtype: str
        r:   rC   r>   r>   r?   r      rD   zAddress.state_inscriptionc                 C   rE   )z
        Sets the state_inscription of this Address.
        State Inscription.


        :param state_inscription: The state_inscription of this Address.
        :type: str
        Nr^   )r<   r    r>   r>   r?   r    !  rF   c                 C   rA   )z
        Gets the municipal_inscription of this Address.
        Municipal Inscription.


        :return: The municipal_inscription of this Address.
        :rtype: str
        r;   rC   r>   r>   r?   r!   -  rD   zAddress.municipal_inscriptionc                 C   rE   )z
        Sets the municipal_inscription of this Address.
        Municipal Inscription.


        :param municipal_inscription: The municipal_inscription of this Address.
        :type: str
        Nr_   )r<   r!   r>   r>   r?   r!   9  rF   c                 C   s   t | S N)r   rC   r>   r>   r?   __repr__E  s   zAddress.__repr__c                 C   s   |d u rdS | j |j kS )NF)__dict__r<   otherr>   r>   r?   __eq__H  s   zAddress.__eq__c                 C   s
   | |k S r`   r>   rc   r>   r>   r?   __ne__N  s   
zAddress.__ne__N)$__name__
__module____qualname____doc__r@   propertyr   setterr	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   ra   re   rf   r>   r>   r>   r?   r      s     D



















































r   N)Zoci.utilr   r   r   Zoci.decoratorsr   objectr   r>   r>   r>   r?   <module>   s   