This is an automated email from the ASF dual-hosted git repository.
zehnder pushed a commit to branch 3112-opc-ua-multi-node-selection-editor
in repository https://gitbox.apache.org/repos/asf/streampipes.git
The following commit(s) were added to
refs/heads/3112-opc-ua-multi-node-selection-editor by this push:
new d47e4f4b4c feat(#3112): Refactor parameter extractor for tree
properties
d47e4f4b4c is described below
commit d47e4f4b4c1a9f57b460050202c3f640cea4adfb
Author: Philipp Zehnder <[email protected]>
AuthorDate: Tue Aug 13 09:56:57 2024 +0200
feat(#3112): Refactor parameter extractor for tree properties
---
.../api/extractor/IParameterExtractor.java | 7 +
.../adapter/OpcUaNodeMetadataExtractorTest.java | 67 ++---
.../sdk/extractor/AbstractParameterExtractor.java | 275 ++++++++++++++-------
3 files changed, 229 insertions(+), 120 deletions(-)
diff --git
a/streampipes-extensions-api/src/main/java/org/apache/streampipes/extensions/api/extractor/IParameterExtractor.java
b/streampipes-extensions-api/src/main/java/org/apache/streampipes/extensions/api/extractor/IParameterExtractor.java
index dbcdb4eba4..396f0f3961 100644
---
a/streampipes-extensions-api/src/main/java/org/apache/streampipes/extensions/api/extractor/IParameterExtractor.java
+++
b/streampipes-extensions-api/src/main/java/org/apache/streampipes/extensions/api/extractor/IParameterExtractor.java
@@ -60,6 +60,13 @@ public interface IParameterExtractor {
<V> List<V> selectedMultiValues(String internalName, Class<V> targetClass);
+ <V> List<V> selectedTreeNodesInternalNames(String internalName,
+ Class<V> targetClass);
+
+ /**
+ * @deprecated use {@link #selectedTreeNodesInternalNames(String, Class)}
instead
+ */
+ @Deprecated(since = "0.97.0", forRemoval = true)
<V> List<V> selectedTreeNodesInternalNames(String internalName,
Class<V> targetClass,
boolean onlyDataNodes);
diff --git
a/streampipes-extensions/streampipes-connectors-opcua/src/test/java/org/apache/streampipes/extensions/connectors/opcua/adapter/OpcUaNodeMetadataExtractorTest.java
b/streampipes-extensions/streampipes-connectors-opcua/src/test/java/org/apache/streampipes/extensions/connectors/opcua/adapter/OpcUaNodeMetadataExtractorTest.java
index d37f81d8c3..4a5360563f 100644
---
a/streampipes-extensions/streampipes-connectors-opcua/src/test/java/org/apache/streampipes/extensions/connectors/opcua/adapter/OpcUaNodeMetadataExtractorTest.java
+++
b/streampipes-extensions/streampipes-connectors-opcua/src/test/java/org/apache/streampipes/extensions/connectors/opcua/adapter/OpcUaNodeMetadataExtractorTest.java
@@ -25,9 +25,10 @@ import
org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText;
import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId;
import org.eclipse.milo.opcua.stack.core.types.builtin.QualifiedName;
import org.eclipse.milo.opcua.stack.core.types.enumerated.NodeClass;
-import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
@@ -45,8 +46,8 @@ public class OpcUaNodeMetadataExtractorTest {
extractor.extractDescription();
var metadata = extractor.getMetadata();
- Assertions.assertTrue(metadata.containsKey("Description"));
- Assertions.assertEquals(description, metadata.get("Description"));
+ assertTrue(metadata.containsKey("Description"));
+ assertEquals(description, metadata.get("Description"));
}
@Test
@@ -58,8 +59,8 @@ public class OpcUaNodeMetadataExtractorTest {
extractor.extractDescription();
var metadata = extractor.getMetadata();
- Assertions.assertTrue(metadata.containsKey("Description"));
- Assertions.assertEquals("", metadata.get("Description"));
+ assertTrue(metadata.containsKey("Description"));
+ assertEquals("", metadata.get("Description"));
}
@Test
@@ -71,8 +72,8 @@ public class OpcUaNodeMetadataExtractorTest {
extractor.extractNamespaceIndex();
var metadata = extractor.getMetadata();
- Assertions.assertTrue(metadata.containsKey("NamespaceIndex"));
- Assertions.assertEquals("1", metadata.get("NamespaceIndex"));
+ assertTrue(metadata.containsKey("NamespaceIndex"));
+ assertEquals("1", metadata.get("NamespaceIndex"));
}
@Test
@@ -84,8 +85,8 @@ public class OpcUaNodeMetadataExtractorTest {
extractor.extractNamespaceIndex();
var metadata = extractor.getMetadata();
- Assertions.assertTrue(metadata.containsKey("NamespaceIndex"));
- Assertions.assertEquals("", metadata.get("NamespaceIndex"));
+ assertTrue(metadata.containsKey("NamespaceIndex"));
+ assertEquals("", metadata.get("NamespaceIndex"));
}
@Test
@@ -97,8 +98,8 @@ public class OpcUaNodeMetadataExtractorTest {
extractor.extractNodeClass();
var metadata = extractor.getMetadata();
- Assertions.assertTrue(metadata.containsKey("NodeClass"));
- Assertions.assertEquals("Variable", metadata.get("NodeClass"));
+ assertTrue(metadata.containsKey("NodeClass"));
+ assertEquals("Variable", metadata.get("NodeClass"));
}
@Test
@@ -110,8 +111,8 @@ public class OpcUaNodeMetadataExtractorTest {
extractor.extractNodeClass();
var metadata = extractor.getMetadata();
- Assertions.assertTrue(metadata.containsKey("NodeClass"));
- Assertions.assertEquals("", metadata.get("NodeClass"));
+ assertTrue(metadata.containsKey("NodeClass"));
+ assertEquals("", metadata.get("NodeClass"));
}
@Test
@@ -124,8 +125,8 @@ public class OpcUaNodeMetadataExtractorTest {
extractor.extractBrowseName();
var metadata = extractor.getMetadata();
- Assertions.assertTrue(metadata.containsKey("BrowseName"));
- Assertions.assertEquals(expectedNodeName, metadata.get("BrowseName"));
+ assertTrue(metadata.containsKey("BrowseName"));
+ assertEquals(expectedNodeName, metadata.get("BrowseName"));
}
@Test
@@ -137,8 +138,8 @@ public class OpcUaNodeMetadataExtractorTest {
extractor.extractBrowseName();
var metadata = extractor.getMetadata();
- Assertions.assertTrue(metadata.containsKey("BrowseName"));
- Assertions.assertEquals("", metadata.get("BrowseName"));
+ assertTrue(metadata.containsKey("BrowseName"));
+ assertEquals("", metadata.get("BrowseName"));
}
@Test
@@ -151,8 +152,8 @@ public class OpcUaNodeMetadataExtractorTest {
extractor.extractDisplayName();
var metadata = extractor.getMetadata();
- Assertions.assertTrue(metadata.containsKey("DisplayName"));
- Assertions.assertEquals(expectedName, metadata.get("DisplayName"));
+ assertTrue(metadata.containsKey("DisplayName"));
+ assertEquals(expectedName, metadata.get("DisplayName"));
}
@Test
@@ -164,8 +165,8 @@ public class OpcUaNodeMetadataExtractorTest {
extractor.extractDisplayName();
var metadata = extractor.getMetadata();
- Assertions.assertTrue(metadata.containsKey("DisplayName"));
- Assertions.assertEquals("", metadata.get("DisplayName"));
+ assertTrue(metadata.containsKey("DisplayName"));
+ assertEquals("", metadata.get("DisplayName"));
}
@Test
@@ -177,8 +178,8 @@ public class OpcUaNodeMetadataExtractorTest {
extractor.extractSourceTime(value);
var metadata = extractor.getMetadata();
- Assertions.assertTrue(metadata.containsKey("SourceTime"));
- Assertions.assertEquals(date, metadata.get("SourceTime"));
+ assertTrue(metadata.containsKey("SourceTime"));
+ assertEquals(date, metadata.get("SourceTime"));
}
@Test
@@ -190,8 +191,8 @@ public class OpcUaNodeMetadataExtractorTest {
extractor.extractSourceTime(value);
var metadata = extractor.getMetadata();
- Assertions.assertTrue(metadata.containsKey("SourceTime"));
- Assertions.assertEquals("", metadata.get("SourceTime"));
+ assertTrue(metadata.containsKey("SourceTime"));
+ assertEquals("", metadata.get("SourceTime"));
}
@Test
@@ -203,8 +204,8 @@ public class OpcUaNodeMetadataExtractorTest {
extractor.extractServerTime(value);
var metadata = extractor.getMetadata();
- Assertions.assertTrue(metadata.containsKey("ServerTime"));
- Assertions.assertEquals(date, metadata.get("ServerTime"));
+ assertTrue(metadata.containsKey("ServerTime"));
+ assertEquals(date, metadata.get("ServerTime"));
}
@Test
@@ -216,8 +217,8 @@ public class OpcUaNodeMetadataExtractorTest {
extractor.extractServerTime(value);
var metadata = extractor.getMetadata();
- Assertions.assertTrue(metadata.containsKey("ServerTime"));
- Assertions.assertEquals("", metadata.get("ServerTime"));
+ assertTrue(metadata.containsKey("ServerTime"));
+ assertEquals("", metadata.get("ServerTime"));
}
@Test
@@ -230,8 +231,8 @@ public class OpcUaNodeMetadataExtractorTest {
extractor.extractDataType(dataTypeNode);
var metadata = extractor.getMetadata();
- Assertions.assertTrue(metadata.containsKey("DataType"));
- Assertions.assertEquals(expectedName, metadata.get("DataType"));
+ assertTrue(metadata.containsKey("DataType"));
+ assertEquals(expectedName, metadata.get("DataType"));
}
@Test
@@ -243,8 +244,8 @@ public class OpcUaNodeMetadataExtractorTest {
extractor.extractDataType(dataTypeNode);
var metadata = extractor.getMetadata();
- Assertions.assertTrue(metadata.containsKey("DataType"));
- Assertions.assertEquals("", metadata.get("DataType"));
+ assertTrue(metadata.containsKey("DataType"));
+ assertEquals("", metadata.get("DataType"));
}
private OpcUaNodeMetadataExtractor getExtractor(UaNode node) {
diff --git
a/streampipes-sdk/src/main/java/org/apache/streampipes/sdk/extractor/AbstractParameterExtractor.java
b/streampipes-sdk/src/main/java/org/apache/streampipes/sdk/extractor/AbstractParameterExtractor.java
index 2bec1f786f..20e02705fc 100644
---
a/streampipes-sdk/src/main/java/org/apache/streampipes/sdk/extractor/AbstractParameterExtractor.java
+++
b/streampipes-sdk/src/main/java/org/apache/streampipes/sdk/extractor/AbstractParameterExtractor.java
@@ -67,7 +67,8 @@ public abstract class AbstractParameterExtractor<T extends
InvocableStreamPipesE
public AbstractParameterExtractor(T sepaElement) {
this.sepaElement = sepaElement;
- this.typeParser = TypeParser.newBuilder().build();
+ this.typeParser = TypeParser.newBuilder()
+ .build();
}
@Override
@@ -78,7 +79,8 @@ public abstract class AbstractParameterExtractor<T extends
InvocableStreamPipesE
.getEventSchema()
.getEventProperties()
.stream()
- .filter(ep -> ep.getRuntimeName().equals(runtimeName))
+ .filter(ep -> ep.getRuntimeName()
+ .equals(runtimeName))
.map(ep -> (EventPropertyPrimitive) ep)
.findFirst()
.get()
@@ -117,7 +119,7 @@ public abstract class AbstractParameterExtractor<T extends
InvocableStreamPipesE
@Override
public <V> V singleValueParameter(String internalName, Class<V> targetClass)
{
return typeParser.parse(getStaticPropertyByName(internalName,
FreeTextStaticProperty.class)
- .getValue(), targetClass);
+ .getValue(), targetClass);
}
@Override
@@ -127,8 +129,10 @@ public abstract class AbstractParameterExtractor<T extends
InvocableStreamPipesE
@Override
public String secretValue(String internalName) {
- return (getStaticPropertyByName(internalName, SecretStaticProperty.class)
- .getValue());
+ return (
+ getStaticPropertyByName(internalName, SecretStaticProperty.class)
+ .getValue()
+ );
}
@Override
@@ -151,15 +155,17 @@ public abstract class AbstractParameterExtractor<T
extends InvocableStreamPipesE
return getStaticPropertyByName(internalName,
FileStaticProperty.class).getLocationPath();
}
- private <V, T extends SelectionStaticProperty> V selectedSingleValue(String
internalName, Class<V> targetClass,
-
Class<T> oneOfStaticProperty) {
+ private <V, T extends SelectionStaticProperty> V selectedSingleValue(
+ String internalName, Class<V> targetClass,
+ Class<T> oneOfStaticProperty
+ ) {
return typeParser.parse(getStaticPropertyByName(internalName,
oneOfStaticProperty)
- .getOptions()
- .stream()
- .filter(Option::isSelected)
- .findFirst()
- .get()
- .getName(), targetClass);
+ .getOptions()
+ .stream()
+ .filter(Option::isSelected)
+ .findFirst()
+ .get()
+ .getName(), targetClass);
}
@Override
@@ -170,12 +176,12 @@ public abstract class AbstractParameterExtractor<T
extends InvocableStreamPipesE
@Override
public <V> V selectedSingleValueInternalName(String internalName, Class<V>
targetClass) {
return typeParser.parse(getStaticPropertyByName(internalName,
OneOfStaticProperty.class)
- .getOptions()
- .stream()
- .filter(Option::isSelected)
- .findFirst()
- .get()
- .getInternalName(), targetClass);
+ .getOptions()
+ .stream()
+ .filter(Option::isSelected)
+ .findFirst()
+ .get()
+ .getInternalName(), targetClass);
}
@Override
@@ -188,14 +194,18 @@ public abstract class AbstractParameterExtractor<T
extends InvocableStreamPipesE
.collect(Collectors.toList());
}
- private Boolean comparePropertyRuntimeType(EventProperty eventProperty,
- Datatypes datatype) {
+ private Boolean comparePropertyRuntimeType(
+ EventProperty eventProperty,
+ Datatypes datatype
+ ) {
return comparePropertyRuntimeType(eventProperty, datatype, false);
}
- private Boolean comparePropertyRuntimeType(EventProperty eventProperty,
- Datatypes datatype,
- boolean ignoreListElements) {
+ private Boolean comparePropertyRuntimeType(
+ EventProperty eventProperty,
+ Datatypes datatype,
+ boolean ignoreListElements
+ ) {
EventPropertyPrimitive testProperty = null;
if (eventProperty instanceof EventPropertyList && !ignoreListElements) {
testProperty = (EventPropertyPrimitive) ((EventPropertyList)
eventProperty).getEventProperty();
@@ -204,7 +214,8 @@ public abstract class AbstractParameterExtractor<T extends
InvocableStreamPipesE
}
if (testProperty != null) {
- return testProperty.getRuntimeType().equals(datatype.toString());
+ return testProperty.getRuntimeType()
+ .equals(datatype.toString());
} else {
return false;
}
@@ -240,29 +251,68 @@ public abstract class AbstractParameterExtractor<T
extends InvocableStreamPipesE
}
@Override
- public <V> List<V> selectedTreeNodesInternalNames(String internalName,
- Class<V> targetClass,
- boolean onlyDataNodes) {
+ /**
+ * Extracts the user configuration from the tree static property.
+ * @param internalName the internal name of the static property
+ * @param targetClass the target class of the internal names
+ * @return the list of selected nodes internal names
+ */
+ public <V> List<V> selectedTreeNodesInternalNames(
+ String internalName,
+ Class<V> targetClass
+ ) {
+ var runtimeResolvableTreeInputStaticProperty = getStaticPropertyByName(
+ internalName,
+ RuntimeResolvableTreeInputStaticProperty.class
+ );
+
+ return
runtimeResolvableTreeInputStaticProperty.getSelectedNodesInternalNames()
+ .stream()
+ .map(node -> typeParser.parse(node, targetClass))
+ .toList();
+ }
+
+ @Override
+ @Deprecated(since = "0.97.0", forRemoval = true)
+ /**
+ * This method returns a list of all nodes.
+ * Therefore, it requires both the property selectedNodesInternalNames and
the nodes property to be set.
+ * The nodes are used to check for the data type. The problem with this
implementation is, is that the client (e.g.
+ * UI) must get the nodes from the OPC UA server.
+ *
+ * @deprecated use {@link #selectedTreeNodesInternalNames(String, Class)}
instead
+ */
+ public <V> List<V> selectedTreeNodesInternalNames(
+ String internalName,
+ Class<V> targetClass,
+ boolean onlyDataNodes
+ ) {
List<TreeInputNode> allNodes = new ArrayList<>();
RuntimeResolvableTreeInputStaticProperty sp =
getStaticPropertyByName(internalName,
RuntimeResolvableTreeInputStaticProperty.class);
- if (!sp.getNodes().isEmpty()) {
- sp.getNodes().forEach(node -> buildFlatTree(node, allNodes));
+ if (!sp.getNodes()
+ .isEmpty()) {
+ sp.getNodes()
+ .forEach(node -> buildFlatTree(node, allNodes));
}
if (!allNodes.isEmpty()) {
return sp.getSelectedNodesInternalNames()
- .stream()
- .filter(node -> {
- if (!onlyDataNodes) {
- return true;
- } else {
- var existingNode = allNodes.stream().filter(n ->
n.getInternalNodeName().equals(node)).findFirst();
- return existingNode.map(TreeInputNode::isDataNode).orElse(false);
- }
- })
- .map(node -> typeParser.parse(node, targetClass))
- .collect(Collectors.toList());
+ .stream()
+ .filter(node -> {
+ if (!onlyDataNodes) {
+ return true;
+ } else {
+ var existingNode = allNodes.stream()
+ .filter(n ->
n.getInternalNodeName()
+ .equals(node))
+ .findFirst();
+ return existingNode.map(TreeInputNode::isDataNode)
+ .orElse(false);
+ }
+ })
+ .map(node -> typeParser.parse(node, targetClass))
+ .collect(Collectors.toList());
} else {
return new ArrayList<>();
}
@@ -271,13 +321,16 @@ public abstract class AbstractParameterExtractor<T
extends InvocableStreamPipesE
private void buildFlatTree(TreeInputNode parent, List<TreeInputNode>
collector) {
collector.add(parent);
if (parent.hasChildren()) {
- parent.getChildren().forEach(child -> buildFlatTree(child, collector));
+ parent.getChildren()
+ .forEach(child -> buildFlatTree(child, collector));
}
}
@Override
- public <W extends StaticProperty> W getStaticPropertyByName(String
internalName, Class<W>
- spType) {
+ public <W extends StaticProperty> W getStaticPropertyByName(
+ String internalName, Class<W>
+ spType
+ ) {
return spType.cast(getStaticPropertyByName(internalName));
}
@@ -286,10 +339,13 @@ public abstract class AbstractParameterExtractor<T
extends InvocableStreamPipesE
return getStaticPropertyByName(sepaElement.getStaticProperties(), name);
}
- private StaticProperty getStaticPropertyByName(List<StaticProperty>
staticProperties,
- String name) {
+ private StaticProperty getStaticPropertyByName(
+ List<StaticProperty> staticProperties,
+ String name
+ ) {
for (StaticProperty p : staticProperties) {
- if (p.getInternalName().equals(name)) {
+ if (p.getInternalName()
+ .equals(name)) {
return p;
} else if (p.getStaticPropertyType() ==
StaticPropertyType.StaticPropertyGroup) {
return getStaticPropertyByName(((StaticPropertyGroup)
p).getStaticProperties(), name);
@@ -297,7 +353,8 @@ public abstract class AbstractParameterExtractor<T extends
InvocableStreamPipesE
StaticProperty tmp =
getStaticPropertyFromSelectedAlternative((StaticPropertyAlternatives) p);
if (tmp != null) {
tmp = getStaticPropertyByName(Collections.singletonList(tmp), name);
- if (tmp != null && tmp.getInternalName().equals(name)) {
+ if (tmp != null && tmp.getInternalName()
+ .equals(name)) {
return tmp;
}
}
@@ -308,11 +365,11 @@ public abstract class AbstractParameterExtractor<T
extends InvocableStreamPipesE
private StaticProperty
getStaticPropertyFromSelectedAlternative(StaticPropertyAlternatives sp) {
return sp.getAlternatives()
- .stream()
- .filter(StaticPropertyAlternative::getSelected)
- .findFirst()
- .get()
- .getStaticProperty();
+ .stream()
+ .filter(StaticPropertyAlternative::getSelected)
+ .findFirst()
+ .get()
+ .getStaticProperty();
}
@Override
@@ -342,13 +399,15 @@ public abstract class AbstractParameterExtractor<T
extends InvocableStreamPipesE
public String propertyDatatype(String runtimeName) {
List<EventProperty> eventProperties = new ArrayList<>();
for (SpDataStream is : sepaElement.getInputStreams()) {
- eventProperties.addAll(is.getEventSchema().getEventProperties());
+ eventProperties.addAll(is.getEventSchema()
+ .getEventProperties());
}
Optional<EventProperty> matchedProperty = eventProperties
.stream()
- .filter(ep -> ep.getRuntimeName().equals
- (runtimeName))
+ .filter(ep -> ep.getRuntimeName()
+ .equals
+ (runtimeName))
.findFirst();
if (matchedProperty.isPresent()) {
@@ -368,7 +427,7 @@ public abstract class AbstractParameterExtractor<T extends
InvocableStreamPipesE
@Override
public List<EventProperty> getEventPropertiesBySelector(List<String>
selectors) throws
- SpRuntimeException {
+
SpRuntimeException {
List<EventProperty> properties = new ArrayList<>();
for (String selector : selectors) {
properties.add(getEventPropertyBySelector(selector));
@@ -380,8 +439,13 @@ public abstract class AbstractParameterExtractor<T extends
InvocableStreamPipesE
public EventProperty getEventPropertyBySelector(String selector) throws
SpRuntimeException {
SpDataStream input = getStreamBySelector(selector);
- List<EventProperty> matchedProperties = getEventProperty(selector,
getStreamSelector
- (selector), input.getEventSchema().getEventProperties());
+ List<EventProperty> matchedProperties = getEventProperty(
+ selector,
+ getStreamSelector
+ (selector),
+ input.getEventSchema()
+ .getEventProperties()
+ );
if (matchedProperties.size() > 0) {
return matchedProperties.get(0);
@@ -402,8 +466,10 @@ public abstract class AbstractParameterExtractor<T extends
InvocableStreamPipesE
}
- private List<EventProperty> getEventProperty(String selector, String
currentPointer,
- List<EventProperty> properties)
{
+ private List<EventProperty> getEventProperty(
+ String selector, String currentPointer,
+ List<EventProperty> properties
+ ) {
for (EventProperty property : properties) {
if (makePropertyWithSelector(currentPointer,
property.getRuntimeName()).equals(selector)) {
return Collections.singletonList(property);
@@ -422,7 +488,8 @@ public abstract class AbstractParameterExtractor<T extends
InvocableStreamPipesE
private SpDataStream getStreamBySelector(String selector) {
String streamId = getStreamSelector(selector).substring(1);
- return sepaElement.getInputStreams().get(Integer.parseInt(streamId));
+ return sepaElement.getInputStreams()
+ .get(Integer.parseInt(streamId));
}
private String getStreamSelector(String selector) {
@@ -434,13 +501,19 @@ public abstract class AbstractParameterExtractor<T
extends InvocableStreamPipesE
List<EventProperty> properties = new ArrayList<>();
for (SpDataStream stream : sepaElement.getInputStreams()) {
properties.addAll(
- getNoneInputStreamEventPropertySubset(propertySelectors,
sepaElement.getInputStreams().indexOf(stream)));
+ getNoneInputStreamEventPropertySubset(
+ propertySelectors,
+ sepaElement.getInputStreams()
+ .indexOf(stream)
+ ));
}
return properties;
}
- private List<EventProperty>
getNoneInputStreamEventPropertySubset(List<String> propertySelectors,
- Integer
streamIndex) {
+ private List<EventProperty> getNoneInputStreamEventPropertySubset(
+ List<String> propertySelectors,
+ Integer streamIndex
+ ) {
return sepaElement
.getInputStreams()
.get(streamIndex)
@@ -459,7 +532,11 @@ public abstract class AbstractParameterExtractor<T extends
InvocableStreamPipesE
List<EventProperty> properties = new ArrayList<>();
for (SpDataStream stream : sepaElement.getInputStreams()) {
properties.addAll(
- getInputStreamEventPropertySubset(propertySelectors,
sepaElement.getInputStreams().indexOf(stream)));
+ getInputStreamEventPropertySubset(
+ propertySelectors,
+ sepaElement.getInputStreams()
+ .indexOf(stream)
+ ));
}
return properties;
}
@@ -486,36 +563,45 @@ public abstract class AbstractParameterExtractor<T
extends InvocableStreamPipesE
}
private String getPropertySelectorFromUnaryMapping(String
staticPropertyName) {
- Optional<MappingPropertyUnary> property =
sepaElement.getStaticProperties().stream()
- .filter(p -> p instanceof MappingPropertyUnary)
- .map((p -> (MappingPropertyUnary) p))
- .filter(p -> p.getInternalName().equals(staticPropertyName))
- .findFirst();
+ Optional<MappingPropertyUnary> property = sepaElement.getStaticProperties()
+ .stream()
+ .filter(p -> p
instanceof MappingPropertyUnary)
+ .map((p ->
(MappingPropertyUnary) p))
+ .filter(p ->
p.getInternalName()
+
.equals(staticPropertyName))
+ .findFirst();
- return
property.map(MappingPropertyUnary::getSelectedProperty).orElse(null);
+ return property.map(MappingPropertyUnary::getSelectedProperty)
+ .orElse(null);
}
private List<String> getPropertySelectorsFromNaryMapping(String
staticPropertyName) {
- Optional<MappingPropertyNary> property =
sepaElement.getStaticProperties().stream()
- .filter(p -> p instanceof MappingPropertyNary)
- .map((p -> (MappingPropertyNary) p))
- .filter(p -> p.getInternalName().equals(staticPropertyName))
- .findFirst();
+ Optional<MappingPropertyNary> property = sepaElement.getStaticProperties()
+ .stream()
+ .filter(p -> p
instanceof MappingPropertyNary)
+ .map((p ->
(MappingPropertyNary) p))
+ .filter(p ->
p.getInternalName()
+
.equals(staticPropertyName))
+ .findFirst();
- return property.map(MappingPropertyNary::getSelectedProperties).orElse(new
ArrayList<>());
+ return property.map(MappingPropertyNary::getSelectedProperties)
+ .orElse(new ArrayList<>());
}
@Override
public String selectedAlternativeInternalId(String alternativesInternalId) {
- StaticPropertyAlternatives alternatives =
getStaticPropertyByName(alternativesInternalId,
- StaticPropertyAlternatives.class);
+ StaticPropertyAlternatives alternatives = getStaticPropertyByName(
+ alternativesInternalId,
+ StaticPropertyAlternatives.class
+ );
return alternatives
.getAlternatives()
.stream()
.filter(StaticPropertyAlternative::getSelected)
.map(StaticProperty::getInternalName)
- .findFirst().get();
+ .findFirst()
+ .get();
}
@Override
@@ -524,12 +610,17 @@ public abstract class AbstractParameterExtractor<T
extends InvocableStreamPipesE
List<EventProperty> properties = new ArrayList<>();
for (SpDataStream stream : sepaElement.getInputStreams()) {
- int streamIndex = sepaElement.getInputStreams().indexOf(stream);
+ int streamIndex = sepaElement.getInputStreams()
+ .indexOf(stream);
getEventPropertiesByScope(scope, streamIndex)
.stream()
.forEach(ep -> propertiesSelector.add(ep.getRuntimeName()));
- properties.addAll(getEventPropertiesByScope(scope,
sepaElement.getInputStreams().indexOf(stream)));
+ properties.addAll(getEventPropertiesByScope(
+ scope,
+ sepaElement.getInputStreams()
+ .indexOf(stream)
+ ));
}
return propertiesSelector;
}
@@ -540,12 +631,17 @@ public abstract class AbstractParameterExtractor<T
extends InvocableStreamPipesE
List<EventProperty> properties = new ArrayList<>();
for (SpDataStream stream : sepaElement.getInputStreams()) {
- int streamIndex = sepaElement.getInputStreams().indexOf(stream);
+ int streamIndex = sepaElement.getInputStreams()
+ .indexOf(stream);
getEventPropertiesByScope(scope, streamIndex)
.stream()
.forEach(ep ->
propertiesSelector.add(getBySelector(ep.getRuntimeName(), streamIndex)));
- properties.addAll(getEventPropertiesByScope(scope,
sepaElement.getInputStreams().indexOf(stream)));
+ properties.addAll(getEventPropertiesByScope(
+ scope,
+ sepaElement.getInputStreams()
+ .indexOf(stream)
+ ));
}
return propertiesSelector;
}
@@ -554,7 +650,11 @@ public abstract class AbstractParameterExtractor<T extends
InvocableStreamPipesE
public List<EventProperty> getEventPropertiesByScope(PropertyScope scope) {
List<EventProperty> properties = new ArrayList<>();
for (SpDataStream stream : sepaElement.getInputStreams()) {
- properties.addAll(getEventPropertiesByScope(scope,
sepaElement.getInputStreams().indexOf(stream)));
+ properties.addAll(getEventPropertiesByScope(
+ scope,
+ sepaElement.getInputStreams()
+ .indexOf(stream)
+ ));
}
return properties;
}
@@ -567,7 +667,8 @@ public abstract class AbstractParameterExtractor<T extends
InvocableStreamPipesE
.getEventProperties()
.stream()
.filter(ep ->
- ep.getPropertyScope() != null &&
ep.getPropertyScope().equals(scope.name()))
+ ep.getPropertyScope() != null && ep.getPropertyScope()
+ .equals(scope.name()))
.collect(Collectors.toList());
}
}