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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d#d$„ Zd%d&„ Zd'd(„ Zd)S )*ÚAnalyticsClusterz|
    DEPRECATED -- please use HeatWave API instead.
    An Analytics Cluster is a database accelerator for a DB System.
    ÚCREATINGÚACTIVEÚINACTIVEÚUPDATINGÚDELETINGÚDELETEDÚFAILEDc              	   K   sd   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 AnalyticsCluster object with values from keyword arguments.
        The following keyword arguments are supported (corresponding to the getters/setters of this class):

        :param db_system_id:
            The value to assign to the db_system_id property of this AnalyticsCluster.
        :type db_system_id: str

        :param shape_name:
            The value to assign to the shape_name property of this AnalyticsCluster.
        :type shape_name: str

        :param cluster_size:
            The value to assign to the cluster_size property of this AnalyticsCluster.
        :type cluster_size: int

        :param cluster_nodes:
            The value to assign to the cluster_nodes property of this AnalyticsCluster.
        :type cluster_nodes: list[oci.mysql.models.AnalyticsClusterNode]

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

        :param lifecycle_details:
            The value to assign to the lifecycle_details property of this AnalyticsCluster.
        :type lifecycle_details: str

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

        :param time_updated:
            The value to assign to the time_updated property of this AnalyticsCluster.
        :type time_updated: datetime

        ÚstrÚintzlist[AnalyticsClusterNode]Údatetime)Údb_system_idÚ
shape_nameÚcluster_sizeÚcluster_nodesÚlifecycle_stateÚlifecycle_detailsÚtime_createdÚtime_updatedZ
dbSystemIdZ	shapeNameZclusterSizeZclusterNodesZlifecycleStateZlifecycleDetailsZtimeCreatedZtimeUpdatedN)
Zswagger_typesZattribute_mapÚ_db_system_idÚ_shape_nameÚ_cluster_sizeÚ_cluster_nodesÚ_lifecycle_stateÚ_lifecycle_detailsÚ_time_createdÚ_time_updated)ÚselfÚkwargs© r#   úFusr/lib/python3.10/site-packages/oci/mysql/models/analytics_cluster.pyÚ__init__/   s4   )øø
zAnalyticsCluster.__init__c                 C   ó   | j S )zò
        **[Required]** Gets the db_system_id of this AnalyticsCluster.
        The OCID of the parent DB System this Analytics Cluster is attached to.


        :return: The db_system_id of this AnalyticsCluster.
        :rtype: str
        ©r   ©r!   r#   r#   r$   r   v   ó   
zAnalyticsCluster.db_system_idc                 C   ó
   || _ dS )zî
        Sets the db_system_id of this AnalyticsCluster.
        The OCID of the parent DB System this Analytics Cluster is attached to.


        :param db_system_id: The db_system_id of this AnalyticsCluster.
        :type: str
        Nr'   )r!   r   r#   r#   r$   r   ‚   ó   

c                 C   r&   )a  
        **[Required]** Gets the shape_name of this AnalyticsCluster.
        The shape determines resources to allocate to the Analytics
        Cluster nodes - CPU cores, memory.


        :return: The shape_name of this AnalyticsCluster.
        :rtype: str
        ©r   r(   r#   r#   r$   r   Ž   ó   zAnalyticsCluster.shape_namec                 C   r*   )a  
        Sets the shape_name of this AnalyticsCluster.
        The shape determines resources to allocate to the Analytics
        Cluster nodes - CPU cores, memory.


        :param shape_name: The shape_name of this AnalyticsCluster.
        :type: str
        Nr,   )r!   r   r#   r#   r$   r   ›   ó   
c                 C   r&   )a  
        **[Required]** Gets the cluster_size of this AnalyticsCluster.
        The number of analytics-processing compute instances, of the
        specified shape, in the Analytics Cluster.


        :return: The cluster_size of this AnalyticsCluster.
        :rtype: int
        ©r   r(   r#   r#   r$   r   ¨   r-   zAnalyticsCluster.cluster_sizec                 C   r*   )a  
        Sets the cluster_size of this AnalyticsCluster.
        The number of analytics-processing compute instances, of the
        specified shape, in the Analytics Cluster.


        :param cluster_size: The cluster_size of this AnalyticsCluster.
        :type: int
        Nr/   )r!   r   r#   r#   r$   r   µ   r.   c                 C   r&   )a&  
        **[Required]** Gets the cluster_nodes of this AnalyticsCluster.
        An Analytics Cluster Node is a compute host that is part of an Analytics Cluster.


        :return: The cluster_nodes of this AnalyticsCluster.
        :rtype: list[oci.mysql.models.AnalyticsClusterNode]
        ©r   r(   r#   r#   r$   r   Â   r)   zAnalyticsCluster.cluster_nodesc                 C   r*   )a#  
        Sets the cluster_nodes of this AnalyticsCluster.
        An Analytics Cluster Node is a compute host that is part of an Analytics Cluster.


        :param cluster_nodes: The cluster_nodes of this AnalyticsCluster.
        :type: list[oci.mysql.models.AnalyticsClusterNode]
        Nr0   )r!   r   r#   r#   r$   r   Î   r+   c                 C   r&   )aÎ  
        **[Required]** Gets the lifecycle_state of this AnalyticsCluster.
        The current state of the Analytics Cluster.

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


        :return: The lifecycle_state of this AnalyticsCluster.
        :rtype: str
        )r   r(   r#   r#   r$   r   Ú   s   z AnalyticsCluster.lifecycle_statec                 C   s    g d¢}t ||ƒsd}|| _dS )zÛ
        Sets the lifecycle_state of this AnalyticsCluster.
        The current state of the Analytics Cluster.


        :param lifecycle_state: The lifecycle_state of this AnalyticsCluster.
        :type: str
        )r   r   r	   r
   r   r   r   ZUNKNOWN_ENUM_VALUEN)r   r   )r!   r   Zallowed_valuesr#   r#   r$   r   é   s   


c                 C   r&   )zÞ
        Gets the lifecycle_details of this AnalyticsCluster.
        Additional information about the current lifecycleState.


        :return: The lifecycle_details of this AnalyticsCluster.
        :rtype: str
        ©r   r(   r#   r#   r$   r   ø   r)   z"AnalyticsCluster.lifecycle_detailsc                 C   r*   )zî
        Sets the lifecycle_details of this AnalyticsCluster.
        Additional information about the current lifecycleState.


        :param lifecycle_details: The lifecycle_details of this AnalyticsCluster.
        :type: str
        Nr1   )r!   r   r#   r#   r$   r     r+   c                 C   r&   )a1  
        **[Required]** Gets the time_created of this AnalyticsCluster.
        The date and time the Analytics Cluster was created, as described by `RFC 3339`__.

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


        :return: The time_created of this AnalyticsCluster.
        :rtype: datetime
        ©r   r(   r#   r#   r$   r     ó   zAnalyticsCluster.time_createdc                 C   r*   )a-  
        Sets the time_created of this AnalyticsCluster.
        The date and time the Analytics Cluster was created, as described by `RFC 3339`__.

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


        :param time_created: The time_created of this AnalyticsCluster.
        :type: datetime
        Nr2   )r!   r   r#   r#   r$   r     ó   
c                 C   r&   )a-  
        **[Required]** Gets the time_updated of this AnalyticsCluster.
        The time the Analytics Cluster was last updated, as described by `RFC 3339`__.

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


        :return: The time_updated of this AnalyticsCluster.
        :rtype: datetime
        ©r    r(   r#   r#   r$   r   ,  r3   zAnalyticsCluster.time_updatedc                 C   r*   )a)  
        Sets the time_updated of this AnalyticsCluster.
        The time the Analytics Cluster was last updated, as described by `RFC 3339`__.

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


        :param time_updated: The time_updated of this AnalyticsCluster.
        :type: datetime
        Nr5   )r!   r   r#   r#   r$   r   :  r4   c                 C   s   t | ƒS ©N)r   r(   r#   r#   r$   Ú__repr__H  s   zAnalyticsCluster.__repr__c                 C   s   |d u rdS | j |j kS )NF)Ú__dict__©r!   Úotherr#   r#   r$   Ú__eq__K  s   zAnalyticsCluster.__eq__c                 C   s
   | |k S r6   r#   r9   r#   r#   r$   Ú__ne__Q  s   
zAnalyticsCluster.__ne__N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__ZLIFECYCLE_STATE_CREATINGZLIFECYCLE_STATE_ACTIVEZLIFECYCLE_STATE_INACTIVEZLIFECYCLE_STATE_UPDATINGZLIFECYCLE_STATE_DELETINGZLIFECYCLE_STATE_DELETEDZLIFECYCLE_STATE_FAILEDr%   Úpropertyr   Úsetterr   r   r   r   r   r   r   r7   r;   r<   r#   r#   r#   r$   r      sZ    G















r   N)Zoci.utilr   r   r   Zoci.decoratorsr   Úobjectr   r#   r#   r#   r$   Ú<module>   s   