o
    ëÉ¶dŽ.  ã                   @   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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d"d#„ Zd$d%„ Zd&d'„ Zd(S ))ÚProjectzD
    Projects enable users to organize their data science work.
    ÚACTIVEÚDELETINGÚDELETEDc              
   K   sn   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 Project object with values from keyword arguments.
        The following keyword arguments are supported (corresponding to the getters/setters of this class):

        :param id:
            The value to assign to the id property of this Project.
        :type id: str

        :param time_created:
            The value to assign to the time_created property of this Project.
        :type time_created: datetime

        :param display_name:
            The value to assign to the display_name property of this Project.
        :type display_name: str

        :param description:
            The value to assign to the description property of this Project.
        :type description: str

        :param compartment_id:
            The value to assign to the compartment_id property of this Project.
        :type compartment_id: str

        :param created_by:
            The value to assign to the created_by property of this Project.
        :type created_by: str

        :param lifecycle_state:
            The value to assign to the lifecycle_state property of this Project.
            Allowed values for this property are: "ACTIVE", "DELETING", "DELETED", 'UNKNOWN_ENUM_VALUE'.
            Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
        :type lifecycle_state: str

        :param freeform_tags:
            The value to assign to the freeform_tags property of this Project.
        :type freeform_tags: dict(str, str)

        :param defined_tags:
            The value to assign to the defined_tags property of this Project.
        :type defined_tags: dict(str, dict(str, object))

        ÚstrÚdatetimezdict(str, str)zdict(str, dict(str, object)))	ÚidÚtime_createdÚdisplay_nameÚdescriptionÚcompartment_idÚ
created_byÚlifecycle_stateÚfreeform_tagsÚdefined_tagsr   ZtimeCreatedZdisplayNamer   ZcompartmentIdZ	createdByZlifecycleStateZfreeformTagsZdefinedTagsN)Zswagger_typesZattribute_mapÚ_idÚ_time_createdÚ_display_nameÚ_descriptionÚ_compartment_idÚ_created_byÚ_lifecycle_stateÚ_freeform_tagsÚ_defined_tags)ÚselfÚkwargs© r    úCusr/lib/python3.10/site-packages/oci/data_science/models/project.pyÚ__init__   s:   -÷÷
zProject.__init__c                 C   ó   | j S )zù
        **[Required]** Gets the id of this Project.
        The `OCID`__ of the project.

        __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm


        :return: The id of this Project.
        :rtype: str
        ©r   ©r   r    r    r!   r   l   ó   z
Project.idc                 C   ó
   || _ dS )zë
        Sets the id of this Project.
        The `OCID`__ of the project.

        __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm


        :param id: The id of this Project.
        :type: str
        Nr$   )r   r   r    r    r!   r   z   ó   
c                 C   r#   )aQ  
        **[Required]** Gets the time_created of this Project.
        The date and time the resource was created in the timestamp format defined by `RFC3339`__.
        Example: 2019-08-25T21:10:29.41Z

        __ https://tools.ietf.org/html/rfc3339


        :return: The time_created of this Project.
        :rtype: datetime
        ©r   r%   r    r    r!   r   ˆ   ó   zProject.time_createdc                 C   r'   )aM  
        Sets the time_created of this Project.
        The date and time the resource was created in the timestamp format defined by `RFC3339`__.
        Example: 2019-08-25T21:10:29.41Z

        __ https://tools.ietf.org/html/rfc3339


        :param time_created: The time_created of this Project.
        :type: datetime
        Nr)   )r   r   r    r    r!   r   —   ó   
c                 C   r#   )a#  
        **[Required]** Gets the display_name of this Project.
        A user-friendly display name for the resource. It does not have to be unique and can be modified. Avoid entering confidential information.


        :return: The display_name of this Project.
        :rtype: str
        ©r   r%   r    r    r!   r   ¦   ó   
zProject.display_namec                 C   r'   )a  
        Sets the display_name of this Project.
        A user-friendly display name for the resource. It does not have to be unique and can be modified. Avoid entering confidential information.


        :param display_name: The display_name of this Project.
        :type: str
        Nr,   )r   r   r    r    r!   r   ²   ó   

