X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=model%2Fyang-model-spi%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fyangtools%2Fyang%2Fmodel%2Fspi%2Fmeta%2FEffectiveStatementMixins.java;h=0d8cbf53067ac3b86f177554d59f5f2b3875c3dd;hb=2f876c1b23616d34913171225872ef7488da2f1b;hp=b0b0e6780b143a8070afd6d665384c0a4fa85561;hpb=cf004535a88be1b4b28ed50e0901e6d52f3a2101;p=yangtools.git diff --git a/model/yang-model-spi/src/main/java/org/opendaylight/yangtools/yang/model/spi/meta/EffectiveStatementMixins.java b/model/yang-model-spi/src/main/java/org/opendaylight/yangtools/yang/model/spi/meta/EffectiveStatementMixins.java index b0b0e6780b..0d8cbf5306 100644 --- a/model/yang-model-spi/src/main/java/org/opendaylight/yangtools/yang/model/spi/meta/EffectiveStatementMixins.java +++ b/model/yang-model-spi/src/main/java/org/opendaylight/yangtools/yang/model/spi/meta/EffectiveStatementMixins.java @@ -43,6 +43,7 @@ import org.opendaylight.yangtools.yang.model.api.SchemaNode; import org.opendaylight.yangtools.yang.model.api.Status; import org.opendaylight.yangtools.yang.model.api.TypeDefinition; import org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode; +import org.opendaylight.yangtools.yang.model.api.UserOrderedAware; import org.opendaylight.yangtools.yang.model.api.UsesNode; import org.opendaylight.yangtools.yang.model.api.WhenConditionAware; import org.opendaylight.yangtools.yang.model.api.meta.DeclaredStatement; @@ -51,6 +52,7 @@ import org.opendaylight.yangtools.yang.model.api.stmt.DescriptionEffectiveStatem import org.opendaylight.yangtools.yang.model.api.stmt.ErrorAppTagEffectiveStatement; import org.opendaylight.yangtools.yang.model.api.stmt.ErrorMessageEffectiveStatement; import org.opendaylight.yangtools.yang.model.api.stmt.InputEffectiveStatement; +import org.opendaylight.yangtools.yang.model.api.stmt.OrderedByAwareEffectiveStatement; import org.opendaylight.yangtools.yang.model.api.stmt.OutputEffectiveStatement; import org.opendaylight.yangtools.yang.model.api.stmt.ReferenceEffectiveStatement; import org.opendaylight.yangtools.yang.model.api.stmt.TypedefEffectiveStatement; @@ -336,9 +338,15 @@ public final class EffectiveStatementMixins { * * @param Argument type ({@link Empty} if statement does not have argument.) * @param Class representing declared version of this statement. + * @param Class representing effective version of this statement. */ - public interface UserOrderedMixin> extends EffectiveStatementWithFlags { - default boolean userOrdered() { + // FIXME: 9.0.0: remove this mixin once we have a properly-cached DataTree and JSON/XML codec tree and the speed + // of isUserOrdered() is not really critical. + public interface UserOrderedAwareMixin, + E extends OrderedByAwareEffectiveStatement> + extends EffectiveStatementWithFlags, UserOrderedAware { + @Override + default boolean isUserOrdered() { return (flags() & FlagsBuilder.USER_ORDERED) != 0; } }