o
    ëÉ¶d8  ã                   @   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                   @   sN  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d%d&„ Zd'd(„ Zd)d*„ Zd+S ),ÚApplicationUsagezä
    Application usage during a specified time period.
    An application is a Java application that can be executed by a Java Runtime installation.
    An application is independent of the Java Runtime or its installation.
    c                 K   s‚   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 ApplicationUsage object with values from keyword arguments.
        The following keyword arguments are supported (corresponding to the getters/setters of this class):

        :param application_id:
            The value to assign to the application_id property of this ApplicationUsage.
        :type application_id: str

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

        :param application_type:
            The value to assign to the application_type property of this ApplicationUsage.
        :type application_type: str

        :param operating_systems:
            The value to assign to the operating_systems property of this ApplicationUsage.
        :type operating_systems: list[oci.jms.models.OperatingSystem]

        :param approximate_installation_count:
            The value to assign to the approximate_installation_count property of this ApplicationUsage.
        :type approximate_installation_count: int

        :param approximate_jre_count:
            The value to assign to the approximate_jre_count property of this ApplicationUsage.
        :type approximate_jre_count: int

        :param approximate_managed_instance_count:
            The value to assign to the approximate_managed_instance_count property of this ApplicationUsage.
        :type approximate_managed_instance_count: int

        :param time_start:
            The value to assign to the time_start property of this ApplicationUsage.
        :type time_start: datetime

        :param time_end:
            The value to assign to the time_end property of this ApplicationUsage.
        :type time_end: datetime

        :param time_first_seen:
            The value to assign to the time_first_seen property of this ApplicationUsage.
        :type time_first_seen: datetime

        :param time_last_seen:
            The value to assign to the time_last_seen property of this ApplicationUsage.
        :type time_last_seen: datetime

        Ústrzlist[OperatingSystem]ÚintÚdatetime)Úapplication_idÚdisplay_nameÚapplication_typeÚoperating_systemsÚapproximate_installation_countÚapproximate_jre_countÚ"approximate_managed_instance_countÚ
time_startÚtime_endÚtime_first_seenÚtime_last_seenZapplicationIdZdisplayNameZapplicationTypeZoperatingSystemsZapproximateInstallationCountZapproximateJreCountZapproximateManagedInstanceCountZ	timeStartZtimeEndZtimeFirstSeenZtimeLastSeenN)Zswagger_typesZattribute_mapÚ_application_idÚ_display_nameÚ_application_typeÚ_operating_systemsÚ_approximate_installation_countÚ_approximate_jre_countÚ#_approximate_managed_instance_countÚ_time_startÚ	_time_endÚ_time_first_seenÚ_time_last_seen)ÚselfÚkwargs© r"   úDusr/lib/python3.10/site-packages/oci/jms/models/application_usage.pyÚ__init__   sF   3õõ
zApplicationUsage.__init__c                 C   ó   | j S )zô
        **[Required]** Gets the application_id of this ApplicationUsage.
        An internal identifier for the application that is unique to a Fleet.


        :return: The application_id of this ApplicationUsage.
        :rtype: str
        ©r   ©r    r"   r"   r#   r
   n   ó   
zApplicationUsage.application_idc                 C   ó
   || _ dS )zò
        Sets the application_id of this ApplicationUsage.
        An internal identifier for the application that is unique to a Fleet.


        :param application_id: The application_id of this ApplicationUsage.
        :type: str
        Nr&   )r    r
   r"   r"   r#   r
   z   ó   

