@SuppressWarnings("unchecked") @Override public Object newInstance(final Class cls, final Map attributes) throws InstantiationException, IllegalAccessException { return container.newTransientInstance(cls); } };
@Hidden protected <T> T newTransientInstance(final Class<T> ofType) { return getContainer().newTransientInstance(ofType); }
return getContainer().newTransientInstance(ofType);
/** * Create simple object */ @Action(domainEvent = CreateDomainEvent.class) @MemberOrder(sequence = "3") public SimpleObject create(@ParameterLayout(named = "Name") final String name) { final SimpleObject obj = container.newTransientInstance(SimpleObject.class); obj.setName(name); container.persistIfNotAlready(obj); return obj; }
@Programmatic // for use by fixtures private ToDoItem newToDo( final String description, final Category category, final Subcategory subcategory, final String username, final LocalDate dueBy, final BigDecimal cost) { final ToDoItem toDoItem = container.newTransientInstance(ToDoItem.class); toDoItem.setDescription(description); toDoItem.setCategory(category); toDoItem.setSubcategory(subcategory); final ApplicationUser applicationUser = applicationUserRepository.findByUsername(username); final ApplicationTenancy applicationTenancy = applicationUser.getTenancy(); if(applicationTenancy == null) { throw new IllegalStateException(String.format("No application tenancy defined for user '%s'", username)); } toDoItem.setAtPath(applicationTenancy.getPath()); toDoItem.setDueBy(dueBy); toDoItem.setCost(cost); container.persist(toDoItem); container.flush(); return toDoItem; }
@Override public DomainObjectContainer getContainer() { if(mockContainer == null) { mockContainer = getService(DomainObjectContainer.class); context.checking(new Expectations() { { allowing(mockContainer).newTransientInstance(with(Expectations.<Class<?>>anything())); will(new Action() { @SuppressWarnings("rawtypes") public Object invoke(Invocation invocation) throws Throwable { Class cls = (Class) invocation.getParameter(0); return scenarioExecution.injectServices(cls.newInstance()); } public void describeTo(Description description) { description.appendText("newTransientInstance"); } }); allowing(mockContainer).persistIfNotAlready(with(anything())); } }); } return mockContainer; }
oneOf(mockContainer).newTransientInstance(ApplicationFeature.class); inSequence(sequence); will(returnValue(new ApplicationFeature(ApplicationFeatureId.newClass(Bar.class.getName())))); oneOf(mockContainer).newTransientInstance(ApplicationFeature.class); inSequence(sequence); will(returnValue(new ApplicationFeature(ApplicationFeatureId.newMember(Bar.class.getName(), "someProperty")))); oneOf(mockContainer).newTransientInstance(ApplicationFeature.class); inSequence(sequence); will(returnValue(new ApplicationFeature(ApplicationFeatureId.newMember(Bar.class.getName(), "someCollection")))); oneOf(mockContainer).newTransientInstance(ApplicationFeature.class); inSequence(sequence); will(returnValue(new ApplicationFeature(ApplicationFeatureId.newMember(Bar.class.getName(), "someAction")))); oneOf(mockContainer).newTransientInstance(ApplicationFeature.class); inSequence(sequence); will(returnValue(new ApplicationFeature(ApplicationFeatureId.newPackage("org.isisaddons.module.security.dom.feature")))); oneOf(mockContainer).newTransientInstance(ApplicationFeature.class); inSequence(sequence); will(returnValue(new ApplicationFeature(ApplicationFeatureId.newPackage("org.isisaddons.module.security.dom")))); oneOf(mockContainer).newTransientInstance(ApplicationFeature.class); inSequence(sequence); will(returnValue(new ApplicationFeature(ApplicationFeatureId.newPackage("org.isisaddons.module.security")))); oneOf(mockContainer).newTransientInstance(ApplicationFeature.class);