This removes custom-coded lookup in favor of the common utility
method.
Change-Id: Ib2524b9bc8ef0a650dd1b78d694c250dffaae893
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
private Optional<ActionDefinition> findOrigAction(final DataNodeContainer parent, final ActionDefinition action) {
for (UsesNode uses : parent.getUses()) {
final GroupingDefinition grp = findUsedGrouping(uses);
- final Optional<ActionDefinition> found = grp.getActions().stream()
- .filter(act -> action.getQName().equals(act.getQName())).findFirst();
+ final Optional<ActionDefinition> found = grp.findAction(action.getQName());
if (found.isPresent()) {
final ActionDefinition result = found.get();
return result.isAddedByUses() ? findOrigAction(grp, result) : found;
private static ActionDefinition findActionDefinition(final SchemaContext context, final SchemaPath path) {
final SchemaNode node = SchemaContextUtil.findDataSchemaNode(context, path.getParent());
if (node instanceof ActionNodeContainer) {
- for (ActionDefinition action : ((ActionNodeContainer) node).getActions()) {
- if (action.getQName().equals(path.getLastComponent())) {
- return action;
- }
- }
+ return ((ActionNodeContainer) node).findAction(path.getLastComponent()).orElse(null);
}
return null;
}