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	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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/d0 Z e jd1d0 Z ed2d3 Z!e!jd4d3 Z!ed5d6 Z"e"jd7d6 Z"ed8d9 Z#e#jd:d9 Z#ed;d< Z$e$jd=d< Z$ed>d? Z%e%jd@d? Z%edAdB Z&e&jdCdB Z&edDdE Z'e'jdFdE Z'edGdH Z(e(jdIdH Z(edJdK Z)e)jdLdK Z)edMdN Z*e*jdOdN Z*edPdQ Z+e+jdRdQ Z+edSdT Z,e,jdUdT Z,edVdW Z-e-jdXdW Z-edYdZ Z.e.jd[dZ Z.ed\d] Z/e/jd^d] Z/d_d` Z0dadb Z1dcdd Z2deS )fEsxiHosta  
    An ESXi host is a node in an SDDC. At a minimum, each SDDC has 3 ESXi hosts
    that are used to implement a functioning VMware environment.

    In terms of implementation, an ESXi host is a Compute instance that
    is configured with the chosen bundle of VMware software.

    Notice that an `EsxiHost` object has its own OCID (`id`), and a separate
    attribute for the OCID of the Compute instance (`computeInstanceId`).
    CREATINGUPDATINGACTIVEDELETINGDELETEDFAILEDHOURMONTHONE_YEARTHREE_YEARSc                 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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/d0d1d2d
| _d3| _d3| _d3| _d3| _d3| _d3| _d3| _d3| _	d3| _
d3| _d3| _d3| _d3| _d3| _d3| _d3| _d3| _d3| _d3| _d3| _d3| _d3| _d3| _d3| _d3| _d3| _d3| _d3S )4av  
        Initializes a new EsxiHost 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 EsxiHost.
        :type id: str

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

        :param sddc_id:
            The value to assign to the sddc_id property of this EsxiHost.
        :type sddc_id: str

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

        :param compute_instance_id:
            The value to assign to the compute_instance_id property of this EsxiHost.
        :type compute_instance_id: str

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

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

        :param lifecycle_state:
            The value to assign to the lifecycle_state property of this EsxiHost.
            Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "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 billing_donor_host_id:
            The value to assign to the billing_donor_host_id property of this EsxiHost.
        :type billing_donor_host_id: str

        :param swap_billing_host_id:
            The value to assign to the swap_billing_host_id property of this EsxiHost.
        :type swap_billing_host_id: str

        :param is_billing_continuation_in_progress:
            The value to assign to the is_billing_continuation_in_progress property of this EsxiHost.
        :type is_billing_continuation_in_progress: bool

        :param is_billing_swapping_in_progress:
            The value to assign to the is_billing_swapping_in_progress property of this EsxiHost.
        :type is_billing_swapping_in_progress: bool

        :param current_sku:
            The value to assign to the current_sku property of this EsxiHost.
            Allowed values for this property are: "HOUR", "MONTH", "ONE_YEAR", "THREE_YEARS", 'UNKNOWN_ENUM_VALUE'.
            Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
        :type current_sku: str

        :param next_sku:
            The value to assign to the next_sku property of this EsxiHost.
            Allowed values for this property are: "HOUR", "MONTH", "ONE_YEAR", "THREE_YEARS", 'UNKNOWN_ENUM_VALUE'.
            Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
        :type next_sku: str

        :param billing_contract_end_date:
            The value to assign to the billing_contract_end_date property of this EsxiHost.
        :type billing_contract_end_date: datetime

        :param failed_esxi_host_id:
            The value to assign to the failed_esxi_host_id property of this EsxiHost.
        :type failed_esxi_host_id: str

        :param replacement_esxi_host_id:
            The value to assign to the replacement_esxi_host_id property of this EsxiHost.
        :type replacement_esxi_host_id: str

        :param grace_period_end_date:
            The value to assign to the grace_period_end_date property of this EsxiHost.
        :type grace_period_end_date: datetime

        :param vmware_software_version:
            The value to assign to the vmware_software_version property of this EsxiHost.
        :type vmware_software_version: str

        :param non_upgraded_esxi_host_id:
            The value to assign to the non_upgraded_esxi_host_id property of this EsxiHost.
        :type non_upgraded_esxi_host_id: str

        :param upgraded_replacement_esxi_host_id:
            The value to assign to the upgraded_replacement_esxi_host_id property of this EsxiHost.
        :type upgraded_replacement_esxi_host_id: str

        :param compute_availability_domain:
            The value to assign to the compute_availability_domain property of this EsxiHost.
        :type compute_availability_domain: str

        :param host_shape_name:
            The value to assign to the host_shape_name property of this EsxiHost.
        :type host_shape_name: str

        :param host_ocpu_count:
            The value to assign to the host_ocpu_count property of this EsxiHost.
        :type host_ocpu_count: float

        :param capacity_reservation_id:
            The value to assign to the capacity_reservation_id property of this EsxiHost.
        :type capacity_reservation_id: str

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

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

        idstrdisplay_namesddc_idcompartment_idcompute_instance_idtime_createddatetimetime_updatedlifecycle_statebilling_donor_host_idswap_billing_host_id#is_billing_continuation_in_progressboolis_billing_swapping_in_progresscurrent_skunext_skubilling_contract_end_datefailed_esxi_host_idreplacement_esxi_host_idfloatzdict(str, str)zdict(str, dict(str, object)))
