JFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3RbrJFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr Yf@sdZddlZddddgZGdddejZGdddeZGd ddeZGd ddeZdS) aResponse classes used by urllib. The base class, addbase, defines a minimal file-like interface, including read() and readline(). The typical response object is an addinfourl instance, which defines an info() method that returns headers and a geturl() method that returns the url. Naddbase addclosehookaddinfo addinfourlcsLeZdZdZfddZddZddZdd ZS) rzOBase class for addinfo and addclosehook. Is a good idea for garbage collection.cs,tt|j|ddd||_dS)NzZdeleteF)superr__init__fp)selfr) __class__4/opt/alt/python35/lib64/python3.5/urllib/response.pyrszaddbase.__init__cCs d|jjt||jfS)Nz<%s at %r whose fp = %r>)r __name__idfile)r r r r __repr__s zaddbase.__repr__cCs|jjrtd|S)NzI/O operation on closed file)rclosed ValueError)r r r r __enter__s  zaddbase.__enter__cCs|jdS)N)close)r typevalue tracebackr r r __exit__!szaddbase.__exit__)r __module__ __qualname____doc__rrrrr r )r r rs   cs:eZdZdZfddZfddZS)rz*Class to add a close hook to an open file.cs,tt|j|||_||_dS)N)rrr closehookhookargs)r rrr)r r r r(s zaddclosehook.__init__c sSz8|j}|j}|r7d|_d|_||Wdtt|jXdS)N)rrrrr)r rr)r r r r-s    zaddclosehook.close)r rrrrrr r )r r r%s cs4eZdZdZfddZddZS)rz.class to add an info() method to an open file.cs#tt|j|||_dS)N)rrrheaders)r rr)r r r r<szaddinfo.__init__cCs|jS)N)r)r r r r info@sz addinfo.info)r rrrrrr r )r r r9s csCeZdZdZdfddZddZddZS) rz9class to add info() and geturl() methods to an open file.Ncs/tt|j||||_||_dS)N)rrrurlcode)r rrr r!)r r r rGs zaddinfourl.__init__cCs|jS)N)r!)r r r r getcodeLszaddinfourl.getcodecCs|jS)N)r )r r r r geturlOszaddinfourl.geturl)r rrrrr"r#r r )r r rDs  )rZtempfile__all__Z_TemporaryFileWrapperrrrrr r r r s