o
    `۷i                     @   s`   d dl mZmZmZmZmZ d dlmZ d dlm	Z	 d dl
mZ d dlmZ G dd deZdS )	    )AnyDictListOptionalTuple)DAGNode)get_dag_node_str)
Deployment)DeploymentHandlec                       s   e Zd ZdZ	ddededee deeef deeef de	eeef  f fd	d
Z
dee deeef deeef deeef fddZdefddZdd Z  ZS )DeploymentNodez;Represents a deployment node in a DAG authored Ray DAG API.N
deploymentapp_namedeployment_init_argsdeployment_init_kwargsray_actor_optionsother_args_to_resolvec                    s6   t  j||||d || _|| _t| jj| j| _d S N)r   )super__init__	_app_name_deploymentr
   name_deployment_handle)selfr   r   r   r   r   r   	__class__ X/home/ubuntu/vllm_env/lib/python3.10/site-packages/ray/serve/_private/deployment_node.pyr      s   

zDeploymentNode.__init__new_args
new_kwargsnew_optionsnew_other_args_to_resolvec                 C   s   t | j| j||||dS r   )r   r   r   )r   r   r   r    r!   r   r   r   
_copy_impl$   s   zDeploymentNode._copy_implreturnc                 C   s   t | t| jS N)r   strr   r   r   r   r   __str__4   s   zDeploymentNode.__str__c                 C   s   | j jS r$   )r   r   r&   r   r   r   get_deployment_name7   s   z"DeploymentNode.get_deployment_namer$   )__name__
__module____qualname____doc__r	   r%   r   r   r   r   r   r   r"   r'   r(   __classcell__r   r   r   r   r   	   s6    

	



r   N)typingr   r   r   r   r   ray.dagr   ray.dag.format_utilsr   ray.serve.deploymentr	   ray.serve.handler
   r   r   r   r   r   <module>   s    