Nf9 dZddlZgdZGddejZGddeZGdd eZGd d eZdS) 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. N)addbase addclosehookaddinfo addinfourlc4eZdZdZfdZdZdZdZxZS)rzOBase class for addinfo and addclosehook. Is a good idea for garbage collection.cltt||dd||_dS)NzF)delete)superr__init__fp)selfr __class__s &/usr/lib/python3.11/urllib/response.pyr zaddbase.__init__s4 g&&r+>u&MMMcRd|jjdt|d|jdS)N)r__name__idfiler s r__repr__zaddbase.__repr__s3-1^-D-D-D-/XXXXtyyyB Brc<|jjrtd|S)NzI/O operation on closed file)r closed ValueErrorrs r __enter__zaddbase.__enter__s" 7> =;<< < rc.|dSN)close)r typevalue tracebacks r__exit__zaddbase.__exit__!s r) r __module__ __qualname____doc__r rrr# __classcell__rs@rrrsnYY BBB rrc,eZdZdZfdZfdZxZS)rz*Class to add a close hook to an open file.cttt||||_||_dSr)r rr closehookhookargs)r r r+r,rs rr zaddclosehook.__init__(s3 lD!!**2..."  rc |j}|j}|rd|_d|_||tt|dS#tt|wxYwr)r+r,r rr)r r+r,rs rrzaddclosehook.close-s} .I}H %!% $  8$$ , % % + + - - - - -E, % % + + - - - -s #A)A8)rr$r%r&r rr'r(s@rrr%sW44!!!!! . . . . . . . . .rrc(eZdZdZfdZdZxZS)rz.class to add an info() method to an open file.cftt||||_dSr)r rr headers)r r r0rs rr zaddinfo.__init__<s, gt%%b))) rc|jSr)r0rs rinfoz addinfo.info@s |r)rr$r%r&r r2r'r(s@rrr9sM88rrcFeZdZdZdfd ZedZdZdZxZ S)rz9class to add info() and geturl() methods to an open file.Ncvtt|||||_||_dSr)r rr urlcode)r r r0r5r6rs rr zaddinfourl.__init__Gs5 j$((W555 rc|jSrr6rs rstatuszaddinfourl.statusLs yrc|jSrr8rs rgetcodezaddinfourl.getcodePs yrc|jSr)r5rs rgeturlzaddinfourl.geturlSs xrr) rr$r%r&r propertyr9r;r=r'r(s@rrrDs|CC Xrr)r&tempfile__all___TemporaryFileWrapperrrrrrrrCs > > >h,......7...(gr