grace_period_end_datevmware_software_versionnon_upgraded_esxi_host_id!upgraded_replacement_esxi_host_idcompute_availability_domainhost_shape_namehost_ocpu_countcapacity_reservation_idfreeform_tagsdefined_tagsZdisplayNameZsddcIdZcompartmentIdZcomputeInstanceIdZtimeCreatedZtimeUpdatedZlifecycleStateZbillingDonorHostIdZswapBillingHostIdZisBillingContinuationInProgressZisBillingSwappingInProgressZ
currentSkuZnextSkuZbillingContractEndDateZfailedEsxiHostIdZreplacementEsxiHostIdZgracePeriodEndDateZvmwareSoftwareVersionZnonUpgradedEsxiHostIdZupgradedReplacementEsxiHostIdZcomputeAvailabilityDomainZhostShapeNameZhostOcpuCountZcapacityReservationIdZfreeformTagsZdefinedTagsN)Zswagger_typesZattribute_map_id_display_name_sddc_id_compartment_id_compute_instance_id_time_created_time_updated_lifecycle_state_billing_donor_host_id_swap_billing_host_id$_is_billing_continuation_in_progress _is_billing_swapping_in_progress_current_sku	_next_sku_billing_contract_end_date_failed_esxi_host_id_replacement_esxi_host_id_grace_period_end_date_vmware_software_version_non_upgraded_esxi_host_id"_upgraded_replacement_esxi_host_id_compute_availability_domain_host_shape_name_host_ocpu_count_capacity_reservation_id_freeform_tags_defined_tags)selfkwargs rM   =usr/lib/python3.10/site-packages/oci/ocvp/models/esxi_host.py__init__Q   s   x	

	


zEsxiHost.__init__c                 C      | j S )z
        **[Required]** Gets the id of this EsxiHost.
        The `OCID`__ of the ESXi host.

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


        :return: The id of this EsxiHost.
        :rtype: str
        r0   rK   rM   rM   rN   r   !     zEsxiHost.idc                 C   
   || _ dS )z
        Sets the id of this EsxiHost.
        The `OCID`__ of the ESXi host.

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


        :param id: The id of this EsxiHost.
        :type: str
        NrQ   )rK   r   rM   rM   rN   r   /     
c                 C   rP   )a"  
        **[Required]** Gets the display_name of this EsxiHost.
        A descriptive name for the ESXi host. Does not have to be unique, and it's changeable.
        Avoid entering confidential information.


        :return: The display_name of this EsxiHost.
        :rtype: str
        r1   rR   rM   rM   rN   r   =     zEsxiHost.display_namec                 C   rT   )a  
        Sets the display_name of this EsxiHost.
        A descriptive name for the ESXi host. Does not have to be unique, and it's changeable.
        Avoid entering confidential information.


        :param display_name: The display_name of this EsxiHost.
        :type: str
        NrV   )rK   r   rM   rM   rN   r   J     
