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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d0d1 Zejd2d1 Zed3d4 Zejd5d4 Zd6d7 Zd8d9 Z d:d; Z!d<S )=Jobz\
    Results of a Database Connection search. Contains DatabaseConnectionSummary items.
    
EVALUATION	MIGRATIONACCEPTEDIN_PROGRESSUNKNOWN
TERMINATEDFAILED	SUCCEEDEDWAITING	CANCELINGCANCELEDc                 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| _	d| _
d| _d| _d| _d| _dS )a(
  
        Initializes a new Job 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 Job.
        :type id: str

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

        :param migration_id:
            The value to assign to the migration_id property of this Job.
        :type migration_id: str

        :param type:
            The value to assign to the type property of this Job.
            Allowed values for this property are: "EVALUATION", "MIGRATION", 'UNKNOWN_ENUM_VALUE'.
            Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
        :type type: str

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

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

        :param progress:
            The value to assign to the progress property of this Job.
        :type progress: oci.database_migration.models.MigrationJobProgressResource

        :param unsupported_objects:
            The value to assign to the unsupported_objects property of this Job.
        :type unsupported_objects: list[oci.database_migration.models.UnsupportedDatabaseObject]

        :param lifecycle_state:
            The value to assign to the lifecycle_state property of this Job.
            Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "UNKNOWN", "TERMINATED", "FAILED", "SUCCEEDED", "WAITING", "CANCELING", "CANCELED", '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 Job.
        :type lifecycle_details: str

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

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

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

        strdatetimeZMigrationJobProgressResourcezlist[UnsupportedDatabaseObject]zdict(str, str)zdict(str, dict(str, object)))iddisplay_namemigration_idtypetime_createdtime_updatedprogressunsupported_objectslifecycle_statelifecycle_detailsfreeform_tagsdefined_tagssystem_tagsr   ZdisplayNameZmigrationIdr   ZtimeCreatedZtimeUpdatedr   ZunsupportedObjectsZlifecycleStateZlifecycleDetailsZfreeformTagsZdefinedTagsZ
systemTagsN)Zswagger_typesZattribute_map_id_display_name_migration_id_type_time_created_time_updated	_progress_unsupported_objects_lifecycle_state_lifecycle_details_freeform_tags_defined_tags_system_tags)selfkwargs r0   Eusr/lib/python3.10/site-packages/oci/database_migration/models/job.py__init__>   sR   ?
zJob.__init__c                 C      | j S )z
        **[Required]** Gets the id of this Job.
        The OCID of the Migration Job.


        :return: The id of this Job.
        :rtype: str
        r!   r.   r0   r0   r1   r         
zJob.idc                 C   
   || _ dS )z
        Sets the id of this Job.
        The OCID of the Migration Job.


        :param id: The id of this Job.
        :type: str
        Nr4   )r.   r   r0   r0   r1   r         

c                 C   r3   )z
        **[Required]** Gets the display_name of this Job.
        Name of the job.


        :return: The display_name of this Job.
        :rtype: str
        r"   r5   r0   r0   r1   r      r6   zJob.display_namec                 C   r7   )z
        Sets the display_name of this Job.
        Name of the job.


        :param display_name: The display_name of this Job.
        :type: str
        Nr9   )r.   r   r0   r0   r1   r      r8   c                 C   r3   )z
        **[Required]** Gets the migration_id of this Job.
        The OCID of the Migration that this job belongs to.


        :return: The migration_id of this Job.
        :rtype: str
        r#   r5   r0   r0   r1   r      r6   zJob.migration_idc                 C   r7   )z
        Sets the migration_id of this Job.
        The OCID of the Migration that this job belongs to.


        :param migration_id: The migration_id of this Job.
        :type: str
        Nr:   )r.   r   r0   r0   r1   r      r8   c                 C   r3   )aL  
        **[Required]** Gets the type of this Job.
        The job type.

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


        :return: The type of this Job.
        :rtype: str
        )r$   r5   r0   r0   r1   r         zJob.typec                 C   s    ddg}t ||sd}|| _dS )z
        Sets the type of this Job.
        The job type.


        :param type: The type of this Job.
        :type: str
        r   r   UNKNOWN_ENUM_VALUEN)r   r$   )r.   r   allowed_valuesr0   r0   r1   r        


c                 C   r3   )z
        **[Required]** Gets the time_created of this Job.
        The time the Migration Job was created. An RFC3339 formatted datetime string


        :return: The time_created of this Job.
        :rtype: datetime
        r%   r5   r0   r0   r1   r     r6   zJob.time_createdc                 C   r7   )z
        Sets the time_created of this Job.
        The time the Migration Job was created. An RFC3339 formatted datetime string


        :param time_created: The time_created of this Job.
        :type: datetime
        Nr?   )r.   r   r0   r0   r1   r     r8   c                 C   r3   )z
        Gets the time_updated of this Job.
        The time the Migration Job was last updated. An RFC3339 formatted datetime string


        :return: The time_updated of this Job.
        :rtype: datetime
        r&   r5   r0   r0   r1   r   (  r6   zJob.time_updatedc                 C   r7   )z
        Sets the time_updated of this Job.
        The time the Migration Job was last updated. An RFC3339 formatted datetime string


        :param time_updated: The time_updated of this Job.
        :type: datetime
        Nr@   )r.   r   r0   r0   r1   r   4  r8   c                 C   r3   )z
        Gets the progress of this Job.

        :return: The progress of this Job.
        :rtype: oci.database_migration.models.MigrationJobProgressResource
        r'   r5   r0   r0   r1   r   @  s   zJob.progressc                 C   r7   )z
        Sets the progress of this Job.

        :param progress: The progress of this Job.
        :type: oci.database_migration.models.MigrationJobProgressResource
        NrA   )r.   r   r0   r0   r1   r   J  s   
