o
    0_Wc                     @   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r9d 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)Causec                       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 )SessionResumedRequestu  
    The request to resume a skill&#39;s session and tells the skill why it is resumed.


    :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 cause: 
    :type cause: (optional) ask_sdk_model.cause.Cause

    strr	   zask_sdk_model.cause.Cause)object_type
request_id	timestamplocalecausetypeZ	requestIdr   r   r   FNc                    s2   d| _ | j | _tt| j| j |||d || _dS )u  The request to resume a skill&#39;s session and tells the skill why it is resumed.

        :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 cause: 
        :type cause: (optional) ask_sdk_model.cause.Cause
        r   )r   r   r   r   N)Z+_SessionResumedRequest__discriminator_valuer   superr   __init__r   )selfr   r   r   r   	__class__ GD:\Flask\env\Lib\site-packages\ask_sdk_model/session_resumed_request.pyr   >   s   
zSessionResumedRequest.__init__c                 C   s   i }t | jD ]H\}}t| |}t|tr"ttdd |||< qt|tr-|j||< qt	|dr9|
 ||< qt|trLt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/SessionResumedRequest.to_dict.<locals>.<lambda>r   c                 S   sF   t | d dr| d | d  fS t| d tr!| 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SessionResumedRequest.to_dictc                 C   s   t |  S )z.Returns the string representation of the model)pprintpformatr   r   r   r   r   to_stro   s   zSessionResumedRequest.to_strc                 C   s   |   S )zFor `print` and `pprint`)r1   r0   r   r   r   __repr__t   s   zSessionResumedRequest.__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SessionResumedRequest.__eq__c                 C   s
   | |k S )z*Returns true if both objects are not equalr   r4   r   r   r   __ne__   s   
zSessionResumedRequest.__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.causer
   ZCause_6683e534r   r   r   r   r   <module>   s   