Exemplo n.º 1
0
 def __init__(self, path, strict=False):
     """
     :param path: Packed SIPS file path
     """
     self.path = path
     self.parser = get_parser(self.path)(strict=strict)
     if not zipfile.is_zipfile(self.path):
         logger.error("File %s is not a zip file", self.path)
         raise zipfile.BadZipfile
     self.fd = zipfile.ZipFile(self.path)
     self.parser = get_parser(self.path)()
     self.files = iter(self.fd.namelist())
     self.stats = PackedSipsFileStats(os.stat(path).st_size, len(self.fd.namelist()))
Exemplo n.º 2
0
 def test_name_pattern(self):
     for dso in self.SIPS_DATA:
         sips_file = self.SIPS_DATA[dso]['file']
         parser = get_parser(sips_file)
         path = '.'.join([parser.__module__, parser.__name__])
         self.assertEquals(
             COMPANY_PARSERS[dso],
             path
         )
Exemplo n.º 3
0
 def __init__(self, path, fd=None, parser=None, strict=False, resume=None):
     self.path = path
     self.resume_line_number = 0
     if parser is None:
         self.parser = get_parser(self.path)(strict=strict)
     else:
         self.parser = parser
     if fd is None:
         self.fd = open(path, "r")
         self.stats = SipsFileStats(os.fstat(self.fd.fileno()).st_size)
     else:
         self.fd = fd
     if resume:
         assert isinstance(resume, SipsFileStats)
         self.stats = resume
         self.resume_line_number = self.stats.line_number
         self.stats.line_number = 0