
    )`iW                         d dl mZ d dlmZmZ  G d dee          Z G d de          Z G d d          Zd	Z	d
ej
         dZdS )    )Enum)	BaseModel
ConfigDictc                       e Zd ZdZdZdZdS )SessionRequestTypezTypes of session management requests.

    NEW_SESSION: Request to create a new stateful session
    CLOSE: Request to close an existing session
    NEW_SESSIONCLOSEN)__name__
__module____qualname____doc__r   r	        /home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/model_hosting_container_standards/sagemaker/sessions/models.pyr   r      s$           KEEEr   r   c                   6    e Zd ZU dZ ed          Zeed<   dS )SessionRequestzRequest model for session management operations.

    Validates that the request contains a valid requestType field
    and rejects any extra fields.
    forbid)extrarequestTypeN)r
   r   r   r   r   model_configr   __annotations__r   r   r   r   r      s<           :H---L######r   r   c                       e Zd ZdZdZdZdZdS )SageMakerSessionHeadera  SageMaker API header constants for stateful session management.

    SESSION_ID: Header to pass existing session ID to the server
    NEW_SESSION_ID: Header returned by server when creating a new session
    CLOSED_SESSION_ID: Header returned by server when closing a session
    zX-Amzn-SageMaker-Session-IdzX-Amzn-SageMaker-New-Session-Idz"X-Amzn-SageMaker-Closed-Session-IdN)r
   r   r   r   
SESSION_IDNEW_SESSION_IDCLOSED_SESSION_IDr   r   r   r   r      s,          /J6N<r   r   z.Invalid payload. stateful sessions not enabledz0Invalid payload. stateful sessions not enabled, z header not supportedN)enumr   pydanticr   r   strr   r   r   SESSION_DISABLED_ERROR_DETAILr   SESSION_DISABLED_LOG_MESSAGEr   r   r   <module>r"      s          * * * * * * * *    d   	$ 	$ 	$ 	$ 	$Y 	$ 	$ 	$
= 
= 
= 
= 
= 
= 
= 
= !Q @(@ @ @   r   