You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@plc4x.apache.org by sr...@apache.org on 2018/09/26 16:23:46 UTC
[incubator-plc4x] branch feature/TopLevelItemSpliting updated:
[General] SingleItemToSingleRequestProtocol small Bugfixes
This is an automated email from the ASF dual-hosted git repository.
sruehl pushed a commit to branch feature/TopLevelItemSpliting
in repository https://gitbox.apache.org/repos/asf/incubator-plc4x.git
The following commit(s) were added to refs/heads/feature/TopLevelItemSpliting by this push:
new d3844ed [General] SingleItemToSingleRequestProtocol small Bugfixes
d3844ed is described below
commit d3844ed2668cea212093ad32709ab437c285042d
Author: Sebastian Rühl <sr...@apache.org>
AuthorDate: Wed Sep 26 18:23:42 2018 +0200
[General] SingleItemToSingleRequestProtocol small Bugfixes
---
.../java/base/protocol/SingleItemToSingleRequestProtocol.java | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/plc4j/protocols/driver-bases/base/src/main/java/org/apache/plc4x/java/base/protocol/SingleItemToSingleRequestProtocol.java b/plc4j/protocols/driver-bases/base/src/main/java/org/apache/plc4x/java/base/protocol/SingleItemToSingleRequestProtocol.java
index 0fdebf5..717b4dc 100644
--- a/plc4j/protocols/driver-bases/base/src/main/java/org/apache/plc4x/java/base/protocol/SingleItemToSingleRequestProtocol.java
+++ b/plc4j/protocols/driver-bases/base/src/main/java/org/apache/plc4x/java/base/protocol/SingleItemToSingleRequestProtocol.java
@@ -48,7 +48,7 @@ public class SingleItemToSingleRequestProtocol extends ChannelDuplexHandler {
private ConcurrentMap<PlcRequestContainer<?, ?>, Set<Integer>> containerCorrelationIdMap;
- private ConcurrentMap<PlcRequestContainer<?, ?>, List<InternalPlcResponse<?>>> responsesToBeDevliered;
+ private ConcurrentMap<PlcRequestContainer<?, ?>, List<InternalPlcResponse<?>>> responsesToBeDelivered;
private AtomicInteger correlationId;
@@ -57,6 +57,7 @@ public class SingleItemToSingleRequestProtocol extends ChannelDuplexHandler {
this.queue = new PendingWriteQueue(ctx);
this.sentButUnacknowledgedRequestItems = new ConcurrentHashMap<>();
this.containerCorrelationIdMap = new ConcurrentHashMap<>();
+ this.responsesToBeDelivered = new ConcurrentHashMap<>();
this.correlationId = new AtomicInteger();
super.channelRegistered(ctx);
}
@@ -83,7 +84,7 @@ public class SingleItemToSingleRequestProtocol extends ChannelDuplexHandler {
if (plcRequestContainer == null) {
throw new PlcRuntimeException("Unrelated package received " + msg);
}
- List<InternalPlcResponse<?>> correlatedResponseItems = responsesToBeDevliered.computeIfAbsent(plcRequestContainer, ignore -> new LinkedList<>());
+ List<InternalPlcResponse<?>> correlatedResponseItems = responsesToBeDelivered.computeIfAbsent(plcRequestContainer, ignore -> new LinkedList<>());
correlatedResponseItems.add(msg);
Set<Integer> integers = containerCorrelationIdMap.get(plcRequestContainer);
integers.remove(correlationId);
@@ -113,7 +114,7 @@ public class SingleItemToSingleRequestProtocol extends ChannelDuplexHandler {
throw new PlcRuntimeException("Unknown type detected " + plcRequestContainer.getRequest());
}
plcRequestContainer.getResponseFuture().complete(plcResponse);
- responsesToBeDevliered.remove(plcRequestContainer);
+ responsesToBeDelivered.remove(plcRequestContainer);
}
}
@@ -144,7 +145,6 @@ public class SingleItemToSingleRequestProtocol extends ChannelDuplexHandler {
if (internalPlcFieldRequest instanceof InternalPlcReadRequest) {
InternalPlcReadRequest internalPlcReadRequest = (InternalPlcReadRequest) internalPlcFieldRequest;
- // TODO: repackage
internalPlcReadRequest.getNamedFields().forEach(field -> {
ChannelPromise subPromise = new DefaultChannelPromise(promise.channel());
@@ -167,7 +167,6 @@ public class SingleItemToSingleRequestProtocol extends ChannelDuplexHandler {
}
if (internalPlcFieldRequest instanceof InternalPlcWriteRequest) {
InternalPlcWriteRequest internalPlcWriteRequest = (InternalPlcWriteRequest) internalPlcFieldRequest;
- // TODO: repackage
internalPlcWriteRequest.getNamedFieldTriples().forEach(fieldItemTriple -> {
ChannelPromise subPromise = new DefaultChannelPromise(promise.channel());