File "subprocess.cpython-35.opt-1.pyc"

Full Path: /home/attunedd/public_html/byp/izo/con7ext_sym404/rintoar.txt/opt/alt/python35/lib64/python3.5/asyncio/__pycache__/subprocess.cpython-35.opt-1.pyc
File size: 7.3 KB
MIME-type: text/x-bytecode.python
Charset: 8 bit



Yf
@s ddgZddlZddlmZddlmZddlmZddlmZdd	lmZdd
l	m
Z
ejZejZej
Z
GdddejejZGd
ddZeddddejddZedddddddddejddZdS)create_subprocess_execcreate_subprocess_shellN)events)	protocols)streams)tasks)	coroutine)loggercspeZdZdZfddZddZddZdd	Zd
dZdd
Z	ddZ
S)SubprocessStreamProtocolz0Like StreamReaderProtocol, but for a subprocess.csRtjd|||_d|_|_|_d|_d|_g|_dS)NloopF)	super__init___limitstdinstdoutstderr
_transport_process_exited	_pipe_fds)selflimitr)	__class__7/opt/alt/python35/lib64/python3.5/asyncio/subprocess.pyrs			z!SubprocessStreamProtocol.__init__cCs|jjg}|jdk	r2|jd|j|jdk	rU|jd|j|jdk	rx|jd|jddj|S)Nzstdin=%rz	stdout=%rz	stderr=%rz<%s> )r__name__rappendrrjoin)rinforrr__repr__sz!SubprocessStreamProtocol.__repr__cCs||_|jd}|dk	retjd|jd|j|_|jj||jj	d|jd}|dk	rtjd|jd|j|_
|j
j||jj	d|jd}|dk	rtj|d|ddd|j|_dS)Nrrrrprotocolreader)
rget_pipe_transportrStreamReaderr_looprZ
set_transportrrrStreamWriterr)r	transportZstdout_transportZstderr_transportZstdin_transportrrrconnection_made(s&	z(SubprocessStreamProtocol.connection_madecCsS|dkr|j}n|dkr0|j}nd}|dk	rO|j|dS)Nrr!)rrZ	feed_data)rfddatar#rrrpipe_data_received@sz+SubprocessStreamProtocol.pipe_data_receivedcCs|dkr<|j}|dk	r+|j|j|dS|dkrT|j}n|dkrl|j}nd}|dkr|dkr|jn
|j|||jkr|jj||j	dS)Nrrr!)
rcloseZconnection_lostrrZfeed_eofZ
set_exceptionrremove_maybe_close_transport)rr*excpiper#rrrpipe_connection_lostJs$	



z-SubprocessStreamProtocol.pipe_connection_lostcCsd|_|jdS)NT)rr/)rrrrprocess_exitedas	z'SubprocessStreamProtocol.process_exitedcCs8t|jdkr4|jr4|jjd|_dS)Nr)lenrrrr-)rrrrr/es
z/SubprocessStreamProtocol._maybe_close_transport)r
__module____qualname____doc__rr r)r,r2r3r/rr)rrrs

rc@seZdZddZddZeddZeddZd	d
Z	ddZ
d
dZeddZeddZ
eddZedddZdS)ProcesscCsR||_||_||_|j|_|j|_|j|_|j|_dS)N)rZ	_protocolr&rrrZget_pidpid)rr(r"rrrrrls			zProcess.__init__cCsd|jj|jfS)Nz<%s %s>)rrr9)rrrrr uszProcess.__repr__cCs
|jjS)N)rZget_returncode)rrrr
returncodexszProcess.returncodeccs|jjEdHS)zdWait until the process exit and return the process return code.

        This method is a coroutine.N)rZ_wait)rrrrwait|szProcess.waitcCs|jj|dS)N)rsend_signal)rsignalrrrr<szProcess.send_signalcCs|jjdS)N)r	terminate)rrrrr>szProcess.terminatecCs|jjdS)N)rkill)rrrrr?szProcess.killccs|jj}|jj||r>tjd|t|y|jjEdHWnDtt	fk
r}z|rtjd||WYdd}~XnX|rtjd||jj
dS)Nz%%r communicate: feed stdin (%s bytes)z%r communicate: stdin got %rz%r communicate: close stdin)r&	get_debugrwriter
debugr4ZdrainBrokenPipeErrorConnectionResetErrorr-)rinputrBr0rrr_feed_stdins	&zProcess._feed_stdincCsdS)Nr)rrrr_noopsz
Process._noopccs|jj|}|dkr*|j}n	|j}|jjrm|dkrTdnd}tjd|||jEdH}|jjr|dkrdnd}tjd|||j	|S)Nr!rrrz%r communicate: read %sz%r communicate: close %s)
rr$rrr&r@r
rBreadr-)rr*r(streamnameoutputrrr_read_streams	
zProcess._read_streamNccs|dk	r|j|}n|j}|jdk	rK|jd}n|j}|jdk	rx|jd}n|j}tj|||d|jEdH\}}}|jEdH||fS)Nrr!r)	rFrGrrLrrZgatherr&r;)rrErrrrrrcommunicateszProcess.communicate)rr5r6rr propertyr:r	r;r<r>r?rFrGrLrMrrrrr8ks	r8c

+sodkrtjfdd}j||d|d|d||EdH\}}	t||	S)NcstddS)Nrr)rr)rrrr<lambda>sz)create_subprocess_shell.<locals>.<lambda>rrr)rget_event_loopZsubprocess_shellr8)
cmdrrrrrkwdsprotocol_factoryr(r"r)rrrrsrrrrrc/srdkrtjfdd}j|||d|d|d||EdH\}	}
t|	|
S)NcstddS)Nrr)rr)rrrrrOsz(create_subprocess_exec.<locals>.<lambda>rrr)rrPZsubprocess_execr8)ZprogramrrrrrargsrRrSr(r"r)rrrrs	)__all__
subprocessrrrrZ
coroutinesr	logr
PIPEZSTDOUTZDEVNULLZFlowControlMixinZSubprocessProtocolrr8Z_DEFAULT_LIMITrrrrrr<module>s(			X]