c                 C   r#   )z«
        Gets the description of this Project.
        A short description of the project.


        :return: The description of this Project.
        :rtype: str
        ©r   r%   r    r    r!   r   ¾   r-   zProject.descriptionc                 C   r'   )zµ
        Sets the description of this Project.
        A short description of the project.


        :param description: The description of this Project.
        :type: str
        Nr/   )r   r   r    r    r!   r   Ê   r.   c                 C   r#   )a  
        **[Required]** Gets the compartment_id of this Project.
        The `OCID`__ of the project's compartment.

        __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm


        :return: The compartment_id of this Project.
        :rtype: str
        ©r   r%   r    r    r!   r   Ö   r&   zProject.compartment_idc                 C   r'   )a  
        Sets the compartment_id of this Project.
        The `OCID`__ of the project's compartment.

        __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm


        :param compartment_id: The compartment_id of this Project.
        :type: str
        Nr0   )r   r   r    r    r!   r   ä   r(   c                 C   r#   )a  
        **[Required]** Gets the created_by of this Project.
        The `OCID`__ of the user who created this project.

        __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm


        :return: The created_by of this Project.
        :rtype: str
        ©r   r%   r    r    r!   r   ò   r&   zProject.created_byc                 C   r'   )a  
        Sets the created_by of this Project.
        The `OCID`__ of the user who created this project.

        __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm


        :param created_by: The created_by of this Project.
        :type: str
        Nr1   )r   r   r    r    r!   r      r(   c                 C   r#   )a|  
        **[Required]** Gets the lifecycle_state of this Project.
        The state of the project.

        Allowed values for this property are: "ACTIVE", "DELETING", "DELETED", 'UNKNOWN_ENUM_VALUE'.
        Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.


        :return: The lifecycle_state of this Project.
        :rtype: str
        )r   r%   r    r    r!   r     r*   zProject.lifecycle_statec                 C   s    g d¢}t ||ƒsd}|| _dS )z·
        Sets the lifecycle_state of this Project.
        The state of the project.


        :param lifecycle_state: The lifecycle_state of this Project.
        :type: str
        )r   r   r	   ZUNKNOWN_ENUM_VALUEN)r   r   )r   r   Zallowed_valuesr    r    r!   r     s   


c                 C   r#   )a¡  
        Gets the freeform_tags of this Project.
        Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. See `Resource Tags`__.
        Example: `{"Department": "Finance"}`

        __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm


        :return: The freeform_tags of this Project.
        :rtype: dict(str, str)
        ©r   r%   r    r    r!   r   ,  r*   zProject.freeform_tagsc                 C   r'   )a­  
        Sets the freeform_tags of this Project.
        Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. See `Resource Tags`__.
        Example: `{"Department": "Finance"}`

        __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm


        :param freeform_tags: The freeform_tags of this Project.
        :type: dict(str, str)
        Nr2   )r   r   r    r    r!   r   ;  r+   c                 C   r#   )a—  
        Gets the defined_tags of this Project.
        Defined tags for this resource. Each key is predefined and scoped to a namespace. See `Resource Tags`__.
        Example: `{"Operations": {"CostCenter": "42"}}`

        __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm


        :return: The defined_tags of this Project.
        :rtype: dict(str, dict(str, object))
        ©r   r%   r    r    r!   r   J  r*   zProject.defined_tagsc                 C   r'   )a¢  
        Sets the defined_tags of this Project.
        Defined tags for this resource. Each key is predefined and scoped to a namespace. See `Resource Tags`__.
        Example: `{"Operations": {"CostCenter": "42"}}`

        __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm


        :param defined_tags: The defined_tags of this Project.
        :type: dict(str, dict(str, object))
        Nr3   )r   r   r    r    r!   r   Y  r+   c                 C   s   t | ƒS ©N)r   r%   r    r    r!   Ú__repr__h  s   zProject.__repr__c                 C   s   |d u rdS | j |j kS )NF)Ú__dict__©r   Úotherr    r    r!   Ú__eq__k  s   zProject.__eq__c                 C   s
   | |k S r4   r    r7   r    r    r!   Ú__ne__q  s   
zProject.__ne__N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__ZLIFECYCLE_STATE_ACTIVEZLIFECYCLE_STATE_DELETINGZLIFECYCLE_STATE_DELETEDr"   Úpropertyr   Úsetterr   r   r   r   r   r   r   r   r5   r9   r:   r    r    r    r!   r      sZ    N

















r   N)Zoci.utilr   r   r   Zoci.decoratorsr   Úobjectr   r    r    r    r!   Ú<module>   s   