U
    ÍZj«  ã                   @   s†   d dl Z d dlZd dlZd dlZd dlmZ d dlmZ ejrrd dlm	Z	m
Z
mZmZmZ d dlmZ d dlmZ G dd„ deƒZdS )	é    N)ÚEnum)ÚRequest)ÚDictÚListÚOptionalÚUnionÚAny)Údatetime)ÚTaskc                       sn   e Zd ZdZddddddœZdddd	d
dœZdZd‡ fdd„	Zdd„ Zdd„ Z	dd„ Z
dd„ Zdd„ Z‡  ZS )ÚLaunchRequestu­  
    Represents that a user made a request to an Alexa skill, but did not provide a specific intent.


    :param request_id: Represents the unique identifier for the specific request.
    :type request_id: (optional) str
    :param timestamp: Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
    :type timestamp: (optional) datetime
    :param locale: A string indicating the userâ€™s locale. For example: en-US. This value is only provided with certain request types.
    :type locale: (optional) str
    :param task: 
    :type task: (optional) ask_sdk_model.task.Task

    Ústrr	   zask_sdk_model.task.Task)Úobject_typeÚ
request_idÚ	timestampÚlocaleÚtaskÚtypeZ	requestIdr   r   r   FNc                    s2   d| _ | j | _tt| ƒj| j |||d� || _dS )uÊ  Represents that a user made a request to an Alexa skill, but did not provide a specific intent.

        :param request_id: Represents the unique identifier for the specific request.
        :type request_id: (optional) str
        :param timestamp: Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
        :type timestamp: (optional) datetime
        :param locale: A string indicating the userâ€™s locale. For example: en-US. This value is only provided with certain request types.
        :type locale: (optional) str
        :param task: 
        :type task: (optional) ask_sdk_model.task.Task
        r   )r   r   r   r   N)Z#_LaunchRequest__discriminator_valuer   Úsuperr   Ú__init__r   )Úselfr   r   r   r   ©Ú	__class__© ú_/var/www/html/TRUCKING_PROJECT/venv/lib/python3.8/site-packages/ask_sdk_model/launch_request.pyr   >   s    zLaunchRequest.__init__c                 C   s¦   i }t  | j¡D ]�\}}t| |ƒ}t|tƒrDttdd„ |ƒƒ||< qt|tƒrZ|j||< qt	|dƒrr| 
¡ ||< qt|tƒr˜ttdd„ | ¡ ƒƒ||< q|||< q|S )z&Returns the model properties as a dictc                 S   s&   t | dƒr|  ¡ S t| tƒr"| jS | S )NÚto_dict©Úhasattrr   Ú
isinstancer   Úvalue)Úxr   r   r   Ú<lambda>Z   s   z'LaunchRequest.to_dict.<locals>.<lambda>r   c                 S   sF   t | d dƒr"| d | d  ¡ fS t| d tƒrB| d | d jfS | S )Né   r   r   r   )Úitemr   r   r   r    d   s
    ÿÿ)ÚsixÚ	iteritemsÚdeserialized_typesÚgetattrr   ÚlistÚmapr   r   r   r   ÚdictÚitems)r   ÚresultÚattrÚ_r   r   r   r   r   Q   s&    

ý


û
zLaunchRequest.to_dictc                 C   s   t  |  ¡ ¡S )z.Returns the string representation of the model)ÚpprintÚpformatr   ©r   r   r   r   Úto_stro   s    zLaunchRequest.to_strc                 C   s   |   ¡ S )zFor `print` and `pprint`)r1   r0   r   r   r   Ú__repr__t   s    zLaunchRequest.__repr__c                 C   s   t |tƒsdS | j|jkS )z&Returns true if both objects are equalF)r   r   Ú__dict__©r   Úotherr   r   r   Ú__eq__y   s    
zLaunchRequest.__eq__c                 C   s
   | |k S )z*Returns true if both objects are not equalr   r4   r   r   r   Ú__ne__�   s    zLaunchRequest.__ne__)NNNN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r%   Zattribute_mapZsupports_multiple_typesr   r   r1   r2   r6   r7   Ú__classcell__r   r   r   r   r      s(   û	ûr   )r.   Úrer#   ÚtypingÚenumr   Zask_sdk_model.requestr   ÚTYPE_CHECKINGr   r   r   r   r   r	   Zask_sdk_model.taskr
   ZTask_8012f71er   r   r   r   r   Ú<module>   s   