Exemple #1
0
 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()
Exemple #2
0
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)