Пример #1
0
 def _add_base(self, base, addon=False):
     if addon:
         # Because add_base is always called with parents before children,
         # all the possible ancestry of `base` is already present in
         # `_sub_formatter`.
         parent_base = mozpath.basedir(base, self._sub_formatter.keys())
         rel_base = mozpath.relpath(base, parent_base)
         # If the addon is under a resource directory, package it in the
         # omnijar.
         parent_sub_formatter = self._sub_formatter[parent_base]
         if parent_sub_formatter.is_resource(rel_base):
             omnijar_sub_formatter = \
                 parent_sub_formatter._sub_formatter[self._omnijar_name]
             self._sub_formatter[base] = FlatSubFormatter(
                 FileRegistrySubtree(rel_base,
                                     omnijar_sub_formatter.copier))
             return
         JarFormatter._add_base(self, base, addon)
     else:
         # Initialize a chrome.manifest next to the omnijar file so that
         # there's always a chrome.manifest file, even an empty one.
         path = mozpath.normpath(mozpath.join(base, 'chrome.manifest'))
         if not self.copier.contains(path):
             self.copier.add(path, ManifestFile(''))
         self._sub_formatter[base] = OmniJarSubFormatter(
             FileRegistrySubtree(base, self.copier), self._omnijar_name,
             self._compress, self._non_resources)
Пример #2
0
 def _add_base(self, base, addon=False):
     if addon:
         # Because add_base is always called with parents before children,
         # all the possible ancestry of `base` is already present in
         # `_sub_formatter`.
         parent_base = mozpath.basedir(base, self._sub_formatter.keys())
         rel_base = mozpath.relpath(base, parent_base)
         # If the addon is under a resource directory, package it in the
         # omnijar.
         parent_sub_formatter = self._sub_formatter[parent_base]
         if parent_sub_formatter.is_resource(rel_base):
             omnijar_sub_formatter = parent_sub_formatter._sub_formatter[
                 self._omnijar_name]
             self._sub_formatter[base] = FlatSubFormatter(
                 FileRegistrySubtree(rel_base,
                                     omnijar_sub_formatter.copier))
             return
         JarFormatter._add_base(self, base, addon)
     else:
         self._sub_formatter[base] = OmniJarSubFormatter(
             FileRegistrySubtree(base, self.copier),
             self._omnijar_name,
             self._compress,
             self._non_resources,
         )
Пример #3
0
 def _add_base(self, base, addon=False):
     if addon:
         JarFormatter._add_base(self, base, addon)
     else:
         self._sub_formatter[base] = OmniJarSubFormatter(
             FileRegistrySubtree(base, self.copier), self._omnijar_name,
             self._compress, self._optimize, self._non_resources)
Пример #4
0
 def _add_base(self, base, addon=False):
     if addon is True:
         jarrer = Jarrer(self._compress)
         self.copier.add(base + '.xpi', jarrer)
         self._sub_formatter[base] = FlatSubFormatter(jarrer)
     else:
         self._sub_formatter[base] = JarSubFormatter(
             FileRegistrySubtree(base, self.copier), self._compress)
Пример #5
0
 def _add_base(self, base, addon=False):
     if addon:
         JarFormatter._add_base(self, base, addon)
     else:
         # Initialize a chrome.manifest next to the omnijar file so that
         # there's always a chrome.manifest file, even an empty one.
         path = mozpath.normpath(mozpath.join(base, 'chrome.manifest'))
         if not self.copier.contains(path):
             self.copier.add(path, ManifestFile(''))
         self._sub_formatter[base] = OmniJarSubFormatter(
             FileRegistrySubtree(base, self.copier), self._omnijar_name,
             self._compress, self._optimize, self._non_resources)
Пример #6
0
 def _add_base(self, base, addon=False):
     self._sub_formatter[base] = FlatSubFormatter(
         FileRegistrySubtree(base, self.copier))
Пример #7
0
 def create_registry(self):
     registry = FileRegistry()
     registry.add("foo/bar", GeneratedFile(b"foo/bar"))
     registry.add("baz/qux", GeneratedFile(b"baz/qux"))
     return FileRegistrySubtree("base/root", registry)
Пример #8
0
 def test_file_registry_subtree_base(self):
     registry = FileRegistry()
     self.assertEqual(registry, FileRegistrySubtree("", registry))
     self.assertNotEqual(registry, FileRegistrySubtree("base", registry))
Пример #9
0
 def create_registry(self):
     registry = FileRegistry()
     registry.add('foo/bar', GeneratedFile('foo/bar'))
     registry.add('baz/qux', GeneratedFile('baz/qux'))
     return FileRegistrySubtree('base/root', registry)