
com.nhl.link.move.runtime.json.query.DynamicNamedProperty Maven / Gradle / Ivy
package com.nhl.link.move.runtime.json.query;
import com.fasterxml.jackson.databind.JsonNode;
import java.util.Collections;
import java.util.List;
class DynamicNamedProperty extends BaseQuery {
private JsonQuery valueQuery, clientQuery;
DynamicNamedProperty(JsonQuery valueQuery, JsonQuery clientQuery) {
this.valueQuery = valueQuery;
this.clientQuery = clientQuery;
}
@Override
public List doExecute(JsonNode rootNode, JsonNodeWrapper currentNode) {
JsonNode propertyNameNode = Utils.unwrapValueNode(valueQuery.execute(rootNode, currentNode));
if (propertyNameNode == null) {
return Collections.emptyList();
}
JsonQuery delegate = new NamedProperty(clientQuery, propertyNameNode.asText());
return delegate.execute(rootNode, currentNode);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy