Search in sources :

Example 31 with RootContainer

use of org.exoplatform.container.RootContainer in project kernel by exoplatform.

the class TestManagementProvider method testContainerScopedRegistration.

public void testContainerScopedRegistration() {
    URL rootURL = getClass().getResource("root-configuration.xml");
    URL portal1URL = getClass().getResource("portal-configuration1.xml");
    URL portal2URL = getClass().getResource("portal-configuration2.xml");
    RootContainer root = new ContainerBuilder().withRoot(rootURL).withPortal("portal1", portal1URL).withPortal("portal2", portal2URL).build();
    Foo fooRoot = (Foo) root.getComponentInstanceOfType(Foo.class);
    ManagementProviderImpl provider = (ManagementProviderImpl) root.getComponentInstanceOfType(ManagementProviderImpl.class);
    PortalContainer portal1 = root.getPortalContainer("portal1");
    Foo fooPortal1 = (Foo) portal1.getComponentInstanceOfType(Foo.class);
    ManagementProviderImpl provider1 = (ManagementProviderImpl) portal1.getComponentInstanceOfType(ManagementProviderImpl.class);
    PortalContainer portal2 = root.getPortalContainer("portal2");
    Foo fooPortal2 = (Foo) portal2.getComponentInstanceOfType(Foo.class);
    ManagementProviderImpl provider2 = (ManagementProviderImpl) portal2.getComponentInstanceOfType(ManagementProviderImpl.class);
    // 
    assertEquals(6, provider.managedResources.size());
    assertTrue(provider.resources.contains(root));
    assertTrue(provider.resources.contains(root));
    assertTrue(provider.resources.contains(portal1));
    assertTrue(provider.resources.contains(portal2));
    assertTrue(provider.resources.contains(fooRoot));
    assertTrue(provider.resources.contains(fooPortal1));
    assertTrue(provider.resources.contains(fooPortal2));
    assertEquals(2, provider1.managedResources.size());
    assertEquals(portal1, provider1.managedResources.get(0).resource);
    assertEquals(fooPortal1, provider1.managedResources.get(1).resource);
    assertEquals(2, provider2.managedResources.size());
    assertEquals(portal2, provider2.managedResources.get(0).resource);
    assertEquals(fooPortal2, provider2.managedResources.get(1).resource);
}
Also used : ContainerBuilder(org.exoplatform.container.ContainerBuilder) RootContainer(org.exoplatform.container.RootContainer) URL(java.net.URL) PortalContainer(org.exoplatform.container.PortalContainer)

Example 32 with RootContainer

use of org.exoplatform.container.RootContainer in project kernel by exoplatform.

the class TestManagementProvider method testProviderRegistration.

public void testProviderRegistration() {
    URL url = getClass().getResource("configuration1.xml");
    RootContainer container = new ContainerBuilder().withRoot(url).build();
    ManagementProviderImpl provider = (ManagementProviderImpl) container.getComponentInstanceOfType(ManagementProviderImpl.class);
    assertNotNull(provider);
}
Also used : ContainerBuilder(org.exoplatform.container.ContainerBuilder) RootContainer(org.exoplatform.container.RootContainer) URL(java.net.URL)

Example 33 with RootContainer

use of org.exoplatform.container.RootContainer in project kernel by exoplatform.

the class TestManagementProvider method testManagementAware.

public void testManagementAware() {
    URL url = getClass().getResource("configuration1.xml");
    RootContainer container = new ContainerBuilder().withRoot(url).build();
    ManagementProviderImpl provider = (ManagementProviderImpl) container.getComponentInstanceOfType(ManagementProviderImpl.class);
    Foo foo = (Foo) container.getComponentInstance("Foo");
    assertEquals(2, provider.managedResources.size());
    ManagedResource fooMR = provider.managedResources.get(1);
    fooMR.register();
    assertTrue(foo.isAware());
    // 
    foo.deploy();
    assertEquals(3, provider.managedResources.size());
    ManagedResource barMR = provider.managedResources.get(2);
    assertSame(foo.bar, barMR.resource);
    barMR.register();
    assertEquals(Arrays.asList(barMR.data, fooMR.data), barMR.context.getScopingData(ScopedData.class));
    // 
    foo.undeploy();
    assertEquals(2, provider.managedResources.size());
    assertEquals(fooMR, provider.managedResources.get(1));
}
Also used : ContainerBuilder(org.exoplatform.container.ContainerBuilder) RootContainer(org.exoplatform.container.RootContainer) URL(java.net.URL)