c                 C   r3   )z
        Gets the unsupported_objects of this Job.
        Database objects not supported.


        :return: The unsupported_objects of this Job.
        :rtype: list[oci.database_migration.models.UnsupportedDatabaseObject]
        r(   r5   r0   r0   r1   r   T  r6   zJob.unsupported_objectsc                 C   r7   )z
        Sets the unsupported_objects of this Job.
        Database objects not supported.


        :param unsupported_objects: The unsupported_objects of this Job.
        :type: list[oci.database_migration.models.UnsupportedDatabaseObject]
        NrB   )r.   r   r0   r0   r1   r   `  r8   c                 C   r3   )a  
        **[Required]** Gets the lifecycle_state of this Job.
        The current state of the migration job.

        Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "UNKNOWN", "TERMINATED", "FAILED", "SUCCEEDED", "WAITING", "CANCELING", "CANCELED", 'UNKNOWN_ENUM_VALUE'.
        Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.


        :return: The lifecycle_state of this Job.
        :rtype: str
        )r)   r5   r0   r0   r1   r   l  r;   zJob.lifecycle_statec                 C   s    g d}t ||sd}|| _dS )z
        Sets the lifecycle_state of this Job.
        The current state of the migration job.


        :param lifecycle_state: The lifecycle_state of this Job.
        :type: str
        )	r	   r
   r   r   r   r   r   r   r   r<   N)r   r)   )r.   r   r=   r0   r0   r1   r   {  r>   c                 C   r3   )a%  
        Gets the lifecycle_details of this Job.
        A message describing the current state in more detail. For example, can be used to provide actionable information
        for a resource in Failed state.


        :return: The lifecycle_details of this Job.
        :rtype: str
        r*   r5   r0   r0   r1   r        zJob.lifecycle_detailsc                 C   r7   )a5  
        Sets the lifecycle_details of this Job.
        A message describing the current state in more detail. For example, can be used to provide actionable information
        for a resource in Failed state.


        :param lifecycle_details: The lifecycle_details of this Job.
        :type: str
        NrC   )r.   r   r0   r0   r1   r        
c                 C   r3   )a-  
        Gets the freeform_tags of this Job.
        Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
        Example: `{"bar-key": "value"}`


        :return: The freeform_tags of this Job.
        :rtype: dict(str, str)
        r+   r5   r0   r0   r1   r     rD   zJob.freeform_tagsc                 C   r7   )a9  
        Sets the freeform_tags of this Job.
        Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
        Example: `{"bar-key": "value"}`


        :param freeform_tags: The freeform_tags of this Job.
        :type: dict(str, str)
        NrF   )r.   r   r0   r0   r1   r     rE   c                 C   r3   )a'  
        Gets the defined_tags of this Job.
        Defined tags for this resource. Each key is predefined and scoped to a namespace.
        Example: `{"foo-namespace": {"bar-key": "value"}}`


        :return: The defined_tags of this Job.
        :rtype: dict(str, dict(str, object))
        r,   r5   r0   r0   r1   r     rD   zJob.defined_tagsc                 C   r7   )a2  
        Sets the defined_tags of this Job.
        Defined tags for this resource. Each key is predefined and scoped to a namespace.
        Example: `{"foo-namespace": {"bar-key": "value"}}`


        :param defined_tags: The defined_tags of this Job.
        :type: dict(str, dict(str, object))
        NrG   )r.   r   r0   r0   r1   r     rE   c                 C   r3   )a$  
        Gets the system_tags of this Job.
        Usage of system tag keys. These predefined keys are scoped to namespaces.
        Example: `{"orcl-cloud": {"free-tier-retained": "true"}}`


        :return: The system_tags of this Job.
        :rtype: dict(str, dict(str, object))
        r-   r5   r0   r0   r1   r      rD   zJob.system_tagsc                 C   r7   )a.  
        Sets the system_tags of this Job.
        Usage of system tag keys. These predefined keys are scoped to namespaces.
        Example: `{"orcl-cloud": {"free-tier-retained": "true"}}`


        :param system_tags: The system_tags of this Job.
        :type: dict(str, dict(str, object))
        NrH   )r.   r    r0   r0   r1   r      rE   c                 C   s   t | S N)r   r5   r0   r0   r1   __repr__  s   zJob.__repr__c                 C   s   |d u rdS | j |j kS )NF)__dict__r.   otherr0   r0   r1   __eq__  s   z
Job.__eq__c                 C   s
   | |k S rI   r0   rL   r0   r0   r1   __ne__  s   
z
Job.__ne__N)"__name__
__module____qualname____doc__ZTYPE_EVALUATIONZTYPE_MIGRATIONZLIFECYCLE_STATE_ACCEPTEDZLIFECYCLE_STATE_IN_PROGRESSZLIFECYCLE_STATE_UNKNOWNZLIFECYCLE_STATE_TERMINATEDZLIFECYCLE_STATE_FAILEDZLIFECYCLE_STATE_SUCCEEDEDZLIFECYCLE_STATE_WAITINGZLIFECYCLE_STATE_CANCELINGZLIFECYCLE_STATE_CANCELEDr2   propertyr   setterr   r   r   r   r   r   r   r   r   r   r   r    rJ   rN   rO   r0   r0   r0   r1   r      s    l












	
	











r   N)Zoci.utilr   r   r   Zoci.decoratorsr   objectr   r0   r0   r0   r1   <module>   s   