Skip to content

Commit b82f752

Browse files
committed
- AEM Plugin: Reused methods in CommonsUtils.
1 parent 5eb074a commit b82f752

File tree

3 files changed

+72
-90
lines changed

3 files changed

+72
-90
lines changed

turing-aem/aem-cli-indexer/src/main/java/com/viglet/turing/connector/aem/cli/TurAemIndexerTool.java

Lines changed: 16 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
import com.viglet.turing.client.auth.credentials.TurApiKeyCredentials;
2828
import com.viglet.turing.client.sn.TurSNServer;
2929
import com.viglet.turing.client.sn.job.*;
30-
import com.viglet.turing.commons.cache.TurCustomClassCache;
3130
import com.viglet.turing.commons.exception.TurRuntimeException;
3231
import com.viglet.turing.commons.sn.field.TurSNFieldName;
3332
import com.viglet.turing.connector.aem.cli.conf.AemHandlerConfiguration;
@@ -41,8 +40,6 @@
4140
import com.viglet.turing.connector.aem.commons.bean.TurAemTargetAttrValueMap;
4241
import com.viglet.turing.connector.aem.commons.config.IAemConfiguration;
4342
import com.viglet.turing.connector.aem.commons.context.TurAemSourceContext;
44-
import com.viglet.turing.connector.aem.commons.ext.TurAemExtDeltaDate;
45-
import com.viglet.turing.connector.aem.commons.ext.TurAemExtDeltaDateInterface;
4643
import com.viglet.turing.connector.aem.commons.mappers.TurAemContentDefinitionProcess;
4744
import com.viglet.turing.connector.aem.commons.mappers.TurAemModel;
4845
import lombok.Getter;
@@ -59,8 +56,6 @@
5956
import java.nio.file.Paths;
6057
import java.util.*;
6158
import java.util.concurrent.atomic.AtomicInteger;
62-
import java.util.regex.Matcher;
63-
import java.util.regex.Pattern;
6459
import java.util.stream.Collectors;
6560