Example 34 with RootContainer

use of org.exoplatform.container.RootContainer in project kernel by exoplatform.

the class TestManagementProvider method testManagedRegistrationAfterProviderRegistration.

public void testManagedRegistrationAfterProviderRegistration() {
    URL url = getClass().getResource("configuration1.xml");
    RootContainer container = new ContainerBuilder().withRoot(url).build();
    ManagementProviderImpl provider = (ManagementProviderImpl) container.getComponentInstanceOfType(ManagementProviderImpl.class);
    assertEquals(1, provider.managedResources.size());
    Object foo = container.getComponentInstance("Foo");
    assertNotNull(foo);
    assertEquals(2, provider.managedResources.size());
    ManagedResource fooMR = provider.managedResources.get(1);
    assertSame(foo, fooMR.resource);
    assertEquals(Collections.<ScopedData>emptyList(), fooMR.context.getScopingData(ScopedData.class));
    fooMR.register();
    assertEquals(Collections.singletonList(fooMR.data), fooMR.context.getScopingData(ScopedData.class));
}
Also used : ContainerBuilder(org.exoplatform.container.ContainerBuilder) RootContainer(org.exoplatform.container.RootContainer) URL(java.net.URL)

Example 35 with RootContainer

use of org.exoplatform.container.RootContainer in project kernel by exoplatform.

the class TestContainer method testPriorityPlugins.

public void testPriorityPlugins() {
    RootContainer rootContainer = RootContainer.getInstance();
    PortalContainer pcontainer = rootContainer.getPortalContainer("portal");
    assertNotNull(pcontainer);
    PriorityService ps = (PriorityService) pcontainer.getComponentInstanceOfType(PriorityService.class);
    assertNotNull(ps);
    List<ComponentPlugin> l = ps.getPlugins();
    assertNotNull(l);
    assertEquals(3, l.size());
    assertEquals("PluginPriority3", l.get(0).getName());
    assertEquals("PluginPriority1", l.get(1).getName());
    assertEquals("PluginPriority2", l.get(2).getName());
}
Also used : ComponentPlugin(org.exoplatform.container.component.ComponentPlugin) PriorityService(org.exoplatform.mocks.PriorityService) RootContainer(org.exoplatform.container.RootContainer) PortalContainer(org.exoplatform.container.PortalContainer)

Aggregations

RootContainer (org.exoplatform.container.RootContainer)38 URL (java.net.URL)14 ContainerBuilder (org.exoplatform.container.ContainerBuilder)14 PortalContainer (org.exoplatform.container.PortalContainer)9 MBeanServer (javax.management.MBeanServer)8 ExoContainer (org.exoplatform.container.ExoContainer)4 ObjectName (javax.management.ObjectName)3 ObjectInstance (javax.management.ObjectInstance)2 ManagedManagementAware (org.exoplatform.container.jmx.support.ManagedManagementAware)2 ManagedWithObjectNameTemplate (org.exoplatform.container.jmx.support.ManagedWithObjectNameTemplate)2 ComponentAdapter (org.exoplatform.container.spi.ComponentAdapter)2 InitParams (org.exoplatform.container.xml.InitParams)2 ObjectParameter (org.exoplatform.container.xml.ObjectParameter)2 Set (java.util.Set)1 ComponentPlugin (org.exoplatform.container.component.ComponentPlugin)1 ComponentRequestLifecycle (org.exoplatform.container.component.ComponentRequestLifecycle)1 ExoContainerFinder (org.exoplatform.container.jmx.support.ExoContainerFinder)1 ManagedByManager (org.exoplatform.container.jmx.support.ManagedByManager)1 ManagedComponentRequestLifeCycle (org.exoplatform.container.jmx.support.ManagedComponentRequestLifeCycle)1 ManagedDependent (org.exoplatform.container.jmx.support.ManagedDependent)1