public DefaultAdapterConfiguration() { brewery = new Brewery(); brewery.ingredient(this); brewery.ingredient(new JsonFactory()); brewery.ingredient(new DataTypeService()); brewery.ingredient(new DefaultJsonStreamMapper()); brewery.ingredient(new DefaultJavaBeanValueMapper()); }
@Test public void testOptionalUnavailable() { Brewery brewery = new Brewery(); assertNull(brewery.getOpt("unavailable")); } }
@Test public void testRequiredUnavailable() { Brewery brewery = new Brewery(); try { brewery.get("unavailable"); fail("Expected exception"); } catch (RuntimeException e) { assertThat(e.getMessage(), new StringContains("Unknown component name: 'unavailable'")); } }
@Test public void testLookupByClassname() { Brewery brewery = new Brewery(); Object h2o = "h2o"; brewery.ingredient(h2o); assertSame(h2o, brewery.get(String.class)); }
@Test public void testRetrieveAnIngredient() { Brewery brewery = new Brewery(); // Put h2o as an ingredient named water into the brewery Object h2o = "h2o"; brewery.ingredient(h2o, "water"); // Get water from the brewery // No initialization required assertSame(h2o, brewery.get("water")); // Getting the water again produces the exact same object assertSame(h2o, brewery.get("water")); }
public DefaultConfiguration() { brewery = new Brewery(); brewery.ingredient(this); brewery.ingredient(new WorkflowEngineConfiguration()); brewery.ingredient(new WorkflowEngineImpl()); brewery.ingredient(new SimpleWorkflowCache()); brewery.ingredient(new AsynchronousExecutorService()); brewery.ingredient(new ConditionServiceImpl()); brewery.ingredient(new JobServiceImpl()); brewery.ingredient(new ActivityTypeService()); brewery.ingredient(new DataTypeService()); brewery.ingredient(new TimerTypeService()); brewery.ingredient(new JsonStreamMappingsBuilder()); brewery.ingredient(new JavaBeanValueMappingsBuilder()); brewery.supplier(new JsonStreamMapperSupplier(), JsonStreamMapper.class); brewery.supplier(new JavaBeanValueMapperSupplier(), JavaBeanValueMapper.class); brewery.supplier(new BpmnMapperSupplier(), BpmnMapper.class); }