B ;TJ] @ s| d Z dZG dd dZG dd deZG dd deZG dd d eeZG d d deZG dd d eZG dd deZdS )zAbstract Transport class.) BaseTransport ReadTransportWriteTransport TransportDatagramTransportSubprocessTransportc @ sD e Zd ZdZdddZdddZdd Zd d Zdd Zd d Z dS )r zBase class for transports.Nc C s |d kri }|| _ d S )N)_extra)selfextra r 7/opt/alt/python37/lib64/python3.7/asyncio/transports.py__init__ s zBaseTransport.__init__c C s | j ||S )z#Get optional transport information.)r get)r namedefaultr r r get_extra_info s zBaseTransport.get_extra_infoc C s t dS )z2Return True if the transport is closing or closed.N)NotImplementedError)r r r r is_closing s zBaseTransport.is_closingc C s t dS )a Close the transport. Buffered data will be flushed asynchronously. No more data will be received. After all buffered data is flushed, the protocol's connection_lost() method will (eventually) called with None as its argument. N)r )r r r r close s zBaseTransport.closec C s t dS )zSet a new protocol.N)r )r protocolr r r set_protocol# s zBaseTransport.set_protocolc C s t dS )zReturn the current protocol.N)r )r r r r get_protocol' s zBaseTransport.get_protocol)N)N) __name__ __module____qualname____doc__r r r r r r r r r r r s r c @ s( e Zd ZdZdd Zdd Zdd ZdS ) r z#Interface for read-only transports.c C s t dS )z*Return True if the transport is receiving.N)r )r r r r is_reading/ s zReadTransport.is_readingc C s t dS )zPause the receiving end. No data will be passed to the protocol's data_received() method until resume_reading() is called. N)r )r r r r pause_reading3 s zReadTransport.pause_readingc C s t dS )zResume the receiving end. Data received will once again be passed to the protocol's data_received() method. N)r )r r r r resume_reading; s zReadTransport.resume_readingN)r r r r r r r r r r r r , s r c @ sJ e Zd ZdZdddZdd Zdd Zd d Zdd Zd d Z dd Z dS )r z$Interface for write-only transports.Nc C s t dS )a Set the high- and low-water limits for write flow control. These two values control when to call the protocol's pause_writing() and resume_writing() methods. If specified, the low-water limit must be less than or equal to the high-water limit. Neither value can be negative. The defaults are implementation-specific. If only the high-water limit is given, the low-water limit defaults to an implementation-specific value less than or equal to the high-water limit. Setting high to zero forces low to zero as well, and causes pause_writing() to be called whenever the buffer becomes non-empty. Setting low to zero causes resume_writing() to be called only once the buffer is empty. Use of zero for either limit is generally sub-optimal as it reduces opportunities for doing I/O and computation concurrently. N)r )r highlowr r r set_write_buffer_limitsG s z&WriteTransport.set_write_buffer_limitsc C s t dS )z,Return the current size of the write buffer.N)r )r r r r get_write_buffer_size\ s z$WriteTransport.get_write_buffer_sizec C s t dS )zWrite some data bytes to the transport. This does not block; it buffers the data and arranges for it to be sent out asynchronously. N)r )r datar r r write` s zWriteTransport.writec C s d |}| | dS )zWrite a list (or any iterable) of data bytes to the transport. The default implementation concatenates the arguments and calls write() on the result. N)joinr# )r Zlist_of_datar" r r r writelinesh s zWriteTransport.writelinesc C s t dS )zClose the write end after flushing buffered data. (This is like typing ^D into a UNIX program reading from stdin.) Data may still be received. N)r )r r r r write_eofq s zWriteTransport.write_eofc C s t dS )zAReturn True if this transport supports write_eof(), False if not.N)r )r r r r can_write_eofz s zWriteTransport.can_write_eofc C s t dS )zClose the transport immediately. Buffered data will be lost. No more data will be received. The protocol's connection_lost() method will (eventually) be called with None as its argument. N)r )r r r r abort~ s zWriteTransport.abort)NN)r r r r r r! r# r&