refactor code

This commit is contained in:
Yuriy Lytvynchuk 2022-09-16 10:12:08 +03:00
parent 369af93e51
commit 189c1afb01

View File

@ -91,16 +91,14 @@ public class TbGetTelemetryNode implements TbNode {
orderByFetchAll = ASC_ORDER;
}
aggregation = parseAggregationConfig(config.getAggregation());
if (!fetchMode.equals(FETCH_MODE_ALL)) {
aggregation = Aggregation.NONE;
}
mapper = new ObjectMapper();
mapper.configure(JsonWriteFeature.QUOTE_FIELD_NAMES.mappedFeature(), false);
mapper.configure(JsonParser.Feature.ALLOW_UNQUOTED_FIELD_NAMES, true);
}
Aggregation parseAggregationConfig(String aggName) {
if (StringUtils.isEmpty(aggName)) {
if (StringUtils.isEmpty(aggName) || !fetchMode.equals(FETCH_MODE_ALL)) {
return Aggregation.NONE;
}
return Aggregation.valueOf(aggName);
@ -113,7 +111,7 @@ public class TbGetTelemetryNode implements TbNode {
} else {
try {
if (config.isUseMetadataIntervalPatterns()) {
checkMetadataKeyPatterns(msg);
checkKeyPatterns(msg);
}
List<String> keys = TbNodeUtils.processPatterns(tsKeyNames, msg);
ListenableFuture<List<TsKvEntry>> list = ctx.getTimeseriesService().findAll(ctx.getTenantId(), msg.getOriginator(), buildQueries(msg, keys));
@ -232,23 +230,23 @@ public class TbGetTelemetryNode implements TbNode {
return NumberUtils.isParsable(TbNodeUtils.processPattern(pattern, msg));
}
private void checkMetadataKeyPatterns(TbMsg msg) {
private void checkKeyPatterns(TbMsg msg) {
isUndefined(msg, config.getStartIntervalPattern(), config.getEndIntervalPattern());
isInvalid(msg, config.getStartIntervalPattern(), config.getEndIntervalPattern());
}
private void isUndefined(TbMsg msg, String startIntervalPattern, String endIntervalPattern) {
if (getValuePattern(msg, startIntervalPattern) == null && getValuePattern(msg, endIntervalPattern) == null) {
throw new IllegalArgumentException("Message metadata values: '" +
throw new IllegalArgumentException("Message values: '" +
replaceRegex(startIntervalPattern) + "' and '" +
replaceRegex(endIntervalPattern) + "' are undefined");
} else {
if (getValuePattern(msg, startIntervalPattern) == null) {
throw new IllegalArgumentException("Message metadata value: '" +
throw new IllegalArgumentException("Message value: '" +
replaceRegex(startIntervalPattern) + "' is undefined");
}
if (getValuePattern(msg, endIntervalPattern) == null) {
throw new IllegalArgumentException("Message metadata value: '" +
throw new IllegalArgumentException("Message value: '" +
replaceRegex(endIntervalPattern) + "' is undefined");
}
}
@ -256,16 +254,16 @@ public class TbGetTelemetryNode implements TbNode {
private void isInvalid(TbMsg msg, String startIntervalPattern, String endIntervalPattern) {
if (getInterval(msg).getStartTs() == null && getInterval(msg).getEndTs() == null) {
throw new IllegalArgumentException("Message metadata values: '" +
throw new IllegalArgumentException("Message values: '" +
replaceRegex(startIntervalPattern) + "' and '" +
replaceRegex(endIntervalPattern) + "' have invalid format");
} else {
if (getInterval(msg).getStartTs() == null) {
throw new IllegalArgumentException("Message metadata value: '" +
throw new IllegalArgumentException("Message value: '" +
replaceRegex(startIntervalPattern) + "' has invalid format");
}
if (getInterval(msg).getEndTs() == null) {
throw new IllegalArgumentException("Message metadata value: '" +
throw new IllegalArgumentException("Message value: '" +
replaceRegex(endIntervalPattern) + "' has invalid format");
}
}