c                 C   rP   )a#  
        **[Required]** Gets the sddc_id of this EsxiHost.
        The `OCID`__ of the SDDC that the
        ESXi host belongs to.

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


        :return: The sddc_id of this EsxiHost.
        :rtype: str
        r2   rR   rM   rM   rN   r   W     zEsxiHost.sddc_idc                 C   rT   )a  
        Sets the sddc_id of this EsxiHost.
        The `OCID`__ of the SDDC that the
        ESXi host belongs to.

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


        :param sddc_id: The sddc_id of this EsxiHost.
        :type: str
        NrY   )rK   r   rM   rM   rN   r   f     
c                 C   rP   )a"  
        Gets the compartment_id of this EsxiHost.
        The `OCID`__ of the compartment that
        contains the SDDC.

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


        :return: The compartment_id of this EsxiHost.
        :rtype: str
        r3   rR   rM   rM   rN   r   u  rZ   zEsxiHost.compartment_idc                 C   rT   )a/  
        Sets the compartment_id of this EsxiHost.
        The `OCID`__ of the compartment that
        contains the SDDC.

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


        :param compartment_id: The compartment_id of this EsxiHost.
        :type: str
        Nr\   )rK   r   rM   rM   rN   r     r[   c                 C   rP   )a  
        Gets the compute_instance_id of this EsxiHost.
        In terms of implementation, an ESXi host is a Compute instance that
        is configured with the chosen bundle of VMware software. The `computeInstanceId`
        is the `OCID`__ of that Compute instance.

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


        :return: The compute_instance_id of this EsxiHost.
        :rtype: str
        r4   rR   rM   rM   rN   r        zEsxiHost.compute_instance_idc                 C   rT   )a  
        Sets the compute_instance_id of this EsxiHost.
        In terms of implementation, an ESXi host is a Compute instance that
        is configured with the chosen bundle of VMware software. The `computeInstanceId`
        is the `OCID`__ of that Compute instance.

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


        :param compute_instance_id: The compute_instance_id of this EsxiHost.
        :type: str
        Nr]   )rK   r   rM   rM   rN   r        
