public WorkArea createWorkArea() { if(Registry.containsWorkArea(this.id)) { return Registry.getWorkArea(this.id); } SortedSet<Field> uniqueSet = new TreeSet<Field>(); validate(this.fields, uniqueSet); List<Filter> oFilters = this.outputFilters != null ? this.outputFilters : Collections.<Filter>emptyList(); WorkArea workArea = new WorkArea(this.id, uniqueSet, oFilters); validate(workArea); Registry.addWorkArea(workArea); return workArea; }
public static void clearAll() { clearFunctionDocumentation(); clearFunctions(); clearWorkAreas(); }
public Function getFunction(String id) { if (!Registry.containsFunction(id)) { throw new UnknownFunctionException(id); } return Registry.getFunction(id); }
public FunctionDocumentation getFunctionDocumentation(String id) { if (!Registry.containsFunctionDocumentation(id)) { throw new FunctionNotDocumentedException(id); } return Registry.getFunctionDocumentation(id); }
@Test public void testWorkAreaRegistry() { Registry.clearWorkAreas(); assertFalse(Registry.containsWorkArea(WA_NAME)); assertNull(Registry.getWorkArea(WA_NAME)); Registry.addWorkArea(workArea); assertTrue(Registry.containsWorkArea(WA_NAME)); assertSame(workArea, Registry.getWorkArea(WA_NAME)); Registry.clearWorkAreas(); assertFalse(Registry.containsWorkArea(WA_NAME)); assertNull(Registry.getWorkArea(WA_NAME)); }
@Test public void testFunctionDocumentationRegistry() { Registry.clearFunctionDocumentation(); FunctionDocumentation expected = new FunctionDocumentation(); expected.setId(functionId); assertFalse(Registry.containsFunctionDocumentation(functionId)); assertNull(Registry.getFunctionDocumentation(functionId)); Registry.addFunctionDocumentation(expected); assertTrue(Registry.containsFunctionDocumentation(functionId)); assertSame(expected, Registry.getFunctionDocumentation(functionId)); Registry.clearFunctionDocumentation(); assertFalse(Registry.containsFunctionDocumentation(functionId)); assertNull(Registry.getFunctionDocumentation(functionId)); } }
@Test public void testFunctionRegistry() { Registry.clearFunctions(); Function function = new Function() { @Override public String getId() { return functionId; } @Override public Map<String, Object> call(Map<String, Object> parameters){ return null; } @Override public WorkArea getWorkAreaOne(){ return null; } @Override public WorkArea getWorkAreaTwo() { return null; } @Override public boolean isTwoWorkAreas() { return false; } @Override public Configuration getConfiguration(){ return null; } }; assertFalse(Registry.containsFunction(functionId)); assertNull(Registry.getFunction(functionId)); Registry.addFunction(function); assertTrue(Registry.containsFunction(functionId)); assertSame(function, Registry.getFunction(functionId)); Registry.clearFunctions(); assertFalse(Registry.containsFunction(functionId)); assertNull(Registry.getFunction(functionId)); }
private void init() { DocumentationConfig documentationConfig = new DocumentationConfig(documentationXmlReader.getDataDictionary()); for (FunctionConfig functionConfig : this.geoclientXmlReader.getFunctions()) { log.info("Creating function from {}", functionConfig); Function function = functionConfig.createFunction(geoclient); Registry.addFunction(function); Registry.addFunctionDocumentation(documentationConfig.document(documentationXmlReader.getFunctionDocumentation(function.getId()) , function)); } }
@Test public void testCreateWorkArea() { Registry.clearWorkAreas(); WorkArea workArea = this.workAreaConfig.createWorkArea(); assertTrue(Registry.containsWorkArea(workArea.getId())); assertTrue(this.length==workArea.length()); assertTrue(workArea.isFiltered(TestData.fieldOne)); }
@Test(expected=InvalidWorkAreaLengthException.class) public void testCreateWorkArea_invalidLength() { Registry.clearWorkAreas(); new WorkAreaConfig(this.id, 13, this.isWorkAreaOne,this.fields,this.outputFilters).createWorkArea(); }