c                 C   r%   )zÇ
        **[Required]** Gets the display_name of this ApplicationUsage.
        The name of the application.


        :return: The display_name of this ApplicationUsage.
        :rtype: str
        ©r   r'   r"   r"   r#   r   †   r(   zApplicationUsage.display_namec                 C   r)   )zÃ
        Sets the display_name of this ApplicationUsage.
        The name of the application.


        :param display_name: The display_name of this ApplicationUsage.
        :type: str
        Nr+   )r    r   r"   r"   r#   r   ’   r*   c                 C   r%   )zû
        **[Required]** Gets the application_type of this ApplicationUsage.
        The type of the application, denoted by how the application was started.


        :return: The application_type of this ApplicationUsage.
        :rtype: str
        ©r   r'   r"   r"   r#   r   ž   r(   z!ApplicationUsage.application_typec                 C   r)   )zû
        Sets the application_type of this ApplicationUsage.
        The type of the application, denoted by how the application was started.


        :param application_type: The application_type of this ApplicationUsage.
        :type: str
        Nr,   )r    r   r"   r"   r#   r   ª   r*   c                 C   r%   )zö
        Gets the operating_systems of this ApplicationUsage.
        The operating systems running this application.


        :return: The operating_systems of this ApplicationUsage.
        :rtype: list[oci.jms.models.OperatingSystem]
        ©r   r'   r"   r"   r#   r   ¶   r(   z"ApplicationUsage.operating_systemsc                 C   r)   )a  
        Sets the operating_systems of this ApplicationUsage.
        The operating systems running this application.


        :param operating_systems: The operating_systems of this ApplicationUsage.
        :type: list[oci.jms.models.OperatingSystem]
        Nr-   )r    r   r"   r"   r#   r   Â   r*   c                 C   r%   )a   
        Gets the approximate_installation_count of this ApplicationUsage.
        The approximate count of installations running this application.


        :return: The approximate_installation_count of this ApplicationUsage.
        :rtype: int
        ©r   r'   r"   r"   r#   r   Î   r(   z/ApplicationUsage.approximate_installation_countc                 C   r)   )a  
        Sets the approximate_installation_count of this ApplicationUsage.
        The approximate count of installations running this application.


        :param approximate_installation_count: The approximate_installation_count of this ApplicationUsage.
        :type: int
        Nr.   )r    r   r"   r"   r#   r   Ú   r*   c                 C   r%   )zî
        Gets the approximate_jre_count of this ApplicationUsage.
        The approximate count of Java Runtimes running this application.


        :return: The approximate_jre_count of this ApplicationUsage.
        :rtype: int
        ©r   r'   r"   r"   r#   r   æ   r(   z&ApplicationUsage.approximate_jre_countc                 C   r)   )a  
        Sets the approximate_jre_count of this ApplicationUsage.
        The approximate count of Java Runtimes running this application.


        :param approximate_jre_count: The approximate_jre_count of this ApplicationUsage.
        :type: int
        Nr/   )r    r   r"   r"   r#   r   ò   r*   c                 C   r%   )a  
        Gets the approximate_managed_instance_count of this ApplicationUsage.
        The approximate count of managed instances reporting this application.


        :return: The approximate_managed_instance_count of this ApplicationUsage.
        :rtype: int
        ©r   r'   r"   r"   r#   r   þ   r(   z3ApplicationUsage.approximate_managed_instance_countc                 C   r)   )a/  
        Sets the approximate_managed_instance_count of this ApplicationUsage.
        The approximate count of managed instances reporting this application.


        :param approximate_managed_instance_count: The approximate_managed_instance_count of this ApplicationUsage.
        :type: int
        Nr0   )r    r   r"   r"   r#   r   
  r*   c                 C   r%   )a7  
        Gets the time_start of this ApplicationUsage.
        Lower bound of the specified time period filter. JMS provides a view of the data that is _per day_. The query uses only the date element of the parameter.


        :return: The time_start of this ApplicationUsage.
        :rtype: datetime
        ©r   r'   r"   r"   r#   r     r(   zApplicationUsage.time_startc                 C   r)   )a@  
        Sets the time_start of this ApplicationUsage.
        Lower bound of the specified time period filter. JMS provides a view of the data that is _per day_. The query uses only the date element of the parameter.


        :param time_start: The time_start of this ApplicationUsage.
        :type: datetime
        Nr1   )r    r   r"   r"   r#   r   "  r*   c                 C   r%   )a3  
        Gets the time_end of this ApplicationUsage.
        Upper bound of the specified time period filter. JMS provides a view of the data that is _per day_. The query uses only the date element of the parameter.


        :return: The time_end of this ApplicationUsage.
        :rtype: datetime
        ©r   r'   r"   r"   r#   r   .  r(   zApplicationUsage.time_endc                 C   r)   )a:  
        Sets the time_end of this ApplicationUsage.
        Upper bound of the specified time period filter. JMS provides a view of the data that is _per day_. The query uses only the date element of the parameter.


        :param time_end: The time_end of this ApplicationUsage.
        :type: datetime
        Nr2   )r    r   r"   r"   r#   r   :  r*   c                 C   r%   )aÛ  
        Gets the time_first_seen of this ApplicationUsage.
        The date and time the resource was _first_ reported to JMS.
        This is potentially _before_ the specified time period provided by the filters.
        For example, a resource can be first reported to JMS before the start of a specified time period,
        if it is also reported during the time period.


        :return: The time_first_seen of this ApplicationUsage.
        :rtype: datetime
        ©r   r'   r"   r"   r#   r   F  ó   z ApplicationUsage.time_first_seenc                 C   r)   )aé  
        Sets the time_first_seen of this ApplicationUsage.
        The date and time the resource was _first_ reported to JMS.
        This is potentially _before_ the specified time period provided by the filters.
        For example, a resource can be first reported to JMS before the start of a specified time period,
        if it is also reported during the time period.


        :param time_first_seen: The time_first_seen of this ApplicationUsage.
        :type: datetime
        Nr3   )r    r   r"   r"   r#   r   U  ó   
c                 C   r%   )aÖ  
        Gets the time_last_seen of this ApplicationUsage.
        The date and time the resource was _last_ reported to JMS.
        This is potentially _after_ the specified time period provided by the filters.
        For example, a resource can be last reported to JMS before the start of a specified time period,
        if it is also reported during the time period.


        :return: The time_last_seen of this ApplicationUsage.
        :rtype: datetime
        ©r   r'   r"   r"   r#   r   d  r4   zApplicationUsage.time_last_seenc                 C   r)   )aã  
        Sets the time_last_seen of this ApplicationUsage.
        The date and time the resource was _last_ reported to JMS.
        This is potentially _after_ the specified time period provided by the filters.
        For example, a resource can be last reported to JMS before the start of a specified time period,
        if it is also reported during the time period.


        :param time_last_seen: The time_last_seen of this ApplicationUsage.
        :type: datetime
        Nr6   )r    r   r"   r"   r#   r   s  r5   c                 C   s   t | ƒS ©N)r   r'   r"   r"   r#   Ú__repr__‚  s   zApplicationUsage.__repr__c                 C   s   |d u rdS | j |j kS )NF)Ú__dict__©r    Úotherr"   r"   r#   Ú__eq__…  s   zApplicationUsage.__eq__c                 C   s
   | |k S r7   r"   r:   r"   r"   r#   Ú__ne__‹  s   
zApplicationUsage.__ne__N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r$   Úpropertyr
   Úsetterr   r   r   r   r   r   r   r   r   r   r8   r<   r=   r"   r"   r"   r#   r      sd    Z





















r   N)Zoci.utilr   r   r   Zoci.decoratorsr   Úobjectr   r"   r"   r"   r#   Ú<module>   s   