use of com.day.cq.wcm.api.Page in project aem-core-wcm-components by Adobe-Marketing-Cloud.
the class ListImpl method populateTagListItems.
private void populateTagListItems() {
listItems = new ArrayList<>();
String[] tags = properties.get(PN_TAGS, new String[0]);
boolean matchAny = properties.get(PN_TAGS_MATCH, TAGS_MATCH_ANY_VALUE).equals(TAGS_MATCH_ANY_VALUE);
if (ArrayUtils.isNotEmpty(tags)) {
Page rootPage = getRootPage(PN_TAGS_PARENT_PAGE);
if (rootPage != null) {
TagManager tagManager = resourceResolver.adaptTo(TagManager.class);
if (tagManager != null) {
RangeIterator<Resource> resourceRangeIterator = tagManager.find(rootPage.getPath(), tags, matchAny);
if (resourceRangeIterator != null) {
while (resourceRangeIterator.hasNext()) {
Page containingPage = pageManager.getContainingPage(resourceRangeIterator.next());
if (containingPage != null) {
listItems.add(containingPage);
}
}
}
}
}
}
}
use of com.day.cq.wcm.api.Page in project aem-core-wcm-components by Adobe-Marketing-Cloud.
the class PageSerializerTest method serialize.
@Test
public void serialize() throws Exception {
Page page = mock(Page.class);
when(page.getName()).thenReturn(PAGE_NAME);
when(page.getTitle()).thenReturn(PAGE_TITLE);
when(page.getPageTitle()).thenReturn(PAGE_TITLE);
when(page.getPath()).thenReturn(PAGE_PATH);
when(page.getDescription()).thenReturn(PAGE_DESCRIPTION);
JsonGenerator jsonGenerator = mock(JsonGenerator.class);
SerializerProvider serializerProvider = mock(SerializerProvider.class);
PageSerializer pageSerializer = new PageSerializer(Page.class);
pageSerializer.serialize(page, jsonGenerator, serializerProvider);
verify(jsonGenerator).writeStartObject();
verify(jsonGenerator).writeStringField(PageSerializer.JSON_KEY_NAME, page.getName());
verify(jsonGenerator).writeStringField(PageSerializer.JSON_KEY_TITLE, page.getTitle());
verify(jsonGenerator).writeStringField(PageSerializer.JSON_KEY_PAGE_TITLE, page.getPageTitle());
verify(jsonGenerator).writeStringField(PageSerializer.JSON_KEY_PATH, page.getPath());
verify(jsonGenerator).writeStringField(PageSerializer.JSON_KEY_DESCRIPTION, page.getDescription());
verify(jsonGenerator).writeEndObject();
verifyNoMoreInteractions(jsonGenerator);
}
use of com.day.cq.wcm.api.Page in project CQ-Actions by Cognifide.
the class HandleMessageJob method process.
@Override
public JobResult process(Job job) {
final String path = (String) job.getProperty(SlingConstants.PROPERTY_PATH);
ResourceResolver resolver = null;
try {
resolver = resolverFactory.getAdministrativeResourceResolver(null);
final PageManager pm = resolver.adaptTo(PageManager.class);
final Page page = pm.getPage(path);
final String actionType;
if (page != null && page.getContentResource() != null) {
actionType = page.getContentResource().getResourceType();
consumeMessage(actionType, page.getContentResource());
} else {
LOG.debug("Empty resource type for action page: " + path);
}
} catch (Exception e) {
LOG.error(e.getMessage(), e);
} finally {
if (resolver != null) {
resolver.close();
}
}
return JobResult.OK;
}
use of com.day.cq.wcm.api.Page in project acs-aem-commons by Adobe-Consulting-Services.
the class SendTemplatedEmailUtilsTest method testGetPayloadProperties_Page.
@Test
public void testGetPayloadProperties_Page() throws Exception {
// set up jcr properties
mockJcrProperties();
Resource payloadRes = mock(Resource.class);
Resource jcrRes = mock(Resource.class);
Page payloadPage = mock(Page.class);
when(payloadRes.adaptTo(Page.class)).thenReturn(payloadPage);
when(payloadPage.getContentResource()).thenReturn(jcrRes);
// mock valueMap
when(jcrRes.getValueMap()).thenReturn(vmap);
Map<String, String> props = SendTemplatedEmailUtils.getPayloadProperties(payloadRes, sdf);
assertEquals(props.get(PN_CALENDAR), CALENDAR_TOSTRING);
assertEquals(props.get(PN_TITLE), STR_TOSTRING);
assertEquals(props.get(PN_LONG), LONG_TOSTRING);
assertEquals(props.get(PN_STR_ARRAY), STR_ARRAY_TOSTRING);
}
use of com.day.cq.wcm.api.Page in project acs-aem-commons by Adobe-Consulting-Services.
the class AemObjectInjector method getResourceDesign.
private Design getResourceDesign(Object adaptable) {
Page resourcePage = getResourcePage(adaptable);
Designer designer = getDesigner(adaptable);
if (adaptable instanceof SlingHttpServletRequest) {
SlingHttpServletRequest request = (SlingHttpServletRequest) adaptable;
if (resourcePage != null && designer != null) {
String resourceDesignKey = COM_DAY_CQ_WCM_TAGS_DEFINE_OBJECTS_TAG + resourcePage.getPath();
Object cachedResourceDesign = request.getAttribute(resourceDesignKey);
if (cachedResourceDesign != null) {
return (Design) cachedResourceDesign;
} else {
Design resourceDesign = designer.getDesign(resourcePage);
request.setAttribute(resourceDesignKey, resourceDesign);
return resourceDesign;
}
}
}
if (adaptable instanceof Resource) {
return designer != null ? designer.getDesign(resourcePage) : null;
}
return null;
}
Aggregations