def __init__(self, manifest_path, overrides_path, templatedir, targetdir, ): self._manifest_path = manifest_path self._overrides_path = overrides_path self._template_loader = TemplateLoader([templatedir]) self._file_generator = FileGenerator(self._template_loader, targetdir) self._manifest_parser = ManifestParser() self._overrides_parser = ManifestOverridesParser()
class GenConf(object): def __init__(self, manifest_path, overrides_path, templatedir, targetdir, ): self._manifest_path = manifest_path self._overrides_path = overrides_path self._template_loader = TemplateLoader([templatedir]) self._file_generator = FileGenerator(self._template_loader, targetdir) self._manifest_parser = ManifestParser() self._overrides_parser = ManifestOverridesParser() def generate(self, error_listener=DefaultGenConfErrorListener(), event_listener=DefaultGenConfEventListener()): overrides = self._parse_overrides(error_listener, event_listener) with codecs.open(self._manifest_path, 'rb', 'utf-8') as f: try: manifest = self._manifest_parser.parse(f, overrides) event_listener.on_manifest_parsed(self._manifest_path, manifest) self._file_generator.generate_files(manifest, error_listener, event_listener) except ManifestParsingError, e: error_listener.on_manifest_parsing_error(self._manifest_path, e)