
    vg?                     F   d Z ddlmZ ddlmc mZ 	 ddlZn#  ddlmZ Y nxY wddl	Z	 G d d          Z
 G d d          Zedk    rX G d	 d
e
          Zddlmc mZ  ej        dd          Z e            Ze                    e            ej                     dS dS )z@$Id: xmlrpc_handler.py,v 1.6 2004/04/21 14:09:24 akuchling Exp $    )	as_stringNc                   &    e Zd Zd Zd Zd Zd ZdS )xmlrpc_handlerc                 0    |j         d d         dk    rdS dS )N   z/RPC2   r   )uriselfrequests     ]/var/www/pixelcanvas.ch/venv/lib/python3.11/site-packages/supervisor/medusa/xmlrpc_handler.pymatchzxmlrpc_handler.match   s!    ;rr?g%%11    c                 t    |j         dk    rt          | |          |_        d S |                    d           d S )NPOSTi  )command	collectorerrorr
   s     r   handle_requestzxmlrpc_handler.handle_request   s?    ?f$$ )4 9 9GMM3r   c           
      0   t          j        |          \  }}	 	 |                     ||          }t          |          t          d          k    r|f}t          j        |d          }na#  t          j        t          j        dt          j                    d         dt          j                    d                             }Y nxY wd|d<   |                    |           |	                                 d S #  |
                    d           Y d S xY w)	N r   )methodresponser   :ztext/xmlzContent-Typei  )	xmlrpclibloadscalltypedumpsFaultsysexc_infopushdoner   )r   datar   paramsmethodresponses         r   continue_requestzxmlrpc_handler.continue_request#   s   "$//	
H99ff55>>T"XX-- ({H %?HQGGG$?!s|~~a7H7H7H#,..YZJ[J[,\]]  '1GN#LL(###LLNNNNN	 MM3s   9A* C; *ACC; ;Dc                      t          d          )NNotYetImplemented)	Exceptionr   r&   r%   s      r   r   zxmlrpc_handler.call;   s    +,,,r   N)__name__
__module____qualname__r   r   r(   r   r   r   r   r   r      sP                 0- - - - -r   r   c                   $    e Zd ZdZd Zd Zd ZdS )r   z'gathers input for POST and PUT requestsc                     || _         || _        g | _        |                    d          }|s|                    d           d S t          |          }| j        j                            |           d S )Nzcontent-lengthi  )handlerr   r$   
get_headerr   intchannelset_terminator)r   r2   r   cls       r   __init__zcollector.__init__C   sw    	 !122 	5MM3RBL //44444r   c                 :    | j                             |           d S )N)r$   appendr   r$   s     r   collect_incoming_datazcollector.collect_incoming_dataS   s    	r   c                     | j         j                            d           t          d                    | j                            }| j                            || j                    d S )Ns   

r   )r   r5   r6   r   joinr$   r2   r(   r;   s     r   found_terminatorzcollector.found_terminatorV   sV    ++[999$),,--%%tT\:::::r   N)r-   r.   r/   __doc__r8   r<   r?   r   r   r   r   r   ?   sG        115 5 5   ; ; ; ; ;r   r   __main__c                       e Zd Zd ZdS )rpc_democ                 0    t          d|d|           dS )Nzmethod="z	" params=zSure, that works)printr,   s      r   r   zrpc_demo.calla   s#    EVVVVV<===%%r   N)r-   r.   r/   r   r   r   r   rC   rC   _   s#        	& 	& 	& 	& 	&r   rC    i@  )VERSIONsupervisor.compatr   supervisor.medusa.http_servermedusahttp_serverr   xmlrpc.clientclientr    r   r   r-   rC   supervisor.medusa.asyncore_25asyncore_25asyncorehsrpcinstall_handlerloopr   r   r   <module>rU      si   M ' ' ' ' ' ' 3 3 3 3 3 3 3 3 3&&%%%%%%%% 



)- )- )- )- )- )- )- )-V; ; ; ; ; ; ; ;< z& & & & &N & & & 544444444	 	 "d	+	+B
(**CHMOOOOO s    "