use of com.enonic.xp.page.Page in project xp by enonic.
the class PageResolverTest method content_with_Page_but_template_was_deleted_fallback_to_default.
@Test
public void content_with_Page_but_template_was_deleted_fallback_to_default() {
Site site = Site.create().id(ContentId.from("site-id")).path(ContentPath.from("/site")).displayName("My Site").type(ContentTypeName.from("portal:site")).build();
Content content = Content.create().parentPath(site.getPath()).id(ContentId.from("content-id")).name("my-content").page(Page.create().template(PageTemplateKey.from("t-not-exists")).build()).type(ContentTypeName.templateFolder()).build();
final Page page = Page.create().descriptor(DescriptorKey.from("myapp:my-descriptor")).build();
PageTemplate template = PageTemplate.newPageTemplate().key(PageTemplateKey.from("t-1")).parentPath(site.getPath()).name("my-template").page(page).canRender(ContentTypeNames.from(ContentTypeName.templateFolder())).build();
when(pageTemplateService.getByKey(PageTemplateKey.from("t-not-exists"))).thenThrow(new ContentNotFoundException(content.getId(), null));
when(pageTemplateService.getDefault(notNull())).thenReturn(template);
PageResolverResult result = pageResolver.resolve(RenderMode.LIVE, content, site);
final Page effectivePage = result.getEffectivePage();
assertEquals(template.getKey(), effectivePage.getTemplate());
assertEquals(DescriptorKey.from("myapp:my-descriptor"), result.getController());
}
use of com.enonic.xp.page.Page in project xp by enonic.
the class ComponentInstructionTest method createSite.
private Site createSite(final String id, final String name, final String contentTypeName) {
PropertyTree rootDataSet = new PropertyTree();
rootDataSet.addString("property1", "value1");
Page page = Page.create().template(PageTemplateKey.from("my-page")).config(rootDataSet).build();
return Site.create().id(ContentId.from(id)).path(ContentPath.from(name)).owner(PrincipalKey.from("user:myStore:me")).displayName("My Content").modifier(PrincipalKey.from("user:system:admin")).type(ContentTypeName.from(contentTypeName)).page(page).build();
}
use of com.enonic.xp.page.Page in project xp by enonic.
the class ComponentInstructionTest method createPage.
private Content createPage(final String id, final String name, final String contentTypeName) {
PropertyTree rootDataSet = new PropertyTree();
rootDataSet.addString("property1", "value1");
Region region = Region.create().name("myRegion").add(PartComponent.create().descriptor(DescriptorKey.from("myapplication:myparttemplate")).build()).build();
PageRegions pageRegions = PageRegions.create().add(region).build();
Page page = Page.create().template(PageTemplateKey.from("my-page")).regions(pageRegions).build();
return Content.create().id(ContentId.from(id)).path(ContentPath.from(name)).owner(PrincipalKey.from("user:myStore:me")).displayName("My Content").modifier(PrincipalKey.from("user:system:admin")).type(ContentTypeName.from(contentTypeName)).page(page).build();
}
use of com.enonic.xp.page.Page in project xp by enonic.
the class ComponentInstruction method getPageFragment.
private Component getPageFragment(final PortalRequest portalRequest) {
final Content content = portalRequest.getContent();
if (content == null) {
return null;
}
final Page page = content.getPage();
if (page == null) {
return null;
}
final Component fragment = page.getFragment();
return fragment;
}
use of com.enonic.xp.page.Page in project xp by enonic.
the class FragmentRenderer method getFragmentComponent.
private Component getFragmentComponent(final FragmentComponent component) {
final ContentId contentId = component.getFragment();
try {
final Content fragmentContent = contentService.getById(contentId);
if (!fragmentContent.hasPage() || !fragmentContent.getType().isFragment()) {
return null;
}
final Page page = fragmentContent.getPage();
return page.getFragment();
} catch (ContentNotFoundException e) {
return null;
}
}
Aggregations