use of org.apache.openejb.core.ivm.naming.IvmContext in project tomee by apache.
the class IvmContextTest method testBindFromCurrentContextSetsTheCorrectParent_lookupRelativeToTheCurrentNode.
@Test
public void testBindFromCurrentContextSetsTheCorrectParent_lookupRelativeToTheCurrentNode() throws Exception {
final IvmContext root = IvmContext.createRootContext();
root.bind("a/b/c", null);
IvmContext a = (IvmContext) root.lookup("a");
a.bind("object", null);
requireCorrectParentChildRelationship(a, (IvmContext) a.lookup("object"));
IvmContext b = (IvmContext) a.lookup("b");
b.bind("object", null);
requireCorrectParentChildRelationship(b, (IvmContext) b.lookup("object"));
}
use of org.apache.openejb.core.ivm.naming.IvmContext in project tomee by apache.
the class AppNamingReadOnlyTest method getMockBeanContextsList.
private List<BeanContext> getMockBeanContextsList() throws SystemException, URISyntaxException {
IvmContext context = new IvmContext();
AppContext mockAppContext = new AppContext("appId", SystemInstance.get(), this.getClass().getClassLoader(), context, context, false);
ModuleContext mockModuleContext = new ModuleContext("moduleId", new URI(""), "uniqueId", mockAppContext, context, this.getClass().getClassLoader());
BeanContext mockBeanContext = new BeanContext("test", context, mockModuleContext, this.getClass(), this.getClass(), new HashMap<>());
List<BeanContext> beanContextsList = new ArrayList<>();
beanContextsList.add(mockBeanContext);
return beanContextsList;
}
use of org.apache.openejb.core.ivm.naming.IvmContext in project tomee by apache.
the class LocalClientRunner method createDeployment.
private BeanContext createDeployment(final Class<?> testClass) {
try {
final AppContext appContext = new AppContext("", SystemInstance.get(), testClass.getClassLoader(), new IvmContext(), new IvmContext(), false);
final ModuleContext moduleContext = new ModuleContext("", null, "", appContext, new IvmContext(), null);
return new BeanContext(null, new IvmContext(), moduleContext, testClass, null, null, null, null, null, null, null, null, null, BeanType.MANAGED, false, false);
} catch (final SystemException e) {
throw new IllegalStateException(e);
}
}
use of org.apache.openejb.core.ivm.naming.IvmContext in project tomee by apache.
the class ReloadingLoaderTest method initContext.
@Before
public void initContext() throws LifecycleException {
final OpenEjbConfiguration configuration = new OpenEjbConfiguration();
configuration.facilities = new FacilitiesInfo();
final CoreContainerSystem containerSystem = new CoreContainerSystem(new IvmJndiFactory());
SystemInstance.get().setComponent(OpenEjbConfiguration.class, configuration);
SystemInstance.get().setComponent(ContainerSystem.class, containerSystem);
SystemInstance.get().setComponent(WebAppEnricher.class, new WebAppEnricher() {
@Override
public URL[] enrichment(final ClassLoader webappClassLaoder) {
return new URL[0];
}
});
parentInstance = new AtomicReference<>(ParentClassLoaderFinder.Helper.get());
loader = new TomEEWebappClassLoader(parentInstance.get()) {
@Override
public ClassLoader getInternalParent() {
return parentInstance.get();
}
@Override
protected void clearReferences() {
// no-op: this test should be reworked to support it but in real life a loader is not stopped/started
}
};
loader.init();
final StandardRoot resources = new StandardRoot();
loader.setResources(resources);
resources.setContext(new StandardContext() {
@Override
public String getDocBase() {
final File file = new File("target/foo");
file.mkdirs();
return file.getAbsolutePath();
}
@Override
public String getMBeanKeyProperties() {
return "foo";
}
{
}
});
resources.start();
loader.start();
info = new AppInfo();
info.appId = "test";
context = new AppContext(info.appId, SystemInstance.get(), loader, new IvmContext(), new IvmContext(), true);
containerSystem.addAppContext(context);
final WebContext webDeployment = new WebContext(context);
webDeployment.setId(context.getId());
webDeployment.setClassLoader(loader);
containerSystem.addWebContext(webDeployment);
}
Aggregations