c                 C   rP   )aH  
        Gets the time_created of this EsxiHost.
        The date and time the ESXi host was created, in the format defined by
        `RFC3339`__.

        Example: `2016-08-25T21:10:29.600Z`

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


        :return: The time_created of this EsxiHost.
        :rtype: datetime
        r5   rR   rM   rM   rN   r        zEsxiHost.time_createdc                 C   rT   )aS  
        Sets the time_created of this EsxiHost.
        The date and time the ESXi host was created, in the format defined by
        `RFC3339`__.

        Example: `2016-08-25T21:10:29.600Z`

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


        :param time_created: The time_created of this EsxiHost.
        :type: datetime
        Nr`   )rK   r   rM   rM   rN   r        
c                 C   rP   )a  
        Gets the time_updated of this EsxiHost.
        The date and time the ESXi host was updated, in the format defined by
        `RFC3339`__.

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


        :return: The time_updated of this EsxiHost.
        :rtype: datetime
        r6   rR   rM   rM   rN   r     rZ   zEsxiHost.time_updatedc                 C   rT   )a&  
        Sets the time_updated of this EsxiHost.
        The date and time the ESXi host was updated, in the format defined by
        `RFC3339`__.

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


        :param time_updated: The time_updated of this EsxiHost.
        :type: datetime
        Nrc   )rK   r   rM   rM   rN   r     r[   c                 C   rP   )a  
        Gets the lifecycle_state of this EsxiHost.
        The current state of the ESXi host.

        Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "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 EsxiHost.
        :rtype: str
        )r7   rR   rM   rM   rN   r     rZ   zEsxiHost.lifecycle_statec                 C       g d}t ||sd}|| _dS )z
        Sets the lifecycle_state of this EsxiHost.
        The current state of the ESXi host.


        :param lifecycle_state: The lifecycle_state of this EsxiHost.
        :type: str
        )r   r   r	   r
   r   r   UNKNOWN_ENUM_VALUEN)r   r7   )rK   r   allowed_valuesrM   rM   rN   r     s   


c                 C   rP   )a3  
        Gets the billing_donor_host_id of this EsxiHost.
        The `OCID`__ of the deleted ESXi Host with LeftOver billing cycle.

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


        :return: The billing_donor_host_id of this EsxiHost.
        :rtype: str
        r8   rR   rM   rM   rN   r     rS   zEsxiHost.billing_donor_host_idc                 C   rT   )aG  
        Sets the billing_donor_host_id of this EsxiHost.
        The `OCID`__ of the deleted ESXi Host with LeftOver billing cycle.

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


        :param billing_donor_host_id: The billing_donor_host_id of this EsxiHost.
        :type: str
        Nrg   )rK   r   rM   rM   rN   r     rU   c                 C   rP   )a6  
        Gets the swap_billing_host_id of this EsxiHost.
        The `OCID`__ of the active ESXi Host to swap billing with current host.

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


        :return: The swap_billing_host_id of this EsxiHost.
        :rtype: str
        r9   rR   rM   rM   rN   r   -  rS   zEsxiHost.swap_billing_host_idc                 C   rT   )aI  
        Sets the swap_billing_host_id of this EsxiHost.
        The `OCID`__ of the active ESXi Host to swap billing with current host.

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


        :param swap_billing_host_id: The swap_billing_host_id of this EsxiHost.
        :type: str
        Nrh   )rK   r   rM   rM   rN   r   ;  rU   c                 C   rP   )a  
        Gets the is_billing_continuation_in_progress of this EsxiHost.
        Indicates whether this host is in the progress of billing continuation.


        :return: The is_billing_continuation_in_progress of this EsxiHost.
        :rtype: bool
        r:   rR   rM   rM   rN   r   I     
z,EsxiHost.is_billing_continuation_in_progressc                 C   rT   )a$  
        Sets the is_billing_continuation_in_progress of this EsxiHost.
        Indicates whether this host is in the progress of billing continuation.


        :param is_billing_continuation_in_progress: The is_billing_continuation_in_progress of this EsxiHost.
        :type: bool
        Nri   )rK   r   rM   rM   rN   r   U     

c                 C   rP   )z
        Gets the is_billing_swapping_in_progress of this EsxiHost.
        Indicates whether this host is in the progress of swapping billing.


        :return: The is_billing_swapping_in_progress of this EsxiHost.
        :rtype: bool
        r;   rR   rM   rM   rN   r   a  rj   z(EsxiHost.is_billing_swapping_in_progressc                 C   rT   )a  
        Sets the is_billing_swapping_in_progress of this EsxiHost.
        Indicates whether this host is in the progress of swapping billing.


        :param is_billing_swapping_in_progress: The is_billing_swapping_in_progress of this EsxiHost.
        :type: bool
        Nrl   )rK   r   rM   rM   rN   r   m  rk   c                 C   rP   )a  
        **[Required]** Gets the current_sku of this EsxiHost.
        The billing option currently used by the ESXi host.
        :func:`list_supported_skus`.

        Allowed values for this property are: "HOUR", "MONTH", "ONE_YEAR", "THREE_YEARS", 'UNKNOWN_ENUM_VALUE'.
        Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.


        :return: The current_sku of this EsxiHost.
        :rtype: str
        )r<   rR   rM   rM   rN   r    y  r^   zEsxiHost.current_skuc                 C   rd   )z
        Sets the current_sku of this EsxiHost.
        The billing option currently used by the ESXi host.
        :func:`list_supported_skus`.


        :param current_sku: The current_sku of this EsxiHost.
        :type: str
        r   r   r   r   re   N)r   r<   )rK   r    rf   rM   rM   rN   r      s   

c                 C   rP   )a%  
        **[Required]** Gets the next_sku of this EsxiHost.
        The billing option to switch to after the current billing cycle ends.
        If `nextSku` is null or empty, `currentSku` continues to the next billing cycle.
        :func:`list_supported_skus`.

        Allowed values for this property are: "HOUR", "MONTH", "ONE_YEAR", "THREE_YEARS", 'UNKNOWN_ENUM_VALUE'.
        Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.


        :return: The next_sku of this EsxiHost.
        :rtype: str
        )r=   rR   rM   rM   rN   r!     ra   zEsxiHost.next_skuc                 C   rd   )aN  
        Sets the next_sku of this EsxiHost.
        The billing option to switch to after the current billing cycle ends.
        If `nextSku` is null or empty, `currentSku` continues to the next billing cycle.
        :func:`list_supported_skus`.


        :param next_sku: The next_sku of this EsxiHost.
        :type: str
        rm   re   N)r   r=   )rK   r!   rf   rM   rM   rN   r!     s   

c                 C   rP   )a  
        **[Required]** Gets the billing_contract_end_date of this EsxiHost.
        Current billing cycle end date. If the value in `currentSku` and `nextSku` are different, the value specified in `nextSku`
        becomes the new `currentSKU` when the `contractEndDate` is reached.
        Example: `2016-08-25T21:10:29.600Z`


        :return: The billing_contract_end_date of this EsxiHost.
        :rtype: datetime
        r>   rR   rM   rM   rN   r"     rS   z"EsxiHost.billing_contract_end_datec                 C   rT   )a  
        Sets the billing_contract_end_date of this EsxiHost.
        Current billing cycle end date. If the value in `currentSku` and `nextSku` are different, the value specified in `nextSku`
        becomes the new `currentSKU` when the `contractEndDate` is reached.
        Example: `2016-08-25T21:10:29.600Z`


        :param billing_contract_end_date: The billing_contract_end_date of this EsxiHost.
        :type: datetime
        Nrn   )rK   r"   rM   rM   rN   r"     rU   c                 C   rP   )a  
        Gets the failed_esxi_host_id of this EsxiHost.
        The `OCID`__ of the ESXi host that failed.

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


        :return: The failed_esxi_host_id of this EsxiHost.
        :rtype: str
        r?   rR   rM   rM   rN   r#     rS   zEsxiHost.failed_esxi_host_idc                 C   rT   )a)  
        Sets the failed_esxi_host_id of this EsxiHost.
        The `OCID`__ of the ESXi host that failed.

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


        :param failed_esxi_host_id: The failed_esxi_host_id of this EsxiHost.
        :type: str
        Nro   )rK   r#   rM   rM   rN   r#     rU   c                 C   rP   )aH  
        Gets the replacement_esxi_host_id of this EsxiHost.
        The `OCID`__ of the ESXi host that
        is created to replace the failed host.

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


        :return: The replacement_esxi_host_id of this EsxiHost.
        :rtype: str
        r@   rR   rM   rM   rN   r$     rZ   z!EsxiHost.replacement_esxi_host_idc                 C   rT   )a_  
        Sets the replacement_esxi_host_id of this EsxiHost.
        The `OCID`__ of the ESXi host that
        is created to replace the failed host.

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


        :param replacement_esxi_host_id: The replacement_esxi_host_id of this EsxiHost.
        :type: str
        Nrp   )rK   r$   rM   rM   rN   r$     r[   c                 C   rP   )aX  
        Gets the grace_period_end_date of this EsxiHost.
        The date and time when the new esxi host should start billing cycle.
        `RFC3339`__.
        Example: `2021-07-25T21:10:29.600Z`

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


        :return: The grace_period_end_date of this EsxiHost.
        :rtype: datetime
        rA   rR   rM   rM   rN   r&     r^   zEsxiHost.grace_period_end_datec                 C   rT   )al  
        Sets the grace_period_end_date of this EsxiHost.
        The date and time when the new esxi host should start billing cycle.
        `RFC3339`__.
        Example: `2021-07-25T21:10:29.600Z`

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


        :param grace_period_end_date: The grace_period_end_date of this EsxiHost.
        :type: datetime
        Nrq   )rK   r&   rM   rM   rN   r&   !  r_   c                 C   rP   )a  
        **[Required]** Gets the vmware_software_version of this EsxiHost.
        The version of VMware software that Oracle Cloud VMware Solution installed on the ESXi hosts.


        :return: The vmware_software_version of this EsxiHost.
        :rtype: str
        rB   rR   rM   rM   rN   r'   1  rj   z EsxiHost.vmware_software_versionc                 C   rT   )a  
        Sets the vmware_software_version of this EsxiHost.
        The version of VMware software that Oracle Cloud VMware Solution installed on the ESXi hosts.


        :param vmware_software_version: The vmware_software_version of this EsxiHost.
        :type: str
        Nrr   )rK   r'   rM   rM   rN   r'   =  rk   c                 C   rP   )a5  
        Gets the non_upgraded_esxi_host_id of this EsxiHost.
        The `OCID`__ of the ESXi host that
        will be upgraded.

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


        :return: The non_upgraded_esxi_host_id of this EsxiHost.
        :rtype: str
        rC   rR   rM   rM   rN   r(   I  rZ   z"EsxiHost.non_upgraded_esxi_host_idc                 C   rT   )aM  
        Sets the non_upgraded_esxi_host_id of this EsxiHost.
        The `OCID`__ of the ESXi host that
        will be upgraded.

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


        :param non_upgraded_esxi_host_id: The non_upgraded_esxi_host_id of this EsxiHost.
        :type: str
        Nrs   )rK   r(   rM   rM   rN   r(   X  r[   c                 C   rP   )ab  
        Gets the upgraded_replacement_esxi_host_id of this EsxiHost.
        The `OCID`__ of the ESXi host that
        is newly created to upgrade the original host.

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


        :return: The upgraded_replacement_esxi_host_id of this EsxiHost.
        :rtype: str
        rD   rR   rM   rM   rN   r)   g  rZ   z*EsxiHost.upgraded_replacement_esxi_host_idc                 C   rT   )a  
        Sets the upgraded_replacement_esxi_host_id of this EsxiHost.
        The `OCID`__ of the ESXi host that
        is newly created to upgrade the original host.

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


        :param upgraded_replacement_esxi_host_id: The upgraded_replacement_esxi_host_id of this EsxiHost.
        :type: str
        Nrt   )rK   r)   rM   rM   rN   r)   v  r[   c                 C   rP   )z
        **[Required]** Gets the compute_availability_domain of this EsxiHost.
        The availability domain of the ESXi host.


        :return: The compute_availability_domain of this EsxiHost.
        :rtype: str
        rE   rR   rM   rM   rN   r*     rj   z$EsxiHost.compute_availability_domainc                 C   rT   )z
        Sets the compute_availability_domain of this EsxiHost.
        The availability domain of the ESXi host.


        :param compute_availability_domain: The compute_availability_domain of this EsxiHost.
        :type: str
        Nru   )rK   r*   rM   rM   rN   r*     rk   c                 C   rP   )z
        **[Required]** Gets the host_shape_name of this EsxiHost.
        The compute shape name of the ESXi host.
        :func:`list_supported_host_shapes`.


        :return: The host_shape_name of this EsxiHost.
        :rtype: str
        rF   rR   rM   rM   rN   r+     rW   zEsxiHost.host_shape_namec                 C   rT   )z
        Sets the host_shape_name of this EsxiHost.
        The compute shape name of the ESXi host.
        :func:`list_supported_host_shapes`.


        :param host_shape_name: The host_shape_name of this EsxiHost.
        :type: str
        Nrv   )rK   r+   rM   rM   rN   r+     rX   c                 C   rP   )z
        Gets the host_ocpu_count of this EsxiHost.
        The OCPU count of the ESXi host.


        :return: The host_ocpu_count of this EsxiHost.
        :rtype: float
        rG   rR   rM   rM   rN   r,     rj   zEsxiHost.host_ocpu_countc                 C   rT   )z
        Sets the host_ocpu_count of this EsxiHost.
        The OCPU count of the ESXi host.


        :param host_ocpu_count: The host_ocpu_count of this EsxiHost.
        :type: float
        Nrw   )rK   r,   rM   rM   rN   r,     rk   c                 C   rP   )a  
        Gets the capacity_reservation_id of this EsxiHost.
        The `OCID`__ of the Capacity Reservation.

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


        :return: The capacity_reservation_id of this EsxiHost.
        :rtype: str
        rH   rR   rM   rM   rN   r-     rS   z EsxiHost.capacity_reservation_idc                 C   rT   )a4  
        Sets the capacity_reservation_id of this EsxiHost.
        The `OCID`__ of the Capacity Reservation.

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


        :param capacity_reservation_id: The capacity_reservation_id of this EsxiHost.
        :type: str
        Nrx   )rK   r-   rM   rM   rN   r-     rU   c                 C   rP   )a  
        **[Required]** Gets the freeform_tags of this EsxiHost.
        Free-form tags for this resource. Each tag is a simple key-value pair with no
        predefined name, type, or namespace. For more information, see `Resource Tags`__.

        Example: `{"Department": "Finance"}`

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


        :return: The freeform_tags of this EsxiHost.
        :rtype: dict(str, str)
        rI   rR   rM   rM   rN   r.     ra   zEsxiHost.freeform_tagsc                 C   rT   )a  
        Sets the freeform_tags of this EsxiHost.
        Free-form tags for this resource. Each tag is a simple key-value pair with no
        predefined name, type, or namespace. For more information, see `Resource Tags`__.

        Example: `{"Department": "Finance"}`

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


        :param freeform_tags: The freeform_tags of this EsxiHost.
        :type: dict(str, str)
        Nry   )rK   r.   rM   rM   rN   r.     rb   c                 C   rP   )a  
        **[Required]** Gets the defined_tags of this EsxiHost.
        Defined tags for this resource. Each key is predefined and scoped to a
        namespace. For more information, see `Resource Tags`__.

        Example: `{"Operations": {"CostCenter": "42"}}`

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


        :return: The defined_tags of this EsxiHost.
        :rtype: dict(str, dict(str, object))
        rJ   rR   rM   rM   rN   r/     ra   zEsxiHost.defined_tagsc                 C   rT   )a  
        Sets the defined_tags of this EsxiHost.
        Defined tags for this resource. Each key is predefined and scoped to a
        namespace. For more information, 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 EsxiHost.
        :type: dict(str, dict(str, object))
        Nrz   )rK   r/   rM   rM   rN   r/     rb   c                 C   s   t | S N)r   rR   rM   rM   rN   __repr__/  s   zEsxiHost.__repr__c                 C   s   |d u rdS | j |j kS )NF)__dict__rK   otherrM   rM   rN   __eq__2  s   zEsxiHost.__eq__c                 C   s
   | |k S r{   rM   r~   rM   rM   rN   __ne__8  s   
zEsxiHost.__ne__N)3__name__
__module____qualname____doc__ZLIFECYCLE_STATE_CREATINGZLIFECYCLE_STATE_UPDATINGZLIFECYCLE_STATE_ACTIVEZLIFECYCLE_STATE_DELETINGZLIFECYCLE_STATE_DELETEDZLIFECYCLE_STATE_FAILEDZCURRENT_SKU_HOURZCURRENT_SKU_MONTHZCURRENT_SKU_ONE_YEARZCURRENT_SKU_THREE_YEARSZNEXT_SKU_HOURZNEXT_SKU_MONTHZNEXT_SKU_ONE_YEARZNEXT_SKU_THREE_YEARSrO   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.   r/   r|   r   r   rM   rM   rM   rN   r      s    Q





















































r   N)Zoci.utilr   r   r   Zoci.decoratorsr   objectr   rM   rM   rM   rN   <module>   s   