Browse Source

add ignoreStringNull

pull/7246/head
Yuriy Lytvynchuk 4 years ago
parent
commit
13130ff257
  1. 2
      rule-engine/rule-engine-components/src/main/java/org/thingsboard/rule/engine/metadata/TbGetOriginatorFieldsConfiguration.java
  2. 4
      rule-engine/rule-engine-components/src/main/java/org/thingsboard/rule/engine/metadata/TbGetOriginatorFieldsNode.java

2
rule-engine/rule-engine-components/src/main/java/org/thingsboard/rule/engine/metadata/TbGetOriginatorFieldsConfiguration.java

@ -25,6 +25,7 @@ import java.util.Map;
public class TbGetOriginatorFieldsConfiguration implements NodeConfiguration<TbGetOriginatorFieldsConfiguration> { public class TbGetOriginatorFieldsConfiguration implements NodeConfiguration<TbGetOriginatorFieldsConfiguration> {
private Map<String, String> fieldsMapping; private Map<String, String> fieldsMapping;
private boolean ignoreStringNull;
@Override @Override
public TbGetOriginatorFieldsConfiguration defaultConfiguration() { public TbGetOriginatorFieldsConfiguration defaultConfiguration() {
@ -33,6 +34,7 @@ public class TbGetOriginatorFieldsConfiguration implements NodeConfiguration<TbG
fieldsMapping.put("name", "originatorName"); fieldsMapping.put("name", "originatorName");
fieldsMapping.put("type", "originatorType"); fieldsMapping.put("type", "originatorType");
configuration.setFieldsMapping(fieldsMapping); configuration.setFieldsMapping(fieldsMapping);
configuration.setIgnoreStringNull(false);
return configuration; return configuration;
} }
} }

4
rule-engine/rule-engine-components/src/main/java/org/thingsboard/rule/engine/metadata/TbGetOriginatorFieldsNode.java

@ -46,10 +46,12 @@ import static org.thingsboard.common.util.DonAsynchron.withCallback;
public class TbGetOriginatorFieldsNode implements TbNode { public class TbGetOriginatorFieldsNode implements TbNode {
private TbGetOriginatorFieldsConfiguration config; private TbGetOriginatorFieldsConfiguration config;
private boolean ignoreStringNull;
@Override @Override
public void init(TbContext ctx, TbNodeConfiguration configuration) throws TbNodeException { public void init(TbContext ctx, TbNodeConfiguration configuration) throws TbNodeException {
config = TbNodeUtils.convert(configuration, TbGetOriginatorFieldsConfiguration.class); config = TbNodeUtils.convert(configuration, TbGetOriginatorFieldsConfiguration.class);
ignoreStringNull = config.isIgnoreStringNull();
} }
@Override @Override
@ -70,7 +72,7 @@ public class TbGetOriginatorFieldsNode implements TbNode {
data -> { data -> {
config.getFieldsMapping().forEach((field, metaKey) -> { config.getFieldsMapping().forEach((field, metaKey) -> {
String val = data.getFieldValue(field); String val = data.getFieldValue(field);
if (val != null && !val.equals("null")) { if (val != null && (!val.equals("null") || !ignoreStringNull)) {
msg.getMetaData().putValue(metaKey, val); msg.getMetaData().putValue(metaKey, val);
} }
}); });

Loading…
Cancel
Save