6661
@Slf4j
@@ -76,7 +71,6 @@ public class TurAemIndexerTool {
7671
public static final String JCR = "jcr:";
7772
public static final String ID = "id";
7873
public static final String STATIC_FILE_SUB_TYPE = "STATIC_FILE";
79-
public static final String ONCE = "once";
8074
public static final String REP = "rep:";
8175
public static final String ITEMS_PROCESSED_MESSAGE = "%d items processed in %dms";
8276
public static final String CQ = "cq:";
@@ -191,15 +185,13 @@ private TurAemSourceContext getTurAemSourceContext(IAemConfiguration config,
191185
}
192186

193187
private void updateSystemOnce(TurAemSourceContext turAemSourceContext) {
194-
turAemSystemDAO.findByConfig(configOnce(turAemSourceContext)).ifPresentOrElse(turAemSystem -> {
188+
turAemSystemDAO.findByConfig(TurAemCommonsUtils.configOnce(turAemSourceContext))
189+
.ifPresentOrElse(turAemSystem -> {
195190
turAemSystem.setBooleanValue(true);
196191
turAemSystemDAO.update(turAemSystem);
197192
},
198-
() -> turAemSystemDAO.save(new TurAemSystem(configOnce(turAemSourceContext), true)));
199-
}
200-
201-
private String configOnce(TurAemSourceContext turAemSourceContext) {
202-
return "%s/%s".formatted(turAemSourceContext.getId(), ONCE);
193+
() -> turAemSystemDAO.save(new TurAemSystem(TurAemCommonsUtils.configOnce(turAemSourceContext),
194+
true)));
203195
}
204196

205197
private void getNodesFromJson(TurAemSourceContext turAemSourceContext) {
@@ -311,7 +303,7 @@ private void getChildrenFromJson(String nodePath, JSONObject jsonObject, TurAemS
311303
&& (turAemSourceContext.getSubType().equals(STATIC_FILE_SUB_TYPE)
312304
|| TurAemCommonsUtils.checkIfFileHasNotImageExtension(key))) {
313305
String nodePathChild = "%s/%s".formatted(nodePath, key);
314-
if (!isOnce(turAemSourceContext) || !isOnceConfig(nodePathChild)) {
306+
if (!isOnce(turAemSourceContext) || !TurAemCommonsUtils.isOnceConfig(nodePathChild, config)) {
315307
TurAemCommonsUtils.getInfinityJson(nodePathChild, turAemSourceContext, false)
316308
.ifPresent(infinityJson ->
317309
getNodeFromJson(nodePathChild, infinityJson, turAemSourceContext, start));
@@ -321,19 +313,11 @@ private void getChildrenFromJson(String nodePath, JSONObject jsonObject, TurAemS
321313
}
322314

323315
private boolean isOnce(TurAemSourceContext turAemSourceContext) {
324-
return turAemSystemDAO.findByConfig(configOnce(turAemSourceContext)).map(TurAemSystem::isBooleanValue)
316+
return turAemSystemDAO.findByConfig(TurAemCommonsUtils.configOnce(turAemSourceContext))
317+
.map(TurAemSystem::isBooleanValue)
325318
.orElse(false);
326319
}
327320

328-
private boolean isOnceConfig(String path) {
329-
if (StringUtils.isNotBlank(config.getOncePatternPath())) {
330-
Pattern p = Pattern.compile(config.getOncePatternPath());
331-
Matcher m = p.matcher(path);
332-
return m.lookingAt();
333-
}
334-
return false;
335-
}
336-
337321
private void prepareIndexObject(TurAemModel turAemModel, TurAemObject aemObject,
338322
List<TurSNAttributeSpec> targetAttrDefinitions,
339323
TurAemSourceContext turAemSourceContext,
@@ -393,23 +377,8 @@ private boolean objectNeedBeIndexed(TurAemObject aemObject, TurAemSourceContext
393377
}
394378

395379
private boolean objectNeedBeReIndexed(TurAemObject aemObject, TurAemSourceContext turAemSourceContext) {
396-
return ddlNeedBeReIndexed(aemObject, turAemSourceContext, getDeltaDate(aemObject, turAemSourceContext));
397-
}
398-
399-
private Date getDeltaDate(TurAemObject aemObject, TurAemSourceContext turAemSourceContext) {
400-
Date deltaDate = Optional.ofNullable(turAemContentDefinitionProcess.getDeltaClassName())
401-
.map(className -> TurCustomClassCache.getCustomClassMap(className)
402-
.map(classInstance -> ((TurAemExtDeltaDateInterface) classInstance)
403-
.consume(aemObject, turAemSourceContext))
404-
.orElseGet(() -> defaultDeltaDate(aemObject, turAemSourceContext)))
405-
.orElseGet(() -> defaultDeltaDate(aemObject, turAemSourceContext));
406-
log.debug("Delta Date {} from {}", deltaDate.toString(), aemObject.getPath());
407-
return deltaDate;
408-
}
409-
410-
private static Date defaultDeltaDate(TurAemObject aemObject, TurAemSourceContext turAemSourceContext) {
411-
return new TurAemExtDeltaDate().consume(aemObject,
412-
turAemSourceContext);
380+
return ddlNeedBeReIndexed(aemObject, turAemSourceContext, TurAemCommonsUtils.getDeltaDate(aemObject,
381+
turAemSourceContext, turAemContentDefinitionProcess));
413382
}
414383

415384
private boolean ddlNeedBeReIndexed(TurAemObject aemObject, TurAemSourceContext turAemSourceContext,
@@ -451,7 +420,8 @@ private void sendReindex(TurAemObject aemObject, TurAemModel turAemModel,
451420
log.info("ReIndexed {} object ({}) from {} to {} and deltaId = {}",
452421
aemObject.getPath(), turAemSourceContext.getId(),
453422
turAemIndexingsList.getFirst().getDate(),
454-
getDeltaDate(aemObject, turAemSourceContext), deltaId));
423+
TurAemCommonsUtils.getDeltaDate(aemObject, turAemSourceContext,
424+
turAemContentDefinitionProcess), deltaId));
455425
}
456426
sendToTuringToBeIndexed(aemObject, turAemModel, turSNAttributeSpecList, locale,
457427
turAemSourceContext);
@@ -486,7 +456,8 @@ private void updateIndexingStatus(TurAemObject aemObject, Locale locale, TurAemS
486456
aemObject.getPath(), turAemSourceContext.getId(), deltaId);
487457
} else {
488458
turAemIndexingDAO.update(turAemIndexingList.getFirst()
489-
.setDate(getDeltaDate(aemObject, turAemSourceContext))
459+
.setDate(TurAemCommonsUtils.getDeltaDate(aemObject, turAemSourceContext,
460+
turAemContentDefinitionProcess))
490461
.setDeltaId(deltaId));
491462
log.info("Updated status {} object ({}) deltaId = {}",
492463
aemObject.getPath(), turAemSourceContext.getId(), deltaId);
@@ -499,9 +470,10 @@ private TurAemIndexing createTurAemIndexing(TurAemObject aemObject, Locale local
499470
return new TurAemIndexing()
500471
.setAemId(aemObject.getPath())
501472
.setIndexGroup(turAemSourceContext.getId())
502-
.setDate(getDeltaDate(aemObject, turAemSourceContext))
473+
.setDate(TurAemCommonsUtils.getDeltaDate(aemObject, turAemSourceContext,
474+
turAemContentDefinitionProcess))
503475
.setDeltaId(deltaId)
504-
.setOnce(isOnceConfig(aemObject.getPath()))
476+
.setOnce(TurAemCommonsUtils.isOnceConfig(aemObject.getPath(), config))
505477
.setLocale(locale);
506478
}
507479

turing-aem/aem-commons/src/main/java/com/viglet/turing/connector/aem/commons/TurAemCommonsUtils.java

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,13 @@
2929
import com.viglet.turing.commons.utils.TurCommonsUtils;
3030
import com.viglet.turing.connector.aem.commons.bean.TurAemContext;
3131
import com.viglet.turing.connector.aem.commons.bean.TurAemTargetAttrValueMap;
32+
import com.viglet.turing.connector.aem.commons.config.IAemConfiguration;
3233
import com.viglet.turing.connector.aem.commons.context.TurAemLocalePathContext;
3334
import com.viglet.turing.connector.aem.commons.context.TurAemSourceContext;
3435
import com.viglet.turing.connector.aem.commons.ext.TurAemExtContentInterface;
36+
import com.viglet.turing.connector.aem.commons.ext.TurAemExtDeltaDate;
37+
import com.viglet.turing.connector.aem.commons.ext.TurAemExtDeltaDateInterface;
38+
import com.viglet.turing.connector.aem.commons.mappers.TurAemContentDefinitionProcess;
3539
import com.viglet.turing.connector.aem.commons.mappers.TurAemModel;
3640
import lombok.extern.slf4j.Slf4j;
3741
import org.apache.commons.lang3.StringUtils;
@@ -49,6 +53,8 @@
4953
import java.io.IOException;
5054
import java.net.URI;
5155
import java.util.*;
56+
import java.util.regex.Matcher;
57+
import java.util.regex.Pattern;
5258

5359
@Slf4j
5460
public class TurAemCommonsUtils {
@@ -65,7 +71,38 @@ protected boolean removeEldestEntry(Map.Entry<String, String> eldest) {
6571
};
6672
public static final String JCR_CONTENT = "jcr:content";
6773
public static final String JCR_TITLE = "jcr:title";
74+
public static final String ONCE = "once";
6875

76+
public static boolean isOnceConfig(String path, IAemConfiguration config) {
77+
if (StringUtils.isNotBlank(config.getOncePatternPath())) {
78+
Pattern p = Pattern.compile(config.getOncePatternPath());
79+
Matcher m = p.matcher(path);
80+
return m.lookingAt();
81+
}
82+
return false;
83+
}
84+
85+
public static String configOnce(TurAemSourceContext turAemSourceContext) {
86+
return "%s/%s".formatted(turAemSourceContext.getId(), ONCE);
87+
}
88+
89+
public static Date getDeltaDate(TurAemObject aemObject, TurAemSourceContext turAemSourceContext,
90+
TurAemContentDefinitionProcess turAemContentDefinitionProcess) {
91+
Date deltaDate = Optional.ofNullable(turAemContentDefinitionProcess.getDeltaClassName())
92+
.map(className -> TurCustomClassCache.getCustomClassMap(className)
93+
.map(classInstance -> ((TurAemExtDeltaDateInterface) classInstance)
94+
.consume(aemObject, turAemSourceContext))
95+
.orElseGet(() -> defaultDeltaDate(aemObject, turAemSourceContext)))
96+
.orElseGet(() -> defaultDeltaDate(aemObject, turAemSourceContext));
97+
log.debug("Delta Date {} from {}", deltaDate.toString(), aemObject.getPath());
98+
return deltaDate;
99+
}
100+
101+
102+
private static Date defaultDeltaDate(TurAemObject aemObject, TurAemSourceContext turAemSourceContext) {
103+
return new TurAemExtDeltaDate().consume(aemObject,
104+
turAemSourceContext);
105+
}
69106

70107
public static TurAemTargetAttrValueMap runCustomClassFromContentType(TurAemModel turAemModel,
71108
TurAemObject aemObject,

0 commit comments

Comments
 (0)