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d Ze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 )DeliveredArtifactzQ
    Details of the artifacts delivered through the Deliver Artifacts stage.
    GENERIC_ARTIFACTOCIRc                 K   s2   dddd| _ dddd| _d| _d| _d| _dS )a  
        Initializes a new DeliveredArtifact object with values from keyword arguments. This class has the following subclasses and if you are using this class as input
        to a service operations then you should favor using a subclass over the base class:

        * :class:`~oci.devops.models.ContainerRegistryDeliveredArtifact`
        * :class:`~oci.devops.models.GenericDeliveredArtifact`

        The following keyword arguments are supported (corresponding to the getters/setters of this class):

        :param deploy_artifact_id:
            The value to assign to the deploy_artifact_id property of this DeliveredArtifact.
        :type deploy_artifact_id: str

        :param output_artifact_name:
            The value to assign to the output_artifact_name property of this DeliveredArtifact.
        :type output_artifact_name: str

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

        str)deploy_artifact_idoutput_artifact_nameartifact_typeZdeployArtifactIdZoutputArtifactNameartifactTypeN)Zswagger_typesZattribute_map_deploy_artifact_id_output_artifact_name_artifact_type)selfkwargs r   Husr/lib/python3.10/site-packages/oci/devops/models/delivered_artifact.py__init__   s   
zDeliveredArtifact.__init__c                 C   s$   | d }|dkr
dS |dkrdS dS )z
        Given the hash representation of a subtype of this class,
        use the info in the hash to return the class of the subtype.
        r   r   Z"ContainerRegistryDeliveredArtifactr   ZGenericDeliveredArtifactr   r   )Zobject_dictionarytyper   r   r   get_subtypeC   s   zDeliveredArtifact.get_subtypec                 C      | j S )z
        **[Required]** Gets the deploy_artifact_id of this DeliveredArtifact.
        The OCID of the deployment artifact definition.


        :return: The deploy_artifact_id of this DeliveredArtifact.
        :rtype: str
        r   r   r   r   r   r
   S      
z$DeliveredArtifact.deploy_artifact_idc                 C   
   || _ dS )z
        Sets the deploy_artifact_id of this DeliveredArtifact.
        The OCID of the deployment artifact definition.


        :param deploy_artifact_id: The deploy_artifact_id of this DeliveredArtifact.
        :type: str
        Nr   )r   r
   r   r   r   r
   _      

c                 C   r   )a  
        **[Required]** Gets the output_artifact_name of this DeliveredArtifact.
        Name of the output artifact defined in the build specification file.


        :return: The output_artifact_name of this DeliveredArtifact.
        :rtype: str
        r   r   r   r   r   r   k   r   z&DeliveredArtifact.output_artifact_namec                 C   r   )a  
        Sets the output_artifact_name of this DeliveredArtifact.
        Name of the output artifact defined in the build specification file.


        :param output_artifact_name: The output_artifact_name of this DeliveredArtifact.
        :type: str
        Nr   )r   r   r   r   r   r   w   r   c                 C   r   )a  
        **[Required]** Gets the artifact_type of this DeliveredArtifact.
        Type of artifact delivered.

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


        :return: The artifact_type of this DeliveredArtifact.
        :rtype: str
        )r   r   r   r   r   r      s   zDeliveredArtifact.artifact_typec                 C   s    ddg}t ||sd}|| _dS )z
        Sets the artifact_type of this DeliveredArtifact.
        Type of artifact delivered.


        :param artifact_type: The artifact_type of this DeliveredArtifact.
        :type: str
        r   r   ZUNKNOWN_ENUM_VALUEN)r   r   )r   r   Zallowed_valuesr   r   r   r      s   


c                 C   s   t | S N)r   r   r   r   r   __repr__   s   zDeliveredArtifact.__repr__c                 C   s   |d u rdS | j |j kS )NF)__dict__r   otherr   r   r   __eq__   s   zDeliveredArtifact.__eq__c                 C   s
   | |k S r   r   r"   r   r   r   __ne__   s   
zDeliveredArtifact.__ne__N)__name__
__module____qualname____doc__ZARTIFACT_TYPE_GENERIC_ARTIFACTZARTIFACT_TYPE_OCIRr   staticmethodr   propertyr
   setterr   r   r    r$   r%   r   r   r   r   r      s,    )






r   N)Zoci.utilr   r   r   Zoci.decoratorsr   objectr   r   r   r   r   <module>   s   