post.py 1.3 KB

123456789101112131415161718192021222324252627282930313233343536
  1. '''
  2. Created on 26/06/2012
  3. @author: konstaa
  4. '''
  5. import core.api
  6. import os.path
  7. import re
  8. class Plugin(core.api.Plugin, core.api.IConfigurable):
  9. def declare_configuration(self, parser):
  10. parser.add_option("--general.db-file", default=r'./source-metrics.db',
  11. help="Primary database file to write (by the collector) and post-process (by other tools) [default: %default]")
  12. parser.add_option("--general.db-file-prev", default=None,
  13. help="Database file with data collected for the past/previous revision [default: %default].")
  14. def configure(self, options):
  15. self.dbfile = options.__dict__['general.db_file']
  16. self.dbfile_prev = options.__dict__['general.db_file_prev']
  17. def initialize(self):
  18. self.get_plugin_loader().get_database_loader().create_database(self.dbfile, previous_db = self.dbfile_prev)
  19. # do not process files dumped by this module
  20. self.get_plugin_loader().get_plugin('core.dir').add_exclude_rule(re.compile(r'^' + os.path.basename(self.dbfile) + r'$'))
  21. if self.dbfile_prev != None:
  22. self.get_plugin_loader().get_plugin('core.dir').add_exclude_rule(re.compile(r'^' + os.path.basename(self.dbfile_prev) + r'$'))