Skip to content

Commit eae64a5

Browse files
committed
- AEM: Improved Logging and Refactoring Plugin Process
1 parent 09101fe commit eae64a5

File tree

2 files changed

+55
-39
lines changed

2 files changed

+55
-39
lines changed

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

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
package com.viglet.turing.connector.aem.commons.mappers;
22

33
import com.viglet.turing.client.sn.job.TurSNAttributeSpec;
4+
import lombok.Builder;
45
import lombok.Getter;
56
import lombok.Setter;
67

78
import java.util.List;
89

10+
@Builder
911
@Getter
1012
@Setter
1113
public class TurAemContentMapping {

turing-aem/aem-plugin/src/main/java/com/viglet/turing/connector/plugin/aem/TurAemPluginProcess.java

Lines changed: 53 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@
4949
import org.springframework.stereotype.Component;
5050

5151
import java.util.*;
52+
import java.util.stream.Collectors;
5253

5354
import static com.viglet.turing.connector.aem.commons.TurAemConstants.*;
5455

@@ -108,20 +109,20 @@ public void sentToIndexStandaloneAsync(String name, TurAemPathList turAemPathLis
108109
log.error("Payload is empty");
109110
return;
110111
}
111-
log.info("Receiving Async payload to {} source with paths {}", name, turAemPathList);
112+
log.debug("Receiving Async payload to {} source with paths {}", name, turAemPathList);
112113
turAemSourceRepository.findByName(name).ifPresentOrElse(turAemSource -> {
113114
TurConnectorSession turConnectorSession = TurAemPluginProcess.getTurConnectorSession(turAemSource);
114115
turAemPathList.getPaths().forEach(path ->
115116
indexContentId(turConnectorSession, turAemSource, path, true));
116117
finished(turConnectorSession, true);
117118
},
118-
() -> log.info("{} Source not found", name));
119+
() -> log.error("{} Source not found", name));
119120
}
120121

121122

122123
public void indexAll(TurAemSource turAemSource) {
123124
if (runningSources.contains(turAemSource.getName())) {
124-
log.info("Skipping. There are already source process running. {}", turAemSource.getName());
125+
log.warn("Skipping. There are already source process running. {}", turAemSource.getName());
125126
return;
126127
}
127128
runningSources.add(turAemSource.getName());
@@ -142,37 +143,56 @@ public void indexAll(TurAemSource turAemSource) {
142143
}
143144

144145
public void finished(TurConnectorSession turConnectorSession, boolean standalone) {
145-
if (!standalone) {
146-
runningSources.remove(turConnectorSession.getSource());
147-
}
146+
if (!standalone) runningSources.remove(turConnectorSession.getSource());
148147
turConnectorContext.finishIndexing(turConnectorSession, standalone);
149148
}
150149

151-
152150
private @NotNull TurAemContentMapping getTurAemContentMapping(TurAemSource turAemSource) {
153-
List<TurAemModel> turAemModels = new ArrayList<>();
154-
turAemPluginModelRepository.findByTurAemSource(turAemSource).forEach(pluginModel -> {
155-
List<TurAemTargetAttr> targetAttrs = new ArrayList<>();
156-
pluginModel.getTargetAttrs().forEach(targetAttr -> {
157-
List<TurAemSourceAttr> sourceAttrs = new ArrayList<>();
158-
targetAttr.getSourceAttrs().forEach(sourceAttr ->
159-
sourceAttrs.add(TurAemSourceAttr.builder()
151+
return TurAemContentMapping.builder()
152+
.deltaClassName(turAemSource.getDeltaClass())
153+
.models(getTurAemModels(turAemSource))
154+
.targetAttrDefinitions(getTurSNAttributeSpecs(turAemSource))
155+
.build();
156+
}
157+
158+
private @NotNull List<TurAemModel> getTurAemModels(TurAemSource turAemSource) {
159+
return turAemPluginModelRepository.findByTurAemSource(turAemSource)
160+
.stream()
161+
.map(pluginModel ->
162+
TurAemModel.builder()
163+
.className(pluginModel.getClassName())
164+
.type(pluginModel.getType())
165+
.targetAttrs(getTurAemTargetAttrs(pluginModel))
166+
.build()
167+
)
168+
.collect(Collectors.toList());
169+
}
170+
171+
private static @NotNull List<TurAemTargetAttr> getTurAemTargetAttrs(TurAemPluginModel pluginModel) {
172+
return pluginModel.getTargetAttrs()
173+
.stream()
174+
.map(targetAttr ->
175+
TurAemTargetAttr.builder()
176+
.name(targetAttr.getName())
177+
.sourceAttrs(getTurAemSourceAttrs(targetAttr))
178+
.build()
179+
).collect(Collectors.toList());
180+
}
181+
182+
private static @NotNull List<TurAemSourceAttr> getTurAemSourceAttrs(TurAemTargetAttribute targetAttr) {
183+
return targetAttr.getSourceAttrs()
184+
.stream()
185+
.map(sourceAttr ->
186+
TurAemSourceAttr.builder()
160187
.className(sourceAttr.getClassName())
161188
.name(sourceAttr.getName())
162189
.convertHtmlToText(false)
163190
.uniqueValues(false)
164-
.build()));
165-
targetAttrs.add(TurAemTargetAttr.builder()
166-
.name(targetAttr.getName())
167-
.sourceAttrs(sourceAttrs)
168-
.build());
169-
});
170-
turAemModels.add(TurAemModel.builder()
171-
.className(pluginModel.getClassName())
172-
.type(pluginModel.getType())
173-
.targetAttrs(targetAttrs)
174-
.build());
175-
});
191+
.build()
192+
).collect(Collectors.toList());
193+
}
194+
195+
private @NotNull List<TurSNAttributeSpec> getTurSNAttributeSpecs(TurAemSource turAemSource) {
176196
List<TurSNAttributeSpec> targetAttrDefinitions = new ArrayList<>();
177197
turAemAttributeSpecificationRepository.findByTurAemSource(turAemSource)
178198
.ifPresent(attributeSpecifications ->
@@ -188,12 +208,7 @@ public void finished(TurConnectorSession turConnectorSession, boolean standalone
188208
.facet(attributeSpec.isFacet())
189209
.build()
190210
)));
191-
192-
TurAemContentMapping turAemContentMapping = new TurAemContentMapping();
193-
turAemContentMapping.setDeltaClassName(turAemSource.getDeltaClass());
194-
turAemContentMapping.setModels(turAemModels);
195-
turAemContentMapping.setTargetAttrDefinitions(targetAttrDefinitions);
196-
return turAemContentMapping;
211+
return targetAttrDefinitions;
197212
}
198213

