Browse Source

add checkEntityType for init node

pull/7598/head
Yuriy Lytvynchuk 4 years ago
parent
commit
1564ba76f1
  1. 1
      rule-engine/rule-engine-components/src/main/java/org/thingsboard/rule/engine/transform/TbChangeOriginatorNode.java
  2. 15
      rule-engine/rule-engine-components/src/main/java/org/thingsboard/rule/engine/util/EntitiesByNameAndTypeLoader.java

1
rule-engine/rule-engine-components/src/main/java/org/thingsboard/rule/engine/transform/TbChangeOriginatorNode.java

@ -127,6 +127,7 @@ public class TbChangeOriginatorNode extends TbAbstractTransformNode {
log.error("EntityNamePattern not specified for type [{}]", conf.getEntityType());
throw new IllegalArgumentException("Wrong config for [{}] in TbChangeOriginatorNode!" + ENTITY_SOURCE);
}
EntitiesByNameAndTypeLoader.checkEntityType(EntityType.valueOf(conf.getEntityType()));
}
}

15
rule-engine/rule-engine-components/src/main/java/org/thingsboard/rule/engine/util/EntitiesByNameAndTypeLoader.java

@ -20,8 +20,17 @@ import org.thingsboard.server.common.data.EntityType;
import org.thingsboard.server.common.data.SearchTextBasedWithAdditionalInfo;
import org.thingsboard.server.common.data.id.EntityId;
import java.util.List;
public class EntitiesByNameAndTypeLoader {
private static final List<EntityType> AVAILABLE_ENTITY_TYPES = List.of(
EntityType.DEVICE,
EntityType.ASSET,
EntityType.ENTITY_VIEW,
EntityType.EDGE,
EntityType.USER);
public static EntityId findEntityId(TbContext ctx, EntityType entityType, String entityName) {
SearchTextBasedWithAdditionalInfo<? extends EntityId> targetEntity;
switch (entityType) {
@ -49,4 +58,10 @@ public class EntitiesByNameAndTypeLoader {
return targetEntity.getId();
}
public static void checkEntityType(EntityType entityType) {
if (!AVAILABLE_ENTITY_TYPES.contains(entityType)) {
throw new IllegalStateException("Unexpected entity type " + entityType.name());
}
}
}

Loading…
Cancel
Save