MAProductionType extends HadoopProductionType { static MAConfig getMAConfig(ProductionRequest productionRequest) throws ProductionException { MAConfig maConfig = new MAConfig(); maConfig.setMacroPixelSize(productionRequest.getInteger("macroPixelSize", 1)); maConfig.setFilteredMeanCoeff(productionRequest.getDouble("filteredMeanCoeff", 1.5)); maConfig.setFilterOverlapping(productionRequest.getBoolean("filterOverlapping", false)); maConfig.setCopyInput(productionRequest.getBoolean("copyInput", true)); maConfig.setGoodPixelExpression(productionRequest.getXmlDecodedString("goodPixelExpression", "")); maConfig.setGoodRecordExpression(productionRequest.getXmlDecodedString("goodRecordExpression", "")); String maxTimeDifference = productionRequest.getString("maxTimeDifference", ""); if (!MAConfig.isMaxTimeDifferenceValid(maxTimeDifference)) { throw new ProductionException("Production parameter 'maxTimeDifference' must be hours (number > 0) or " + "days (with 'd' at the and number >= 0). " + "Use '0' or empty value to disable time test."); } maConfig.setMaxTimeDifference(maxTimeDifference); maConfig.setOutputGroupName(productionRequest.getString("outputGroupName", "SITE")); maConfig.setOutputTimeFormat(productionRequest.getString("outputTimeFormat", "yyyy-MM-dd HH:mm:ss")); maConfig.setRecordSourceUrl(productionRequest.getString("recordSourceUrl")); maConfig.setRecordSourceSpiClassName(productionRequest.getString("recordSourceSpiClassName", null)); maConfig.setVariableMappings(parseVariableMappings(productionRequest.getString("variableMappings", null))); maConfig.setOnlyExtractComplete(productionRequest.getBoolean("onlyExtractComplete", true)); return maConfig; } MAProductionType(FileSystemService fileSystemService, HadoopProcessingService processingService,
                     StagingService stagingService); @Override Production createProduction(ProductionRequest productionRequest);  }
@Test public void testGetMAConfig() throws Exception { }