def __init__(self):

        super(RawReportProcessor, self).__init__()
        from faraday import setupPlugins
        setupPlugins()

        self.pending_actions = Queue()

        try:
            plugin_manager = PluginManager(
                os.path.join(CONF.getConfigPath(), "plugins"))
        except AttributeError:
            get_logger().warning(
                "Upload reports in WEB-UI not configurated, run Faraday client and try again..."
            )
            self._stop = True
            return

        mappers_manager = MapperManager()

        self.model_controller = ModelController(mappers_manager,
                                                self.pending_actions)
        self.model_controller.start()
        self.end_event = Event()

        plugin_controller = PluginController('PluginController',
                                             plugin_manager, mappers_manager,
                                             self.pending_actions,
                                             self.end_event)

        self.processor = ReportProcessor(plugin_controller, None)
        self._stop = False
Example #2
0
    def run(self, args):
        workspace = args.workspace
        try:
            self.workspace_manager.openWorkspace(workspace)
        except Exception as e:
            getLogger(self).error(("The workspace %s is not accessible, "
                                   "check configuration") % workspace)
            getLogger(self).error(str(e))
            return -1

        rp = ReportProcessor(self.plugin_controller)
        rp.processReport(args.filename)