X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=yang%2Fyang-parser-impl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fyangtools%2Fyang%2Fparser%2Fstmt%2Frfc6020%2Feffective%2FUsesEffectiveStatementImpl.java;h=421c11153c541bb3a08ef0f3f296ab8eb0d28988;hb=e99bf7da4cf4f715e6d899a8c41a8df2853e3055;hp=f506bd091ccd0f24999f3c8e747f40024c276efe;hpb=5f4fc14e4e2be49a7aab7e60fb155f717ef49484;p=yangtools.git diff --git a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/effective/UsesEffectiveStatementImpl.java b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/effective/UsesEffectiveStatementImpl.java index f506bd091c..421c11153c 100644 --- a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/effective/UsesEffectiveStatementImpl.java +++ b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/effective/UsesEffectiveStatementImpl.java @@ -1,4 +1,4 @@ -/** +/* * Copyright (c) 2015 Cisco Systems, Inc. and others. All rights reserved. * * This program and the accompanying materials are made available under the @@ -33,34 +33,35 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext; import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext.TypeOfCopy; import org.opendaylight.yangtools.yang.parser.stmt.rfc6020.Utils; -public class UsesEffectiveStatementImpl extends EffectiveStatementBase implements UsesNode { - private SchemaPath groupingPath; - private boolean addedByUses; - private ImmutableMap refines; - private ImmutableSet augmentations; - private ImmutableList unknownNodes; +public final class UsesEffectiveStatementImpl extends EffectiveStatementBase implements UsesNode { + private final SchemaPath groupingPath; + private final boolean addedByUses; + private final Map refines; + private final Set augmentations; + private final List unknownNodes; - public UsesEffectiveStatementImpl(final StmtContext> ctx) { + public UsesEffectiveStatementImpl( + final StmtContext> ctx) { super(ctx); - initGroupingPath(ctx); - initCopyType(ctx); - initSubstatementCollections(); - } - - private void initGroupingPath(final StmtContext> ctx) { + // initGroupingPath StmtContext> grpCtx = ctx.getFromNamespace( GroupingNamespace.class, ctx.getStatementArgument()); this.groupingPath = Utils.getSchemaPath(grpCtx); - } - private void initSubstatementCollections() { - Collection> effectiveSubstatements = effectiveSubstatements(); + // initCopyType + List copyTypesFromOriginal = ctx.getCopyHistory(); + if (copyTypesFromOriginal.contains(TypeOfCopy.ADDED_BY_USES)) { + addedByUses = true; + } else { + addedByUses = false; + } + // initSubstatementCollections + Collection> effectiveSubstatements = effectiveSubstatements(); List unknownNodesInit = new LinkedList<>(); Set augmentationsInit = new HashSet<>(); Map refinesInit = new HashMap<>(); - for (EffectiveStatement effectiveStatement : effectiveSubstatements) { if (effectiveStatement instanceof UnknownSchemaNode) { UnknownSchemaNode unknownNode = (UnknownSchemaNode) effectiveStatement; @@ -76,21 +77,11 @@ public class UsesEffectiveStatementImpl extends EffectiveStatementBase> ctx) { - - List copyTypesFromOriginal = ctx.getCopyHistory(); - if(copyTypesFromOriginal.contains(TypeOfCopy.ADDED_BY_USES)) { - addedByUses = true; - } - } - @Override public SchemaPath getGroupingPath() { return groupingPath; @@ -111,10 +102,6 @@ public class UsesEffectiveStatementImpl extends EffectiveStatementBase getRefines() { return refines;