199214
private TurAemSourceContext getTurAemSourceContext(IAemConfiguration config) {
@@ -227,10 +242,9 @@ private void getNodesFromJson(TurAemSourceContext turAemSourceContext,
227242
TurConnectorSession turConnectorSession,
228243
TurAemSource turAemSource,
229244
TurAemContentDefinitionProcess turAemContentDefinitionProcess) {
230-
if (TurAemCommonsUtils.usingContentTypeParameter(turAemSourceContext)) {
231-
byContentTypeList(turAemSourceContext, turConnectorSession, turAemSource,
232-
turAemContentDefinitionProcess);
233-
}
245+
if (!TurAemCommonsUtils.usingContentTypeParameter(turAemSourceContext)) return;
246+
byContentTypeList(turAemSourceContext, turConnectorSession, turAemSource,
247+
turAemContentDefinitionProcess);
234248
}
235249

236250
public void indexContentId(TurConnectorSession session, TurAemSource turAemSource, String contentId,
@@ -268,7 +282,7 @@ private void byContentTypeList(TurAemSourceContext turAemSourceContext,
268282
.ifPresentOrElse(turAemModel ->
269283
byContentType(turAemSourceContext, turConnectorSession, turAemSource,
270284
turAemContentDefinitionProcess),
271-
() -> log.info("{} type is not configured in CTD Mapping file.",
285+
() -> log.debug("{} type is not configured in CTD Mapping file.",
272286
turAemSourceContext.getContentType()));
273287
}
274288

@@ -298,7 +312,7 @@ private void getNodeFromJson(String nodePath, JSONObject jsonObject,
298312
turAemSourceContext, session, turAemSource,
299313
turAemContentDefinitionProcess, standalone));
300314
}
301-
}, () -> log.info("AEM object ({}) is null transactionId = {}",
315+
}, () -> log.debug("AEM object ({}) is null transactionId = {}",
302316
turAemSourceContext.getId(), session.getTransactionId()));
303317
getChildrenFromJson(nodePath, jsonObject, turAemSourceContext, session, turAemSource,
304318
turAemContentDefinitionProcess, standalone);
@@ -398,7 +412,7 @@ private void indexObjectByPublication(@NotNull TurAemObject aemObject, TurAemMod
398412
TurAemCommonsUtils.getLocaleFromAemObject(turAemSourceContext, aemObject),
399413
turAemSourceContext, turConnectorSession, turAemContentDefinitionProcess, standalone);
400414
} else {
401-
log.info("Ignoring because {} object ({}) is not publishing. transactionId = {}",
415+
log.debug("Ignoring because {} object ({}) is not publishing. transactionId = {}",
402416
aemObject.getPath(), turAemSourceContext.getId(), turConnectorSession.getTransactionId());
403417
}
404418
}

0 commit comments

Comments
 (0)