Search in sources :

Example 6 with View

use of org.apache.deltaspike.jsf.api.config.view.View in project deltaspike by apache.

the class ViewConfigTest method testNestedViewConfig.

@Test
public void testNestedViewConfig() {
    this.viewConfigExtension.addPageDefinition(Pages.Index.class);
    this.viewConfigExtension.addPageDefinition(Pages.Home.class);
    this.viewConfigExtension.addPageDefinition(Pages.Admin.Index.class);
    ViewConfigResolver viewConfigResolver = this.viewConfigResolverProducer.createViewConfigResolver();
    ConfigDescriptor configDescriptor = viewConfigResolver.getConfigDescriptor(Pages.class);
    Assert.assertNotNull(configDescriptor);
    Assert.assertNotNull(configDescriptor.getConfigClass());
    Assert.assertEquals(Pages.class, configDescriptor.getConfigClass());
    Assert.assertNotNull(configDescriptor.getMetaData());
    Assert.assertEquals(1, configDescriptor.getMetaData().size());
    Assert.assertEquals("/pages/", ((Folder) configDescriptor.getMetaData().iterator().next()).name());
    configDescriptor = viewConfigResolver.getConfigDescriptor(Pages.Admin.class);
    Assert.assertNotNull(configDescriptor);
    Assert.assertNotNull(configDescriptor.getConfigClass());
    Assert.assertEquals(Pages.Admin.class, configDescriptor.getConfigClass());
    Assert.assertNotNull(configDescriptor.getMetaData());
    Assert.assertEquals(1, configDescriptor.getMetaData().size());
    Assert.assertEquals("/pages/admin/", ((Folder) configDescriptor.getMetaData().iterator().next()).name());
    ViewConfigDescriptor viewConfigDescriptor = viewConfigResolver.getViewConfigDescriptor(Pages.Index.class);
    Assert.assertNotNull(viewConfigDescriptor);
    Assert.assertEquals("/pages/index.xhtml", viewConfigDescriptor.getViewId());
    Assert.assertEquals(Pages.Index.class, viewConfigDescriptor.getConfigClass());
    Assert.assertNotNull(viewConfigDescriptor.getMetaData());
    Assert.assertEquals(1, viewConfigDescriptor.getMetaData().size());
    Assert.assertEquals(View.NavigationMode.FORWARD, ((View) viewConfigDescriptor.getMetaData().iterator().next()).navigation());
    Assert.assertEquals(View.ViewParameterMode.EXCLUDE, (viewConfigDescriptor.getMetaData(View.class).iterator().next()).viewParams());
    Assert.assertEquals("index", (viewConfigDescriptor.getMetaData(View.class).iterator().next()).name());
    Assert.assertEquals(View.Extension.XHTML, (viewConfigDescriptor.getMetaData(View.class).iterator().next()).extension());
    viewConfigDescriptor = viewConfigResolver.getViewConfigDescriptor(Pages.Home.class);
    Assert.assertNotNull(viewConfigDescriptor);
    Assert.assertEquals("/pages/home.xhtml", viewConfigDescriptor.getViewId());
    Assert.assertEquals(Pages.Home.class, viewConfigDescriptor.getConfigClass());
    Assert.assertNotNull(viewConfigDescriptor.getMetaData());
    Assert.assertEquals(1, viewConfigDescriptor.getMetaData().size());
    Assert.assertEquals(View.NavigationMode.FORWARD, ((View) viewConfigDescriptor.getMetaData().iterator().next()).navigation());
    Assert.assertEquals(View.ViewParameterMode.EXCLUDE, (viewConfigDescriptor.getMetaData(View.class).iterator().next()).viewParams());
    Assert.assertEquals("home", (viewConfigDescriptor.getMetaData(View.class).iterator().next()).name());
    Assert.assertEquals(View.Extension.XHTML, (viewConfigDescriptor.getMetaData(View.class).iterator().next()).extension());
    ConfigDescriptor folderDescriptor = viewConfigResolver.getConfigDescriptor(Pages.Admin.class);
    Assert.assertNotNull(folderDescriptor);
    Assert.assertEquals("/pages/admin/", folderDescriptor.getPath());
    Assert.assertEquals(Pages.Admin.class, folderDescriptor.getConfigClass());
    Assert.assertNotNull(folderDescriptor.getMetaData());
    Assert.assertEquals(1, folderDescriptor.getMetaData().size());
    Assert.assertEquals("/pages/admin/", ((Folder) folderDescriptor.getMetaData().iterator().next()).name());
    viewConfigDescriptor = viewConfigResolver.getViewConfigDescriptor(Pages.Admin.Index.class);
    Assert.assertNotNull(viewConfigDescriptor);
    Assert.assertEquals("/pages/admin/index.xhtml", viewConfigDescriptor.getViewId());
    Assert.assertEquals(Pages.Admin.Index.class, viewConfigDescriptor.getConfigClass());
    Assert.assertNotNull(viewConfigDescriptor.getMetaData());
    Assert.assertEquals(1, viewConfigDescriptor.getMetaData().size());
    Assert.assertEquals(View.NavigationMode.FORWARD, ((View) viewConfigDescriptor.getMetaData().iterator().next()).navigation());
    Assert.assertEquals(View.ViewParameterMode.EXCLUDE, (viewConfigDescriptor.getMetaData(View.class).iterator().next()).viewParams());
    Assert.assertEquals("index", (viewConfigDescriptor.getMetaData(View.class).iterator().next()).name());
    Assert.assertEquals(View.Extension.XHTML, (viewConfigDescriptor.getMetaData(View.class).iterator().next()).extension());
}
Also used : ConfigDescriptor(org.apache.deltaspike.core.api.config.view.metadata.ConfigDescriptor) ViewConfigDescriptor(org.apache.deltaspike.core.api.config.view.metadata.ViewConfigDescriptor) ViewConfigDescriptor(org.apache.deltaspike.core.api.config.view.metadata.ViewConfigDescriptor) View(org.apache.deltaspike.jsf.api.config.view.View) ViewConfigResolver(org.apache.deltaspike.core.api.config.view.metadata.ViewConfigResolver) Test(org.junit.Test)

Aggregations

View (org.apache.deltaspike.jsf.api.config.view.View)6 ViewConfigDescriptor (org.apache.deltaspike.core.api.config.view.metadata.ViewConfigDescriptor)4 ViewConfigResolver (org.apache.deltaspike.core.api.config.view.metadata.ViewConfigResolver)3 DefaultErrorView (org.apache.deltaspike.core.api.config.view.DefaultErrorView)2 ViewConfig (org.apache.deltaspike.core.api.config.view.ViewConfig)2 Annotation (java.lang.annotation.Annotation)1 HashSet (java.util.HashSet)1 List (java.util.List)1 Set (java.util.Set)1 ConfigurableNavigationHandler (javax.faces.application.ConfigurableNavigationHandler)1 NavigationCase (javax.faces.application.NavigationCase)1 UIViewRoot (javax.faces.component.UIViewRoot)1 ConfigDescriptor (org.apache.deltaspike.core.api.config.view.metadata.ConfigDescriptor)1 PreViewConfigNavigateEvent (org.apache.deltaspike.core.api.config.view.navigation.event.PreViewConfigNavigateEvent)1 JsfModuleConfig (org.apache.deltaspike.jsf.api.config.JsfModuleConfig)1 Folder (org.apache.deltaspike.jsf.api.config.view.Folder)1 ErrorViewAwareAccessDeniedException (org.apache.deltaspike.security.api.authorization.ErrorViewAwareAccessDeniedException)1 Test (org.junit.Test)1