class MacroBasePipelineCommand extends ConfiguredCommand<MacroBaseConf> {

    @Override
    protected void run(Bootstrap<MacroBaseConf> bootstrap,
                       Namespace namespace,
                       MacroBaseConf configuration) throws Exception {
        configuration.loadSystemProperties();
        Class c = Class.forName(configuration.getString(MacroBaseConf.PIPELINE_NAME));
        Object ao = c.newInstance();

        if (!(ao instanceof Pipeline)) {
            log.error("{} is not an instance of Pipeline! Exiting...");
            return;
        }

        List<AnalysisResult> results = ((Pipeline) ao).initialize(configuration).run();

        MacroBase.reporter.report();

        log.info("Result: {}", results);
    }

    public  MacroBasePipelineCommand();

}