NovaBryan/EVE_Dump
Log | Files | 📦 下载最新源码 (.zip) | Refs | README

__init__.py (1191B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\carbon\common\lib\cherrypy\lib\__init__.py
      2 from cherrypy.lib.reprconf import _Builder, unrepr, modules, attributes
      3 
      4 class file_generator(object):
      5 
      6     def __init__(self, input, chunkSize = 65536):
      7         self.input = input
      8         self.chunkSize = chunkSize
      9 
     10     def __iter__(self):
     11         return self
     12 
     13     def __next__(self):
     14         chunk = self.input.read(self.chunkSize)
     15         if chunk:
     16             return chunk
     17         if hasattr(self.input, 'close'):
     18             self.input.close()
     19         raise StopIteration()
     20 
     21     next = __next__
     22 
     23 
     24 def file_generator_limited(fileobj, count, chunk_size = 65536):
     25     remaining = count
     26     while remaining > 0:
     27         chunk = fileobj.read(min(chunk_size, remaining))
     28         chunklen = len(chunk)
     29         if chunklen == 0:
     30             return
     31         remaining -= chunklen
     32         yield chunk
     33 
     34 
     35 def set_vary_header(response, header_name):
     36     varies = response.headers.get('Vary', '')
     37     varies = [ x.strip() for x in varies.split(',') if x.strip() ]
     38     if header_name not in varies:
     39         varies.append(header_name)
     40     response.headers['Vary'] = ', '.join(varies)