BUG-6972: eliminate StmtContext.getOrder() 63/60063/3
authorRobert Varga <robert.varga@pantheon.tech>
Fri, 7 Jul 2017 08:41:13 +0000 (10:41 +0200)
committerRobert Varga <nite@hq.sk>
Mon, 10 Jul 2017 07:49:18 +0000 (07:49 +0000)
This is not really used, so try to eliminate it, saving a couple
of bytes in StatementContextBase.

Change-Id: If9a5126c9110f50324bb94b7fecdb3845874b763
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/spi/meta/StmtContext.java
yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/reactor/StatementContextBase.java
yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/AugmentStatementImpl.java
yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/effective/AugmentEffectiveStatementImpl.java

index 8b79e61e01f05e4768470c568caeeb5c0ff05ca2..ac2d6a914d671982c3b48136b41236cd248b67ae 100644 (file)
@@ -137,8 +137,6 @@ public interface StmtContext<A, D extends DeclaredStatement<A>, E extends Effect
 
     Optional<StmtContext<?, ?, ?>> getOriginalCtx();
 
-    int getOrder();
-
     ModelProcessingPhase getCompletedPhase();
 
     /**
@@ -231,8 +229,6 @@ public interface StmtContext<A, D extends DeclaredStatement<A>, E extends Effect
 
         void setIsSupportedToBuildEffective(boolean isSupportedToBuild);
 
-        void setOrder(int order);
-
         // FIXME: this seems to be unused, but looks useful.
         void setCompletedPhase(ModelProcessingPhase completedPhase);
     }
index 59982028024cac000cb768b4a320bbe6d35f741b..527e27f8959681c6fcbca7ece8dab5bd2f8270f0 100644 (file)
@@ -96,7 +96,6 @@ public abstract class StatementContextBase<A, D extends DeclaredStatement<A>, E
     private ModelProcessingPhase completedPhase = null;
     private D declaredInstance;
     private E effectiveInstance;
-    private int order = 0;
 
     // BooleanFields value
     private byte supportedByFeatures;
@@ -183,16 +182,6 @@ public abstract class StatementContextBase<A, D extends DeclaredStatement<A>, E
         return Optional.ofNullable(originalCtx);
     }
 
-    @Override
-    public void setOrder(final int order) {
-        this.order = order;
-    }
-
-    @Override
-    public int getOrder() {
-        return order;
-    }
-
     @Override
     public ModelProcessingPhase getCompletedPhase() {
         return completedPhase;
index 6a8af5057b578facc656401cbcbe1d12452aeedf..bf01b2cb9e7d57d55d21e57df482c446a1bcc7f7 100644 (file)
@@ -163,7 +163,6 @@ public class AugmentStatementImpl extends AbstractDeclaredStatement<SchemaNodeId
                         currentOrder++;
                     }
 
-                    augmentSourceCtx.setOrder(currentOrder);
                     augmentSourceCtx.addToNs(StmtOrderingNamespace.class, YangStmtMapping.AUGMENT, currentOrder);
                 }
 
index 18c64e9e16756b751499bafbcbea5a531ba2a939..9b9401189b896ad7833b965709b69642ff550958 100644 (file)
@@ -7,19 +7,15 @@
  */
 package org.opendaylight.yangtools.yang.parser.stmt.rfc6020.effective;
 
-import static com.google.common.base.Preconditions.checkNotNull;
-
 import com.google.common.base.Optional;
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableSet;
 import java.net.URI;
 import java.util.Date;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Objects;
 import java.util.Set;
 import javax.annotation.Nonnull;
-import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.QNameModule;
 import org.opendaylight.yangtools.yang.model.api.ActionDefinition;
 import org.opendaylight.yangtools.yang.model.api.AugmentationSchema;
@@ -36,11 +32,10 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContextUtils;
 
 public final class AugmentEffectiveStatementImpl extends
         AbstractEffectiveDocumentedDataNodeContainer<SchemaNodeIdentifier, AugmentStatement> implements
-        AugmentationSchema, NamespaceRevisionAware, Comparable<AugmentEffectiveStatementImpl> {
+        AugmentationSchema, NamespaceRevisionAware {
     private final SchemaPath targetPath;
     private final URI namespace;
     private final Date revision;
-    private final int order;
     private final Set<ActionDefinition> actions;
     private final Set<NotificationDefinition> notifications;
     private final List<UnknownSchemaNode> unknownNodes;
@@ -57,7 +52,6 @@ public final class AugmentEffectiveStatementImpl extends
         this.namespace = rootModuleQName.getNamespace();
         this.revision = rootModuleQName.getRevision();
 
-        this.order = ctx.getOrder();
         this.copyOf = (AugmentationSchema) ctx.getOriginalCtx().map(StmtContext::buildEffective).orElse(null);
 
         final WhenEffectiveStatementImpl whenStmt = firstEffective(WhenEffectiveStatementImpl.class);
@@ -162,25 +156,4 @@ public final class AugmentEffectiveStatementImpl extends
         return AugmentEffectiveStatementImpl.class.getSimpleName() + "[" + "targetPath=" + targetPath + ", when="
                 + whenCondition + "]";
     }
-
-    @Override
-    public int compareTo(@Nonnull final AugmentEffectiveStatementImpl o) {
-        checkNotNull(o);
-        final Iterator<QName> thisIt = this.targetPath.getPathFromRoot().iterator();
-        final Iterator<QName> otherIt = o.getTargetPath().getPathFromRoot().iterator();
-        while (thisIt.hasNext()) {
-            if (otherIt.hasNext()) {
-                final int comp = thisIt.next().compareTo(otherIt.next());
-                if (comp != 0) {
-                    return comp;
-                }
-            } else {
-                return 1;
-            }
-        }
-        if (otherIt.hasNext()) {
-            return -1;
-        }
-        return this.order - o.order;
-    }
 }