in plc4j/integrations/apache-nifi/nifi-plc4x-processors/src/main/java/org/apache/plc4x/nifi/BasePlc4xProcessor.java [236:268]
protected PlcWriteRequest getWriteRequest(final ComponentLog logger,
final Map<String, String> addressMap, final Map<String, PlcTag> tags, final Map<String, ?> presentTags,
final PlcConnection connection, final AtomicLong nrOfRowsHere) {
PlcWriteRequest.Builder builder = connection.writeRequestBuilder();
if (tags != null){
for (Map.Entry<String,PlcTag> tag : tags.entrySet()){
if (presentTags.containsKey(tag.getKey())) {
builder.addTag(tag.getKey(), tag.getValue(), presentTags.get(tag.getKey()));
if (nrOfRowsHere != null) {
nrOfRowsHere.incrementAndGet();
}
} else {
if (debugEnabled)
logger.debug("PlcTag " + tag + " is declared as address but was not found on input record.");
}
}
} else {
if (debugEnabled)
logger.debug("PlcTypes resolution not found in cache and will be added with key: " + addressMap);
for (Map.Entry<String,String> entry: addressMap.entrySet()){
if (presentTags.containsKey(entry.getKey())) {
builder.addTagAddress(entry.getKey(), entry.getValue(), presentTags.get(entry.getKey()));
if (nrOfRowsHere != null) {
nrOfRowsHere.incrementAndGet();
}
}
}
}
return builder.build();
}