From d876fb2d936b7592232ff578d942abc12594ada5 Mon Sep 17 00:00:00 2001 From: virender-choudhary-abbott-com Date: Tue, 30 Jul 2024 21:17:12 -0500 Subject: [PATCH] chore: Update BylineImplTest to use ArrayList instead of ImmutableList --- .../wknd/core/models/impl/ImageListImpl.java | 76 +++-- .../wknd/core/models/impl/BylineImplTest.java | 10 +- pom.xml | 7 +- settings.xml | 310 ++++++++++++++++++ 4 files changed, 366 insertions(+), 37 deletions(-) create mode 100644 settings.xml diff --git a/core/src/main/java/com/adobe/aem/guides/wknd/core/models/impl/ImageListImpl.java b/core/src/main/java/com/adobe/aem/guides/wknd/core/models/impl/ImageListImpl.java index c1a1b61b64..7ed23f3239 100644 --- a/core/src/main/java/com/adobe/aem/guides/wknd/core/models/impl/ImageListImpl.java +++ b/core/src/main/java/com/adobe/aem/guides/wknd/core/models/impl/ImageListImpl.java @@ -15,24 +15,15 @@ */ package com.adobe.aem.guides.wknd.core.models.impl; -import com.adobe.aem.guides.wknd.core.models.ImageList; -import com.adobe.cq.wcm.core.components.models.Image; -import com.adobe.cq.wcm.core.components.models.datalayer.ComponentData; -import com.adobe.cq.wcm.core.components.models.datalayer.builder.DataLayerBuilder; -import com.adobe.cq.wcm.core.components.util.ComponentUtils; -import com.day.cq.commons.jcr.JcrConstants; -import com.day.cq.search.Predicate; -import com.day.cq.search.PredicateConverter; -import com.day.cq.search.PredicateGroup; -import com.day.cq.search.QueryBuilder; -import com.day.cq.search.eval.JcrPropertyPredicateEvaluator; -import com.day.cq.search.eval.PathPredicateEvaluator; -import com.day.cq.search.eval.TypePredicateEvaluator; -import com.day.cq.wcm.api.Page; -import com.day.cq.wcm.api.PageManager; -import com.day.cq.wcm.api.components.ComponentContext; -import com.google.common.collect.ImmutableList; -import com.google.common.collect.ImmutableMap; +import java.util.ArrayList; +import java.util.Collections; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +import javax.jcr.Session; import org.apache.commons.lang3.StringUtils; import org.apache.sling.api.SlingHttpServletRequest; @@ -52,15 +43,23 @@ import org.apache.sling.models.annotations.via.ResourceSuperType; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.jcr.Session; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Collections; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; -import java.util.stream.Collectors; + +import com.adobe.aem.guides.wknd.core.models.ImageList; +import com.adobe.cq.wcm.core.components.models.Image; +import com.adobe.cq.wcm.core.components.models.datalayer.ComponentData; +import com.adobe.cq.wcm.core.components.models.datalayer.builder.DataLayerBuilder; +import com.adobe.cq.wcm.core.components.util.ComponentUtils; +import com.day.cq.commons.jcr.JcrConstants; +import com.day.cq.search.Predicate; +import com.day.cq.search.PredicateConverter; +import com.day.cq.search.PredicateGroup; +import com.day.cq.search.QueryBuilder; +import com.day.cq.search.eval.JcrPropertyPredicateEvaluator; +import com.day.cq.search.eval.PathPredicateEvaluator; +import com.day.cq.search.eval.TypePredicateEvaluator; +import com.day.cq.wcm.api.Page; +import com.day.cq.wcm.api.PageManager; +import com.day.cq.wcm.api.components.ComponentContext; @Model( adaptables = {SlingHttpServletRequest.class}, @@ -101,7 +100,7 @@ public class ImageListImpl implements ImageList { private List imageListItems; @Override - public final Collection getListItems() { + public final List getListItems() { if (imageListItems == null) { if (coreList == null) { log.warn("Could not locate the AEM WCM Core Components List SlingModel via this component's ResourceSuperType. Returning an empty list."); @@ -114,8 +113,8 @@ public final Collection getListItems() { .collect(Collectors.toList()); } } - - return ImmutableList.copyOf(imageListItems); + return List.copyOf(imageListItems); + //return ImmutableList.copyOf(imageListItems); } @Override @@ -227,7 +226,7 @@ protected java.util.List findPageComponentResources(final Page page, f return componentResources; } - final Map params = ImmutableMap.builder(). + /*final Map params = ImmutableMap.builder(). put(PathPredicateEvaluator.PATH, page.getContentResource().getPath()). put(TypePredicateEvaluator.TYPE, JcrConstants.NT_UNSTRUCTURED). put(JcrPropertyPredicateEvaluator.PROPERTY, JcrResourceConstants.SLING_RESOURCE_TYPE_PROPERTY). @@ -237,8 +236,19 @@ protected java.util.List findPageComponentResources(final Page page, f put(Predicate.ORDER_BY, "@jcr:path"). put(Predicate.ORDER_BY + "." + Predicate.PARAM_SORT , Predicate.SORT_ASCENDING). build(); - - final long start = System.currentTimeMillis(); + */ + + final Map params = new HashMap(); + params.put(PathPredicateEvaluator.PATH, page.getContentResource().getPath()); + params.put(TypePredicateEvaluator.TYPE, JcrConstants.NT_UNSTRUCTURED); + params.put(JcrPropertyPredicateEvaluator.PROPERTY, JcrResourceConstants.SLING_RESOURCE_TYPE_PROPERTY); + params.put(JcrPropertyPredicateEvaluator.PROPERTY + "." + JcrPropertyPredicateEvaluator.VALUE, slingResourceType); + params.put(PredicateConverter.GROUP_PARAMETER_PREFIX + "." + PredicateGroup.PARAM_LIMIT, String.valueOf(limit)); + params.put(PredicateConverter.GROUP_PARAMETER_PREFIX + "." + PredicateGroup.PARAM_GUESS_TOTAL, "true"); + params.put(Predicate.ORDER_BY, "@jcr:path"); + params.put(Predicate.ORDER_BY + "." + Predicate.PARAM_SORT , Predicate.SORT_ASCENDING); + + final long start = System.currentTimeMillis(); final Iterator resources = queryBuilder.createQuery(PredicateGroup.create(params), request.getResourceResolver().adaptTo(Session.class)).getResult().getResources(); diff --git a/core/src/test/java/com/adobe/aem/guides/wknd/core/models/impl/BylineImplTest.java b/core/src/test/java/com/adobe/aem/guides/wknd/core/models/impl/BylineImplTest.java index 8e8c0ee7a1..398c981fb6 100644 --- a/core/src/test/java/com/adobe/aem/guides/wknd/core/models/impl/BylineImplTest.java +++ b/core/src/test/java/com/adobe/aem/guides/wknd/core/models/impl/BylineImplTest.java @@ -25,10 +25,10 @@ import com.adobe.aem.guides.wknd.core.models.Byline; import com.adobe.cq.wcm.core.components.models.Image; -import com.google.common.collect.ImmutableList; import static org.mockito.Mockito.*; +import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -76,11 +76,17 @@ public void testGetName() { @Test public void testGetOccupations() { - List expected = new ImmutableList.Builder() + /*List expected = new ImmutableList.Builder() .add("Blogger") .add("Photographer") .add("YouTuber") .build(); + */ + List expected = new ArrayList(); + expected.add("Blogger"); + expected.add("Photographer"); + expected.add("YouTuber"); + ctx.currentResource("/content/byline"); Byline byline = ctx.request().adaptTo(Byline.class); diff --git a/pom.xml b/pom.xml index 6b070c9835..f25ae459b3 100644 --- a/pom.xml +++ b/pom.xml @@ -59,13 +59,13 @@ 5.1.2 UTF-8 UTF-8 - 2023.7.12874.20230726T072051Z-230702 + 2024.7.17258.20240726T172406Z-240700 WKND Site 2.25.4 6.5.17 3.1.0 2.2.2 - 1.5.8 + 1.6.0 central https://artifactory-ent.devops.abbott:443/artifactory/bts-aem-191-maven-snapshots-local @@ -366,6 +366,9 @@ Bundle-DocURL: aemanalyser-maven-plugin ${aemanalyser.version} true + + true + diff --git a/settings.xml b/settings.xml new file mode 100644 index 0000000000..d467494f8d --- /dev/null +++ b/settings.xml @@ -0,0 +1,310 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + virender.choudhary@abbott.com + cmVmdGtuOjAxOjE3NTM3OTk3NjI6YVJpYjdzanFwekh5QVB3UkdDaU1XWU5ET3JP + central + + + virender.choudhary@abbott.com + cmVmdGtuOjAxOjE3NTM3OTk3NjI6YVJpYjdzanFwekh5QVB3UkdDaU1XWU5ET3JP + snapshots + + + + + + + + + + + + + + + + + + + + + adobe-public + + + true + + + + adobe-public-releases + Adobe Public Releases + https://repo.adobe.com/nexus/content/groups/public + + + + + adobe-public-releases + Adobe Public Repository + https://repo.adobe.com/nexus/content/groups/public + + true + never + + + false + + + + + + + adobe-public-releases + Adobe Public Repository + https://repo.adobe.com/nexus/content/groups/public + + true + never + + + false + + + + + + + + adobe-public + + \ No newline at end of file