Refactor yang-model-api child traversal return types 77/86877/21
authorRobert Varga <robert.varga@pantheon.tech>
Tue, 14 Jan 2020 11:35:51 +0000 (12:35 +0100)
committerRobert Varga <robert.varga@pantheon.tech>
Thu, 16 Jan 2020 13:28:49 +0000 (14:28 +0100)
Rather than using List<X>/Set<X> we use Collection<? extends X>.
We really want to say 'iterable', but Collection is close enough
and it's slightly more useful.

This allows us to use more efficient facades when coming from
EffectiveStatement world, i.e. filters can use Collections2.filter()
to evaluate substatements lazily.

We also codify proper covariance, which strenghtens the read-only
nature of the returned type.

JIRA: YANGTOOLS-1068
Change-Id: I80be306916dff0575fb4b6824951827e540e482e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
196 files changed:
yang/odlext-parser-support/src/main/java/org/opendaylight/yangtools/odlext/parser/YangModeledAnyxmlEffectiveStatementImpl.java
yang/odlext-parser-support/src/test/java/org/opendaylight/yangtools/odlext/parser/Bug3874ExtensionTest.java
yang/rfc6241-parser-support/src/test/java/org/opendaylight/yangtools/rfc6241/parser/NetconfTest.java
yang/rfc8040-parser-support/src/test/java/org/opendaylight/yangtools/rfc8040/parser/YangDataExtensionTest.java
yang/rfc8528-data-util/src/main/java/org/opendaylight/yangtools/rcf8528/data/util/AbstractMountPointContextFactory.java
yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/xpath/PrefixConverters.java
yang/yang-data-codec-gson/src/main/java/org/opendaylight/yangtools/yang/data/codec/gson/IdentityrefJSONCodec.java
yang/yang-data-codec-gson/src/main/java/org/opendaylight/yangtools/yang/data/codec/gson/JSONInstanceIdentifierCodec.java
yang/yang-data-codec-gson/src/main/java/org/opendaylight/yangtools/yang/data/codec/gson/JsonParserStream.java
yang/yang-data-codec-xml/src/main/java/org/opendaylight/yangtools/yang/data/codec/xml/IdentityrefXmlCodec.java
yang/yang-data-codec-xml/src/main/java/org/opendaylight/yangtools/yang/data/codec/xml/XmlParserStream.java
yang/yang-data-codec-xml/src/main/java/org/opendaylight/yangtools/yang/data/codec/xml/XmlStringInstanceIdentifierCodec.java
yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/leafref/LeafRefContextTreeBuilder.java
yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/SchemaUtils.java
yang/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/context/DataTreeCandidateValidatorTest.java
yang/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/context/DataTreeCandidateValidatorTest2.java
yang/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/context/DataTreeCandidateValidatorTest3.java
yang/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/context/LeafRefContextTest.java
yang/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/context/LeafRefContextTreeBuilderTest.java
yang/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/ContainerSchemaNodes.java
yang/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/ModuleStringIdentityrefCodec.java
yang/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/OperationAsContainer.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/ActionNodeContainer.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/AugmentationTarget.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/ChoiceSchemaNode.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/DataNodeContainer.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/DeviateDefinition.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/Deviation.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/DocumentedNode.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/IdentitySchemaNode.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/ListSchemaNode.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/Module.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/MustConstraintAware.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/NamespaceRevisionAware.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/NotificationNodeContainer.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/OperationDefinition.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/SchemaContext.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/SchemaPath.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/UsesNode.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/BitsTypeDefinition.java
yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/type/IdentityrefTypeDefinition.java
yang/yang-model-export/src/test/java/org/opendaylight/yangtools/yang/model/export/AbstractYinExportTest.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/AbstractSchemaContext.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/EffectiveAugmentationSchema.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/FilteringSchemaContextProxy.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/ModuleDependencySort.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/SchemaContextUtil.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/SchemaNodeUtils.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/SimpleSchemaContext.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/AbstractBaseType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/AbstractDerivedType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/AbstractLengthRestrictedDerivedType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/AbstractLengthRestrictedType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/AbstractRangeRestrictedBaseType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/AbstractRangeRestrictedDerivedType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/AbstractRangeRestrictedType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/AbstractRestrictedType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/AbstractTypeDefinition.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseBitsType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseDecimalType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseEnumerationType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseIdentityrefType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseLeafrefType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BaseUnionType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/BitImpl.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/DerivedBinaryType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/DerivedBitsType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/DerivedBooleanType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/DerivedDecimalType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/DerivedEmptyType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/DerivedEnumerationType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/DerivedIdentityrefType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/DerivedInstanceIdentifierType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/DerivedInt16Type.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/DerivedInt32Type.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/DerivedInt64Type.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/DerivedInt8Type.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/DerivedLeafrefType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/DerivedStringType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/DerivedUint16Type.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/DerivedUint32Type.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/DerivedUint64Type.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/DerivedUint8Type.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/DerivedUnionType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/EnumPairBuilder.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/EnumPairImpl.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/RestrictedBinaryType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/RestrictedBitsType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/RestrictedBooleanType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/RestrictedDecimalType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/RestrictedEmptyType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/RestrictedEnumerationType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/RestrictedIdentityrefType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/RestrictedInstanceIdentifierType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/RestrictedInt16Type.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/RestrictedInt32Type.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/RestrictedInt64Type.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/RestrictedInt8Type.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/RestrictedLeafrefType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/RestrictedStringType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/RestrictedUint16Type.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/RestrictedUint32Type.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/RestrictedUint64Type.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/RestrictedUint8Type.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/RestrictedUnionType.java
yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/type/TypeBuilder.java
yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/SchemaContextProxyTest.java
yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/SimpleSchemaContextTest.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/AbstractEffectiveDocumentedDataNodeContainer.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/AbstractEffectiveDocumentedNode.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/AbstractEffectiveModule.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/AbstractEffectiveMustConstraintAwareDataSchemaNode.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/AbstractEffectiveOperationContainerSchemaNode.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/AbstractEffectiveSimpleDataNodeContainer.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/EffectiveStatementMixins.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/choice/ChoiceEffectiveStatementImpl.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/identity/IdentityEffectiveStatementImpl.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/notification/NotificationEffectiveStatementImpl.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/uses/UsesEffectiveStatementImpl.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/ActionStatementTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6869Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6871Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6887Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6897Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/IdentityStatementTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/IdentityrefStatementTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/LeafrefStatementTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/AugmentTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/AugmentToExtensionTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug1412Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug1413Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug3799Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug394Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug4456Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug4623Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug4933Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug5518Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug5884Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug5942Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug5946Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug6180Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug6240Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug6316Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug6410Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug6491Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug7037Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug7440Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug7480Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug7865Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug8597Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug9005Test.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/ControllerStmtParserTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/DeclaredStatementsTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/DeviationStmtTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/EffectiveBuildTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/EffectiveIdentityTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/EffectiveModuleTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/EffectiveModulesAndSubmodulesTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/EffectiveSchemaContextTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/EffectiveStatementTypeTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/EffectiveUsesRefineAndConstraintsTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/ExtensionStmtTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/GroupingAndUsesStmtTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/GroupingTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/IdentityStmtTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/IncludedStmtsTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/MoreRevisionsTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/MustAndWhenStmtTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/NotificationStmtTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/OrderingTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/RpcStmtTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/StmtTestUtils.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/SubstatementValidatorTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/TestUtils.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/TwoRevisionsTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/TypedefConstraintsTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/TypedefSubStmtsTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/TypesResolutionTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/UsesAugmentTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/YangParserIdentityTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/YangParserSimpleTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/YangParserTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/YangParserWithContextTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/openconfigver/OpenconfigVersionMultipleImportTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/yin/YinFileAugmentStmtTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/yin/YinFileExtensionStmtTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/yin/YinFileFeatureStmtTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/yin/YinFileGroupingStmtTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/yin/YinFileIdentityStmtTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/yin/YinFileImportStmtTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/yin/YinFileIncludeStmtTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/yin/YinFileListStmtTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/yin/YinFileRpcStmtTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/yin/YinFileTypeDefStmtTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/yin/YinFileUsesStmtTest.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/thirdparty/plugin/ThirdPartyExtensionPluginTest.java

index fbb678c55751c3a42f7b275dcd244e1fd7975bbc..63940206deb9e0da93e465382a1f077dd9fdc8ed 100644 (file)
@@ -10,7 +10,6 @@ package org.opendaylight.yangtools.odlext.parser;
 import static java.util.Objects.requireNonNull;
 
 import java.util.Collection;
-import java.util.List;
 import java.util.Objects;
 import java.util.Optional;
 import org.eclipse.jdt.annotation.NonNull;
@@ -106,12 +105,12 @@ final class YangModeledAnyxmlEffectiveStatementImpl
     }
 
     @Override
-    public Collection<MustDefinition> getMustConstraints() {
+    public Collection<? extends MustDefinition> getMustConstraints() {
         return delegateSchemaNode().getMustConstraints();
     }
 
     @Override
-    public List<UnknownSchemaNode> getUnknownSchemaNodes() {
+    public Collection<? extends UnknownSchemaNode> getUnknownSchemaNodes() {
         return delegateSchemaNode().getUnknownSchemaNodes();
     }
 
index f0b309d822aa77c1041737c6b614ce14e4c72f10..8d17cbeff2b169c28bdd3138391c9b8f718287b2 100644 (file)
@@ -11,7 +11,7 @@ import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 
 import java.net.URI;
-import java.util.List;
+import java.util.Collection;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.Test;
@@ -72,7 +72,7 @@ public class Bug3874ExtensionTest {
         assertTrue(myContainer2 instanceof ContainerSchemaNode);
         assertEquals(myContainer2, yangModeledAnyXml.getSchemaOfAnyXmlData());
 
-        List<UnknownSchemaNode> unknownSchemaNodes = yangModeledAnyXml.getUnknownSchemaNodes();
+        Collection<? extends UnknownSchemaNode> unknownSchemaNodes = yangModeledAnyXml.getUnknownSchemaNodes();
         assertEquals(1, unknownSchemaNodes.size());
 
         UnknownSchemaNode next = unknownSchemaNodes.iterator().next();
index 9af969f7a1702559986dc2cbd4313a6281f8eb21..d2b61e400ac62badddc9e56c362f50593d8ff5e9 100644 (file)
@@ -63,7 +63,7 @@ public class NetconfTest {
                 .buildEffective();
 
         final Module module = context.findModule(NetconfConstants.RFC6241_MODULE).get();
-        final Iterator<RpcDefinition> it = module.getRpcs().iterator();
+        final Iterator<? extends RpcDefinition> it = module.getRpcs().iterator();
         assertExtension(false, it.next());
         assertExtension(false, it.next());
         assertExtension(true, it.next());
index 934e442b981d8aaa191ac16c32565c5012efc6d0..c730f1392d2fd3921c803fa10f610cc41352eaed 100644 (file)
@@ -16,8 +16,7 @@ import static org.junit.Assert.fail;
 import com.google.common.collect.ImmutableSet;
 import java.io.IOException;
 import java.net.URI;
-import java.util.List;
-import java.util.Set;
+import java.util.Collection;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.Test;
@@ -85,11 +84,11 @@ public class YangDataExtensionTest {
                 .buildEffective();
         assertNotNull(schemaContext);
 
-        final Set<ExtensionDefinition> extensions = schemaContext.getExtensions();
+        final Collection<? extends ExtensionDefinition> extensions = schemaContext.getExtensions();
         assertEquals(1, extensions.size());
 
         final Module foo = schemaContext.findModule(FOO_QNAMEMODULE).get();
-        final List<UnknownSchemaNode> unknownSchemaNodes = foo.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> unknownSchemaNodes = foo.getUnknownSchemaNodes();
         assertEquals(2, unknownSchemaNodes.size());
 
         YangDataSchemaNode myYangDataANode = null;
@@ -118,7 +117,7 @@ public class YangDataExtensionTest {
         assertNotNull(schemaContext);
 
         final Module baz = schemaContext.findModule("baz", REVISION).get();
-        final List<UnknownSchemaNode> unknownSchemaNodes = baz.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> unknownSchemaNodes = baz.getUnknownSchemaNodes();
         assertEquals(1, unknownSchemaNodes.size());
 
         final UnknownSchemaNode unknownSchemaNode = unknownSchemaNodes.iterator().next();
@@ -146,7 +145,7 @@ public class YangDataExtensionTest {
         assertNotNull(schemaContext);
 
         final Module foobar = schemaContext.findModule("foobar", REVISION).get();
-        final List<UnknownSchemaNode> unknownSchemaNodes = foobar.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> unknownSchemaNodes = foobar.getUnknownSchemaNodes();
         assertEquals(1, unknownSchemaNodes.size());
 
         final UnknownSchemaNode unknownSchemaNode = unknownSchemaNodes.iterator().next();
@@ -177,10 +176,10 @@ public class YangDataExtensionTest {
                 QName.create(bar.getQNameModule(), "cont")).get();
         assertNotNull(cont);
 
-        final Set<ExtensionDefinition> extensions = schemaContext.getExtensions();
+        final Collection<? extends ExtensionDefinition> extensions = schemaContext.getExtensions();
         assertEquals(1, extensions.size());
 
-        final List<UnknownSchemaNode> unknownSchemaNodes = cont.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> unknownSchemaNodes = cont.getUnknownSchemaNodes();
         assertEquals(0, unknownSchemaNodes.size());
     }
 
index 67c627c7d969e324167854c350febe90ae80f642..686e42e969203e040185d857e599cfe1e4b8857a 100644 (file)
@@ -119,7 +119,7 @@ public abstract class AbstractMountPointContextFactory extends AbstractDynamicMo
                 checkArgument(value instanceof String, "Unexpected module leaf value %s", value);
                 return (String) value;
             }).orElseThrow(() -> new IllegalArgumentException("Mount module missing in " + entry));
-            final Iterator<Module> it = schemaContext.findModules(moduleName).iterator();
+            final Iterator<? extends Module> it = schemaContext.findModules(moduleName).iterator();
             checkArgument(it.hasNext(), "Failed to find a module named %s", moduleName);
             final QNameModule module = it.next().getQNameModule();
 
index 6f8d15001c05e63876f0fe8b832584819c7f50d1..6ea82baf23a43f91371b98e3065030fe40f7b8cd 100644 (file)
@@ -51,7 +51,7 @@ public final class PrefixConverters {
         b.put(module.getPrefix(), module.getQNameModule());
 
         for (ModuleImport i : module.getImports()) {
-            final Optional<Module> mod = ctx.findModule(i.getModuleName(), i.getRevision());
+            final Optional<? extends Module> mod = ctx.findModule(i.getModuleName(), i.getRevision());
             checkArgument(mod.isPresent(), "Unsatisfied import of %s by module %s", i, module);
 
             b.put(i.getPrefix(), mod.get().getQNameModule());
index 6042a46dd16764554d857d983e685163745998ac..73f31de069ab3c55dbb94febd419276d7138eb3f 100644 (file)
@@ -42,7 +42,7 @@ final class IdentityrefJSONCodec implements JSONCodec<QName> {
                 return parentModule;
             }
 
-            final Iterator<Module> modules = schemaContext.findModules(prefix).iterator();
+            final Iterator<? extends Module> modules = schemaContext.findModules(prefix).iterator();
             checkArgument(modules.hasNext(), "Could not find module %s", prefix);
             return modules.next().getQNameModule();
         }).getQName();
index 4d54a8f55bf0e3ac78a9cc3f614f8d0fc6194a4b..79b830ccad4dd07cff37f85e25a71cc8bbe83b4c 100644 (file)
@@ -36,13 +36,13 @@ abstract class JSONInstanceIdentifierCodec extends AbstractModuleStringInstanceI
 
     @Override
     protected final Module moduleForPrefix(final String prefix) {
-        final Iterator<Module> modules = context.findModules(prefix).iterator();
+        final Iterator<? extends Module> modules = context.findModules(prefix).iterator();
         return modules.hasNext() ? modules.next() : null;
     }
 
     @Override
     protected final String prefixForNamespace(final URI namespace) {
-        final Iterator<Module> modules = context.findModules(namespace).iterator();
+        final Iterator<? extends Module> modules = context.findModules(namespace).iterator();
         return modules.hasNext() ? modules.next().getName() : null;
     }
 
index 9b7c48fe61afae3d59d2a440583ed77ace8f1a0b..ffbf84947acba7601c0aee0b233c282a09086002 100644 (file)
@@ -372,7 +372,7 @@ public final class JsonParserStream implements Closeable, Flushable {
             moduleNamePart = childName.substring(0, lastIndexOfColon);
             nodeNamePart = childName.substring(lastIndexOfColon + 1);
 
-            final Iterator<Module> m = codecs.getSchemaContext().findModules(moduleNamePart).iterator();
+            final Iterator<? extends Module> m = codecs.getSchemaContext().findModules(moduleNamePart).iterator();
             namespace = m.hasNext() ? m.next().getNamespace() : null;
         } else {
             nodeNamePart = childName;
index 87623bc9967ff4bfb2b6cf620309910bb7dc96e2..35bd104d2bf89e5bf508be483c724e633fac81e6 100644 (file)
@@ -45,7 +45,7 @@ final class IdentityrefXmlCodec implements XmlCodec<QName> {
             }
 
             final String prefixedNS = ctx.getNamespaceURI(prefix);
-            final Iterator<Module> modules = schemaContext.findModules(URI.create(prefixedNS)).iterator();
+            final Iterator<? extends Module> modules = schemaContext.findModules(URI.create(prefixedNS)).iterator();
             checkArgument(modules.hasNext(), "Could not find module for namespace %s", prefixedNS);
             return modules.next().getQNameModule();
         }).getQName();
index 53952b16943a58ba3ca3889adf1726da13bd83eb..9c9dcf422193aa9b12408f68576f0b796fba141c 100644 (file)
@@ -652,7 +652,7 @@ public final class XmlParserStream implements Closeable, Flushable {
 
     private Optional<QNameModule> resolveXmlNamespace(final String xmlNamespace) {
         return resolvedNamespaces.computeIfAbsent(xmlNamespace, nsUri -> {
-            final Iterator<Module> it = codecs.getSchemaContext().findModules(URI.create(nsUri)).iterator();
+            final Iterator<? extends Module> it = codecs.getSchemaContext().findModules(URI.create(nsUri)).iterator();
             return it.hasNext() ? Optional.of(it.next().getQNameModule()) : Optional.empty();
         });
     }
index dc3aa59543a516a0ab476a018431200eb59e961c..ce18ef220f543fcc74f6923e84cfc1e6dce0d96e 100644 (file)
@@ -44,13 +44,13 @@ final class XmlStringInstanceIdentifierCodec extends AbstractModuleStringInstanc
     @Override
     protected Module moduleForPrefix(final String prefix) {
         final String prefixedNS = getNamespaceContext().getNamespaceURI(prefix);
-        final Iterator<Module> modules = context.findModules(URI.create(prefixedNS)).iterator();
+        final Iterator<? extends Module> modules = context.findModules(URI.create(prefixedNS)).iterator();
         return modules.hasNext() ? modules.next() : null;
     }
 
     @Override
     protected String prefixForNamespace(final URI namespace) {
-        final Iterator<Module> modules = context.findModules(namespace).iterator();
+        final Iterator<? extends Module> modules = context.findModules(namespace).iterator();
         return modules.hasNext() ? modules.next().getName() : null;
     }
 
index 08fb284f6fd3738565d2a4d5f26042b5e8670d76..30739c0102e5b8da0c6fa18ce439fde1ea46a86f 100644 (file)
@@ -10,7 +10,6 @@ package org.opendaylight.yangtools.yang.data.impl.leafref;
 import java.util.Collection;
 import java.util.LinkedList;
 import java.util.List;
-import java.util.Set;
 import org.opendaylight.yangtools.yang.model.api.CaseSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.ChoiceSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.DataNodeContainer;
@@ -36,7 +35,7 @@ final class LeafRefContextTreeBuilder {
         final LeafRefContextBuilder rootBuilder = new LeafRefContextBuilder(schemaContext.getQName(),
             schemaContext.getPath(), schemaContext);
 
-        final Set<Module> modules = schemaContext.getModules();
+        final Collection<? extends Module> modules = schemaContext.getModules();
         for (final Module module : modules) {
             for (final DataSchemaNode childNode : module.getChildNodes()) {
                 final LeafRefContext childLeafRefContext = buildLeafRefContextReferencingTree(childNode, module);
@@ -47,8 +46,7 @@ final class LeafRefContextTreeBuilder {
         }
 
         for (final Module module : modules) {
-            final Collection<DataSchemaNode> childNodes = module.getChildNodes();
-            for (final DataSchemaNode childNode : childNodes) {
+            for (final DataSchemaNode childNode : module.getChildNodes()) {
                 final LeafRefContext childLeafRefContext = buildLeafRefContextReferencedByTree(childNode, module);
 
                 if (childLeafRefContext.hasReferencedChild() || childLeafRefContext.isReferenced()) {
index 7a514484e5f5ffa17ab637b92a0aa132f9d5bde5..d19daa74b5992eba9c41e7af3cc088277f144a1e 100644 (file)
@@ -54,7 +54,7 @@ public final class SchemaUtils {
      * @return schema node with newest revision or absent if no schema node with matching qname is found
      */
     public static Optional<DataSchemaNode> findFirstSchema(final QName qname,
-            final Iterable<DataSchemaNode> dataSchemaNode) {
+            final Iterable<? extends DataSchemaNode> dataSchemaNode) {
         DataSchemaNode schema = null;
         if (dataSchemaNode != null && qname != null) {
             for (final DataSchemaNode dsn : dataSchemaNode) {
@@ -110,7 +110,7 @@ public final class SchemaUtils {
     }
 
     public static DataSchemaNode findSchemaForChild(final DataNodeContainer schema, final QName qname,
-            final Iterable<DataSchemaNode> childNodes) {
+            final Iterable<? extends DataSchemaNode> childNodes) {
         final Optional<DataSchemaNode> childSchema = findFirstSchema(qname, childNodes);
         checkState(childSchema.isPresent(), "Unknown child(ren) node(s) detected, identified by: %s, in: %s", qname,
             schema);
@@ -175,7 +175,7 @@ public final class SchemaUtils {
     }
 
     private static Map<QName, ChoiceSchemaNode> mapChildElementsFromChoices(final DataNodeContainer schema,
-            final Iterable<DataSchemaNode> childNodes) {
+            final Iterable<? extends DataSchemaNode> childNodes) {
         final Map<QName, ChoiceSchemaNode> mappedChoices = new LinkedHashMap<>();
 
         for (final DataSchemaNode childSchema : childNodes) {
index b5327e16f99fa247e06367dad4b09b5b43b98a05..30adebb14ef49f87968d8ca1a320ab3f2b3c017f 100644 (file)
@@ -12,7 +12,6 @@ import static org.junit.Assert.assertTrue;
 
 import java.util.HashMap;
 import java.util.Map;
-import java.util.Set;
 import org.apache.log4j.BasicConfigurator;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
@@ -103,8 +102,7 @@ public class DataTreeCandidateValidatorTest {
     public static void init() throws DataValidationFailedException {
         context = YangParserTestUtils.parseYangResourceDirectory("/leafref-validation");
 
-        final Set<Module> modules = context.getModules();
-        for (final Module module : modules) {
+        for (final Module module : context.getModules()) {
             if (module.getName().equals("leafref-validation")) {
                 valModule = module;
             }
index 7ea56da58d7476eb3040bea20f3c4a78ec1c05cb..4244aa389e32704f7313d9ffb2d30ea95a12cfdf 100644 (file)
@@ -10,7 +10,6 @@ package org.opendaylight.yangtools.yang.data.impl.leafref.context;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 
-import java.util.Set;
 import org.apache.log4j.BasicConfigurator;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
@@ -82,8 +81,7 @@ public class DataTreeCandidateValidatorTest2 {
     public static void init() throws DataValidationFailedException {
         context = YangParserTestUtils.parseYangResourceDirectory("/leafref-validation");
 
-        final Set<Module> modules = context.getModules();
-        for (final Module module : modules) {
+        for (final Module module : context.getModules()) {
             if (module.getName().equals("leafref-validation2")) {
                 mainModule = module;
             }
index 0aa847c80c63b309e142fc78e02753e84939b0b8..6b8928df832101fb0269afe3f8c9ff68436747f0 100644 (file)
@@ -10,7 +10,6 @@ package org.opendaylight.yangtools.yang.data.impl.leafref.context;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 
-import java.util.Set;
 import org.apache.log4j.BasicConfigurator;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
@@ -85,8 +84,7 @@ public class DataTreeCandidateValidatorTest3 {
     public static void init() throws DataValidationFailedException {
         context = YangParserTestUtils.parseYangResourceDirectory("/leafref-validation");
 
-        final Set<Module> modules = context.getModules();
-        for (final Module module : modules) {
+        for (final Module module : context.getModules()) {
             if (module.getName().equals("leafref-validation3")) {
                 mainModule = module;
             }
index 77222012162f6b8f35285942e12cb6f140aa75b2..819d8df781d0715864feb3a54f50b4532f0ff377 100644 (file)
@@ -12,7 +12,6 @@ import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 
 import java.util.Map;
-import java.util.Set;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.Test;
@@ -35,8 +34,7 @@ public class LeafRefContextTest {
     public static void init() {
         context = YangParserTestUtils.parseYangResourceDirectory("/leafref-context-test/correct-modules");
 
-        final Set<Module> modules = context.getModules();
-        for (final Module module : modules) {
+        for (final Module module : context.getModules()) {
             if (module.getName().equals("leafref-test2")) {
                 rootMod = module;
             }
index 1ca9962e5896ec62207d3de38dc0c7e31e882337..4539ecd8f5c4a9973a1e0bb46c2c5a4c0806a424 100644 (file)
@@ -14,7 +14,6 @@ import static org.junit.Assert.assertNull;
 import static org.junit.Assert.assertTrue;
 
 import java.util.List;
-import java.util.Set;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.Ignore;
@@ -42,8 +41,7 @@ public class LeafRefContextTreeBuilderTest {
     public static void init() {
         context = YangParserTestUtils.parseYangResourceDirectory("/leafref-context-test/correct-modules");
 
-        final Set<Module> modules = context.getModules();
-        for (final Module module : modules) {
+        for (final Module module : context.getModules()) {
             if (module.getName().equals("leafref-test")) {
                 tstMod = module;
             }
index 588c81a5f807e77ff9de8e911f61b30f5b9dc240..79c02681673845742ce09d1aa25d328811b97cc0 100644 (file)
@@ -16,7 +16,6 @@ import com.google.common.collect.ImmutableSet;
 import com.google.common.collect.Maps;
 import java.util.Collection;
 import java.util.Optional;
-import java.util.Set;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.ActionDefinition;
 import org.opendaylight.yangtools.yang.model.api.AugmentationSchemaNode;
@@ -68,7 +67,7 @@ public final class ContainerSchemaNodes {
         }
 
         @Override
-        public Set<UsesNode> getUses() {
+        public Collection<? extends UsesNode> getUses() {
             return ImmutableSet.of();
         }
 
@@ -108,7 +107,7 @@ public final class ContainerSchemaNodes {
         }
 
         @Override
-        public Collection<MustDefinition> getMustConstraints() {
+        public Collection<? extends MustDefinition> getMustConstraints() {
             return ImmutableList.of();
         }
 
@@ -128,22 +127,22 @@ public final class ContainerSchemaNodes {
         }
 
         @Override
-        public Set<GroupingDefinition> getGroupings() {
+        public Collection<? extends GroupingDefinition> getGroupings() {
             return rpcDefinition.getGroupings();
         }
 
         @Override
-        public Set<TypeDefinition<?>> getTypeDefinitions() {
+        public Collection<? extends TypeDefinition<?>> getTypeDefinitions() {
             return rpcDefinition.getTypeDefinitions();
         }
 
         @Override
-        public Set<AugmentationSchemaNode> getAvailableAugmentations() {
+        public Collection<? extends AugmentationSchemaNode> getAvailableAugmentations() {
             return ImmutableSet.of();
         }
 
         @Override
-        public Collection<DataSchemaNode> getChildNodes() {
+        public Collection<? extends DataSchemaNode> getChildNodes() {
             final ContainerSchemaNode input = rpcDefinition.getInput();
             final ContainerSchemaNode output = rpcDefinition.getOutput();
             if (input == null && output == null) {
@@ -176,12 +175,12 @@ public final class ContainerSchemaNodes {
         }
 
         @Override
-        public Set<ActionDefinition> getActions() {
+        public Collection<? extends ActionDefinition> getActions() {
             return ImmutableSet.of();
         }
 
         @Override
-        public Set<NotificationDefinition> getNotifications() {
+        public Collection<? extends NotificationDefinition> getNotifications() {
             return ImmutableSet.of();
         }
     }
@@ -189,7 +188,7 @@ public final class ContainerSchemaNodes {
     private static final class NotificationContainerSchemaNode extends AbstractContainerSchemaNode {
 
         private final NotificationDefinition notification;
-        private final ImmutableMap<QName, DataSchemaNode> mapNodes;
+        private final ImmutableMap<QName, ? extends DataSchemaNode> mapNodes;
 
         private NotificationContainerSchemaNode(final NotificationDefinition notification) {
             super(notification);
@@ -198,27 +197,27 @@ public final class ContainerSchemaNodes {
         }
 
         @Override
-        public Set<NotificationDefinition> getNotifications() {
+        public Collection<? extends NotificationDefinition> getNotifications() {
             return ImmutableSet.of(notification);
         }
 
         @Override
-        public Set<AugmentationSchemaNode> getAvailableAugmentations() {
+        public Collection<? extends AugmentationSchemaNode> getAvailableAugmentations() {
             return notification.getAvailableAugmentations();
         }
 
         @Override
-        public Set<TypeDefinition<?>> getTypeDefinitions() {
+        public Collection<? extends TypeDefinition<?>> getTypeDefinitions() {
             return notification.getTypeDefinitions();
         }
 
         @Override
-        public Collection<DataSchemaNode> getChildNodes() {
+        public Collection<? extends DataSchemaNode> getChildNodes() {
             return notification.getChildNodes();
         }
 
         @Override
-        public Set<GroupingDefinition> getGroupings() {
+        public Collection<? extends GroupingDefinition> getGroupings() {
             return notification.getGroupings();
         }
 
@@ -235,7 +234,7 @@ public final class ContainerSchemaNodes {
         }
 
         @Override
-        public Set<ActionDefinition> getActions() {
+        public Collection<? extends ActionDefinition> getActions() {
             return ImmutableSet.of();
         }
     }
index 9a22d7cdda041975cc2a80db955d7300d6780135..2b85ee83fa0a6d184e87f6492562d7d3a42f86e7 100644 (file)
@@ -44,7 +44,7 @@ public abstract class ModuleStringIdentityrefCodec extends AbstractModuleStringI
 
     @Override
     protected String prefixForNamespace(final URI namespace) {
-        final Iterator<Module> modules = context.findModules(namespace).iterator();
+        final Iterator<? extends Module> modules = context.findModules(namespace).iterator();
         return modules.hasNext() ? modules.next().getName() : null;
     }
 }
index f58816c212854d6d05d14f417cc36a110701642f..24a5ec5d768fe88f610e91953b598b7f268321c5 100644 (file)
@@ -16,7 +16,6 @@ import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
 import java.util.Optional;
-import java.util.Set;
 import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.ActionDefinition;
@@ -61,12 +60,12 @@ public class OperationAsContainer extends ForwardingObject implements ContainerS
     }
 
     @Override
-    public final Set<TypeDefinition<?>> getTypeDefinitions() {
+    public final Collection<? extends TypeDefinition<?>> getTypeDefinitions() {
         return delegate.getTypeDefinitions();
     }
 
     @Override
-    public final Set<GroupingDefinition> getGroupings() {
+    public final Collection<? extends GroupingDefinition> getGroupings() {
         return delegate.getGroupings();
     }
 
@@ -112,12 +111,12 @@ public class OperationAsContainer extends ForwardingObject implements ContainerS
     }
 
     @Override
-    public Set<UsesNode> getUses() {
+    public Collection<? extends UsesNode> getUses() {
         return ImmutableSet.of();
     }
 
     @Override
-    public final Set<AugmentationSchemaNode> getAvailableAugmentations() {
+    public final Collection<? extends AugmentationSchemaNode> getAvailableAugmentations() {
         return ImmutableSet.of();
     }
 
@@ -127,7 +126,7 @@ public class OperationAsContainer extends ForwardingObject implements ContainerS
     }
 
     @Override
-    public final Collection<DataSchemaNode> getChildNodes() {
+    public final Collection<? extends DataSchemaNode> getChildNodes() {
         final List<DataSchemaNode> ret = new ArrayList<>();
         final ContainerSchemaNode input = getInput();
         final ContainerSchemaNode output = getOutput();
@@ -158,7 +157,7 @@ public class OperationAsContainer extends ForwardingObject implements ContainerS
     }
 
     @Override
-    public final Set<ActionDefinition> getActions() {
+    public final Collection<? extends ActionDefinition> getActions() {
         return ImmutableSet.of();
     }
 
@@ -169,7 +168,7 @@ public class OperationAsContainer extends ForwardingObject implements ContainerS
     }
 
     @Override
-    public final Set<NotificationDefinition> getNotifications() {
+    public final Collection<? extends NotificationDefinition> getNotifications() {
         return ImmutableSet.of();
     }
 
@@ -180,7 +179,7 @@ public class OperationAsContainer extends ForwardingObject implements ContainerS
     }
 
     @Override
-    public final Collection<MustDefinition> getMustConstraints() {
+    public final Collection<? extends MustDefinition> getMustConstraints() {
         return ImmutableSet.of();
     }
 
index 759a6becc1b7f72ef80ddb1a4b794a213bec1497..420d99f3db94a7213ca7e8ccf97c5f7279eb4bd9 100644 (file)
@@ -10,8 +10,8 @@ package org.opendaylight.yangtools.yang.model.api;
 import static java.util.Objects.requireNonNull;
 
 import com.google.common.annotations.Beta;
+import java.util.Collection;
 import java.util.Optional;
-import java.util.Set;
 import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.yangtools.yang.common.QName;
 
@@ -25,7 +25,7 @@ public interface ActionNodeContainer {
      *
      * @return set of action nodes
      */
-    @NonNull Set<ActionDefinition> getActions();
+    @NonNull Collection<? extends ActionDefinition> getActions();
 
     /**
      * Find an action based on its QName. Default implementation searches the set returned by {@link #getActions()}.
index e30273c77545ec167fc0cbad25b46b8f56034fa5..dbf8e46f5deb0f06abb1162aa35eff9204b39413 100644 (file)
@@ -7,7 +7,7 @@
  */
 package org.opendaylight.yangtools.yang.model.api;
 
-import java.util.Set;
+import java.util.Collection;
 
 /**
  * Interface for all nodes which are possible targets of augmentation. The
@@ -20,5 +20,5 @@ public interface AugmentationTarget {
      *
      * @return set of augmentations targeting this element.
      */
-    Set<AugmentationSchemaNode> getAvailableAugmentations();
+    Collection<? extends AugmentationSchemaNode> getAvailableAugmentations();
 }
index 0e472fec97d561ad1df5de89245a294d82b85e77..4e994cc64b6872a90129e798e642c4a9b43a861e 100644 (file)
@@ -28,6 +28,7 @@ public interface ChoiceSchemaNode extends DataSchemaNode, AugmentationTarget, Ma
      * @return set of ChoiceCaseNode objects defined in this node which represents set of arguments of the YANG
      *         <code>case</code> substatement of the <code>choice</code> statement.
      */
+    // FIXME: 5.0.0: revert back to collection + lookup
     SortedMap<QName, CaseSchemaNode> getCases();
 
     /**
index 845a3188dd03ee7f1cacbe39f7eaec6b49a71902..e1b6f3a097e627e0386cb817ba79b2935b9711a2 100644 (file)
@@ -16,7 +16,6 @@ import java.util.Collection;
 import java.util.Iterator;
 import java.util.NoSuchElementException;
 import java.util.Optional;
-import java.util.Set;
 import org.eclipse.jdt.annotation.Nullable;
 import org.opendaylight.yangtools.yang.common.QName;
 
@@ -29,7 +28,7 @@ public interface DataNodeContainer {
      *
      * @return typedef statements in lexicographical order
      */
-    Set<TypeDefinition<?>> getTypeDefinitions();
+    Collection<? extends TypeDefinition<?>> getTypeDefinitions();
 
     /**
      * Returns set of all child nodes defined within this DataNodeContainer. Although the return type is a collection,
@@ -42,14 +41,14 @@ public interface DataNodeContainer {
      *
      * @return child nodes in lexicographical order
      */
-    Collection<DataSchemaNode> getChildNodes();
+    Collection<? extends DataSchemaNode> getChildNodes();
 
     /**
      * Returns set of all groupings defined within this DataNodeContainer.
      *
      * @return grouping statements in lexicographical order
      */
-    Set<GroupingDefinition> getGroupings();
+    Collection<? extends GroupingDefinition> getGroupings();
 
     /**
      * Returns the child node corresponding to the specified name.
@@ -115,7 +114,7 @@ public interface DataNodeContainer {
      *
      * @return Set of all uses nodes defined within this DataNodeContainer
      */
-    Set<UsesNode> getUses();
+    Collection<? extends UsesNode> getUses();
 
     /**
      * Returns a {@code data node} identified by a QName. This method is distinct from
index d77c03b547cfee53d1f17a09b83172300c556526..a78eeafd80f5996d641b519d331e6ab11228a108 100644 (file)
@@ -10,7 +10,6 @@ package org.opendaylight.yangtools.yang.model.api;
 
 import com.google.common.annotations.Beta;
 import java.util.Collection;
-import java.util.Set;
 
 /**
  * Interface describing YANG 'deviate' statement.
@@ -69,7 +68,7 @@ public interface DeviateDefinition {
      *
      * @return set of the deviated must statements
      */
-    Set<MustDefinition> getDeviatedMusts();
+    Collection<? extends MustDefinition> getDeviatedMusts();
 
     /**
      * Returns deviated type statement.
@@ -83,7 +82,7 @@ public interface DeviateDefinition {
      *
      * @return collection of the deviated unique statements
      */
-    Collection<UniqueConstraint> getDeviatedUniques();
+    Collection<? extends UniqueConstraint> getDeviatedUniques();
 
     /**
      * Returns deviated units statement.
index 408a1725f6b65e507c048bb9f62310602c469250..50e24dd819a044404d661539060dc9fb0bd68a9f 100644 (file)
@@ -7,7 +7,8 @@
  */
 package org.opendaylight.yangtools.yang.model.api;
 
-import java.util.List;
+import java.util.Collection;
+import org.eclipse.jdt.annotation.NonNull;
 
 /**
  * Interface describing YANG 'deviation' statement.
@@ -28,7 +29,7 @@ public interface Deviation extends DocumentedNode {
     /**
      * Returns deviate children.
      *
-     * @return List of all deviate statements defined in this deviation.
+     * @return Collection of all deviate statements defined in this deviation.
      */
-    List<DeviateDefinition> getDeviates();
+    @NonNull Collection<? extends DeviateDefinition> getDeviates();
 }
index d6c387ae28d993239da56fc6bbfbf07dcf0b4329..0d9b27f69ef29613961f6855feb96b374ba10e92 100644 (file)
@@ -8,7 +8,7 @@
 package org.opendaylight.yangtools.yang.model.api;
 
 import com.google.common.collect.ImmutableList;
-import java.util.List;
+import java.util.Collection;
 import java.util.Optional;
 import org.eclipse.jdt.annotation.NonNull;
 
@@ -31,11 +31,11 @@ public interface DocumentedNode {
     Optional<String> getReference();
 
     /**
-     * Returns unknown schema nodes which belongs to this instance. Default implementation returns an empty list.
+     * Returns unknown schema nodes which belongs to this instance. Default implementation returns an empty collection.
      *
-     * @return list of unknown schema nodes defined under this node.
+     * @return collection of unknown schema nodes defined under this node.
      */
-    default @NonNull List<UnknownSchemaNode> getUnknownSchemaNodes() {
+    default @NonNull Collection<? extends UnknownSchemaNode> getUnknownSchemaNodes() {
         return ImmutableList.of();
     }
 
index 42ae9735087c1636e432d78b63c1acebb7511775..686be4a9f81a1f403797b9a73b77e79973929149 100644 (file)
@@ -7,7 +7,7 @@
  */
 package org.opendaylight.yangtools.yang.model.api;
 
-import java.util.Set;
+import java.util.Collection;
 import org.eclipse.jdt.annotation.NonNull;
 
 /**
@@ -30,12 +30,15 @@ public interface IdentitySchemaNode extends SchemaNode {
      * @return set of existing identities from which the new identity is derived or an empty Set if the identity is
      *         a root identity.
      */
-    @NonNull Set<IdentitySchemaNode> getBaseIdentities();
+    @NonNull Collection<? extends IdentitySchemaNode> getBaseIdentities();
 
     /**
      * Get identities derived from this identity.
      *
      * @return collection of identities derived from this identity
      */
-    @NonNull Set<IdentitySchemaNode> getDerivedIdentities();
+    // FIXME: 5.0.0: this causes circular references in implementation objects under immutables+builder pattern,
+    //               and really should be a SchemaContext-level utility (i.e. walk entire SchemaContext, cache the
+    //               result)
+    @NonNull Collection<? extends IdentitySchemaNode> getDerivedIdentities();
 }
index e4cb9ba96beec3a6b0c99592a16ef1fbf6295b89..4457749f4fab079ce9d1f6c4c44ab4f19815be12 100644 (file)
@@ -41,5 +41,5 @@ public interface ListSchemaNode extends DataNodeContainer, AugmentationTarget, D
      *
      * @return Collection of unique constraints of this list schema node
      */
-    @NonNull Collection<UniqueConstraint> getUniqueConstraints();
+    @NonNull Collection<? extends UniqueConstraint> getUniqueConstraints();
 }
index 0355ca5f3771aa63a19615027e6fb91e2290528b..8b4246125bd936fd327e20bd7b591d4ff194a22e 100644 (file)
@@ -8,9 +8,8 @@
 package org.opendaylight.yangtools.yang.model.api;
 
 import java.net.URI;
-import java.util.List;
+import java.util.Collection;
 import java.util.Optional;
-import java.util.Set;
 import org.opendaylight.yangtools.concepts.Immutable;
 import org.opendaylight.yangtools.concepts.SemVer;
 import org.opendaylight.yangtools.yang.common.QNameModule;
@@ -106,9 +105,9 @@ public interface Module extends DataNodeContainer, DocumentedNode, Immutable, No
      * @return set of module imports which are specified in the module as the argument of YANG {@code import}
      *         statements.
      */
-    Set<ModuleImport> getImports();
+    Collection<? extends ModuleImport> getImports();
 
-    Set<Module> getSubmodules();
+    Collection<? extends Module> getSubmodules();
 
     /**
      * Returns {@link FeatureDefinition} instances which contain data from {@code feature} statements defined in the
@@ -120,7 +119,7 @@ public interface Module extends DataNodeContainer, DocumentedNode, Immutable, No
      * @return feature statements in lexicographical order which are specified in the module as the argument of YANG
      *         {@code feature} statements.
      */
-    Set<FeatureDefinition> getFeatures();
+    Collection<? extends FeatureDefinition> getFeatures();
 
     /**
      * Returns {@link AugmentationSchemaNode} instances which contain data from {@code augment} statements defined
@@ -129,7 +128,7 @@ public interface Module extends DataNodeContainer, DocumentedNode, Immutable, No
      * @return set of the augmentation schema instances which are specified in the module as YANG {@code augment}
      *         statement and are lexicographically ordered
      */
-    Set<AugmentationSchemaNode> getAugmentations();
+    Collection<? extends AugmentationSchemaNode> getAugmentations();
 
     /**
      * Returns {@link RpcDefinition} instances which contain data from {@code rpc} statements defined in the module.
@@ -137,14 +136,14 @@ public interface Module extends DataNodeContainer, DocumentedNode, Immutable, No
      * @return set of the RPC definition instances which are specified in the module as YANG {@code rpc} statements and
      *         are lexicographicaly ordered
      */
-    Set<RpcDefinition> getRpcs();
+    Collection<? extends RpcDefinition> getRpcs();
 
     /**
      * Returns {@link Deviation} instances which contain data from {@code deviation} statements defined in the module.
      *
      * @return set of the deviation instances
      */
-    Set<Deviation> getDeviations();
+    Collection<? extends Deviation> getDeviations();
 
     /**
      * Returns {@link IdentitySchemaNode} instances which contain data from {@code identity} statements defined in the
@@ -153,7 +152,7 @@ public interface Module extends DataNodeContainer, DocumentedNode, Immutable, No
      * @return set of identity schema node instances which are specified in the module as YANG {@code identity}
      *         statements and are lexicographically ordered
      */
-    Set<IdentitySchemaNode> getIdentities();
+    Collection<? extends IdentitySchemaNode> getIdentities();
 
     /**
      * Returns {@link ExtensionDefinition} instances which contain data from {@code extension} statements defined in
@@ -162,5 +161,5 @@ public interface Module extends DataNodeContainer, DocumentedNode, Immutable, No
      * @return set of extension definition instances which are specified in the module as YANG {@code extension}
      *         statements and are lexicographically ordered
      */
-    List<ExtensionDefinition> getExtensionSchemaNodes();
+    Collection<? extends ExtensionDefinition> getExtensionSchemaNodes();
 }
index 609ff1f1f6e11a9f473490e5c11118fb2d6faaf4..8ec0bd7cc985002c4e2dcd1696c3223c63fe78a8 100644 (file)
@@ -21,5 +21,5 @@ public interface MustConstraintAware {
      * @return collection of <code>MustDefinition</code> (XPath) instances which represents the concrete data
      *         constraints
      */
-    Collection<MustDefinition> getMustConstraints();
+    Collection<? extends MustDefinition> getMustConstraints();
 }
index 7e905f5170775057ef154fd485d08440d5e52649..65e6c26402c315c618b6a4df733a630ee83a99f6 100644 (file)
@@ -11,6 +11,7 @@ import java.net.URI;
 import java.util.Optional;
 import org.opendaylight.yangtools.yang.common.Revision;
 
+// FIXME: 5.0.0: this really is QNameModuleAware (or some such)
 public interface NamespaceRevisionAware {
 
     URI getNamespace();
index 8a0d099cd8834a475856d900183b80e30229d761..f77caf9af80287b3db732767cd1f9d0364b0c7bd 100644 (file)
@@ -9,8 +9,8 @@ package org.opendaylight.yangtools.yang.model.api;
 
 import static java.util.Objects.requireNonNull;
 
+import java.util.Collection;
 import java.util.Optional;
-import java.util.Set;
 import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.yangtools.yang.common.QName;
 
@@ -22,7 +22,7 @@ public interface NotificationNodeContainer {
       *
      * @return set of notification nodes
      */
-    @NonNull Set<NotificationDefinition> getNotifications();
+    @NonNull Collection<? extends NotificationDefinition> getNotifications();
 
     /**
      * Find a notification based on its QName. Default implementation searches the set returned by
index 4f285d85fe5c7e41d2f2ba5fdfe6110882a29a48..1eabe85d4dfbb49d4a9059d6aa8272a5a21db3f6 100644 (file)
@@ -5,11 +5,10 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.model.api;
 
 import com.google.common.annotations.Beta;
-import java.util.Set;
+import java.util.Collection;
 
 /**
  * Common interface for an operation.
@@ -21,14 +20,14 @@ public interface OperationDefinition extends SchemaNode {
      *
      * @return Set of type definitions declared under this operation.
      */
-    Set<TypeDefinition<?>> getTypeDefinitions();
+    Collection<? extends TypeDefinition<?>> getTypeDefinitions();
 
     /**
      * Returns the set of grouping statements declared under this operation.
      *
      * @return Set of grouping statements declared under this operation.
      */
-    Set<GroupingDefinition> getGroupings();
+    Collection<? extends GroupingDefinition> getGroupings();
 
     /**
      * Returns definition of input parameters for this operation.
index 9ef5971f8fcbbff832a3425c732d074b5125ce27..b5535a1a4f58f09f9557d1047ada2a734b96e5a1 100644 (file)
@@ -10,12 +10,11 @@ package org.opendaylight.yangtools.yang.model.api;
 import static java.util.Objects.requireNonNull;
 
 import com.google.common.annotations.Beta;
+import com.google.common.collect.Collections2;
 import com.google.common.collect.ImmutableSet;
-import com.google.common.collect.Sets;
 import java.net.URI;
 import java.util.Collection;
 import java.util.Optional;
-import java.util.Set;
 import org.eclipse.jdt.annotation.NonNull;
 import org.eclipse.jdt.annotation.Nullable;
 import org.opendaylight.yangtools.concepts.Immutable;
@@ -47,7 +46,7 @@ public interface SchemaContext extends ContainerSchemaNode, Immutable {
      * @return set of <code>DataSchemaNode</code> instances which represents
      *         YANG data nodes at the module top level
      */
-    Set<DataSchemaNode> getDataDefinitions();
+    Collection<? extends DataSchemaNode> getDataDefinitions();
 
     /**
      * Returns modules which are part of the schema context. Returned set is required to have its iteration ordered
@@ -56,7 +55,7 @@ public interface SchemaContext extends ContainerSchemaNode, Immutable {
      *
      * @return set of the modules which belong to the schema context
      */
-    Set<Module> getModules();
+    Collection<? extends Module> getModules();
 
     /**
      * Returns rpc definition instances which are defined as the direct
@@ -65,7 +64,7 @@ public interface SchemaContext extends ContainerSchemaNode, Immutable {
      * @return set of <code>RpcDefinition</code> instances which represents
      *         nodes defined via <code>rpc</code> YANG keyword
      */
-    Set<RpcDefinition> getOperations();
+    Collection<? extends RpcDefinition> getOperations();
 
     /**
      * Returns extension definition instances which are defined as the direct
@@ -74,7 +73,7 @@ public interface SchemaContext extends ContainerSchemaNode, Immutable {
      * @return set of <code>ExtensionDefinition</code> instances which
      *         represents nodes defined via <code>extension</code> YANG keyword
      */
-    Set<ExtensionDefinition> getExtensions();
+    Collection<? extends ExtensionDefinition> getExtensions();
 
     /**
      * Returns the module matching specified {@link QNameModule}, if present.
@@ -130,7 +129,7 @@ public interface SchemaContext extends ContainerSchemaNode, Immutable {
      * @return module instance which has name and revision the same as are the values specified in parameters
      *                <code>name</code> and <code>revision</code>.
      */
-    default Optional<Module> findModule(final String name, final Optional<Revision> revision) {
+    default Optional<? extends Module> findModule(final String name, final Optional<Revision> revision) {
         return findModules(name).stream().filter(module -> revision.equals(module.getRevision())).findAny();
     }
 
@@ -144,7 +143,7 @@ public interface SchemaContext extends ContainerSchemaNode, Immutable {
      * @return module instance which has name and revision the same as are the values specified in parameters
      *         <code>name</code> and <code>revision</code>.
      */
-    default Optional<Module> findModule(final String name, final @Nullable Revision revision) {
+    default Optional<? extends Module> findModule(final String name, final @Nullable Revision revision) {
         return findModule(name, Optional.ofNullable(revision));
     }
 
@@ -156,7 +155,7 @@ public interface SchemaContext extends ContainerSchemaNode, Immutable {
      *                and no revision.
      * @throws NullPointerException if name is null
      */
-    default Optional<Module> findModule(final String name) {
+    default Optional<? extends Module> findModule(final String name) {
         return findModule(name, Optional.empty());
     }
 
@@ -168,8 +167,8 @@ public interface SchemaContext extends ContainerSchemaNode, Immutable {
      *            string with the module name
      * @return set of module instances with specified name.
      */
-    default Set<Module> findModules(final String name) {
-        return Sets.filter(getModules(), m -> name.equals(m.getName()));
+    default Collection<? extends Module> findModules(final String name) {
+        return Collections2.filter(getModules(), m -> name.equals(m.getName()));
     }
 
     /**
@@ -181,12 +180,12 @@ public interface SchemaContext extends ContainerSchemaNode, Immutable {
      * @return module instance which has namespace equal to the
      *         <code>namespace</code> or <code>null</code> in other cases
      */
-    default Set<Module> findModules(final URI namespace) {
-        return Sets.filter(getModules(), m -> namespace.equals(m.getNamespace()));
+    default Collection<? extends Module> findModules(final URI namespace) {
+        return Collections2.filter(getModules(), m -> namespace.equals(m.getNamespace()));
     }
 
     @Override
-    default Set<ActionDefinition> getActions() {
+    default Collection<? extends ActionDefinition> getActions() {
         return ImmutableSet.of();
     }
 
@@ -198,7 +197,8 @@ public interface SchemaContext extends ContainerSchemaNode, Immutable {
 
     @Override
     default Optional<NotificationDefinition> findNotification(final QName qname) {
-        final Optional<Set<NotificationDefinition>> defs = findModule(qname.getModule()).map(Module::getNotifications);
+        final Optional<Collection<? extends NotificationDefinition>> defs = findModule(qname.getModule())
+                .map(Module::getNotifications);
         if (defs.isPresent()) {
             for (NotificationDefinition def : defs.get()) {
                 if (qname.equals(def.getQName())) {
@@ -220,7 +220,7 @@ public interface SchemaContext extends ContainerSchemaNode, Immutable {
     }
 
     @Override
-    default Collection<MustDefinition> getMustConstraints() {
+    default Collection<? extends MustDefinition> getMustConstraints() {
         return ImmutableSet.of();
     }
 
index f2ce302722a4c737c66e003bf7f67a95fb357f7f..edd4469700a3b3f5820929862511ac238eb3c0be 100644 (file)
@@ -34,6 +34,7 @@ public abstract class SchemaPath implements Immutable {
     /**
      * An absolute SchemaPath.
      */
+    // FIXME: 5.0.0: expose as a top-level construct (and use in APIs)
     private static final class AbsoluteSchemaPath extends SchemaPath {
         private AbsoluteSchemaPath(final SchemaPath parent, final QName qname) {
             super(parent, qname);
@@ -53,6 +54,7 @@ public abstract class SchemaPath implements Immutable {
     /**
      * A relative SchemaPath.
      */
+    // FIXME: 5.0.0: expose as a top-level construct (and use in APIs)
     private static final class RelativeSchemaPath extends SchemaPath {
         private RelativeSchemaPath(final SchemaPath parent, final QName qname) {
             super(parent, qname);
@@ -260,7 +262,7 @@ public abstract class SchemaPath implements Immutable {
      *         path from the schema node towards the root.
      */
     public Iterable<QName> getPathTowardsRoot() {
-        return () -> new UnmodifiableIterator<QName>() {
+        return () -> new UnmodifiableIterator<>() {
             private SchemaPath current = SchemaPath.this;
 
             @Override
index f8e163cbf186f059bffdb450c2e6d15e5bfb9d21..72408f54f56d74b25d2308ecd0da2b031d1ffb2b 100644 (file)
@@ -7,8 +7,8 @@
  */
 package org.opendaylight.yangtools.yang.model.api;
 
+import java.util.Collection;
 import java.util.Map;
-import java.util.Set;
 import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.yangtools.yang.model.api.DocumentedNode.WithStatus;
 
@@ -21,6 +21,7 @@ public interface UsesNode extends WhenConditionAware, WithStatus, CopyableNode {
      *
      * @return schema path to 'grouping' on which this 'uses' statement points
      */
+    // FIXME: 5.0.0: this is effective model, hence we should return GroupingDefinition
     @NonNull SchemaPath getGroupingPath();
 
     /**
@@ -28,12 +29,13 @@ public interface UsesNode extends WhenConditionAware, WithStatus, CopyableNode {
      *
      * @return Set of augment statements defined under this uses node
      */
-    @NonNull Set<AugmentationSchemaNode> getAugmentations();
+    @NonNull Collection<? extends AugmentationSchemaNode> getAugmentations();
 
     /**
      * Some of the properties of each node in the grouping can be refined with the "refine" statement.
      *
      * @return Map, where key is schema path of refined node and value is refined node
      */
+    // FIXME: 5.0.0: this should probably be SchemaPath.RelativeSchemaPath (which needs to be exposed)
     @NonNull Map<SchemaPath, SchemaNode> getRefines();
 }
index 89e8eb95dc3b6785e5d2f4678d05aa902c0018a6..f24202ae3b6ca14fab946ec31d14ccc618d74fac 100644 (file)
@@ -7,7 +7,7 @@
  */
 package org.opendaylight.yangtools.yang.model.api.type;
 
-import java.util.List;
+import java.util.Collection;
 import java.util.Objects;
 import org.eclipse.jdt.annotation.NonNull;
 import org.eclipse.jdt.annotation.Nullable;
@@ -24,7 +24,7 @@ public interface BitsTypeDefinition extends TypeDefinition<BitsTypeDefinition> {
      * @return list of <code>Bit</code> type instastances with data about all
      *         individual bits of <code>bits</code> YANG built-in type
      */
-    @NonNull List<Bit> getBits();
+    @NonNull Collection<? extends Bit> getBits();
 
     static int hashCode(final @NonNull BitsTypeDefinition type) {
         return Objects.hash(type.getPath(), type.getUnknownSchemaNodes(), type.getBaseType(),
@@ -48,6 +48,7 @@ public interface BitsTypeDefinition extends TypeDefinition<BitsTypeDefinition> {
      * Contains the methods for accessing the data about the individual bit of
      * <code>bits</code> YANG type.
      */
+    // FIXME: 5.0.0: Bit should not be a SchemaNode
     interface Bit extends SchemaNode {
         /**
          * Returns the name of the concrete bit.
index 643030f8584e5c1b68538591146ab524cdd0b4e6..4fef76bf9d721773fe92a1fa88f9b951d42be700 100644 (file)
@@ -24,7 +24,7 @@ public interface IdentityrefTypeDefinition extends TypeDefinition<IdentityrefTyp
      * @return set of identities to which the instance of this type refers (in YANG 1.1 models) or a set containing
      *         just one identity (in YANG 1.0 models)
      */
-    @NonNull Set<IdentitySchemaNode> getIdentities();
+    @NonNull Set<? extends IdentitySchemaNode> getIdentities();
 
     static int hashCode(final @NonNull IdentityrefTypeDefinition type) {
         return Objects.hash(type.getPath(), type.getUnknownSchemaNodes(), type.getBaseType(),
index 7cc317c9fe73f0d788415fb3e6cdfddc62367b50..59a4921a195a9ae04c7b3207fb377f31d09261bc 100644 (file)
@@ -28,7 +28,7 @@ abstract class AbstractYinExportTest {
     final void exportYinModules(final String yangDir, final String yinDir) throws IOException, SAXException,
             XMLStreamException {
         final SchemaContext schemaContext = YangParserTestUtils.parseYangResourceDirectory(yangDir);
-        final Collection<Module> modules = schemaContext.getModules();
+        final Collection<? extends Module> modules = schemaContext.getModules();
         assertNotEquals(0, modules.size());
 
         for (Module module : modules) {
index 035173508f9bfbd8b548bf9f3180afc7249f2ee4..ddbb8fb97d689846d4e06d460bda8a8e94e2394f 100644 (file)
@@ -13,6 +13,7 @@ import static java.util.Objects.requireNonNull;
 import com.google.common.collect.SetMultimap;
 import java.net.URI;
 import java.util.ArrayList;
+import java.util.Collection;
 import java.util.Collections;
 import java.util.Comparator;
 import java.util.HashSet;
@@ -90,7 +91,7 @@ public abstract class AbstractSchemaContext implements SchemaContext {
     protected abstract Map<QNameModule, Module> getModuleMap();
 
     @Override
-    public Set<DataSchemaNode> getDataDefinitions() {
+    public Collection<? extends DataSchemaNode> getDataDefinitions() {
         final Set<DataSchemaNode> dataDefs = new HashSet<>();
         for (Module m : getModules()) {
             dataDefs.addAll(m.getChildNodes());
@@ -99,7 +100,7 @@ public abstract class AbstractSchemaContext implements SchemaContext {
     }
 
     @Override
-    public Set<NotificationDefinition> getNotifications() {
+    public Collection<? extends NotificationDefinition> getNotifications() {
         final Set<NotificationDefinition> notifications = new HashSet<>();
         for (Module m : getModules()) {
             notifications.addAll(m.getNotifications());
@@ -108,7 +109,7 @@ public abstract class AbstractSchemaContext implements SchemaContext {
     }
 
     @Override
-    public Set<RpcDefinition> getOperations() {
+    public Collection<? extends RpcDefinition> getOperations() {
         final Set<RpcDefinition> rpcs = new HashSet<>();
         for (Module m : getModules()) {
             rpcs.addAll(m.getRpcs());
@@ -117,7 +118,7 @@ public abstract class AbstractSchemaContext implements SchemaContext {
     }
 
     @Override
-    public Set<ExtensionDefinition> getExtensions() {
+    public Collection<? extends ExtensionDefinition> getExtensions() {
         final Set<ExtensionDefinition> extensions = new HashSet<>();
         for (Module m : getModules()) {
             extensions.addAll(m.getExtensionSchemaNodes());
@@ -126,7 +127,7 @@ public abstract class AbstractSchemaContext implements SchemaContext {
     }
 
     @Override
-    public Optional<Module> findModule(final String name, final Optional<Revision> revision) {
+    public Optional<? extends Module> findModule(final String name, final Optional<Revision> revision) {
         for (final Module module : getNameToModules().get(name)) {
             if (revision.equals(module.getRevision())) {
                 return Optional.of(module);
@@ -142,12 +143,12 @@ public abstract class AbstractSchemaContext implements SchemaContext {
     }
 
     @Override
-    public Set<Module> findModules(final URI namespace) {
+    public Collection<? extends Module> findModules(final URI namespace) {
         return getNamespaceToModules().get(namespace);
     }
 
     @Override
-    public Set<Module> findModules(final String name) {
+    public Collection<? extends Module> findModules(final String name) {
         return getNameToModules().get(name);
     }
 
@@ -184,7 +185,7 @@ public abstract class AbstractSchemaContext implements SchemaContext {
     }
 
     @Override
-    public List<UnknownSchemaNode> getUnknownSchemaNodes() {
+    public Collection<? extends UnknownSchemaNode> getUnknownSchemaNodes() {
         final List<UnknownSchemaNode> result = new ArrayList<>();
         for (Module module : getModules()) {
             result.addAll(module.getUnknownSchemaNodes());
@@ -193,7 +194,7 @@ public abstract class AbstractSchemaContext implements SchemaContext {
     }
 
     @Override
-    public Set<TypeDefinition<?>> getTypeDefinitions() {
+    public Collection<? extends TypeDefinition<?>> getTypeDefinitions() {
         final Set<TypeDefinition<?>> result = new LinkedHashSet<>();
         for (Module module : getModules()) {
             result.addAll(module.getTypeDefinitions());
@@ -202,7 +203,7 @@ public abstract class AbstractSchemaContext implements SchemaContext {
     }
 
     @Override
-    public Set<DataSchemaNode> getChildNodes() {
+    public Collection<? extends DataSchemaNode> getChildNodes() {
         final Set<DataSchemaNode> result = new LinkedHashSet<>();
         for (Module module : getModules()) {
             result.addAll(module.getChildNodes());
@@ -211,7 +212,7 @@ public abstract class AbstractSchemaContext implements SchemaContext {
     }
 
     @Override
-    public Set<GroupingDefinition> getGroupings() {
+    public Collection<? extends GroupingDefinition> getGroupings() {
         final Set<GroupingDefinition> result = new LinkedHashSet<>();
         for (Module module : getModules()) {
             result.addAll(module.getGroupings());
@@ -232,7 +233,7 @@ public abstract class AbstractSchemaContext implements SchemaContext {
     }
 
     @Override
-    public Set<UsesNode> getUses() {
+    public Collection<? extends UsesNode> getUses() {
         return Collections.emptySet();
     }
 
@@ -242,7 +243,7 @@ public abstract class AbstractSchemaContext implements SchemaContext {
     }
 
     @Override
-    public Set<AugmentationSchemaNode> getAvailableAugmentations() {
+    public Collection<? extends AugmentationSchemaNode> getAvailableAugmentations() {
         return Collections.emptySet();
     }
 }
index af7762a997f53deacc6f1fe34f647f3c7d998708..6cc2097adfb39eabeb380a0d3e72b4b86b5b1c91 100644 (file)
@@ -11,9 +11,9 @@ import static java.util.Objects.requireNonNull;
 
 import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.ImmutableSet;
+import java.util.Collection;
 import java.util.HashMap;
 import java.util.HashSet;
-import java.util.List;
 import java.util.Map;
 import java.util.Optional;
 import java.util.Set;
@@ -40,7 +40,7 @@ public final class EffectiveAugmentationSchema implements AugmentationSchemaNode
     private final ImmutableMap<QName, DataSchemaNode> mappedChildSchemas;
 
     public EffectiveAugmentationSchema(final AugmentationSchemaNode augmentSchema,
-            final Set<DataSchemaNode> realChildSchemas) {
+            final Collection<? extends DataSchemaNode> realChildSchemas) {
         this.delegate = requireNonNull(augmentSchema);
         this.realChildSchemas = ImmutableSet.copyOf(realChildSchemas);
 
@@ -94,22 +94,22 @@ public final class EffectiveAugmentationSchema implements AugmentationSchemaNode
     }
 
     @Override
-    public List<UnknownSchemaNode> getUnknownSchemaNodes() {
+    public Collection<? extends UnknownSchemaNode> getUnknownSchemaNodes() {
         return delegate.getUnknownSchemaNodes();
     }
 
     @Override
-    public Set<TypeDefinition<?>> getTypeDefinitions() {
+    public Collection<? extends TypeDefinition<?>> getTypeDefinitions() {
         return delegate.getTypeDefinitions();
     }
 
     @Override
-    public Set<DataSchemaNode> getChildNodes() {
+    public Collection<? extends DataSchemaNode> getChildNodes() {
         return realChildSchemas;
     }
 
     @Override
-    public Set<GroupingDefinition> getGroupings() {
+    public Collection<? extends GroupingDefinition> getGroupings() {
         return delegate.getGroupings();
     }
 
@@ -119,7 +119,7 @@ public final class EffectiveAugmentationSchema implements AugmentationSchemaNode
     }
 
     @Override
-    public Set<UsesNode> getUses() {
+    public Collection<? extends UsesNode> getUses() {
         return delegate.getUses();
     }
 
@@ -129,7 +129,7 @@ public final class EffectiveAugmentationSchema implements AugmentationSchemaNode
     }
 
     @Override
-    public Set<ActionDefinition> getActions() {
+    public Collection<? extends ActionDefinition> getActions() {
         return delegate.getActions();
     }
 
@@ -139,7 +139,7 @@ public final class EffectiveAugmentationSchema implements AugmentationSchemaNode
     }
 
     @Override
-    public Set<NotificationDefinition> getNotifications() {
+    public Collection<? extends NotificationDefinition> getNotifications() {
         return delegate.getNotifications();
     }
 
index d749490fbf6189627ae5b6b839ae63f8071a2277..2e387ad13bd0caf47ab5bf5b9835cb2d8b128cfc 100644 (file)
@@ -116,13 +116,13 @@ public final class FilteringSchemaContextProxy extends AbstractSchemaContext {
             module -> checkModuleDependency(module, rootModules)));
     }
 
-    private static Multimap<String, Module> getStringModuleMap(final SchemaContext delegate) {
+    private static Multimap<String, ? extends Module> getStringModuleMap(final SchemaContext delegate) {
         return Multimaps.index(delegate.getModules(), Module::getName);
     }
 
     //dealing with imported module other than root and directly importing root
-    private static Collection<Module> getImportedModules(final Map<ModuleId, Module> allModules,
-            final Set<Module> baseModules, final TreeMultimap<String, Module> nameToModulesAll) {
+    private static Collection<Module> getImportedModules(final Map<ModuleId, ? extends Module> allModules,
+            final Collection<? extends Module> baseModules, final TreeMultimap<String, Module> nameToModulesAll) {
 
         List<Module> relatedModules = new LinkedList<>();
 
index 58b8ec2ebffce6758cd52c2258e18aa34793a1a9..255875b9f43c17cf05953ea5f5568994f3229691 100644 (file)
@@ -62,19 +62,19 @@ public final class ModuleDependencySort {
      * @return Sorted list of Modules. Modules can be further processed in returned order.
      * @throws IllegalArgumentException when provided modules are not consistent.
      */
-    public static List<Module> sort(final Collection<Module> modules) {
+    public static List<Module> sort(final Collection<? extends Module> modules) {
         final List<Node> sorted = sortInternal(modules);
         // Cast to Module from Node and return
         return Lists.transform(sorted, input -> input == null ? null : ((ModuleNodeImpl) input).getReference());
     }
 
-    private static List<Node> sortInternal(final Collection<Module> modules) {
+    private static List<Node> sortInternal(final Collection<? extends Module> modules) {
         final Table<String, Optional<Revision>, ModuleNodeImpl> moduleGraph = createModuleGraph(modules);
         return TopologicalSort.sort(new HashSet<>(moduleGraph.values()));
     }
 
     private static Table<String, Optional<Revision>, ModuleNodeImpl> createModuleGraph(
-            final Collection<Module> builders) {
+            final Collection<? extends Module> builders) {
         final Table<String, Optional<Revision>, ModuleNodeImpl> moduleGraph = HashBasedTable.create();
 
         processModules(moduleGraph, builders);
@@ -87,7 +87,7 @@ public final class ModuleDependencySort {
      * Extract module:revision from modules.
      */
     private static void processDependencies(final Table<String, Optional<Revision>, ModuleNodeImpl> moduleGraph,
-            final Collection<Module> mmbs) {
+            final Collection<? extends Module> mmbs) {
         final Map<URI, Module> allNS = new HashMap<>();
 
         // Create edges in graph
@@ -137,7 +137,7 @@ public final class ModuleDependencySort {
         }
     }
 
-    private static Collection<ModuleImport> allImports(final Module mod) {
+    private static Collection<? extends ModuleImport> allImports(final Module mod) {
         if (mod.getSubmodules().isEmpty()) {
             return mod.getImports();
         }
@@ -188,7 +188,7 @@ public final class ModuleDependencySort {
      * Extract dependencies from modules to fill dependency graph.
      */
     private static void processModules(final Table<String, Optional<Revision>, ModuleNodeImpl> moduleGraph,
-            final Iterable<Module> modules) {
+            final Iterable<? extends Module> modules) {
 
         // Process nodes
         for (final Module momb : modules) {
index c7e7e2bf896d6613e999b70111ce40c079f31273..060fecff1f732806c83c2a8c9ad4308d9f88a588 100644 (file)
@@ -627,8 +627,7 @@ public final class SchemaContextUtil {
             return module;
         }
 
-        final Set<ModuleImport> imports = module.getImports();
-        for (final ModuleImport mi : imports) {
+        for (final ModuleImport mi : module.getImports()) {
             if (prefix.equals(mi.getPrefix())) {
                 return context.findModule(mi.getModuleName(), mi.getRevision()).orElse(null);
             }
index bfa70f76fe236cbbfaf77db0e15b1af5e90f10a7..4ea0e0bae67e5e621a5586914d58af99a7ab5328 100644 (file)
@@ -14,7 +14,6 @@ import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
 import java.util.Optional;
-import java.util.Set;
 import org.eclipse.jdt.annotation.NonNull;
 import org.eclipse.jdt.annotation.Nullable;
 import org.opendaylight.yangtools.yang.common.QName;
@@ -108,27 +107,24 @@ public final class SchemaNodeUtils {
             return;
         }
 
-        final Iterable<DataSchemaNode> childNodes = dataNode.getChildNodes();
-        if (childNodes != null) {
-            for (DataSchemaNode childNode : childNodes) {
-                if (childNode.isAugmenting()) {
-                    continue;
-                }
-                aggregator.addChild(childNode);
-                if (childNode instanceof ContainerSchemaNode) {
-                    final ContainerSchemaNode containerNode = (ContainerSchemaNode) childNode;
-                    aggregator.addContainer(containerNode);
-                    traverse(aggregator, containerNode);
-                } else if (childNode instanceof ListSchemaNode) {
-                    final ListSchemaNode list = (ListSchemaNode) childNode;
-                    aggregator.addList(list);
-                    traverse(aggregator, list);
-                } else if (childNode instanceof ChoiceSchemaNode) {
-                    final ChoiceSchemaNode choiceNode = (ChoiceSchemaNode) childNode;
-                    aggregator.addChoice(choiceNode);
-                    for (final CaseSchemaNode caseNode : choiceNode.getCases().values()) {
-                        traverse(aggregator, caseNode);
-                    }
+        for (DataSchemaNode childNode : dataNode.getChildNodes()) {
+            if (childNode.isAugmenting()) {
+                continue;
+            }
+            aggregator.addChild(childNode);
+            if (childNode instanceof ContainerSchemaNode) {
+                final ContainerSchemaNode containerNode = (ContainerSchemaNode) childNode;
+                aggregator.addContainer(containerNode);
+                traverse(aggregator, containerNode);
+            } else if (childNode instanceof ListSchemaNode) {
+                final ListSchemaNode list = (ListSchemaNode) childNode;
+                aggregator.addList(list);
+                traverse(aggregator, list);
+            } else if (childNode instanceof ChoiceSchemaNode) {
+                final ChoiceSchemaNode choiceNode = (ChoiceSchemaNode) childNode;
+                aggregator.addChoice(choiceNode);
+                for (final CaseSchemaNode caseNode : choiceNode.getCases().values()) {
+                    traverse(aggregator, caseNode);
                 }
             }
         }
@@ -165,12 +161,9 @@ public final class SchemaNodeUtils {
     }
 
     private static void traverseGroupings(final DataNodeAggregator aggregator, final DataNodeContainer dataNode) {
-        final Set<GroupingDefinition> groupings = dataNode.getGroupings();
-        if (groupings != null) {
-            for (GroupingDefinition grouping : groupings) {
-                aggregator.addGrouping(grouping);
-                traverse(aggregator, grouping);
-            }
+        for (GroupingDefinition grouping : dataNode.getGroupings()) {
+            aggregator.addGrouping(grouping);
+            traverse(aggregator, grouping);
         }
     }
 }
index fe4e17c64616b19af4fc8df32f363cbdbad2b2b4..43804dee27829f7a367e7adb4ee4b5e50b5e379f 100644 (file)
@@ -20,6 +20,7 @@ import com.google.common.collect.Multimaps;
 import com.google.common.collect.SetMultimap;
 import java.net.URI;
 import java.util.ArrayList;
+import java.util.Collection;
 import java.util.List;
 import java.util.Map;
 import java.util.Optional;
@@ -44,7 +45,7 @@ public class SimpleSchemaContext extends AbstractSchemaContext implements Annota
     private final ImmutableSet<Module> modules;
     private final ImmutableMap<QName, AnnotationSchemaNode> annotations;
 
-    protected SimpleSchemaContext(final Set<Module> modules) {
+    protected SimpleSchemaContext(final Collection<? extends Module> modules) {
         /*
          * Instead of doing this on each invocation of getModules(), pre-compute it once and keep it around -- better
          * than the set we got in.
@@ -85,7 +86,7 @@ public class SimpleSchemaContext extends AbstractSchemaContext implements Annota
      * Create a new instance from specified modules. Note that no module validation is done and hence the consistency
      * of the resulting SchemaContext is completely in hands of the caller.
      */
-    public static SimpleSchemaContext forModules(final Set<Module> modules) {
+    public static SimpleSchemaContext forModules(final Collection<? extends Module> modules) {
         return new SimpleSchemaContext(modules);
     }
 
index 043ebcd8495dfe4e444698ea1d95af3cb8cbc257..c882b12da48eda932c441c305d373329387f8026 100644 (file)
@@ -8,7 +8,7 @@
 package org.opendaylight.yangtools.yang.model.util.type;
 
 import com.google.common.collect.ImmutableList;
-import java.util.List;
+import java.util.Collection;
 import java.util.Optional;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.SchemaPath;
@@ -21,7 +21,7 @@ abstract class AbstractBaseType<T extends TypeDefinition<T>> extends AbstractTyp
         this(SchemaPath.ROOT.createChild(qname), ImmutableList.of());
     }
 
-    AbstractBaseType(final SchemaPath path, final List<UnknownSchemaNode> unknownSchemaNodes) {
+    AbstractBaseType(final SchemaPath path, final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         super(path, unknownSchemaNodes);
     }
 
index 1425ed43195fed3f3f79998aa8db374fed06ea19..2aa80afce32be3fecf2f27baf4a745eccf591e59 100644 (file)
@@ -28,7 +28,7 @@ abstract class AbstractDerivedType<T extends TypeDefinition<T>> extends Abstract
 
     AbstractDerivedType(final T baseType, final SchemaPath path, final Object defaultValue, final String description,
             final String reference, final Status status, final String units,
-            final Collection<UnknownSchemaNode> unknownSchemNodes) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemNodes) {
         super(path, unknownSchemNodes);
         this.baseType = requireNonNull(baseType);
         this.status = requireNonNull(status);
index 27cfaf785fc475a4e7afd1a114eb2ce458be0e70..b8ee620e75eb536bdf97a404e0443e78fe637e57 100644 (file)
@@ -20,7 +20,7 @@ abstract class AbstractLengthRestrictedDerivedType<T extends LengthRestrictedTyp
 
     AbstractLengthRestrictedDerivedType(final T baseType, final SchemaPath path,
             final Object defaultValue, final String description, final String reference, final Status status,
-            final String units, final Collection<UnknownSchemaNode> unknownSchemaNodes) {
+            final String units, final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         super(baseType, path, defaultValue, description, reference, status, units, unknownSchemaNodes);
     }
 
index 3aaaea1a2f175550428221943ab00769ec072810..6ea7d3a1acb221e6b52f9f57f6037cdc08ea3479 100644 (file)
@@ -20,7 +20,8 @@ abstract class AbstractLengthRestrictedType<T extends LengthRestrictedTypeDefini
     private final @Nullable LengthConstraint lengthConstraint;
 
     AbstractLengthRestrictedType(final T baseType, final SchemaPath path,
-        final Collection<UnknownSchemaNode> unknownSchemaNodes, final @Nullable LengthConstraint lengthConstraint) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes,
+            final @Nullable LengthConstraint lengthConstraint) {
         super(baseType, path, unknownSchemaNodes);
         this.lengthConstraint = lengthConstraint;
     }
index 4d767e6473f2443df74f7bd11de03163f7ee84a7..71df284e74a67f4fdc0a6776089824904396fabc 100644 (file)
@@ -11,7 +11,7 @@ import static java.util.Objects.requireNonNull;
 
 import com.google.common.collect.ImmutableRangeSet;
 import com.google.common.collect.Range;
-import java.util.List;
+import java.util.Collection;
 import java.util.Optional;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.ConstraintMetaDefinition;
@@ -53,8 +53,9 @@ abstract class AbstractRangeRestrictedBaseType<T extends RangeRestrictedTypeDefi
             Range.closed(minValue, maxValue)));
     }
 
-    AbstractRangeRestrictedBaseType(final SchemaPath path, final List<UnknownSchemaNode> unknownSchemaNodes,
-        final RangeConstraint<N> rangeConstraint) {
+    AbstractRangeRestrictedBaseType(final SchemaPath path,
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes,
+            final RangeConstraint<N> rangeConstraint) {
         super(path, unknownSchemaNodes);
         this.rangeConstraint = requireNonNull(rangeConstraint);
     }
index 86674ebd006368b76043313574c811aa436bd0a5..fe8113c1dfde988dc5f78cd68725bc6687449cae 100644 (file)
@@ -21,7 +21,7 @@ abstract class AbstractRangeRestrictedDerivedType<T extends RangeRestrictedTypeD
 
     AbstractRangeRestrictedDerivedType(final T baseType, final SchemaPath path,
             final Object defaultValue, final String description, final String reference, final Status status,
-            final String units, final Collection<UnknownSchemaNode> unknownSchemaNodes) {
+            final String units, final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         super(baseType, path, defaultValue, description, reference, status, units, unknownSchemaNodes);
     }
 
index dcd460951aa200de2419318a5c53c0e259019575..cc7c57aaf44cf1c93ed1dc1d0805e69c23772aa5 100644 (file)
@@ -21,7 +21,8 @@ abstract class AbstractRangeRestrictedType<T extends RangeRestrictedTypeDefiniti
     private final @Nullable RangeConstraint<N> rangeConstraint;
 
     AbstractRangeRestrictedType(final T baseType, final SchemaPath path,
-        final Collection<UnknownSchemaNode> unknownSchemaNodes, final @Nullable RangeConstraint<N> rangeConstraint) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes,
+            final @Nullable RangeConstraint<N> rangeConstraint) {
         super(baseType, path, unknownSchemaNodes);
         this.rangeConstraint = rangeConstraint;
     }
index 77262c2280ada4f0c45c5ee4e5b584ba3c382141..c0198f42069097925847485e0388fc1c57b4a1c7 100644 (file)
@@ -21,7 +21,7 @@ abstract class AbstractRestrictedType<T extends TypeDefinition<T>> extends Abstr
     private final @NonNull T baseType;
 
     AbstractRestrictedType(final T baseType, final SchemaPath path,
-            final Collection<UnknownSchemaNode> unknownSchemaNodes) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         super(path, unknownSchemaNodes);
         this.baseType = requireNonNull(baseType);
     }
index fe0abdd72cd024319d573429c0e64184a4291692..30afe90d35786e04705830e0b9e9e7e55c2ab5c2 100644 (file)
@@ -11,7 +11,6 @@ import static java.util.Objects.requireNonNull;
 
 import com.google.common.collect.ImmutableList;
 import java.util.Collection;
-import java.util.List;
 import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.yangtools.concepts.Immutable;
 import org.opendaylight.yangtools.yang.common.QName;
@@ -23,7 +22,7 @@ abstract class AbstractTypeDefinition<T extends TypeDefinition<T>> implements Im
     private final @NonNull ImmutableList<UnknownSchemaNode> unknownSchemaNodes;
     private final @NonNull SchemaPath path;
 
-    AbstractTypeDefinition(final SchemaPath path, final Collection<UnknownSchemaNode> unknownSchemaNodes) {
+    AbstractTypeDefinition(final SchemaPath path, final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         this.path = requireNonNull(path);
         this.unknownSchemaNodes = ImmutableList.copyOf(unknownSchemaNodes);
     }
@@ -39,7 +38,7 @@ abstract class AbstractTypeDefinition<T extends TypeDefinition<T>> implements Im
     }
 
     @Override
-    public final List<UnknownSchemaNode> getUnknownSchemaNodes() {
+    public final Collection<? extends UnknownSchemaNode> getUnknownSchemaNodes() {
         return unknownSchemaNodes;
     }
 
index eeba56f86f2454a1f01c28dc0b114dc9320b70dd..e51da228f88eed4159876d035f606aedac22e254 100644 (file)
@@ -9,7 +9,6 @@ package org.opendaylight.yangtools.yang.model.util.type;
 
 import com.google.common.collect.ImmutableList;
 import java.util.Collection;
-import java.util.List;
 import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.yangtools.yang.model.api.SchemaPath;
 import org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode;
@@ -18,13 +17,14 @@ import org.opendaylight.yangtools.yang.model.api.type.BitsTypeDefinition;
 final class BaseBitsType extends AbstractBaseType<BitsTypeDefinition> implements BitsTypeDefinition {
     private final @NonNull ImmutableList<Bit> bits;
 
-    BaseBitsType(final SchemaPath path, final List<UnknownSchemaNode> unknownSchemaNodes, final Collection<Bit> bits) {
+    BaseBitsType(final SchemaPath path, final Collection<? extends UnknownSchemaNode> unknownSchemaNodes,
+            final Collection<Bit> bits) {
         super(path, unknownSchemaNodes);
         this.bits = ImmutableList.copyOf(bits);
     }
 
     @Override
-    public List<Bit> getBits() {
+    public Collection<? extends Bit> getBits() {
         return bits;
     }
 
index 9196c2f450410586d9a54f5716e36b40b22c1772..046f1fdc9b0e249b373653b1514548d9ba70e83c 100644 (file)
@@ -13,7 +13,7 @@ import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableRangeSet;
 import com.google.common.collect.Range;
 import java.math.BigDecimal;
-import java.util.List;
+import java.util.Collection;
 import java.util.Optional;
 import org.opendaylight.yangtools.yang.model.api.ConstraintMetaDefinition;
 import org.opendaylight.yangtools.yang.model.api.SchemaPath;
@@ -77,7 +77,7 @@ final class BaseDecimalType extends AbstractRangeRestrictedBaseType<DecimalTypeD
 
     private final int fractionDigits;
 
-    BaseDecimalType(final SchemaPath path, final List<UnknownSchemaNode> unknownSchemaNodes,
+    BaseDecimalType(final SchemaPath path, final Collection<? extends UnknownSchemaNode> unknownSchemaNodes,
             final int fractionDigits, final RangeConstraint<BigDecimal> rangeConstraint) {
         super(path, unknownSchemaNodes, rangeConstraint);
         this.fractionDigits = fractionDigits;
index b019bf1e8a32a110641d298946495f4a82acca02..f1d98c08e4a2040508aee6f84d70ff237ce74ae9 100644 (file)
@@ -18,7 +18,7 @@ import org.opendaylight.yangtools.yang.model.api.type.EnumTypeDefinition;
 final class BaseEnumerationType extends AbstractBaseType<EnumTypeDefinition> implements EnumTypeDefinition {
     private final @NonNull ImmutableList<EnumPair> values;
 
-    BaseEnumerationType(final SchemaPath path, final List<UnknownSchemaNode> unknownSchemaNodes,
+    BaseEnumerationType(final SchemaPath path, final Collection<? extends UnknownSchemaNode> unknownSchemaNodes,
             final Collection<EnumPair> values) {
         super(path, unknownSchemaNodes);
         this.values = ImmutableList.copyOf(values);
index a7467275a27077404b9f385ab4601d095c300675..7ef27d9057e24debfd41d9bf71ce2f6659c525a7 100644 (file)
@@ -9,7 +9,7 @@ package org.opendaylight.yangtools.yang.model.util.type;
 
 import static java.util.Objects.requireNonNull;
 
-import java.util.List;
+import java.util.Collection;
 import java.util.Set;
 import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.yangtools.yang.model.api.IdentitySchemaNode;
@@ -19,16 +19,16 @@ import org.opendaylight.yangtools.yang.model.api.type.IdentityrefTypeDefinition;
 
 final class BaseIdentityrefType extends AbstractBaseType<IdentityrefTypeDefinition>
         implements IdentityrefTypeDefinition {
-    private final @NonNull Set<IdentitySchemaNode> identities;
+    private final @NonNull Set<? extends IdentitySchemaNode> identities;
 
-    BaseIdentityrefType(final SchemaPath path, final List<UnknownSchemaNode> unknownSchemaNodes,
-            final Set<IdentitySchemaNode> identities) {
+    BaseIdentityrefType(final SchemaPath path, final Collection<? extends UnknownSchemaNode> unknownSchemaNodes,
+            final Set<? extends IdentitySchemaNode> identities) {
         super(path, unknownSchemaNodes);
         this.identities = requireNonNull(identities);
     }
 
     @Override
-    public Set<IdentitySchemaNode> getIdentities() {
+    public Set<? extends IdentitySchemaNode> getIdentities() {
         return identities;
     }
 
index b48ce547e7795d8716295d4a56d22d7f8be5f534..a5785dffd3b6d0a57ebadb73c542e17035b98f96 100644 (file)
@@ -9,7 +9,7 @@ package org.opendaylight.yangtools.yang.model.util.type;
 
 import static java.util.Objects.requireNonNull;
 
-import java.util.List;
+import java.util.Collection;
 import org.opendaylight.yangtools.yang.model.api.PathExpression;
 import org.opendaylight.yangtools.yang.model.api.SchemaPath;
 import org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode;
@@ -20,7 +20,7 @@ final class BaseLeafrefType extends AbstractBaseType<LeafrefTypeDefinition> impl
     private final boolean requireInstance;
 
     BaseLeafrefType(final SchemaPath path, final PathExpression pathStatement, final boolean requireInstance,
-            final List<UnknownSchemaNode> unknownSchemaNodes) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         super(path, unknownSchemaNodes);
         this.pathStatement = requireNonNull(pathStatement);
         this.requireInstance = requireInstance;
index 9eb3ec017a2e62838a4c06cc75c9489b05fbbf62..d1d0339afe1f96072a5c4e0a035d935184a81f32 100644 (file)
@@ -18,7 +18,7 @@ import org.opendaylight.yangtools.yang.model.api.type.UnionTypeDefinition;
 final class BaseUnionType extends AbstractBaseType<UnionTypeDefinition> implements UnionTypeDefinition {
     private final ImmutableList<TypeDefinition<?>> types;
 
-    BaseUnionType(final SchemaPath path, final List<UnknownSchemaNode> unknownSchemaNodes,
+    BaseUnionType(final SchemaPath path, final Collection<? extends UnknownSchemaNode> unknownSchemaNodes,
             final Collection<TypeDefinition<?>> types) {
         super(path, unknownSchemaNodes);
         this.types = ImmutableList.copyOf(types);
index 5bb12efb66a5db67f791c71304e84eb18b53f8fb..251bc8959ee0d437b148666d146c03f136591de5 100644 (file)
@@ -11,6 +11,7 @@ import static com.google.common.base.Preconditions.checkArgument;
 import static java.util.Objects.requireNonNull;
 
 import com.google.common.collect.ImmutableList;
+import java.util.Collection;
 import java.util.List;
 import java.util.Objects;
 import java.util.Optional;
@@ -68,7 +69,7 @@ final class BitImpl implements Bit, Immutable {
     }
 
     @Override
-    public List<UnknownSchemaNode> getUnknownSchemaNodes() {
+    public Collection<? extends UnknownSchemaNode> getUnknownSchemaNodes() {
         return unknownNodes;
     }
 
index c16c021f32861ab623e5a5f5572b3a08380940fb..178042eadc3805c6683252873e90265257c1bd98 100644 (file)
@@ -17,7 +17,7 @@ final class DerivedBinaryType extends AbstractLengthRestrictedDerivedType<Binary
         implements BinaryTypeDefinition {
     DerivedBinaryType(final BinaryTypeDefinition baseType, final SchemaPath path, final Object defaultValue,
             final String description, final String reference, final Status status, final String units,
-            final Collection<UnknownSchemaNode> unknownSchemNodes) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemNodes) {
         super(baseType, path, defaultValue, description, reference, status, units, unknownSchemNodes);
     }
 
index 6207ae2d43754a6086b69871eccd104086c0deea..fbc6fd854ca2010e090ea6660de76082424e37a2 100644 (file)
@@ -8,7 +8,6 @@
 package org.opendaylight.yangtools.yang.model.util.type;
 
 import java.util.Collection;
-import java.util.List;
 import org.opendaylight.yangtools.yang.model.api.SchemaPath;
 import org.opendaylight.yangtools.yang.model.api.Status;
 import org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode;
@@ -17,12 +16,12 @@ import org.opendaylight.yangtools.yang.model.api.type.BitsTypeDefinition;
 final class DerivedBitsType extends AbstractDerivedType<BitsTypeDefinition> implements BitsTypeDefinition {
     DerivedBitsType(final BitsTypeDefinition baseType, final SchemaPath path, final Object defaultValue,
         final String description, final String reference, final Status status, final String units,
-        final Collection<UnknownSchemaNode> unknownSchemNodes) {
+        final Collection<? extends UnknownSchemaNode> unknownSchemNodes) {
         super(baseType, path, defaultValue, description, reference, status, units, unknownSchemNodes);
     }
 
     @Override
-    public List<Bit> getBits() {
+    public Collection<? extends Bit> getBits() {
         return baseType().getBits();
     }
 
index c018a7ad802535f1f36a6a9d1b0a2e8c5bd14fc0..1a347611c60e7794b7db7cd04b7591fc877abb3a 100644 (file)
@@ -15,8 +15,8 @@ import org.opendaylight.yangtools.yang.model.api.type.BooleanTypeDefinition;
 
 final class DerivedBooleanType extends AbstractDerivedType<BooleanTypeDefinition> implements BooleanTypeDefinition {
     DerivedBooleanType(final BooleanTypeDefinition baseType, final SchemaPath path, final Object defaultValue,
-        final String description, final String reference, final Status status, final String units,
-        final Collection<UnknownSchemaNode> unknownSchemNodes) {
+            final String description, final String reference, final Status status, final String units,
+            final Collection<? extends UnknownSchemaNode> unknownSchemNodes) {
         super(baseType, path, defaultValue, description, reference, status, units, unknownSchemNodes);
     }
 
index 6f52d6108ad73c6a712187b8743d4dcaaade2990..27981bb8b616cfef37c80266c6a075ad8bc80c8c 100644 (file)
@@ -17,8 +17,8 @@ import org.opendaylight.yangtools.yang.model.api.type.DecimalTypeDefinition;
 final class DerivedDecimalType extends AbstractRangeRestrictedDerivedType<DecimalTypeDefinition, BigDecimal>
         implements DecimalTypeDefinition {
     DerivedDecimalType(final DecimalTypeDefinition baseType, final SchemaPath path, final Object defaultValue,
-        final String description, final String reference, final Status status, final String units,
-        final Collection<UnknownSchemaNode> unknownSchemNodes) {
+            final String description, final String reference, final Status status, final String units,
+            final Collection<? extends UnknownSchemaNode> unknownSchemNodes) {
         super(baseType, path, defaultValue, description, reference, status, units, unknownSchemNodes);
     }
 
index 6100823de169965c0c5de21b5a803db655de0a7a..6f8e157dd4bda9cf2917e60b556948e28498bca1 100644 (file)
@@ -16,7 +16,7 @@ import org.opendaylight.yangtools.yang.model.api.type.EmptyTypeDefinition;
 final class DerivedEmptyType extends AbstractDerivedType<EmptyTypeDefinition> implements EmptyTypeDefinition {
     DerivedEmptyType(final EmptyTypeDefinition baseType, final SchemaPath path, final Object defaultValue,
         final String description, final String reference, final Status status, final String units,
-        final Collection<UnknownSchemaNode> unknownSchemNodes) {
+        final Collection<? extends UnknownSchemaNode> unknownSchemNodes) {
         super(baseType, path, defaultValue, description, reference, status, units, unknownSchemNodes);
     }
 
index d3cf3d0b6da06ccbd14c903093c5baf63090e0f2..9a96e94e6a26d29392635c9807e21e1497f1b763 100644 (file)
@@ -17,7 +17,7 @@ import org.opendaylight.yangtools.yang.model.api.type.EnumTypeDefinition;
 final class DerivedEnumerationType extends AbstractDerivedType<EnumTypeDefinition> implements EnumTypeDefinition {
     DerivedEnumerationType(final EnumTypeDefinition baseType, final SchemaPath path, final Object defaultValue,
         final String description, final String reference, final Status status, final String units,
-        final Collection<UnknownSchemaNode> unknownSchemNodes) {
+        final Collection<? extends UnknownSchemaNode> unknownSchemNodes) {
         super(baseType, path, defaultValue, description, reference, status, units, unknownSchemNodes);
     }
 
index d1714d829807184365bdf873aecd141048e49344..c9505655bb223da9612ab575fcdce454d40f541e 100644 (file)
@@ -18,13 +18,13 @@ import org.opendaylight.yangtools.yang.model.api.type.IdentityrefTypeDefinition;
 final class DerivedIdentityrefType extends AbstractDerivedType<IdentityrefTypeDefinition>
         implements IdentityrefTypeDefinition {
     DerivedIdentityrefType(final IdentityrefTypeDefinition baseType, final SchemaPath path, final Object defaultValue,
-        final String description, final String reference, final Status status, final String units,
-        final Collection<UnknownSchemaNode> unknownSchemaNodes) {
+            final String description, final String reference, final Status status, final String units,
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         super(baseType, path, defaultValue, description, reference, status, units, unknownSchemaNodes);
     }
 
     @Override
-    public Set<IdentitySchemaNode> getIdentities() {
+    public Set<? extends IdentitySchemaNode> getIdentities() {
         return baseType().getIdentities();
     }
 
index 3922a7fe1af268cf6109d204d0e78b32f77b30aa..cc2926aa575c8f1af8e136469b72ee04b3767fc2 100644 (file)
@@ -19,7 +19,7 @@ final class DerivedInstanceIdentifierType extends AbstractDerivedType<InstanceId
 
     DerivedInstanceIdentifierType(final InstanceIdentifierTypeDefinition baseType, final SchemaPath path,
             final Object defaultValue, final String description, final String reference, final Status status,
-            final String units, final Collection<UnknownSchemaNode> unknownSchemaNodes,
+            final String units, final Collection<? extends UnknownSchemaNode> unknownSchemaNodes,
             final boolean requireInstance) {
         super(baseType, path, defaultValue, description, reference, status, units, unknownSchemaNodes);
         this.requireInstance = requireInstance;
index 6f798de41d53461585236895a5945cf9b59bbc4a..130150dcf7e53ad19a642d07a40c69748296341d 100644 (file)
@@ -17,7 +17,7 @@ final class DerivedInt16Type extends AbstractRangeRestrictedDerivedType<Int16Typ
         implements Int16TypeDefinition {
     DerivedInt16Type(final Int16TypeDefinition baseType, final SchemaPath path, final Object defaultValue,
             final String description, final String reference, final Status status, final String units,
-            final Collection<UnknownSchemaNode> unknownSchemaNodes) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         super(baseType, path, defaultValue, description, reference, status, units, unknownSchemaNodes);
     }
 
index 978580d10ed7022f0aa7befd9541a42778e4d3c1..2b597fc2c38e9a9ce429bd775862c627b5d86e0f 100644 (file)
@@ -17,7 +17,7 @@ final class DerivedInt32Type extends AbstractRangeRestrictedDerivedType<Int32Typ
         implements Int32TypeDefinition {
     DerivedInt32Type(final Int32TypeDefinition baseType, final SchemaPath path, final Object defaultValue,
             final String description, final String reference, final Status status, final String units,
-            final Collection<UnknownSchemaNode> unknownSchemaNodes) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         super(baseType, path, defaultValue, description, reference, status, units, unknownSchemaNodes);
     }
 
index 899a978af0b5c84ef543e920a84968f657fd3778..acd7ef00f277a9ac2f85d6798d0d834015ab8aaf 100644 (file)
@@ -17,7 +17,7 @@ final class DerivedInt64Type extends AbstractRangeRestrictedDerivedType<Int64Typ
         implements Int64TypeDefinition {
     DerivedInt64Type(final Int64TypeDefinition baseType, final SchemaPath path, final Object defaultValue,
             final String description, final String reference, final Status status, final String units,
-            final Collection<UnknownSchemaNode> unknownSchemaNodes) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         super(baseType, path, defaultValue, description, reference, status, units, unknownSchemaNodes);
     }
 
index 8937ed0def1558733913ae8212e82df622db7d9d..ba2d4d7b661bfee9d7e53c5a238efcce3ed9bc7e 100644 (file)
@@ -17,7 +17,7 @@ final class DerivedInt8Type extends AbstractRangeRestrictedDerivedType<Int8TypeD
         implements Int8TypeDefinition {
     DerivedInt8Type(final Int8TypeDefinition baseType, final SchemaPath path, final Object defaultValue,
             final String description, final String reference, final Status status, final String units,
-            final Collection<UnknownSchemaNode> unknownSchemaNodes) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         super(baseType, path, defaultValue, description, reference, status, units, unknownSchemaNodes);
     }
 
index 0a04811cd358e907647df5d6003be703d412f45a..598a193047ba1392ce047ad412057025bb6353a3 100644 (file)
@@ -18,7 +18,7 @@ final class DerivedLeafrefType extends AbstractDerivedType<LeafrefTypeDefinition
 
     DerivedLeafrefType(final LeafrefTypeDefinition baseType, final SchemaPath path, final Object defaultValue,
         final String description, final String reference, final Status status, final String units,
-        final Collection<UnknownSchemaNode> unknownSchemaNodes) {
+        final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         super(baseType, path, defaultValue, description, reference, status, units, unknownSchemaNodes);
     }
 
index 165f2b8adf61dd8e4d15104512c6bfec336b3b1f..fc8bd4096a63e73c0855145404dfccee0f7ffcb6 100644 (file)
@@ -19,7 +19,7 @@ final class DerivedStringType extends AbstractLengthRestrictedDerivedType<String
         implements StringTypeDefinition {
     DerivedStringType(final StringTypeDefinition baseType, final SchemaPath path, final Object defaultValue,
             final String description, final String reference, final Status status, final String units,
-            final Collection<UnknownSchemaNode> unknownSchemaNodes) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         super(baseType, path, defaultValue, description, reference, status, units, unknownSchemaNodes);
     }
 
index 94ff32ed6bf2e5eccb4e129b3a05c42258ae0ec3..444cd1fa73a508fd5c256aa6449a739ee5bc2202 100644 (file)
@@ -19,7 +19,7 @@ final class DerivedUint16Type extends AbstractRangeRestrictedDerivedType<Uint16T
 
     DerivedUint16Type(final Uint16TypeDefinition baseType, final SchemaPath path,
             final Object defaultValue, final String description, final String reference, final Status status,
-            final String units, final Collection<UnknownSchemaNode> unknownSchemaNodes) {
+            final String units, final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         super(baseType, path, defaultValue, description, reference, status, units, unknownSchemaNodes);
     }
 
index 6e695d7d1c3846a960d6c9581bae7a8c4e17a8fa..281f1c2765c7ee590fe6bed150dd428467344ecd 100644 (file)
@@ -19,7 +19,7 @@ final class DerivedUint32Type extends AbstractRangeRestrictedDerivedType<Uint32T
 
     DerivedUint32Type(final Uint32TypeDefinition baseType, final SchemaPath path,
             final Object defaultValue, final String description, final String reference, final Status status,
-            final String units, final Collection<UnknownSchemaNode> unknownSchemaNodes) {
+            final String units, final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         super(baseType, path, defaultValue, description, reference, status, units, unknownSchemaNodes);
     }
 
index 83ea8f34ae1d330e7776eb6c0a8af942080e549e..7dcccaf905486f691917915e3fadc3776d0a7adb 100644 (file)
@@ -18,7 +18,7 @@ final class DerivedUint64Type extends AbstractRangeRestrictedDerivedType<Uint64T
         implements Uint64TypeDefinition {
     DerivedUint64Type(final Uint64TypeDefinition baseType, final SchemaPath path,
             final Object defaultValue, final String description, final String reference, final Status status,
-            final String units, final Collection<UnknownSchemaNode> unknownSchemaNodes) {
+            final String units, final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         super(baseType, path, defaultValue, description, reference, status, units, unknownSchemaNodes);
     }
 
index d120b56fcd85e0679320e0546a42e4c7af5a9358..e3d55e548f1faa8036f52b5b05f164090645c0ee 100644 (file)
@@ -18,7 +18,7 @@ final class DerivedUint8Type extends AbstractRangeRestrictedDerivedType<Uint8Typ
         implements Uint8TypeDefinition {
     DerivedUint8Type(final Uint8TypeDefinition baseType, final SchemaPath path,
             final Object defaultValue, final String description, final String reference, final Status status,
-            final String units, final Collection<UnknownSchemaNode> unknownSchemaNodes) {
+            final String units, final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         super(baseType, path, defaultValue, description, reference, status, units, unknownSchemaNodes);
     }
 
index a2c540f470368b4fc83b7e335e044af0d71bbfde..70944de5955395f5de445b9241d50c5ed97a0240 100644 (file)
@@ -18,7 +18,7 @@ import org.opendaylight.yangtools.yang.model.api.type.UnionTypeDefinition;
 final class DerivedUnionType extends AbstractDerivedType<UnionTypeDefinition> implements UnionTypeDefinition {
     DerivedUnionType(final UnionTypeDefinition baseType, final SchemaPath path, final Object defaultValue,
         final String description, final String reference, final Status status, final String units,
-        final Collection<UnknownSchemaNode> unknownSchemaNodes) {
+        final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         super(baseType, path, defaultValue, description, reference, status, units, unknownSchemaNodes);
     }
 
index 5d21de188c1ddd33c944d83c42d6b7426a3959ec..de3ff397ee3a89aaa66182844ccbe8c6675ddc4d 100644 (file)
@@ -57,7 +57,7 @@ public final class EnumPairBuilder implements Builder<EnumPair>, Mutable {
         return this;
     }
 
-    public EnumPairBuilder setUnknownSchemaNodes(final Collection<UnknownSchemaNode> unknownSchemaNodes) {
+    public EnumPairBuilder setUnknownSchemaNodes(final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         this.unknownSchemaNodes = ImmutableList.copyOf(unknownSchemaNodes);
         return this;
     }
index fdf61dd77eca80c0b758a3223a9ca9f98b0df693..b74d75735e4b6f173357b44b01408c97e7f0e78c 100644 (file)
@@ -11,7 +11,7 @@ import static java.util.Objects.requireNonNull;
 
 import com.google.common.base.MoreObjects;
 import com.google.common.collect.ImmutableList;
-import java.util.List;
+import java.util.Collection;
 import java.util.Objects;
 import java.util.Optional;
 import org.eclipse.jdt.annotation.NonNull;
@@ -39,7 +39,7 @@ final class EnumPairImpl implements EnumPair, Immutable {
     }
 
     @Override
-    public List<UnknownSchemaNode> getUnknownSchemaNodes() {
+    public Collection<? extends UnknownSchemaNode> getUnknownSchemaNodes() {
         return unknownSchemaNodes;
     }
 
index ee94181869229d293c0f4502ab7e998181517696..004992a3ccd05c67502f1611d3da6cc4d45fa6b2 100644 (file)
@@ -17,7 +17,7 @@ import org.opendaylight.yangtools.yang.model.api.type.LengthConstraint;
 final class RestrictedBinaryType extends AbstractLengthRestrictedType<BinaryTypeDefinition>
         implements BinaryTypeDefinition {
     RestrictedBinaryType(final BinaryTypeDefinition baseType, final SchemaPath path,
-            final Collection<UnknownSchemaNode> unknownSchemaNodes,
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes,
             final @Nullable LengthConstraint lengthConstraint) {
         super(baseType, path, unknownSchemaNodes, lengthConstraint);
     }
index 7353d2c58ee71a90290f7ff5c5d3f728e61b8033..b89fd2e5804ee6ee3693c96432d5bb93a901fa84 100644 (file)
@@ -9,7 +9,6 @@ package org.opendaylight.yangtools.yang.model.util.type;
 
 import com.google.common.collect.ImmutableList;
 import java.util.Collection;
-import java.util.List;
 import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.yangtools.yang.model.api.SchemaPath;
 import org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode;
@@ -19,13 +18,13 @@ final class RestrictedBitsType extends AbstractRestrictedType<BitsTypeDefinition
     private final @NonNull ImmutableList<Bit> bits;
 
     RestrictedBitsType(final BitsTypeDefinition baseType, final SchemaPath path,
-            final Collection<UnknownSchemaNode> unknownSchemaNodes, final Collection<Bit> bits) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes, final Collection<Bit> bits) {
         super(baseType, path, unknownSchemaNodes);
         this.bits = ImmutableList.copyOf(bits);
     }
 
     @Override
-    public List<Bit> getBits() {
+    public Collection<? extends Bit> getBits() {
         return bits;
     }
 
index 91e2a978d00f6e9cc7554a80d7965e80d2b1e826..186554a1235658f2075891f06795bf7e9ab7a791 100644 (file)
@@ -15,7 +15,7 @@ import org.opendaylight.yangtools.yang.model.api.type.BooleanTypeDefinition;
 final class RestrictedBooleanType extends AbstractRestrictedType<BooleanTypeDefinition>
         implements BooleanTypeDefinition {
     RestrictedBooleanType(final BooleanTypeDefinition baseType, final SchemaPath path,
-            final Collection<UnknownSchemaNode> unknownSchemaNodes) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         super(baseType, path, unknownSchemaNodes);
     }
 
index 9066aad7adbbde929dcd946b22d201a1eebc55b2..94c0761395fcc10baf68b589ee5fbdd903dbf9c2 100644 (file)
@@ -18,8 +18,8 @@ import org.opendaylight.yangtools.yang.model.api.type.RangeConstraint;
 final class RestrictedDecimalType extends AbstractRangeRestrictedType<DecimalTypeDefinition, BigDecimal>
         implements DecimalTypeDefinition {
     RestrictedDecimalType(final DecimalTypeDefinition baseType, final SchemaPath path,
-        final Collection<UnknownSchemaNode> unknownSchemaNodes,
-        final @Nullable RangeConstraint<BigDecimal> rangeConstraint) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes,
+            final @Nullable RangeConstraint<BigDecimal> rangeConstraint) {
         super(baseType, path, unknownSchemaNodes, rangeConstraint);
     }
 
index fc36f91e72fed44586a9cd0784ec49132746205e..840bbcb7e0c60f35ee1b4f34962e27e1798bb388 100644 (file)
@@ -14,7 +14,7 @@ import org.opendaylight.yangtools.yang.model.api.type.EmptyTypeDefinition;
 
 final class RestrictedEmptyType extends AbstractRestrictedType<EmptyTypeDefinition> implements EmptyTypeDefinition {
     RestrictedEmptyType(final EmptyTypeDefinition baseType, final SchemaPath path,
-            final Collection<UnknownSchemaNode> unknownSchemaNodes) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         super(baseType, path, unknownSchemaNodes);
     }
 
index 5fbec43c204e90b8f3528bca960690cb3248d470..1058cb9b9aec55e6313c4e3e4c57033657a8105a 100644 (file)
@@ -19,7 +19,7 @@ final class RestrictedEnumerationType extends AbstractRestrictedType<EnumTypeDef
     private final @NonNull ImmutableList<EnumPair> values;
 
     RestrictedEnumerationType(final EnumTypeDefinition baseType, final SchemaPath path,
-            final Collection<UnknownSchemaNode> unknownSchemaNodes, final Collection<EnumPair> values) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes, final Collection<EnumPair> values) {
         super(baseType, path, unknownSchemaNodes);
         this.values = ImmutableList.copyOf(values);
     }
index fae4d208d1a053f64d9922bac85bcc4bd147b5c6..7429c45eedd1ac6fa587412b89072c531d21b6b7 100644 (file)
@@ -17,12 +17,12 @@ import org.opendaylight.yangtools.yang.model.api.type.IdentityrefTypeDefinition;
 final class RestrictedIdentityrefType extends AbstractRestrictedType<IdentityrefTypeDefinition>
         implements IdentityrefTypeDefinition {
     RestrictedIdentityrefType(final IdentityrefTypeDefinition baseType, final SchemaPath path,
-            final Collection<UnknownSchemaNode> unknownSchemaNodes) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         super(baseType, path, unknownSchemaNodes);
     }
 
     @Override
-    public Set<IdentitySchemaNode> getIdentities() {
+    public Set<? extends IdentitySchemaNode> getIdentities() {
         return getBaseType().getIdentities();
     }
 
index ed84cd99cf60d4d621757a3f010e65215e7863b5..a6f1fb5d8e69c9ea99bd6a7d9b70845b4de2f168 100644 (file)
@@ -17,7 +17,7 @@ final class RestrictedInstanceIdentifierType extends AbstractRestrictedType<Inst
     private final boolean requireInstance;
 
     RestrictedInstanceIdentifierType(final InstanceIdentifierTypeDefinition baseType, final SchemaPath path,
-        final Collection<UnknownSchemaNode> unknownSchemaNodes, final boolean requireInstance) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes, final boolean requireInstance) {
         super(baseType, path, unknownSchemaNodes);
         this.requireInstance = requireInstance;
     }
index 68ed9afb8506511e1617ee53876b71e5bd09c0a0..2311cdb8f23f243f50b095cfa55d1269f7619346 100644 (file)
@@ -17,8 +17,8 @@ import org.opendaylight.yangtools.yang.model.api.type.RangeConstraint;
 final class RestrictedInt16Type extends AbstractRangeRestrictedType<Int16TypeDefinition, Short>
         implements Int16TypeDefinition {
     RestrictedInt16Type(final Int16TypeDefinition baseType, final SchemaPath path,
-        final Collection<UnknownSchemaNode> unknownSchemaNodes,
-        final @Nullable RangeConstraint<Short> rangeConstraint) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes,
+            final @Nullable RangeConstraint<Short> rangeConstraint) {
         super(baseType, path, unknownSchemaNodes, rangeConstraint);
     }
 
index c27e2cd59d236b2846a50015970b63afd1ebdf9f..a4ca9e9cff481b5d395d475a739bd16a6284aebd 100644 (file)
@@ -17,8 +17,8 @@ import org.opendaylight.yangtools.yang.model.api.type.RangeConstraint;
 final class RestrictedInt32Type extends AbstractRangeRestrictedType<Int32TypeDefinition, Integer>
         implements Int32TypeDefinition {
     RestrictedInt32Type(final Int32TypeDefinition baseType, final SchemaPath path,
-        final Collection<UnknownSchemaNode> unknownSchemaNodes,
-        final @Nullable RangeConstraint<Integer> rangeConstraint) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes,
+            final @Nullable RangeConstraint<Integer> rangeConstraint) {
         super(baseType, path, unknownSchemaNodes, rangeConstraint);
     }
 
index 128fd439ab1be348d1fd5cb24e67d88b553efdfd..5774fdc2f7af1e47e596d4cdc96f0bc92125ac76 100644 (file)
@@ -17,7 +17,8 @@ import org.opendaylight.yangtools.yang.model.api.type.RangeConstraint;
 final class RestrictedInt64Type extends AbstractRangeRestrictedType<Int64TypeDefinition, Long>
         implements Int64TypeDefinition {
     RestrictedInt64Type(final Int64TypeDefinition baseType, final SchemaPath path,
-        final Collection<UnknownSchemaNode> unknownSchemaNodes, final @Nullable RangeConstraint<Long> rangeConstraint) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes,
+            final @Nullable RangeConstraint<Long> rangeConstraint) {
         super(baseType, path, unknownSchemaNodes, rangeConstraint);
     }
 
index dbc749e40b1ce46d73bf65b871db56a408fd8b20..6ebd7f56ba6f6aba1452c55020b47762e1f31d00 100644 (file)
@@ -17,7 +17,8 @@ import org.opendaylight.yangtools.yang.model.api.type.RangeConstraint;
 final class RestrictedInt8Type extends AbstractRangeRestrictedType<Int8TypeDefinition, Byte>
         implements Int8TypeDefinition {
     RestrictedInt8Type(final Int8TypeDefinition baseType, final SchemaPath path,
-        final Collection<UnknownSchemaNode> unknownSchemaNodes, final @Nullable RangeConstraint<Byte> rangeConstraint) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes,
+            final @Nullable RangeConstraint<Byte> rangeConstraint) {
         super(baseType, path, unknownSchemaNodes, rangeConstraint);
     }
 
index a09143e4ab6beac7761ff1b6e92aaa23de25baf3..3c37ca4ab9fff6779ae6c986d5bf8a3becd14c39 100644 (file)
@@ -19,7 +19,7 @@ final class RestrictedLeafrefType extends AbstractRestrictedType<LeafrefTypeDefi
     private final boolean requireInstance;
 
     RestrictedLeafrefType(final LeafrefTypeDefinition baseType, final SchemaPath path,
-            final Collection<UnknownSchemaNode> unknownSchemaNodes, final boolean requireInstance) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes, final boolean requireInstance) {
         super(baseType, path, unknownSchemaNodes);
 
         this.requireInstance = requireInstance;
index 37b97570efdc0a2abc8c330fc02282a09019a944..2edee42d9de1e514ca62e299d40d62b3e8c37421 100644 (file)
@@ -23,9 +23,9 @@ final class RestrictedStringType extends AbstractLengthRestrictedType<StringType
     private final @NonNull ImmutableList<PatternConstraint> patternConstraints;
 
     RestrictedStringType(final StringTypeDefinition baseType, final SchemaPath path,
-        final Collection<UnknownSchemaNode> unknownSchemaNodes,
-        final @Nullable LengthConstraint lengthConstraints,
-        final List<PatternConstraint> patternConstraints) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes,
+            final @Nullable LengthConstraint lengthConstraints,
+            final List<PatternConstraint> patternConstraints) {
         super(baseType, path, unknownSchemaNodes, lengthConstraints);
         this.patternConstraints = ImmutableList.copyOf(patternConstraints);
     }
index 9078f2c4fd2c339d362f1d5c0e5440fac8901101..97b0b49d4f06e5cc5a3d09950301483215957123 100644 (file)
@@ -18,7 +18,7 @@ import org.opendaylight.yangtools.yang.model.api.type.Uint16TypeDefinition;
 final class RestrictedUint16Type extends AbstractRangeRestrictedType<Uint16TypeDefinition, Uint16>
         implements Uint16TypeDefinition {
     RestrictedUint16Type(final Uint16TypeDefinition baseType, final SchemaPath path,
-            final Collection<UnknownSchemaNode> unknownSchemaNodes,
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes,
             final @Nullable RangeConstraint<Uint16> rangeConstraint) {
         super(baseType, path, unknownSchemaNodes, rangeConstraint);
     }
index 40afffe0d8f2266b9740c1a907bc3c27547e6dcf..be0b34eb3859d895c0f24a586cf48e1ccac4c319 100644 (file)
@@ -18,7 +18,7 @@ import org.opendaylight.yangtools.yang.model.api.type.Uint32TypeDefinition;
 final class RestrictedUint32Type extends AbstractRangeRestrictedType<Uint32TypeDefinition, Uint32>
         implements Uint32TypeDefinition {
     RestrictedUint32Type(final Uint32TypeDefinition baseType, final SchemaPath path,
-            final Collection<UnknownSchemaNode> unknownSchemaNodes,
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes,
             final @Nullable RangeConstraint<Uint32> rangeConstraint) {
         super(baseType, path, unknownSchemaNodes, rangeConstraint);
     }
index 9265b4381bac1837beab2b1eae23ef0375e444b7..0bec7890f8fcbf559d3d44e3e1157ff15d54c0a8 100644 (file)
@@ -18,7 +18,7 @@ import org.opendaylight.yangtools.yang.model.api.type.Uint64TypeDefinition;
 final class RestrictedUint64Type extends AbstractRangeRestrictedType<Uint64TypeDefinition, Uint64>
         implements Uint64TypeDefinition {
     RestrictedUint64Type(final Uint64TypeDefinition baseType, final SchemaPath path,
-            final Collection<UnknownSchemaNode> unknownSchemaNodes,
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes,
             final @Nullable RangeConstraint<Uint64> rangeConstraint) {
         super(baseType, path, unknownSchemaNodes, rangeConstraint);
     }
index 11e564b4805fee1d37bf5de1c5480ca33bbfd94d..e7b251314efe3ece07a25218002790eacdd8393a 100644 (file)
@@ -18,7 +18,7 @@ import org.opendaylight.yangtools.yang.model.api.type.Uint8TypeDefinition;
 final class RestrictedUint8Type extends AbstractRangeRestrictedType<Uint8TypeDefinition, Uint8>
         implements Uint8TypeDefinition {
     RestrictedUint8Type(final Uint8TypeDefinition baseType, final SchemaPath path,
-            final Collection<UnknownSchemaNode> unknownSchemaNodes,
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes,
             final @Nullable RangeConstraint<Uint8> rangeConstraint) {
         super(baseType, path, unknownSchemaNodes, rangeConstraint);
     }
index e67dbe92eafe491eb2c2146322cf93d74523954a..7a9b1e35ba5fddd3d8bda199af6e7d555605b811 100644 (file)
@@ -16,7 +16,7 @@ import org.opendaylight.yangtools.yang.model.api.type.UnionTypeDefinition;
 
 final class RestrictedUnionType extends AbstractRestrictedType<UnionTypeDefinition> implements UnionTypeDefinition {
     RestrictedUnionType(final UnionTypeDefinition baseType, final SchemaPath path,
-            final Collection<UnknownSchemaNode> unknownSchemaNodes) {
+            final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
         super(baseType, path, unknownSchemaNodes);
     }
 
index ef54193ed753d773454294abe2bb022fa7273882..19071d0697263a4404603a642069fb70ef2b11c9 100644 (file)
@@ -10,7 +10,7 @@ package org.opendaylight.yangtools.yang.model.util.type;
 import static java.util.Objects.requireNonNull;
 
 import com.google.common.collect.ImmutableList;
-import java.util.List;
+import java.util.Collection;
 import org.eclipse.jdt.annotation.NonNull;
 import org.eclipse.jdt.annotation.Nullable;
 import org.opendaylight.yangtools.concepts.Builder;
@@ -36,7 +36,7 @@ public abstract class TypeBuilder<T extends TypeDefinition<T>> implements Builde
         return path;
     }
 
-    final @NonNull List<UnknownSchemaNode> getUnknownSchemaNodes() {
+    final @NonNull Collection<? extends UnknownSchemaNode> getUnknownSchemaNodes() {
         return unknownSchemaNodes.build();
     }
 
index 94501704b03c24561867e55a501e8b54d499a494..5856be60cc3150f07f831e333fa7ec54813ab4ec 100644 (file)
@@ -16,6 +16,7 @@ import static org.mockito.Mockito.mock;
 import com.google.common.collect.ImmutableSet;
 import java.net.URI;
 import java.util.Arrays;
+import java.util.Collection;
 import java.util.Collections;
 import java.util.HashSet;
 import java.util.List;
@@ -407,7 +408,8 @@ public class SchemaContextProxyTest {
         final Set<DataSchemaNode> childNodes = Collections.singleton(mockedContainer);
         doReturn(childNodes).when(moduleConfig).getChildNodes();
 
-        final Set<DataSchemaNode> dataDefinitions = filteringSchemaContextProxy.getDataDefinitions();
+        final Collection<? extends DataSchemaNode> dataDefinitions =
+                filteringSchemaContextProxy.getDataDefinitions();
         assertTrue(dataDefinitions.contains(mockedContainer));
     }
 
@@ -422,7 +424,7 @@ public class SchemaContextProxyTest {
         final Set<NotificationDefinition> notifications = Collections.singleton(mockedNotification);
         doReturn(notifications).when(moduleConfig).getNotifications();
 
-        final Set<NotificationDefinition> schemaContextProxyNotifications =
+        final Collection<? extends NotificationDefinition> schemaContextProxyNotifications =
             filteringSchemaContextProxy.getNotifications();
         assertTrue(schemaContextProxyNotifications.contains(mockedNotification));
     }
@@ -438,7 +440,7 @@ public class SchemaContextProxyTest {
         final Set<RpcDefinition> rpcs = Collections.singleton(mockedRpc);
         doReturn(rpcs).when(moduleConfig).getRpcs();
 
-        final Set<RpcDefinition> operations = filteringSchemaContextProxy.getOperations();
+        final Collection<? extends RpcDefinition> operations = filteringSchemaContextProxy.getOperations();
         assertTrue(operations.contains(mockedRpc));
     }
 
@@ -453,7 +455,8 @@ public class SchemaContextProxyTest {
         final List<ExtensionDefinition> extensions = Collections.singletonList(mockedExtension);
         doReturn(extensions).when(moduleConfig).getExtensionSchemaNodes();
 
-        final Set<ExtensionDefinition> schemaContextProxyExtensions = filteringSchemaContextProxy.getExtensions();
+        final Collection<? extends ExtensionDefinition> schemaContextProxyExtensions =
+                filteringSchemaContextProxy.getExtensions();
         assertTrue(schemaContextProxyExtensions.contains(mockedExtension));
     }
 
@@ -468,7 +471,7 @@ public class SchemaContextProxyTest {
         final List<UnknownSchemaNode> unknownSchemaNodes = Collections.singletonList(mockedUnknownSchemaNode);
         doReturn(unknownSchemaNodes).when(moduleConfig).getUnknownSchemaNodes();
 
-        final List<UnknownSchemaNode> schemaContextProxyUnknownSchemaNodes =
+        final Collection<? extends UnknownSchemaNode> schemaContextProxyUnknownSchemaNodes =
                 filteringSchemaContextProxy.getUnknownSchemaNodes();
         assertTrue(schemaContextProxyUnknownSchemaNodes.contains(mockedUnknownSchemaNode));
     }
@@ -484,7 +487,7 @@ public class SchemaContextProxyTest {
         final Set<TypeDefinition<?>> typeDefinitions = Collections.singleton(mockedTypeDefinition);
         doReturn(typeDefinitions).when(moduleConfig).getTypeDefinitions();
 
-        final Set<TypeDefinition<?>> schemaContextProxyTypeDefinitions = filteringSchemaContextProxy
+        final Collection<? extends TypeDefinition<?>> schemaContextProxyTypeDefinitions = filteringSchemaContextProxy
             .getTypeDefinitions();
         assertTrue(schemaContextProxyTypeDefinitions.contains(mockedTypeDefinition));
     }
@@ -500,7 +503,8 @@ public class SchemaContextProxyTest {
         final Set<DataSchemaNode> childNodes = Collections.singleton(mockedContainer);
         doReturn(childNodes).when(moduleConfig).getChildNodes();
 
-        final Set<DataSchemaNode> schemaContextProxyChildNodes = filteringSchemaContextProxy.getChildNodes();
+        final Collection<? extends DataSchemaNode> schemaContextProxyChildNodes =
+                filteringSchemaContextProxy.getChildNodes();
         assertTrue(schemaContextProxyChildNodes.contains(mockedContainer));
     }
 
@@ -515,7 +519,8 @@ public class SchemaContextProxyTest {
         final Set<GroupingDefinition> groupings = Collections.singleton(mockedGrouping);
         doReturn(groupings).when(moduleConfig).getGroupings();
 
-        final Set<GroupingDefinition> schemaContextProxyGroupings = filteringSchemaContextProxy.getGroupings();
+        final Collection<? extends GroupingDefinition> schemaContextProxyGroupings =
+                filteringSchemaContextProxy.getGroupings();
         assertTrue(schemaContextProxyGroupings.contains(mockedGrouping));
     }
 
@@ -548,7 +553,7 @@ public class SchemaContextProxyTest {
                 assertEquals(module, filteringSchemaContextProxy.findModule(module.getName(), module.getRevision())
                     .get());
 
-                Set<Module> mod = filteringSchemaContextProxy.findModules(module.getNamespace());
+                Collection<? extends Module> mod = filteringSchemaContextProxy.findModules(module.getNamespace());
                 assertTrue(mod.contains(module));
                 assertEquals(module, filteringSchemaContextProxy.findModule(module.getNamespace(),
                     module.getRevision().orElse(null)).get());
index 411ded51f616d35e7ae8dec09f90e69e89a75554..34c9fddb64094ddcf4e9465d3f26f3f54bc32d96 100644 (file)
@@ -14,6 +14,7 @@ import static org.mockito.Mockito.mock;
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableSet;
 import java.net.URI;
+import java.util.Collection;
 import java.util.List;
 import java.util.Optional;
 import java.util.Set;
@@ -54,17 +55,19 @@ public class SimpleSchemaContextTest {
     }
 
     private static void assertGetModules(final List<Module> expected, final Module... modules) {
-        final Set<Module> actual = SimpleSchemaContext.forModules(ImmutableSet.copyOf(modules)).getModules();
+        final Set<Module> actual = SimpleSchemaContext.forModules(ImmutableList.copyOf(modules)).getModules();
         assertArrayEquals(expected.toArray(), actual.toArray());
     }
 
     private static void assertFindModules(final List<Module> expected, final String name, final Module... modules) {
-        final Set<Module> actual = SimpleSchemaContext.forModules(ImmutableSet.copyOf(modules)).findModules(name);
+        final Collection<? extends Module> actual = SimpleSchemaContext.forModules(ImmutableList.copyOf(modules))
+                .findModules(name);
         assertArrayEquals(expected.toArray(), actual.toArray());
     }
 
     private static void assertFindModules(final List<Module> expected, final URI uri, final Module... modules) {
-        final Set<Module> actual = SimpleSchemaContext.forModules(ImmutableSet.copyOf(modules)).findModules(uri);
+        final Collection<? extends Module> actual = SimpleSchemaContext.forModules(ImmutableSet.copyOf(modules))
+                .findModules(uri);
         assertArrayEquals(expected.toArray(), actual.toArray());
     }
 
index 9f8573b92ed32d3de24c9cf8fd89ae75058f6c94..c13fc5bc65957ce246a0074a6410d8b5a746fa27 100644 (file)
@@ -8,6 +8,7 @@
 package org.opendaylight.yangtools.yang.parser.rfc7950.stmt;
 
 import com.google.common.collect.ImmutableSet;
+import java.util.Collection;
 import java.util.HashSet;
 import java.util.LinkedHashSet;
 import java.util.Optional;
@@ -62,12 +63,12 @@ public abstract class AbstractEffectiveDocumentedDataNodeContainer<A, D extends
     }
 
     @Override
-    public final Set<TypeDefinition<?>> getTypeDefinitions() {
+    public final Collection<? extends TypeDefinition<?>> getTypeDefinitions() {
         return typeDefinitions;
     }
 
     @Override
-    public final Set<DataSchemaNode> getChildNodes() {
+    public final Collection<? extends DataSchemaNode> getChildNodes() {
         return publicChildNodes;
     }
 
index ae10073206be71879b2e085b44e4ad19a90e59f0..0d217c24888eb2636b8f872333dee56a8b73997d 100644 (file)
@@ -11,6 +11,7 @@ import com.google.common.collect.ImmutableList;
 import java.lang.invoke.MethodHandles;
 import java.lang.invoke.VarHandle;
 import java.util.ArrayList;
+import java.util.Collection;
 import java.util.List;
 import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.yangtools.yang.model.api.DocumentedNode;
@@ -57,7 +58,7 @@ public abstract class AbstractEffectiveDocumentedNode<A, D extends DeclaredState
     }
 
     @Override
-    public final ImmutableList<UnknownSchemaNode> getUnknownSchemaNodes() {
+    public final Collection<? extends UnknownSchemaNode> getUnknownSchemaNodes() {
         final ImmutableList<UnknownSchemaNode> existing =
                 (ImmutableList<UnknownSchemaNode>) UNKNOWN_NODES.getAcquire(this);
         return existing != null ? existing : loadUnknownSchemaNodes();
index 055188be4e45d478916d8e92689f99619d2fc2f8..654431ce7ec3d0dd8cf58cb8c5892ab33feef1b6 100644 (file)
@@ -15,6 +15,7 @@ import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableSet;
 import java.net.URI;
 import java.util.ArrayList;
+import java.util.Collection;
 import java.util.HashSet;
 import java.util.LinkedHashSet;
 import java.util.List;
@@ -198,57 +199,57 @@ public abstract class AbstractEffectiveModule<D extends DeclaredStatement<String
     }
 
     @Override
-    public Set<ModuleImport> getImports() {
+    public Collection<? extends ModuleImport> getImports() {
         return imports;
     }
 
     @Override
-    public Set<FeatureDefinition> getFeatures() {
+    public Collection<? extends FeatureDefinition> getFeatures() {
         return features;
     }
 
     @Override
-    public Set<NotificationDefinition> getNotifications() {
+    public Collection<? extends NotificationDefinition> getNotifications() {
         return notifications;
     }
 
     @Override
-    public Set<AugmentationSchemaNode> getAugmentations() {
+    public Collection<? extends AugmentationSchemaNode> getAugmentations() {
         return augmentations;
     }
 
     @Override
-    public Set<RpcDefinition> getRpcs() {
+    public Collection<? extends RpcDefinition> getRpcs() {
         return rpcs;
     }
 
     @Override
-    public Set<Deviation> getDeviations() {
+    public Collection<? extends Deviation> getDeviations() {
         return deviations;
     }
 
     @Override
-    public List<ExtensionDefinition> getExtensionSchemaNodes() {
+    public Collection<? extends ExtensionDefinition> getExtensionSchemaNodes() {
         return extensionNodes;
     }
 
     @Override
-    public Set<IdentitySchemaNode> getIdentities() {
+    public Collection<? extends IdentitySchemaNode> getIdentities() {
         return identities;
     }
 
     @Override
-    public final Set<TypeDefinition<?>> getTypeDefinitions() {
+    public final Collection<? extends TypeDefinition<?>> getTypeDefinitions() {
         return typeDefinitions;
     }
 
     @Override
-    public final Set<DataSchemaNode> getChildNodes() {
+    public final Collection<? extends DataSchemaNode> getChildNodes() {
         return publicChildNodes;
     }
 
     @Override
-    public final Set<GroupingDefinition> getGroupings() {
+    public final Collection<? extends GroupingDefinition> getGroupings() {
         return groupings;
     }
 
@@ -259,7 +260,7 @@ public abstract class AbstractEffectiveModule<D extends DeclaredStatement<String
     }
 
     @Override
-    public Set<UsesNode> getUses() {
+    public Collection<? extends UsesNode> getUses() {
         return uses;
     }
 
index 12226f34b52d5f8648aa6918fb130a87ab1d3eaf..4a5e137e5c8fd13918ccce14d19f519f571731e0 100644 (file)
@@ -11,6 +11,7 @@ import com.google.common.annotations.Beta;
 import com.google.common.collect.ImmutableSet;
 import java.lang.invoke.MethodHandles;
 import java.lang.invoke.VarHandle;
+import java.util.Collection;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.MustConstraintAware;
 import org.opendaylight.yangtools.yang.model.api.MustDefinition;
@@ -39,7 +40,7 @@ public abstract class AbstractEffectiveMustConstraintAwareDataSchemaNode<D exten
     }
 
     @Override
-    public final ImmutableSet<MustDefinition> getMustConstraints() {
+    public final Collection<? extends MustDefinition> getMustConstraints() {
         return derivedSet(MUST_CONSTRAINTS, MustDefinition.class);
     }
 }
index ac6661cb7b3024c645a5bc4b8ee446bee29533b8..56e2e141bd94000ac0609bc9e0fa5f98f2f37ac9 100644 (file)
@@ -10,8 +10,8 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt;
 import com.google.common.annotations.Beta;
 import com.google.common.base.MoreObjects;
 import com.google.common.collect.ImmutableSet;
+import java.util.Collection;
 import java.util.Objects;
-import java.util.Set;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.ActionDefinition;
 import org.opendaylight.yangtools.yang.model.api.NotificationDefinition;
@@ -26,12 +26,12 @@ public abstract class AbstractEffectiveOperationContainerSchemaNode<D extends De
     }
 
     @Override
-    public final Set<ActionDefinition> getActions() {
+    public final Collection<? extends ActionDefinition> getActions() {
         return ImmutableSet.of();
     }
 
     @Override
-    public final Set<NotificationDefinition> getNotifications() {
+    public final Collection<? extends NotificationDefinition> getNotifications() {
         return ImmutableSet.of();
     }
 
index 8bf9b59fb5ad7ea1a153406ff6de75cb338671ed..a5fafd4976704abee61a4060279a28fc1bcb5908 100644 (file)
@@ -8,6 +8,7 @@
 package org.opendaylight.yangtools.yang.parser.rfc7950.stmt;
 
 import com.google.common.collect.ImmutableSet;
+import java.util.Collection;
 import java.util.LinkedHashSet;
 import java.util.Optional;
 import java.util.Set;
@@ -92,7 +93,7 @@ public abstract class AbstractEffectiveSimpleDataNodeContainer<D extends Declare
     }
 
     @Override
-    public Set<AugmentationSchemaNode> getAvailableAugmentations() {
+    public Collection<? extends AugmentationSchemaNode> getAvailableAugmentations() {
         return augmentations;
     }
 
index b87da7e799ae67bccb3f28e124ae3160bbb26dc3..d4e6df5ce8820490b660db8766f17dd1d65ccee7 100644 (file)
@@ -9,12 +9,8 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt;
 
 import com.google.common.annotations.Beta;
 import com.google.common.collect.Collections2;
-import com.google.common.collect.ImmutableList;
-import com.google.common.collect.ImmutableSet;
 import java.util.Collection;
-import java.util.List;
 import java.util.Optional;
-import java.util.Set;
 import org.eclipse.jdt.annotation.NonNullByDefault;
 import org.opendaylight.yangtools.concepts.Mutable;
 import org.opendaylight.yangtools.yang.common.QName;
@@ -58,19 +54,9 @@ public final class EffectiveStatementMixins {
     // Marker interface requiring all mixins to be derived from EffectiveStatement.
     private interface Mixin<A, D extends DeclaredStatement<A>> extends EffectiveStatement<A, D> {
         @SuppressWarnings("unchecked")
-        default <T> Collection<T> filterEffectiveStatements(final Class<T> type) {
+        default <T> Collection<? extends T> filterEffectiveStatements(final Class<T> type) {
             // Yeah, this is not nice, but saves one transformation
-            return (Collection<T>) Collections2.filter(effectiveSubstatements(), type::isInstance);
-        }
-
-        // FIXME: YANGTOOLS-1068: eliminate this once we can return collections
-        default <T> List<T> filterEffectiveStatementsList(final Class<T> type) {
-            return ImmutableList.copyOf(filterEffectiveStatements(type));
-        }
-
-        // FIXME: YANGTOOLS-1068: eliminate this once we can return collections
-        default <T> Set<T> filterEffectiveStatementsSet(final Class<T> type) {
-            return ImmutableSet.copyOf(filterEffectiveStatements(type));
+            return (Collection<? extends T>) Collections2.filter(effectiveSubstatements(), type::isInstance);
         }
     }
 
@@ -83,8 +69,8 @@ public final class EffectiveStatementMixins {
     public interface AugmentationTargetMixin<A, D extends DeclaredStatement<A>>
             extends Mixin<A, D>, AugmentationTarget {
         @Override
-        default Set<AugmentationSchemaNode> getAvailableAugmentations() {
-            return filterEffectiveStatementsSet(AugmentationSchemaNode.class);
+        default Collection<? extends AugmentationSchemaNode> getAvailableAugmentations() {
+            return filterEffectiveStatements(AugmentationSchemaNode.class);
         }
     }
 
@@ -111,8 +97,8 @@ public final class EffectiveStatementMixins {
     public interface ActionNodeContainerMixin<A, D extends DeclaredStatement<A>>
             extends Mixin<A, D>, ActionNodeContainer {
         @Override
-        default Set<ActionDefinition> getActions() {
-            return filterEffectiveStatementsSet(ActionDefinition.class);
+        default Collection<? extends ActionDefinition> getActions() {
+            return filterEffectiveStatements(ActionDefinition.class);
         }
     }
 
@@ -125,8 +111,8 @@ public final class EffectiveStatementMixins {
     public interface NotificationNodeContainerMixin<A, D extends DeclaredStatement<A>>
             extends Mixin<A, D>, NotificationNodeContainer {
         @Override
-        default Set<NotificationDefinition> getNotifications() {
-            return filterEffectiveStatementsSet(NotificationDefinition.class);
+        default Collection<? extends NotificationDefinition> getNotifications() {
+            return filterEffectiveStatements(NotificationDefinition.class);
         }
     }
 
@@ -138,7 +124,7 @@ public final class EffectiveStatementMixins {
      */
     public interface MustConstraintMixin<A, D extends DeclaredStatement<A>> extends Mixin<A, D>, MustConstraintAware {
         @Override
-        default Collection<MustDefinition> getMustConstraints() {
+        default Collection<? extends MustDefinition> getMustConstraints() {
             return filterEffectiveStatements(MustDefinition.class);
         }
     }
@@ -164,26 +150,25 @@ public final class EffectiveStatementMixins {
      */
     public interface DataNodeContainerMixin<A, D extends DeclaredStatement<A>> extends DataNodeContainer, Mixin<A, D> {
         @Override
-        default Set<TypeDefinition<?>> getTypeDefinitions() {
+        default Collection<? extends TypeDefinition<?>> getTypeDefinitions() {
             // TODO: the cast here is needed to work around Java 11 javac type inference issue
-            return (Set) effectiveSubstatements().stream().filter(TypedefEffectiveStatement.class::isInstance)
-                    .map(stmt -> ((TypedefEffectiveStatement) stmt).getTypeDefinition())
-                    .collect(ImmutableSet.toImmutableSet());
+            return Collections2.transform(filterEffectiveStatements(TypedefEffectiveStatement.class),
+                TypedefEffectiveStatement::getTypeDefinition);
         }
 
         @Override
-        default Collection<DataSchemaNode> getChildNodes() {
+        default Collection<? extends DataSchemaNode> getChildNodes() {
             return filterEffectiveStatements(DataSchemaNode.class);
         }
 
         @Override
-        default Set<GroupingDefinition> getGroupings() {
-            return filterEffectiveStatementsSet(GroupingDefinition.class);
+        default Collection<? extends GroupingDefinition> getGroupings() {
+            return filterEffectiveStatements(GroupingDefinition.class);
         }
 
         @Override
-        default Set<UsesNode> getUses() {
-            return filterEffectiveStatementsSet(UsesNode.class);
+        default Collection<? extends UsesNode> getUses() {
+            return filterEffectiveStatements(UsesNode.class);
         }
     }
 
@@ -244,8 +229,8 @@ public final class EffectiveStatementMixins {
         }
 
         @Override
-        default List<UnknownSchemaNode> getUnknownSchemaNodes() {
-            return filterEffectiveStatementsList(UnknownSchemaNode.class);
+        default Collection<? extends UnknownSchemaNode> getUnknownSchemaNodes() {
+            return filterEffectiveStatements(UnknownSchemaNode.class);
         }
     }
 
index cc92780e9763303decdc51a59f8ae0608c4fdd5c..374ddf1dd75627433b74e458ef73dfa41d405d7a 100644 (file)
@@ -9,6 +9,7 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.choice;
 
 import com.google.common.collect.ImmutableSet;
 import com.google.common.collect.ImmutableSortedMap;
+import java.util.Collection;
 import java.util.LinkedHashSet;
 import java.util.Objects;
 import java.util.Optional;
@@ -90,7 +91,7 @@ final class ChoiceEffectiveStatementImpl extends AbstractEffectiveDataSchemaNode
     }
 
     @Override
-    public Set<AugmentationSchemaNode> getAvailableAugmentations() {
+    public Collection<? extends AugmentationSchemaNode> getAvailableAugmentations() {
         return augmentations;
     }
 
index fd555f8e5e2a253188aa29066f16056a541f51af..0da50e5ed7bc3d46debad6daff1eb70ac637dc2e 100644 (file)
@@ -11,6 +11,7 @@ import static com.google.common.base.Preconditions.checkState;
 
 import com.google.common.base.MoreObjects;
 import com.google.common.collect.ImmutableSet;
+import java.util.Collection;
 import java.util.Collections;
 import java.util.HashSet;
 import java.util.List;
@@ -61,13 +62,13 @@ final class IdentityEffectiveStatementImpl extends AbstractEffectiveSchemaNode<I
     }
 
     @Override
-    public Set<IdentitySchemaNode> getBaseIdentities() {
+    public Collection<? extends IdentitySchemaNode> getBaseIdentities() {
         checkState(sealed, "Attempt to get base identities from unsealed identity effective statement %s", getQName());
         return baseIdentities;
     }
 
     @Override
-    public Set<IdentitySchemaNode> getDerivedIdentities() {
+    public Collection<? extends IdentitySchemaNode> getDerivedIdentities() {
         return Collections.unmodifiableSet(derivedIdentities);
     }
 
index f112eeefa9b1fbf246b2020aaf5ed52c8b6e4e17..b80fe4d5b701b12c4d60bff635128b3dbefc385c 100644 (file)
@@ -10,6 +10,7 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.notification;
 import com.google.common.collect.ImmutableSet;
 import java.lang.invoke.MethodHandles;
 import java.lang.invoke.VarHandle;
+import java.util.Collection;
 import java.util.LinkedHashSet;
 import java.util.Objects;
 import java.util.Set;
@@ -88,12 +89,12 @@ final class NotificationEffectiveStatementImpl
     }
 
     @Override
-    public ImmutableSet<MustDefinition> getMustConstraints() {
+    public Collection<? extends MustDefinition> getMustConstraints() {
         return derivedSet(MUST_CONSTRAINTS, MustDefinition.class);
     }
 
     @Override
-    public Set<AugmentationSchemaNode> getAvailableAugmentations() {
+    public Collection<? extends AugmentationSchemaNode> getAvailableAugmentations() {
         return augmentations;
     }
 
index c9ed32316d39b634f36c9b55525a464a9ab21164..3bb0b1f8b585f1239658533a094617aebc54e0ba 100644 (file)
@@ -9,6 +9,7 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.uses;
 
 import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.ImmutableSet;
+import java.util.Collection;
 import java.util.HashMap;
 import java.util.LinkedHashSet;
 import java.util.Map;
@@ -81,7 +82,7 @@ final class UsesEffectiveStatementImpl extends AbstractEffectiveDocumentedNode<Q
     }
 
     @Override
-    public Set<AugmentationSchemaNode> getAugmentations() {
+    public Collection<? extends AugmentationSchemaNode> getAugmentations() {
         return augmentations;
     }
 
index 6c09db43cf9c63fd6edb42587e07d2e3dc460d64..f42e5225c0da7d4081abbbfeba48af0778172278 100644 (file)
@@ -13,6 +13,7 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
+import java.util.Collection;
 import java.util.HashSet;
 import java.util.Set;
 import org.junit.Test;
@@ -41,14 +42,14 @@ public class ActionStatementTest {
         assertContainsActions(schemaContext, "top-list", "top-list-action");
         assertContainsActions(schemaContext, "top", "top-action");
 
-        final Set<GroupingDefinition> groupings = schemaContext.getGroupings();
+        final Collection<? extends GroupingDefinition> groupings = schemaContext.getGroupings();
         assertEquals(1, groupings.size());
         assertContainsActions(groupings.iterator().next(), "grp-action");
 
-        final Set<Module> modules = schemaContext.getModules();
+        final Collection<? extends Module> modules = schemaContext.getModules();
         assertEquals(1, modules.size());
         final Module foo = modules.iterator().next();
-        final Set<AugmentationSchemaNode> augmentations = foo.getAugmentations();
+        final Collection<? extends AugmentationSchemaNode> augmentations = foo.getAugmentations();
         assertEquals(1, augmentations.size());
         assertContainsActions(augmentations.iterator().next(), "aug-action", "grp-action");
     }
@@ -63,7 +64,7 @@ public class ActionStatementTest {
 
     private static void assertContainsActions(final ActionNodeContainer actionContainer,
             final String... actionNames) {
-        final Set<ActionDefinition> actions = actionContainer.getActions();
+        final Collection<? extends ActionDefinition> actions = actionContainer.getActions();
         assertEquals(actionNames.length, actions.size());
 
         final Set<QName> actionQNames = new HashSet<>();
index e8c22ab27a08de9e4512a88c52b24b24a64e1e90..30f4fd30b9f682b9b87da96be9e8bf840bfdb4b2 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.parser.stmt.rfc7950;
 
 import static org.junit.Assert.assertEquals;
@@ -17,6 +16,7 @@ import static org.junit.Assert.fail;
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableSet;
 import com.google.common.collect.Iterables;
+import java.util.Collection;
 import java.util.HashSet;
 import java.util.Set;
 import org.junit.Test;
@@ -40,7 +40,7 @@ public class Bug6869Test {
                 ImmutableSet.of());
         assertNotNull(schemaContext);
 
-        final Set<IdentitySchemaNode> identities = getIdentities(schemaContext);
+        final Collection<? extends IdentitySchemaNode> identities = getIdentities(schemaContext);
         assertEquals(0, identities.size());
 
         final SchemaNode findNode = findNode(schemaContext, ImmutableList.of("root", "grp-leaf"));
@@ -55,7 +55,7 @@ public class Bug6869Test {
                 createFeaturesSet("identity-feature", "mandatory-leaf", "tls", "ssh", "two", "three"));
         assertNotNull(schemaContext);
 
-        final Set<IdentitySchemaNode> identities = getIdentities(schemaContext);
+        final Collection<? extends IdentitySchemaNode> identities = getIdentities(schemaContext);
         assertEquals(1, identities.size());
 
         final SchemaNode findNode = findNode(schemaContext, ImmutableList.of("root", "grp-leaf"));
@@ -64,8 +64,8 @@ public class Bug6869Test {
         assertTrue(grpLeaf.isMandatory());
     }
 
-    private static Set<IdentitySchemaNode> getIdentities(final SchemaContext schemaContext) {
-        final Set<Module> modules = schemaContext.getModules();
+    private static Collection<? extends IdentitySchemaNode> getIdentities(final SchemaContext schemaContext) {
+        final Collection<? extends Module> modules = schemaContext.getModules();
         assertEquals(1, modules.size());
         final Module module = modules.iterator().next();
         return module.getIdentities();
index 197e47ac2f89999477c461923b6e2ace808093b2..80bc332f05a83e012134ed61bce6259208262781 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.parser.stmt.rfc7950;
 
 import static org.junit.Assert.assertEquals;
@@ -14,7 +13,6 @@ import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
 import java.util.Collection;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.Revision;
 import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode;
@@ -35,13 +33,13 @@ public class Bug6871Test {
 
         final Module foo = schemaContext.findModule("foo", Revision.of("2016-12-14")).get();
 
-        final Set<NotificationDefinition> notifications = foo.getNotifications();
+        final Collection<? extends NotificationDefinition> notifications = foo.getNotifications();
         assertEquals(1, notifications.size());
         final NotificationDefinition myNotification = notifications.iterator().next();
-        Collection<MustDefinition> mustConstraints = myNotification.getMustConstraints();
+        Collection<? extends MustDefinition> mustConstraints = myNotification.getMustConstraints();
         assertEquals(2, mustConstraints.size());
 
-        final Set<RpcDefinition> rpcs = foo.getRpcs();
+        final Collection<? extends RpcDefinition> rpcs = foo.getRpcs();
         assertEquals(1, rpcs.size());
         final RpcDefinition myRpc = rpcs.iterator().next();
 
index 232f5065ff8f23e5a058b07516d2434d4ab1e8cd..4ef6d71d886334a6bc4e3ed5ba19690d5eb4d46d 100644 (file)
@@ -14,6 +14,7 @@ import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
 import java.util.Arrays;
+import java.util.Collection;
 import java.util.List;
 import java.util.stream.Collectors;
 import org.junit.Test;
@@ -176,7 +177,7 @@ public class Bug6887Test {
 
         BitsTypeDefinition bitsType = (BitsTypeDefinition) myBitsLeaf.getType();
 
-        List<Bit> bits = bitsType.getBits();
+        Collection<? extends Bit> bits = bitsType.getBits();
         assertEquals(2, bits.size());
         Bit bitB = createBit(createSchemaPath(true, bar.getQNameModule(), "my-bits-leaf", "my-derived-bits-type",
             "bit-b"), 2);
@@ -317,7 +318,7 @@ public class Bug6887Test {
         return BitBuilder.create(path, position).build();
     }
 
-    private static void assertContainsBits(final List<Bit> bitList, final Bit... bits) {
+    private static void assertContainsBits(final Collection<? extends Bit> bitList, final Bit... bits) {
         for (final Bit bit : bits) {
             assertTrue(bitList.contains(bit));
         }
index 8377d12fa317f4d6d321176ccd0fc7f986fc735f..584b1487aef4c6a4092e5e8d677849555f6084c1 100644 (file)
@@ -12,6 +12,7 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
+import java.util.Collection;
 import java.util.HashSet;
 import java.util.Set;
 import org.junit.Test;
@@ -39,14 +40,14 @@ public class Bug6897Test {
         assertContainsNotifications(schemaContext, "top-list", "top-list-notification");
         assertContainsNotifications(schemaContext, "top", "top-notification");
 
-        final Set<GroupingDefinition> groupings = schemaContext.getGroupings();
+        final Collection<? extends GroupingDefinition> groupings = schemaContext.getGroupings();
         assertEquals(1, groupings.size());
         assertContainsNotifications(groupings.iterator().next(), "grp-notification");
 
-        final Set<Module> modules = schemaContext.getModules();
+        final Collection<? extends Module> modules = schemaContext.getModules();
         assertEquals(1, modules.size());
         final Module foo = modules.iterator().next();
-        final Set<AugmentationSchemaNode> augmentations = foo.getAugmentations();
+        final Collection<? extends AugmentationSchemaNode> augmentations = foo.getAugmentations();
         assertEquals(1, augmentations.size());
         assertContainsNotifications(augmentations.iterator().next(), "aug-notification", "grp-notification");
     }
@@ -61,7 +62,7 @@ public class Bug6897Test {
 
     private static void assertContainsNotifications(final NotificationNodeContainer notificationContainer,
             final String... notificationNames) {
-        final Set<NotificationDefinition> notifications = notificationContainer.getNotifications();
+        final Collection<? extends NotificationDefinition> notifications = notificationContainer.getNotifications();
         assertEquals(notificationNames.length, notifications.size());
 
         final Set<QName> notificationQNames = new HashSet<>();
index 00a76510453ac999fc77f48835f5e11c72859344..8bce589e228d3e45822831f1ff51a5333be9eeb9 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.parser.stmt.rfc7950;
 
 import static org.junit.Assert.assertEquals;
@@ -13,7 +12,7 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import java.util.Set;
+import java.util.Collection;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.Revision;
 import org.opendaylight.yangtools.yang.model.api.IdentitySchemaNode;
@@ -30,10 +29,9 @@ public class IdentityStatementTest {
         assertNotNull(schemaContext);
 
         final Module foo = schemaContext.findModule("foo", Revision.of("2016-12-21")).get();
-        final Set<IdentitySchemaNode> identities = foo.getIdentities();
-        for (final IdentitySchemaNode identity : identities) {
+        for (final IdentitySchemaNode identity : foo.getIdentities()) {
             if ("derived-id".equals(identity.getQName().getLocalName())) {
-                final Set<IdentitySchemaNode> baseIdentities = identity.getBaseIdentities();
+                final Collection<? extends IdentitySchemaNode> baseIdentities = identity.getBaseIdentities();
                 assertEquals(3, baseIdentities.size());
             }
         }
index 8b8d2f04cf7fed6e60974fe4a4bb32b51ddf56a3..434ae44b653c831211f5166ef81124d872fe59d7 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.parser.stmt.rfc7950;
 
 import static org.junit.Assert.assertEquals;
@@ -13,6 +12,7 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
+import java.util.Collection;
 import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
@@ -33,7 +33,7 @@ public class IdentityrefStatementTest {
         assertNotNull(schemaContext);
 
         final Module foo = schemaContext.findModule("foo", Revision.of("2017-01-11")).get();
-        final Set<IdentitySchemaNode> identities = foo.getIdentities();
+        final Collection<? extends IdentitySchemaNode> identities = foo.getIdentities();
         assertEquals(3, identities.size());
 
         final LeafSchemaNode idrefLeaf = (LeafSchemaNode) foo.getDataChildByName(QName.create(foo.getQNameModule(),
@@ -41,7 +41,7 @@ public class IdentityrefStatementTest {
         assertNotNull(idrefLeaf);
 
         final IdentityrefTypeDefinition idrefType = (IdentityrefTypeDefinition) idrefLeaf.getType();
-        final Set<IdentitySchemaNode> referencedIdentities = idrefType.getIdentities();
+        final Set<? extends IdentitySchemaNode> referencedIdentities = idrefType.getIdentities();
         assertEquals(3, referencedIdentities.size());
         assertEquals(identities, referencedIdentities);
         assertEquals("id-a", idrefType.getIdentities().iterator().next().getQName().getLocalName());
index da05fe5b30843c12d00cc64d1c74bd7b8bef9e88..69daaf9702755ad7a0ff9c5a88b1776084f9be7c 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.parser.stmt.rfc7950;
 
 import static org.junit.Assert.assertEquals;
@@ -13,7 +12,7 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import java.util.Set;
+import java.util.Collection;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.Revision;
@@ -33,7 +32,7 @@ public class LeafrefStatementTest {
         assertNotNull(schemaContext);
 
         final Module foo = schemaContext.findModule("foo", Revision.of("2016-12-20")).get();
-        final Set<TypeDefinition<?>> typeDefinitions = foo.getTypeDefinitions();
+        final Collection<? extends TypeDefinition<?>> typeDefinitions = foo.getTypeDefinitions();
         assertEquals(1, typeDefinitions.size());
 
         final TypeDefinition<?> typeDefinition = typeDefinitions.iterator().next();
index b2f2f4556b567364e7dec4a77b5d6b0fc92e7c6e..363bfe06e7d838d53a9bbc4a3844384ba21c6a78 100644 (file)
@@ -17,7 +17,6 @@ import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.List;
-import java.util.Set;
 import java.util.SortedMap;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
@@ -60,7 +59,7 @@ public class AugmentTest {
 
         // foo.yang
         final Module module1 = TestUtils.findModule(context, "foo").get();
-        Set<AugmentationSchemaNode> augmentations = module1.getAugmentations();
+        Collection<? extends AugmentationSchemaNode> augmentations = module1.getAugmentations();
         assertEquals(1, augmentations.size());
         final AugmentationSchemaNode augment = augmentations.iterator().next();
         assertNotNull(augment);
@@ -68,7 +67,7 @@ public class AugmentTest {
         SchemaPath expectedSchemaPath = SchemaPath.create(qnames, true);
         assertEquals(expectedSchemaPath, augment.getTargetPath());
 
-        final Collection<DataSchemaNode> augmentChildren = augment.getChildNodes();
+        final Collection<? extends DataSchemaNode> augmentChildren = augment.getChildNodes();
         assertEquals(4, augmentChildren.size());
         for (final DataSchemaNode dsn : augmentChildren) {
             TestUtils.checkIsAugmenting(dsn, false);
@@ -276,7 +275,7 @@ public class AugmentTest {
         assertEquals(qname, id.getQName());
         qnames.add(qname);
         assertEquals(SchemaPath.create(qnames, true), id.getPath());
-        final Collection<DataSchemaNode> idChildren = id.getChildNodes();
+        final Collection<? extends DataSchemaNode> idChildren = id.getChildNodes();
         assertEquals(1, idChildren.size());
 
         // case node1
@@ -284,7 +283,7 @@ public class AugmentTest {
         assertEquals(qname, node1.getQName());
         qnames.set(4, qname);
         assertEquals(SchemaPath.create(qnames, true), node1.getPath());
-        final Collection<DataSchemaNode> node1Children = node1.getChildNodes();
+        final Collection<? extends DataSchemaNode> node1Children = node1.getChildNodes();
         assertTrue(node1Children.isEmpty());
 
         // case node2
@@ -292,7 +291,7 @@ public class AugmentTest {
         assertEquals(qname, node2.getQName());
         qnames.set(4, qname);
         assertEquals(SchemaPath.create(qnames, true), node2.getPath());
-        final Collection<DataSchemaNode> node2Children = node2.getChildNodes();
+        final Collection<? extends DataSchemaNode> node2Children = node2.getChildNodes();
         assertTrue(node2Children.isEmpty());
 
         // case node3
@@ -300,7 +299,7 @@ public class AugmentTest {
         assertEquals(qname, node3.getQName());
         qnames.set(4, qname);
         assertEquals(SchemaPath.create(qnames, true), node3.getPath());
-        final Collection<DataSchemaNode> node3Children = node3.getChildNodes();
+        final Collection<? extends DataSchemaNode> node3Children = node3.getChildNodes();
         assertEquals(1, node3Children.size());
 
         // test cases
@@ -332,7 +331,7 @@ public class AugmentTest {
         final URI NS_FOO = URI.create("urn:opendaylight:foo");
         final Revision revision = Revision.of("2013-10-11");
         final Module bar = TestUtils.findModule(context, "bar").get();
-        final Set<RpcDefinition> rpcs = bar.getRpcs();
+        final Collection<? extends RpcDefinition> rpcs = bar.getRpcs();
         assertEquals(2, rpcs.size());
 
         RpcDefinition submit = null;
@@ -386,21 +385,21 @@ public class AugmentTest {
         qnames[3] = QName.create(NS_FOO, revision, "attach");
         assertEquals(qnames[3], attach.getQName());
         assertEquals(SchemaPath.create(true, qnames), attach.getPath());
-        final Collection<DataSchemaNode> attachChildren = attach.getChildNodes();
+        final Collection<? extends DataSchemaNode> attachChildren = attach.getChildNodes();
         assertEquals(1, attachChildren.size());
 
         // case create
         qnames[3] = QName.create(NS_FOO, revision, "create");
         assertEquals(qnames[3], create.getQName());
         assertEquals(SchemaPath.create(true, qnames), create.getPath());
-        final Collection<DataSchemaNode> createChildren = create.getChildNodes();
+        final Collection<? extends DataSchemaNode> createChildren = create.getChildNodes();
         assertEquals(1, createChildren.size());
 
         // case attach
         qnames[3] = QName.create(NS_FOO, revision, "destroy");
         assertEquals(qnames[3], destroy.getQName());
         assertEquals(SchemaPath.create(true, qnames), destroy.getPath());
-        final Collection<DataSchemaNode> destroyChildren = destroy.getChildNodes();
+        final Collection<? extends DataSchemaNode> destroyChildren = destroy.getChildNodes();
         assertEquals(1, destroyChildren.size());
     }
 
@@ -419,7 +418,7 @@ public class AugmentTest {
                 "nodes"));
         final ContainerSchemaNode node = (ContainerSchemaNode) nodes.getDataChildByName(QName.create(
                 test.getQNameModule(), "node"));
-        final Set<AugmentationSchemaNode> augments = node.getAvailableAugmentations();
+        final Collection<? extends AugmentationSchemaNode> augments = node.getAvailableAugmentations();
         assertEquals(1, augments.size());
         assertEquals(1, node.getChildNodes().size());
         final LeafSchemaNode id = (LeafSchemaNode) node.getDataChildByName(QName.create(test.getQNameModule(), "id"));
index 1199ad3ddcd3b4cda3a8aa807b20e63420669b26..e79dce802c5f82855c98fa2e1acb488271dc37d2 100644 (file)
@@ -9,7 +9,6 @@ package org.opendaylight.yangtools.yang.stmt;
 
 import static org.junit.Assert.assertTrue;
 
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.AugmentationSchemaNode;
@@ -39,9 +38,7 @@ public class AugmentToExtensionTest {
         final Module devicesModule = TestUtils.findModule(context, "augment-module").get();
         final ContainerSchemaNode devicesContainer = (ContainerSchemaNode) devicesModule.getDataChildByName(
             QName.create(devicesModule.getQNameModule(), "my-container"));
-        final Set<UsesNode> uses = devicesContainer.getUses();
-
-        for (final UsesNode usesNode : uses) {
+        for (final UsesNode usesNode : devicesContainer.getUses()) {
             assertTrue(usesNode.getAugmentations().isEmpty());
         }
     }
@@ -55,12 +52,9 @@ public class AugmentToExtensionTest {
 
         final ContainerSchemaNode devicesContainer = (ContainerSchemaNode) devicesModule.getDataChildByName(QName
                 .create(devicesModule.getQNameModule(), "my-container"));
-        final Set<UsesNode> uses = devicesContainer.getUses();
-
         boolean augmentationIsInContainer = false;
-        for (final UsesNode usesNode : uses) {
-            final Set<AugmentationSchemaNode> augmentations = usesNode.getAugmentations();
-            for (final AugmentationSchemaNode augmentationSchema : augmentations) {
+        for (final UsesNode usesNode : devicesContainer.getUses()) {
+            for (final AugmentationSchemaNode augmentationSchema : usesNode.getAugmentations()) {
                 augmentationIsInContainer = true;
             }
         }
index 62d298a1ea8a28c3559589e834adea6a55df29d8..5a16af0d6e39111dd0223e90e7d7da0ac154f787 100644 (file)
@@ -11,7 +11,7 @@ import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 
 import java.net.URI;
-import java.util.List;
+import java.util.Collection;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.QNameModule;
@@ -35,9 +35,9 @@ public class Bug1412Test {
 
         final ContainerSchemaNode node = (ContainerSchemaNode) bug1412.getDataChildByName(QName.create(
                 bug1412.getQNameModule(), "node"));
-        List<UnknownSchemaNode> unknownNodes = node.getUnknownSchemaNodes();
+        Collection<? extends UnknownSchemaNode> unknownNodes = node.getUnknownSchemaNodes();
         assertEquals(1, unknownNodes.size());
-        final UnknownSchemaNode action = unknownNodes.get(0);
+        final UnknownSchemaNode action = unknownNodes.iterator().next();
 
         final QNameModule qm = QNameModule.create(URI.create("urn:test:bug1412"), Revision.of("2014-07-25"));
         QName expectedNodeType = QName.create("urn:test:bug1412:ext:definitions", "2014-07-25", "action");
index 584c4e461a37eb17d0eb3ab379239b3f2be4809f..16acd3fe1d635817d5142d946e105428d2af3300 100644 (file)
@@ -11,7 +11,7 @@ import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 
-import java.util.List;
+import java.util.Collection;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.model.api.ExtensionDefinition;
 import org.opendaylight.yangtools.yang.model.api.Module;
@@ -31,10 +31,10 @@ public class Bug1413Test {
             TestUtils.loadModules(getClass().getResource("/bugs/bug1413").toURI()), "bug1413").get();
         assertNotNull(bug1413);
 
-        List<ExtensionDefinition> extensions = bug1413.getExtensionSchemaNodes();
+        Collection<? extends ExtensionDefinition> extensions = bug1413.getExtensionSchemaNodes();
         assertEquals(1, extensions.size());
 
-        ExtensionDefinition info = extensions.get(0);
+        ExtensionDefinition info = extensions.iterator().next();
         assertEquals("text", info.getArgument());
         assertTrue(info.isYinElement());
     }
index 0c5a40ed007aa995ddf0c6ac1ef9720652e36830..fc985465ce47bcc9fa23f556cd7bca617a6a85f2 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import static org.junit.Assert.assertEquals;
@@ -13,7 +12,6 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 
 import java.util.Collection;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.model.api.DataSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.LeafSchemaNode;
@@ -28,25 +26,23 @@ public class Bug3799Test {
         SchemaContext schema = StmtTestUtils.parseYangSources("/bugs/bug3799");
         assertNotNull(schema);
 
-        Set<Module> modules = schema.getModules();
+        Collection<? extends Module> modules = schema.getModules();
         assertNotNull(modules);
         assertEquals(1, modules.size());
 
         Module testModule = modules.iterator().next();
-        Set<Module> subModules = testModule.getSubmodules();
+        Collection<? extends Module> subModules = testModule.getSubmodules();
         assertNotNull(subModules);
         assertEquals(1, subModules.size());
 
         Module testSubmodule = subModules.iterator().next();
 
-        Set<NotificationDefinition> notifications = testSubmodule
-                .getNotifications();
+        Collection<? extends NotificationDefinition> notifications = testSubmodule.getNotifications();
         assertNotNull(notifications);
         assertEquals(1, notifications.size());
 
-        NotificationDefinition bazNotification = notifications.iterator()
-                .next();
-        Collection<DataSchemaNode> childNodes = bazNotification.getChildNodes();
+        NotificationDefinition bazNotification = notifications.iterator().next();
+        Collection<? extends DataSchemaNode> childNodes = bazNotification.getChildNodes();
         assertNotNull(childNodes);
         assertEquals(1, childNodes.size());
 
@@ -57,5 +53,4 @@ public class Bug3799Test {
         String bar = leafBar.getQName().getLocalName();
         assertEquals("bar", bar);
     }
-
 }
index 94cf0b3f0c57ae38f56668ec7b47bb0304c06ba5..ce53b76036665d65c74cbb8e8a9af66662838361 100644 (file)
@@ -11,7 +11,8 @@ import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 
-import java.util.List;
+import java.util.Collection;
+import java.util.Iterator;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode;
@@ -35,14 +36,14 @@ public class Bug394Test {
                 bug394.getQNameModule(), "logrecords"));
         assertNotNull(logrecords);
 
-        final List<UnknownSchemaNode> nodes = logrecords.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> nodes = logrecords.getUnknownSchemaNodes();
         assertEquals(2, nodes.size());
 
-        final List<ExtensionDefinition> extensions = bug394_ext.getExtensionSchemaNodes();
+        final Collection<? extends ExtensionDefinition> extensions = bug394_ext.getExtensionSchemaNodes();
         assertEquals(3, extensions.size());
 
-        assertTrue(extensions.contains(nodes.get(0).getExtensionDefinition()));
-        assertTrue(extensions.contains(nodes.get(1).getExtensionDefinition()));
+        final Iterator<? extends UnknownSchemaNode> it = nodes.iterator();
+        assertTrue(extensions.contains(it.next().getExtensionDefinition()));
+        assertTrue(extensions.contains(it.next().getExtensionDefinition()));
     }
-
 }
index 5779e28a8b32b4c9a72c56ebce601bc62baa89c5..73670f49cdb3774512241e1a95be53c1dd977277 100644 (file)
@@ -12,7 +12,7 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.fail;
 
 import java.net.URI;
-import java.util.List;
+import java.util.Collection;
 import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.model.api.ExtensionDefinition;
@@ -26,20 +26,20 @@ public class Bug4456Test {
         SchemaContext schema = StmtTestUtils.parseYangSources("/bugs/bug4456");
         assertNotNull(schema);
 
-        Set<Module> modules = schema.findModules(URI.create("foo"));
+        Set<Module> modules = (Set<Module>) schema.findModules(URI.create("foo"));
         assertEquals(1, modules.size());
         Module moduleFoo = modules.iterator().next();
 
-        List<ExtensionDefinition> extensionSchemaNodes = moduleFoo.getExtensionSchemaNodes();
+        Collection<? extends ExtensionDefinition> extensionSchemaNodes = moduleFoo.getExtensionSchemaNodes();
         assertEquals(5, extensionSchemaNodes.size());
         for (ExtensionDefinition extensionDefinition : extensionSchemaNodes) {
 
-            List<UnknownSchemaNode> unknownSchemaNodes = extensionDefinition.getUnknownSchemaNodes();
+            Collection<? extends UnknownSchemaNode> unknownSchemaNodes = extensionDefinition.getUnknownSchemaNodes();
             assertEquals(1, unknownSchemaNodes.size());
             UnknownSchemaNode unknownSchemaNode = unknownSchemaNodes.iterator().next();
             String unknownNodeExtensionDefName = unknownSchemaNode.getExtensionDefinition().getQName().getLocalName();
 
-            List<UnknownSchemaNode> subUnknownSchemaNodes = unknownSchemaNode.getUnknownSchemaNodes();
+            Collection<? extends UnknownSchemaNode> subUnknownSchemaNodes = unknownSchemaNode.getUnknownSchemaNodes();
             assertEquals(1, subUnknownSchemaNodes.size());
             UnknownSchemaNode subUnknownSchemaNode = subUnknownSchemaNodes.iterator().next();
             String subUnknownNodeExtensionDefName = subUnknownSchemaNode.getExtensionDefinition().getQName()
index 8ec6becc39e561836e72b284a87bfdf40f64b560..3ffafc133a7514f7a88866748594d529be6dfc8c 100644 (file)
@@ -5,12 +5,12 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import com.google.common.collect.Range;
 import java.io.File;
 import java.net.URI;
+import java.util.Collection;
 import java.util.List;
 import org.junit.Assert;
 import org.junit.Test;
@@ -43,11 +43,11 @@ public class Bug4623Test {
 
         final TypeDefinition<?> type = leaf.getType();
         Assert.assertNotNull(type);
-        final List<UnknownSchemaNode> unknownSchemaNodes = type.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> unknownSchemaNodes = type.getUnknownSchemaNodes();
         Assert.assertNotNull(unknownSchemaNodes);
         Assert.assertFalse(unknownSchemaNodes.size() == 0);
 
-        final UnknownSchemaNode unknownSchemaNode = unknownSchemaNodes.get(0);
+        final UnknownSchemaNode unknownSchemaNode = unknownSchemaNodes.iterator().next();
         Assert.assertEquals(unknownSchemaNode.getNodeParameter(), "unknown");
         Assert.assertEquals(unknownSchemaNode.getNodeType().getModule().getNamespace().toString(),
             "urn:simple.extension.typedefs");
@@ -85,11 +85,11 @@ public class Bug4623Test {
 
         final TypeDefinition<?> type = leaf.getType();
         Assert.assertNotNull(type);
-        final List<UnknownSchemaNode> unknownSchemaNodes = type.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> unknownSchemaNodes = type.getUnknownSchemaNodes();
         Assert.assertNotNull(unknownSchemaNodes);
         Assert.assertFalse(unknownSchemaNodes.size() == 0);
 
-        final UnknownSchemaNode unknownSchemaNode = unknownSchemaNodes.get(0);
+        final UnknownSchemaNode unknownSchemaNode = unknownSchemaNodes.iterator().next();
         Assert.assertEquals(unknownSchemaNode.getNodeParameter(), "unknown");
         Assert.assertEquals(unknownSchemaNode.getNodeType().getModule().getNamespace().toString(),
             "urn:simple.extension.typedefs");
@@ -127,11 +127,11 @@ public class Bug4623Test {
 
         final TypeDefinition<?> type = leaf.getType();
         Assert.assertNotNull(type);
-        final List<UnknownSchemaNode> unknownSchemaNodes = type.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> unknownSchemaNodes = type.getUnknownSchemaNodes();
         Assert.assertNotNull(unknownSchemaNodes);
         Assert.assertFalse(unknownSchemaNodes.size() == 0);
 
-        final UnknownSchemaNode unknownSchemaNode = unknownSchemaNodes.get(0);
+        final UnknownSchemaNode unknownSchemaNode = unknownSchemaNodes.iterator().next();
         Assert.assertEquals(unknownSchemaNode.getNodeParameter(), "unknown");
         Assert.assertEquals(unknownSchemaNode.getNodeType().getModule().getNamespace().toString(),
             "urn:simple.extension.typedefs");
index 0c79a1096993cc4955ce812202451c24bb811f88..170343e8bcac385a69d00482d1b8293bc72a75b3 100644 (file)
@@ -14,7 +14,7 @@ import static org.junit.Assert.assertThat;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-import java.util.Set;
+import java.util.Collection;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.model.api.Deviation;
 import org.opendaylight.yangtools.yang.model.api.Module;
@@ -30,7 +30,7 @@ public class Bug4933Test {
         assertNotNull(context);
 
         final Module foo = context.findModules("foo").iterator().next();
-        Set<Deviation> deviations = foo.getDeviations();
+        Collection<? extends Deviation> deviations = foo.getDeviations();
         assertEquals(4, deviations.size());
     }
 
index 2464c156431c71e8458d1d823c4673b60001a387..449093c22de5098ea744979c3c87090c7e507677 100644 (file)
@@ -28,7 +28,7 @@ public class Bug5518Test {
         final DataSchemaNode dataChildByName = context.getDataChildByName(QName.create("foo", "root"));
         assertTrue(dataChildByName instanceof ContainerSchemaNode);
         final ContainerSchemaNode root = (ContainerSchemaNode) dataChildByName;
-        final Collection<MustDefinition> mustConstraints = root.getMustConstraints();
+        final Collection<? extends MustDefinition> mustConstraints = root.getMustConstraints();
         assertEquals(1, mustConstraints.size());
         final MustDefinition must = mustConstraints.iterator().next();
         assertEquals("not(deref(.)/../same-pass)", must.getXpath().getOriginalString());
index f533b61f341d86ac5dbb280f9d06c4d1a2f293df..52d7c38941f799fc43629e62e494411a4eda83a3 100644 (file)
@@ -12,7 +12,6 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertThat;
 
 import java.util.Iterator;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.Revision;
@@ -41,16 +40,12 @@ public class Bug5884Test {
         final ContainerSchemaNode testContainer = (ContainerSchemaNode) rootContainer.getDataChildByName(
             testContainerQname);
         final ChoiceSchemaNode dataChildByName = (ChoiceSchemaNode) testContainer.getDataChildByName(choice);
-        final Set<AugmentationSchemaNode> augmentations = foo.getAugmentations();
-        final Set<AugmentationSchemaNode> availableAugmentations = dataChildByName.getAvailableAugmentations();
-        final Iterator<AugmentationSchemaNode> iterator = augmentations.iterator();
-        final Iterator<AugmentationSchemaNode> availableIterator = availableAugmentations.iterator();
 
-        testIterator(iterator);
-        testIterator(availableIterator);
+        testIterator(foo.getAugmentations().iterator());
+        testIterator(dataChildByName.getAvailableAugmentations().iterator());
     }
 
-    private static void testIterator(final Iterator<AugmentationSchemaNode> iterator) {
+    private static void testIterator(final Iterator<? extends AugmentationSchemaNode> iterator) {
         while (iterator.hasNext()) {
             AugmentationSchemaNode allAugments = iterator.next();
             final DataSchemaNode currentChoice = allAugments.getChildNodes().iterator().next();
index 6e219a8c3ee4c572a54805d991d7ce0b39ecb46b..60ae2771ba4b1d0367e7ee8d99572c8bb8685632 100644 (file)
@@ -14,9 +14,8 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertThat;
 import static org.junit.Assert.assertTrue;
 
-import java.util.List;
+import java.util.Collection;
 import java.util.Optional;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode;
@@ -37,7 +36,7 @@ public class Bug5942Test {
         final DataSchemaNode root = schemaContext.getDataChildByName(QName.create("foo", "2016-06-02", "root"));
         assertTrue(root instanceof ContainerSchemaNode);
 
-        final Set<UsesNode> uses = ((ContainerSchemaNode) root).getUses();
+        final Collection<? extends UsesNode> uses = ((ContainerSchemaNode) root).getUses();
         assertEquals(1, uses.size());
         final UsesNode usesNode = uses.iterator().next();
 
@@ -50,7 +49,7 @@ public class Bug5942Test {
         assertThat(when, instanceOf(WithExpression.class));
         assertEquals("0!=1", when.getOriginalString());
 
-        final List<UnknownSchemaNode> unknownSchemaNodes = usesNode.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> unknownSchemaNodes = usesNode.getUnknownSchemaNodes();
         assertEquals(1, unknownSchemaNodes.size());
         final UnknownSchemaNode unknownSchemaNode = unknownSchemaNodes.iterator().next();
         assertEquals("argument", unknownSchemaNode.getNodeParameter());
index a062e3b20cf19095875bd82a47edbb12eb3f25b4..533fb5d6ced7054976a78c991041836e1cb5d50a 100644 (file)
@@ -14,6 +14,7 @@ import static org.junit.Assert.fail;
 
 import java.io.File;
 import java.util.Collection;
+import org.eclipse.jdt.annotation.NonNull;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.DataSchemaNode;
@@ -44,18 +45,18 @@ public class Bug5946Test {
                 .getResource("/bugs/bug5946/foo.yang").toURI()));
         assertNotNull(context);
 
-        Collection<UniqueConstraint> uniqueConstraints = getListConstraints(context, WITHOUT_UNIQUE);
+        Collection<? extends UniqueConstraint> uniqueConstraints = getListConstraints(context, WITHOUT_UNIQUE);
         assertNotNull(uniqueConstraints);
         assertTrue(uniqueConstraints.isEmpty());
 
-        Collection<UniqueConstraint> simpleUniqueConstraints = getListConstraints(context, SIMPLE_UNIQUE);
+        Collection<? extends UniqueConstraint> simpleUniqueConstraints = getListConstraints(context, SIMPLE_UNIQUE);
         assertNotNull(simpleUniqueConstraints);
         assertEquals(1, simpleUniqueConstraints.size());
         Collection<Relative> simpleUniqueConstraintTag = simpleUniqueConstraints.iterator().next().getTag();
         assertTrue(simpleUniqueConstraintTag.contains(L1_ID));
         assertTrue(simpleUniqueConstraintTag.contains(C_L3_ID));
 
-        Collection<UniqueConstraint> multipleUniqueConstraints = getListConstraints(context, MULTIPLE_UNIQUE);
+        Collection<? extends UniqueConstraint> multipleUniqueConstraints = getListConstraints(context, MULTIPLE_UNIQUE);
         assertNotNull(multipleUniqueConstraints);
         assertEquals(3, multipleUniqueConstraints.size());
         boolean l1l2 = false;
@@ -86,7 +87,8 @@ public class Bug5946Test {
         }
     }
 
-    private static Collection<UniqueConstraint> getListConstraints(final SchemaContext context, final QName listQName) {
+    private static @NonNull Collection<? extends UniqueConstraint> getListConstraints(final SchemaContext context,
+            final QName listQName) {
         DataSchemaNode dataChildByName = context.getDataChildByName(listQName);
         assertTrue(dataChildByName instanceof ListSchemaNode);
         return ((ListSchemaNode) dataChildByName).getUniqueConstraints();
index c4185796eb1c33f9f30c2e9c62a9117d61a548db..3d97f529bc119dba275e3a431515e1f91e9ccae3 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import static org.junit.Assert.assertEquals;
@@ -13,9 +12,9 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 
 import java.io.File;
+import java.util.Collection;
 import java.util.List;
 import java.util.Optional;
-import java.util.Set;
 import java.util.regex.Pattern;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
@@ -74,7 +73,7 @@ public class Bug6180Test {
         final RevisionAwareXPath whenCondition = bar.getWhenCondition().get();
         assertEquals("/foo != \"bar\"", whenCondition.getOriginalString());
 
-        final Set<TypeDefinition<?>> typeDefinitions = schemaContext.getTypeDefinitions();
+        final Collection<? extends TypeDefinition<?>> typeDefinitions = schemaContext.getTypeDefinitions();
         assertEquals(1, typeDefinitions.size());
         final TypeDefinition<?> type = typeDefinitions.iterator().next();
         assertTrue(type instanceof StringTypeDefinition);
@@ -92,7 +91,7 @@ public class Bug6180Test {
         final RevisionAwareXPath whenCondition = bar.getWhenCondition().get();
         assertEquals("/foo != 'bar'", whenCondition.getOriginalString());
 
-        final Set<TypeDefinition<?>> typeDefinitions = schemaContext.getTypeDefinitions();
+        final Collection<? extends TypeDefinition<?>> typeDefinitions = schemaContext.getTypeDefinitions();
         assertEquals(1, typeDefinitions.size());
         final TypeDefinition<?> type = typeDefinitions.iterator().next();
         assertTrue(type instanceof StringTypeDefinition);
index df81429bf14a388e76ab00b9b4fee6aa0acc06dc..e10dcfc724025f80e2ef114de76cf2d6ce534d66 100644 (file)
@@ -11,7 +11,7 @@ import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 
-import java.util.Set;
+import java.util.Collection;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode;
@@ -29,7 +29,7 @@ public class Bug6240Test {
         final SchemaContext context = StmtTestUtils.parseYangSources("/bugs/bug6240/correct");
         assertNotNull(context);
 
-        final Set<Module> modules = context.getModules();
+        final Collection<? extends Module> modules = context.getModules();
         assertEquals(2, modules.size());
 
         Module bar = null;
index addab2d6b91225904e77508e006164b32d584fb3..12277784120f1cedf62e8794cd150c7ccf35b158 100644 (file)
@@ -72,8 +72,7 @@ public class Bug6316Test {
         final TypeDefinition<? extends TypeDefinition<?>> type = bitsLeaf.getType();
         assertTrue(type instanceof BitsTypeDefinition);
         final BitsTypeDefinition myBits = (BitsTypeDefinition) type;
-        final List<Bit> positions = myBits.getBits();
-        for (final Bit bit : positions) {
+        for (final Bit bit : myBits.getBits()) {
             final String name = bit.getName();
             switch (name) {
                 case "zero":
index e9bce70f9d1a8371ce90cb06896ee61db107113d..9d961e0495052d9e68fe6259fb0dc843a51dd26b 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import static org.junit.Assert.assertEquals;
@@ -13,7 +12,7 @@ import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 import static org.opendaylight.yangtools.yang.stmt.StmtTestUtils.sourceForResource;
 
-import java.util.Set;
+import java.util.Collection;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.model.api.Module;
 import org.opendaylight.yangtools.yang.model.api.RpcDefinition;
@@ -28,15 +27,15 @@ public class Bug6410Test {
     public void testTypedefsInRpc() throws ReactorException {
         final SchemaContext schemaContext = StmtTestUtils.parseYangSources(sourceForResource("/bugs/bug6410/foo.yang"));
 
-        final Set<Module> modules = schemaContext.getModules();
+        final Collection<? extends Module> modules = schemaContext.getModules();
         assertEquals(1, modules.size());
         final Module module = modules.iterator().next();
 
-        final Set<RpcDefinition> rpcs = module.getRpcs();
+        final Collection<? extends RpcDefinition> rpcs = module.getRpcs();
         assertEquals(1, rpcs.size());
         final RpcDefinition rpc = rpcs.iterator().next();
 
-        final Set<TypeDefinition<?>> typeDefs = rpc.getTypeDefinitions();
+        final Collection<? extends TypeDefinition<?>> typeDefs = rpc.getTypeDefinitions();
         assertEquals(2, typeDefs.size());
     }
 
index eec7984dca03dc232a3e904a1de42545307d7e23..bbd43b5079cf1ca3515f6fac7304c6ebbac78551 100644 (file)
@@ -10,8 +10,8 @@ package org.opendaylight.yangtools.yang.stmt;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 
+import java.util.Collection;
 import java.util.Optional;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.Revision;
 import org.opendaylight.yangtools.yang.model.api.Module;
@@ -34,7 +34,7 @@ public class Bug6491Test {
         final SchemaContext context = StmtTestUtils.parseYangSources("/bugs/bug6491/".concat(path));
         assertNotNull(context);
         final Module module = context.findModule("bar", moduleRevision).get();
-        final Set<ModuleImport> imports = module.getImports();
+        final Collection<? extends ModuleImport> imports = module.getImports();
         assertNotNull(imports);
         assertEquals(1, imports.size());
         assertEquals(importedRevision, imports.iterator().next().getRevision());
index e041a04c73ea0661c44b0769a64206ce57841e79..56293beea09a69a29232bae83529a5ee52cb7e17 100644 (file)
@@ -5,15 +5,14 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 
+import java.util.Collection;
 import java.util.Iterator;
-import java.util.List;
 import java.util.Map;
 import java.util.stream.Collectors;
 import org.junit.Test;
@@ -32,11 +31,11 @@ public class Bug7037Test {
         final SchemaContext context = StmtTestUtils.parseYangSources("/bugs/bug7037");
         assertNotNull(context);
 
-        final List<UnknownSchemaNode> unknownSchemaNodes = context.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> unknownSchemaNodes = context.getUnknownSchemaNodes();
         assertEquals(1, unknownSchemaNodes.size());
 
         final UnknownSchemaNode first = unknownSchemaNodes.iterator().next();
-        final List<UnknownSchemaNode> firstUnknownNodes = first.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> firstUnknownNodes = first.getUnknownSchemaNodes();
         assertEquals(1, firstUnknownNodes.size());
 
         final UnknownSchemaNode barExtCont = firstUnknownNodes.iterator().next();
@@ -46,17 +45,17 @@ public class Bug7037Test {
         final DataSchemaNode root = context.getDataChildByName(foo("root"));
         assertTrue(root instanceof ContainerSchemaNode);
 
-        final List<UnknownSchemaNode> rootUnknownNodes = root.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> rootUnknownNodes = root.getUnknownSchemaNodes();
         assertEquals(2, rootUnknownNodes.size());
 
         final Map<QName, UnknownSchemaNode> rootUnknownNodeMap = rootUnknownNodes.stream()
                 .collect(Collectors.toMap(u -> u.getNodeType(), u -> u));
 
         final UnknownSchemaNode barExt = rootUnknownNodeMap.get(bar("bar-ext"));
-        final List<UnknownSchemaNode> barExtUnknownNodes = barExt.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> barExtUnknownNodes = barExt.getUnknownSchemaNodes();
         assertEquals(3, barExtUnknownNodes.size());
 
-        final Iterator<UnknownSchemaNode> iterator = barExtUnknownNodes.iterator();
+        final Iterator<? extends UnknownSchemaNode> iterator = barExtUnknownNodes.iterator();
         UnknownSchemaNode barExtCont2 = null;
         while (iterator.hasNext()) {
             final UnknownSchemaNode next = iterator.next();
@@ -69,7 +68,7 @@ public class Bug7037Test {
         assertEquals(foo("bar-ext-con-2"), barExtCont2.getQName());
 
         final UnknownSchemaNode fooExt = rootUnknownNodeMap.get(foo("foo-ext"));
-        final List<UnknownSchemaNode> fooUnknownNodes = fooExt.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> fooUnknownNodes = fooExt.getUnknownSchemaNodes();
         assertEquals(1, fooUnknownNodes.size());
 
         final UnknownSchemaNode fooExtCont = fooUnknownNodes.iterator().next();
index e736b3f9b4949a813d3e27df13603adb8e04fc3f..92c4970957d89ffeeec1a3ab1478b157a1005462 100644 (file)
@@ -5,14 +5,12 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 
-import java.util.List;
-import java.util.Set;
+import java.util.Collection;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.Revision;
@@ -34,11 +32,11 @@ public class Bug7440Test {
         final Module foo = schemaContext.findModule("foo", revision).get();
         final Module bar = schemaContext.findModule("bar", revision).get();
 
-        final Set<Deviation> deviations = foo.getDeviations();
+        final Collection<? extends Deviation> deviations = foo.getDeviations();
         assertEquals(1, deviations.size());
         final Deviation deviation = deviations.iterator().next();
 
-        final List<DeviateDefinition> deviates = deviation.getDeviates();
+        final Collection<? extends DeviateDefinition> deviates = deviation.getDeviates();
         assertEquals(1, deviates.size());
         final DeviateDefinition deviateReplace = deviates.iterator().next();
 
index dbb6ad5d3719efd149867ef1b60a5f6d20af4159..aa6200ff87e9990cad913fbfdc47a371a5de4452 100644 (file)
@@ -13,7 +13,7 @@ import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
 import java.net.URI;
-import java.util.Set;
+import java.util.Collection;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.Revision;
 import org.opendaylight.yangtools.yang.model.api.Module;
@@ -27,7 +27,7 @@ public class Bug7480Test {
         final SchemaContext context = StmtTestUtils.parseYangSources("/bugs/bug7480/files", "/bugs/bug7480/lib");
         assertNotNull(context);
 
-        final Set<Module> modules = context.getModules();
+        final Collection<? extends Module> modules = context.getModules();
         assertEquals(8, modules.size());
 
         assertNotNull(context.findModule(new URI("foo-imp"), Revision.of("2017-01-23")));
@@ -36,9 +36,9 @@ public class Bug7480Test {
         assertEquals(1, context.findModules(new URI("bar")).size());
         assertEquals(1, context.findModules(new URI("baz")).size());
         assertTrue(context.findModule(new URI("baz-imp"), Revision.of("2002-01-01")).isPresent());
-        final Set<Module> foo = context.findModules(new URI("foo"));
+        final Collection<? extends Module> foo = context.findModules(new URI("foo"));
         assertEquals(1, foo.size());
-        final Set<Module> subFoos = foo.iterator().next().getSubmodules();
+        final Collection<? extends Module> subFoos = foo.iterator().next().getSubmodules();
         assertEquals(1, subFoos.size());
 
         final Module parentMod = context.findModule(new URI("parent-mod-ns"), Revision.of("2017-09-07")).get();
index 8298bb79858d6772a27e78de50b9ebb0057e4d21..d25b02abbf8a556ea21621841fdf6f95aedea3f9 100644 (file)
@@ -11,7 +11,7 @@ import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 
-import java.util.List;
+import java.util.Collection;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode;
@@ -30,15 +30,15 @@ public class Bug7865Test {
 
         final DataSchemaNode root = context.getDataChildByName(foo("root"));
         assertTrue(root instanceof ContainerSchemaNode);
-        final List<UnknownSchemaNode> unknownSchemaNodes = root.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> unknownSchemaNodes = root.getUnknownSchemaNodes();
         assertEquals(1, unknownSchemaNodes.size());
 
         final UnknownSchemaNode unknownNode = unknownSchemaNodes.iterator().next();
-        final List<UnknownSchemaNode> subUnknownSchemaNodes = unknownNode.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> subUnknownSchemaNodes = unknownNode.getUnknownSchemaNodes();
         assertEquals(1, subUnknownSchemaNodes.size());
 
         final UnknownSchemaNode subUnknownNode = subUnknownSchemaNodes.iterator().next();
-        final List<UnknownSchemaNode> subSubUnknownSchemaNodes = subUnknownNode.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> subSubUnknownSchemaNodes = subUnknownNode.getUnknownSchemaNodes();
         assertEquals(1, subSubUnknownSchemaNodes.size());
 
         final UnknownSchemaNode subSubUnknownNode = subSubUnknownSchemaNodes.iterator().next();
@@ -49,5 +49,4 @@ public class Bug7865Test {
     private static QName foo(final String localName) {
         return QName.create(NS, localName);
     }
-
 }
index c3dd3c270f6a83beddb8033c320462cb64fcb839..389ada9b369db3ce9b641142b76d8042c3f0dd06 100644 (file)
@@ -12,7 +12,6 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.fail;
 
 import java.util.Optional;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.Revision;
 import org.opendaylight.yangtools.yang.model.api.Module;
@@ -26,9 +25,7 @@ public class Bug8597Test {
         assertNotNull(context);
 
         final Module foo = context.findModule("foo").get();
-        final Set<ModuleImport> imports = foo.getImports();
-
-        for (final ModuleImport moduleImport : imports) {
+        for (final ModuleImport moduleImport : foo.getImports()) {
             switch (moduleImport.getModuleName()) {
                 case "bar":
                     assertEquals(Revision.ofNullable("1970-01-01"), moduleImport.getRevision());
index 403158576081de5e2d906c640d3b7b2cc9ca4cf8..70ee79318eea232cfeb6ed047e221ddd464a485c 100644 (file)
@@ -10,7 +10,7 @@ package org.opendaylight.yangtools.yang.stmt;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 
-import java.util.Set;
+import java.util.Collection;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.Revision;
 import org.opendaylight.yangtools.yang.model.api.Module;
@@ -25,17 +25,17 @@ public class Bug9005Test {
 
         final Module foo = context.findModule("foo", Revision.of("2017-07-07")).get();
 
-        final Set<ModuleImport> imports = foo.getImports();
+        final Collection<? extends ModuleImport> imports = foo.getImports();
         assertEquals(1, imports.size());
         final ModuleImport imp1 = imports.iterator().next();
         assertEquals("bar-2", imp1.getModuleName());
         assertEquals("bar", imp1.getPrefix());
         assertEquals(Revision.ofNullable("2000-01-02"), imp1.getRevision());
 
-        final Set<Module> submodules = foo.getSubmodules();
+        final Collection<? extends Module> submodules = foo.getSubmodules();
         assertEquals(1, submodules.size());
         final Module submodule = submodules.iterator().next();
-        final Set<ModuleImport> subImports = submodule.getImports();
+        final Collection<? extends ModuleImport> subImports = submodule.getImports();
 
         assertEquals(1, subImports.size());
         final ModuleImport subImp1 = subImports.iterator().next();
index 1aff5ba01c5df394f6997a3d23b1c6d32ff556aa..a1c5abb7f16fa5dadd3aef0ee865608baf4a6cbf 100644 (file)
@@ -12,8 +12,7 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 
 import java.net.URI;
-import java.util.List;
-import java.util.Set;
+import java.util.Collection;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.QNameModule;
@@ -44,9 +43,8 @@ public class ControllerStmtParserTest {
     private static void salDomBrokerImplModuleTest(final SchemaContext context) {
         final Module module = context.findModule("opendaylight-sal-dom-broker-impl", Revision.of("2013-10-28")).get();
 
-        final Set<AugmentationSchemaNode> augmentations = module.getAugmentations();
         boolean checked = false;
-        for (final AugmentationSchemaNode augmentationSchema : augmentations) {
+        for (final AugmentationSchemaNode augmentationSchema : module.getAugmentations()) {
             final DataSchemaNode dataNode = augmentationSchema
                     .getDataChildByName(QName.create(module.getQNameModule(), "dom-broker-impl"));
             if (dataNode instanceof CaseSchemaNode) {
@@ -57,10 +55,10 @@ public class ControllerStmtParserTest {
                     final ContainerSchemaNode containerNode = (ContainerSchemaNode) dataNode2;
                     final DataSchemaNode leaf = containerNode
                             .getDataChildByName(QName.create(module.getQNameModule(), "type"));
-                    final List<UnknownSchemaNode> unknownSchemaNodes = leaf.getUnknownSchemaNodes();
+                    final Collection<? extends UnknownSchemaNode> unknownSchemaNodes = leaf.getUnknownSchemaNodes();
                     assertEquals(1, unknownSchemaNodes.size());
 
-                    final UnknownSchemaNode unknownSchemaNode = unknownSchemaNodes.get(0);
+                    final UnknownSchemaNode unknownSchemaNode = unknownSchemaNodes.iterator().next();
                     assertEquals("dom-async-data-broker", unknownSchemaNode.getQName().getLocalName());
                     assertEquals(unknownSchemaNode.getQName(), unknownSchemaNode.getPath().getLastComponent());
 
@@ -101,11 +99,11 @@ public class ControllerStmtParserTest {
 
         final ContainerSchemaNode containerNode = (ContainerSchemaNode) dataNode2;
         final DataSchemaNode leaf = containerNode.getDataChildByName(QName.create(module.getQNameModule(), "type"));
-        final List<UnknownSchemaNode> unknownSchemaNodes = leaf.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> unknownSchemaNodes = leaf.getUnknownSchemaNodes();
 
         assertEquals(1, unknownSchemaNodes.size());
 
-        final UnknownSchemaNode unknownSchemaNode = unknownSchemaNodes.get(0);
+        final UnknownSchemaNode unknownSchemaNode = unknownSchemaNodes.iterator().next();
 
         assertEquals(unknownSchemaNode.getQName(), unknownSchemaNode.getPath().getLastComponent());
         assertEquals("dom-async-data-broker", unknownSchemaNode.getQName().getLocalName());
@@ -130,10 +128,10 @@ public class ControllerStmtParserTest {
 
         final DataSchemaNode type = schemaServiceContainer.getDataChildByName(QName.create(module.getQNameModule(),
             "type"));
-        final List<UnknownSchemaNode> typeUnknownSchemaNodes = type.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> typeUnknownSchemaNodes = type.getUnknownSchemaNodes();
         assertEquals(1, typeUnknownSchemaNodes.size());
 
-        final UnknownSchemaNode typeUnknownSchemaNode = typeUnknownSchemaNodes.get(0);
+        final UnknownSchemaNode typeUnknownSchemaNode = typeUnknownSchemaNodes.iterator().next();
         final QNameModule qNameModule = QNameModule.create(
             URI.create("urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom"), Revision.of("2013-10-28"));
         final QName qName = QName.create(qNameModule, "schema-service");
index 03545c427572a589693db5a84aaccb1d2b5f1ff7..684ba2627e7664caeb3f4b78150f2006febd5fda 100644 (file)
@@ -194,7 +194,7 @@ public class DeclaredStatementsTest {
         final Module testModule = schemaContext.findModules("augment-declared-test").iterator().next();
         assertNotNull(testModule);
 
-        final Set<AugmentationSchemaNode> augmentationSchemas = testModule.getAugmentations();
+        final Collection<? extends AugmentationSchemaNode> augmentationSchemas = testModule.getAugmentations();
         assertNotNull(augmentationSchemas);
         assertEquals(1, augmentationSchemas.size());
 
@@ -245,7 +245,7 @@ public class DeclaredStatementsTest {
         final IncludeStatement includeStatement = moduleStatement.getIncludes().iterator().next();
         assertEquals("child-module-declared-test", includeStatement.getModule());
 
-        final Set<Module> submodules = testModule.getSubmodules();
+        final Collection<? extends Module> submodules = testModule.getSubmodules();
         assertNotNull(submodules);
         assertEquals(1, submodules.size());
 
index 283b0156e8e975ac0ad96b8a2415772ff75d319f..6d953f1112fcbc3809113cb7308688f4fe258e39 100644 (file)
@@ -13,9 +13,8 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 import static org.opendaylight.yangtools.yang.stmt.StmtTestUtils.sourceForResource;
 
-import java.util.List;
+import java.util.Collection;
 import java.util.Optional;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.Revision;
 import org.opendaylight.yangtools.yang.model.api.DeviateDefinition;
@@ -43,11 +42,11 @@ public class DeviationStmtTest {
         assertNotNull(schemaContext);
 
         Module testModule = schemaContext.findModule("foo", Revision.of("2016-06-23")).get();
-        Set<Deviation> deviations = testModule.getDeviations();
+        Collection<? extends Deviation> deviations = testModule.getDeviations();
         assertEquals(4, deviations.size());
 
         for (Deviation deviation : deviations) {
-            final List<DeviateDefinition> deviates = deviation.getDeviates();
+            final Collection<? extends DeviateDefinition> deviates = deviation.getDeviates();
             final String targetLocalName = deviation.getTargetPath().getLastComponent().getLocalName();
             if ("test-leaf".equals(targetLocalName)) {
                 assertEquals(Optional.of("test-leaf is not supported"), deviation.getDescription());
@@ -94,7 +93,7 @@ public class DeviationStmtTest {
         Deviation deviation7 = null;
 
         for (Deviation deviation : deviations) {
-            final List<DeviateDefinition> deviates = deviation.getDeviates();
+            final Collection<? extends DeviateDefinition> deviates = deviation.getDeviates();
             final String targetLocalName = deviation.getTargetPath().getLastComponent().getLocalName();
 
             if ("bar-container-1".equals(targetLocalName)) {
index a0b208b36771f0f78364fa21f6bd9a565f7fca60..3c8fb5181695d7de106199a04ef406e7ad1979df 100644 (file)
@@ -16,7 +16,6 @@ import java.io.FileNotFoundException;
 import java.net.URI;
 import java.net.URISyntaxException;
 import java.util.Collection;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.QNameModule;
@@ -95,12 +94,12 @@ public class EffectiveBuildTest {
         SchemaContext result = RFC7950Reactors.defaultReactor().newBuild().addSource(YANG_EXT).buildEffective();
         assertNotNull(result);
 
-        Set<GroupingDefinition> groupings = result.getGroupings();
+        Collection<? extends GroupingDefinition> groupings = result.getGroupings();
         assertEquals(1, groupings.size());
 
         GroupingDefinition grp = groupings.iterator().next();
 
-        Collection<DataSchemaNode> childNodes = grp.getChildNodes();
+        Collection<? extends DataSchemaNode> childNodes = grp.getChildNodes();
         assertEquals(1, childNodes.size());
         DataSchemaNode child = childNodes.iterator().next();
 
index bf438554f667932351921a18301b08f22df44e6f..25f2f0af34c8d2d6cd6ca44087a4f68cb8b490c0 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import static org.junit.Assert.assertEquals;
@@ -16,7 +15,7 @@ import static org.opendaylight.yangtools.yang.stmt.StmtTestUtils.sourceForResour
 
 import com.google.common.collect.Iterables;
 import java.net.URISyntaxException;
-import java.util.Set;
+import java.util.Collection;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.model.api.IdentitySchemaNode;
 import org.opendaylight.yangtools.yang.model.api.Module;
@@ -52,14 +51,11 @@ public class EffectiveIdentityTest {
     @Test
     public void identityTest() throws SourceException, ReactorException,
             URISyntaxException {
-        SchemaContext result = RFC7950Reactors.defaultReactor().newBuild()
-                .addSources(IDENTITY_TEST)
-                .buildEffective();
-
+        SchemaContext result = RFC7950Reactors.defaultReactor().newBuild().addSources(IDENTITY_TEST).buildEffective();
         assertNotNull(result);
 
         Module module = result.findModule("identity-test").get();
-        Set<IdentitySchemaNode> identities = module.getIdentities();
+        Collection<? extends IdentitySchemaNode> identities = module.getIdentities();
 
         assertNotNull(identities);
         assertEquals(4, identities.size());
@@ -94,8 +90,7 @@ public class EffectiveIdentityTest {
 
         assertTrue(root.getBaseIdentities().isEmpty());
 
-        Set<IdentitySchemaNode> rootDerivedIdentities = root
-                .getDerivedIdentities();
+        Collection<? extends IdentitySchemaNode> rootDerivedIdentities = root.getDerivedIdentities();
         assertEquals(2, rootDerivedIdentities.size());
 
         assertTrue(rootDerivedIdentities.contains(child1));
@@ -108,8 +103,7 @@ public class EffectiveIdentityTest {
 
         assertTrue(child2.getDerivedIdentities().isEmpty());
 
-        Set<IdentitySchemaNode> child1DerivedIdentities = child1
-                .getDerivedIdentities();
+        Collection<? extends IdentitySchemaNode> child1DerivedIdentities = child1.getDerivedIdentities();
         assertEquals(1, child1DerivedIdentities.size());
         assertTrue(child1DerivedIdentities.contains(child12));
         assertFalse(child1DerivedIdentities.contains(child1));
index 1bb594e34a78300d4cf9275099da5764929b6b8d..d14641691e28422aeb1e081f41baf4a7e6e47253 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import static org.junit.Assert.assertEquals;
@@ -13,9 +12,8 @@ import static org.junit.Assert.assertNotNull;
 import static org.opendaylight.yangtools.yang.stmt.StmtTestUtils.sourceForResource;
 
 import java.net.URI;
-import java.util.List;
+import java.util.Collection;
 import java.util.Optional;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.QNameModule;
@@ -78,11 +76,11 @@ public class EffectiveModuleTest {
         final ContainerSchemaNode contSchemaNode = (ContainerSchemaNode) rootModule.getDataChildByName(CONT);
         assertNotNull(contSchemaNode);
 
-        final Set<AugmentationSchemaNode> augmentations = rootModule.getAugmentations();
+        final Collection<? extends AugmentationSchemaNode> augmentations = rootModule.getAugmentations();
         assertEquals(1, augmentations.size());
         assertEquals(CONT_SCHEMA_PATH, augmentations.iterator().next().getTargetPath());
 
-        final Set<ModuleImport> imports = rootModule.getImports();
+        final Collection<? extends ModuleImport> imports = rootModule.getImports();
         assertEquals(1, imports.size());
         final ModuleImport importStmt = imports.iterator().next();
         assertNotNull(importStmt);
@@ -90,19 +88,19 @@ public class EffectiveModuleTest {
         assertEquals(Optional.of(REVISION), importStmt.getRevision());
         assertEquals("imp-pref", importStmt.getPrefix());
 
-        final Set<Module> submodules = rootModule.getSubmodules();
+        final Collection<? extends Module> submodules = rootModule.getSubmodules();
         assertEquals(1, submodules.size());
         assertEquals("submod", submodules.iterator().next().getName());
 
-        final Set<NotificationDefinition> notifications = rootModule.getNotifications();
+        final Collection<? extends NotificationDefinition> notifications = rootModule.getNotifications();
         assertEquals(1, notifications.size());
         assertEquals("notif1", notifications.iterator().next().getQName().getLocalName());
 
-        final Set<RpcDefinition> rpcs = rootModule.getRpcs();
+        final Collection<? extends RpcDefinition> rpcs = rootModule.getRpcs();
         assertEquals(1, rpcs.size());
         assertEquals("rpc1", rpcs.iterator().next().getQName().getLocalName());
 
-        final Set<Deviation> deviations = rootModule.getDeviations();
+        final Collection<? extends Deviation> deviations = rootModule.getDeviations();
         assertEquals(1, deviations.size());
         final Deviation deviationStmt = deviations.iterator().next();
         assertNotNull(deviationStmt);
@@ -113,11 +111,11 @@ public class EffectiveModuleTest {
         assertEquals(DeviateKind.ADD, deviationStmt.getDeviates().iterator().next().getDeviateType());
         assertEquals(Optional.of("deviate reference"), deviationStmt.getReference());
 
-        final Set<IdentitySchemaNode> identities = rootModule.getIdentities();
+        final Collection<? extends IdentitySchemaNode> identities = rootModule.getIdentities();
         assertEquals(1, identities.size());
         assertEquals("identity1", identities.iterator().next().getQName().getLocalName());
 
-        final Set<FeatureDefinition> features = rootModule.getFeatures();
+        final Collection<? extends FeatureDefinition> features = rootModule.getFeatures();
         assertEquals(1, features.size());
         final FeatureDefinition featureStmt = features.iterator().next();
         assertNotNull(featureStmt);
@@ -127,7 +125,7 @@ public class EffectiveModuleTest {
         assertEquals(Optional.of("feature1 reference"), featureStmt.getReference());
         assertEquals(Status.CURRENT, featureStmt.getStatus());
 
-        final List<ExtensionDefinition> extensionSchemaNodes = rootModule.getExtensionSchemaNodes();
+        final Collection<? extends ExtensionDefinition> extensionSchemaNodes = rootModule.getExtensionSchemaNodes();
         assertEquals(1, extensionSchemaNodes.size());
         assertEquals("ext1", extensionSchemaNodes.iterator().next().getQName().getLocalName());
     }
index 47d876a4fd8ee455bb52d62ab3960cf4d57c3116..5659212a1f7e2050b600c211b2ebce29c1ddda92 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import static org.junit.Assert.assertEquals;
@@ -16,7 +15,6 @@ import static org.opendaylight.yangtools.yang.stmt.StmtTestUtils.sourceForResour
 import java.net.URI;
 import java.util.Collection;
 import java.util.Optional;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.QNameModule;
@@ -50,7 +48,7 @@ public class EffectiveModulesAndSubmodulesTest {
 
         assertNotNull(result);
 
-        final Set<Module> modules = result.getModules();
+        final Collection<? extends Module> modules = result.getModules();
         assertNotNull(modules);
         assertEquals(2, modules.size());
 
@@ -73,9 +71,8 @@ public class EffectiveModulesAndSubmodulesTest {
         assertNotNull(root);
         assertNotNull(imported);
 
-        final Collection<DataSchemaNode> rootChildNodes = root.getChildNodes();
-        final Collection<DataSchemaNode> importedChildNodes = imported
-                .getChildNodes();
+        final Collection<? extends DataSchemaNode> rootChildNodes = root.getChildNodes();
+        final Collection<? extends DataSchemaNode> importedChildNodes = imported.getChildNodes();
 
         assertNotNull(rootChildNodes);
         assertNotNull(importedChildNodes);
@@ -83,8 +80,8 @@ public class EffectiveModulesAndSubmodulesTest {
         assertEquals(3, rootChildNodes.size());
         assertEquals(1, importedChildNodes.size());
 
-        final Set<Module> rootSubmodules = root.getSubmodules();
-        final Set<Module> importedSubmodules = imported.getSubmodules();
+        final Collection<? extends Module> rootSubmodules = root.getSubmodules();
+        final Collection<? extends Module> importedSubmodules = imported.getSubmodules();
 
         assertNotNull(rootSubmodules);
         assertNotNull(importedSubmodules);
@@ -112,8 +109,8 @@ public class EffectiveModulesAndSubmodulesTest {
         assertEquals(ROOT, sub1.getQNameModule());
         assertEquals(ROOT, sub2.getQNameModule());
 
-        final Collection<DataSchemaNode> sub1ChildNodes = sub1.getChildNodes();
-        final Collection<DataSchemaNode> sub2ChildNodes = sub2.getChildNodes();
+        final Collection<? extends DataSchemaNode> sub1ChildNodes = sub1.getChildNodes();
+        final Collection<? extends DataSchemaNode> sub2ChildNodes = sub2.getChildNodes();
 
         assertNotNull(sub1ChildNodes);
         assertNotNull(sub2ChildNodes);
@@ -121,8 +118,8 @@ public class EffectiveModulesAndSubmodulesTest {
         assertEquals(1, sub1ChildNodes.size());
         assertEquals(1, sub2ChildNodes.size());
 
-        final Set<Module> sub1Submodules = sub1.getSubmodules();
-        final Set<Module> sub2Submodules = sub2.getSubmodules();
+        final Collection<? extends Module> sub1Submodules = sub1.getSubmodules();
+        final Collection<? extends Module> sub2Submodules = sub2.getSubmodules();
 
         assertNotNull(sub1Submodules);
         assertNotNull(sub2Submodules);
@@ -144,11 +141,11 @@ public class EffectiveModulesAndSubmodulesTest {
 
         assertEquals(ROOT, sub1Submodule.getQNameModule());
 
-        final Collection<DataSchemaNode> sub1SubmoduleChildNodes = sub1Submodule.getChildNodes();
+        final Collection<? extends DataSchemaNode> sub1SubmoduleChildNodes = sub1Submodule.getChildNodes();
         assertNotNull(sub1SubmoduleChildNodes);
         assertEquals(1, sub1SubmoduleChildNodes.size());
 
-        final Set<Module> sub1SubmoduleSubmodules = sub1Submodule.getSubmodules();
+        final Collection<? extends Module> sub1SubmoduleSubmodules = sub1Submodule.getSubmodules();
         assertNotNull(sub1SubmoduleSubmodules);
         assertEquals(0, sub1SubmoduleSubmodules.size());
 
@@ -166,7 +163,7 @@ public class EffectiveModulesAndSubmodulesTest {
 
     private static void findModulesSubTest(final SchemaContext result, final Module root, final Module imported) {
         final Module foundRoot = result.findModule("root-module").get();
-        final Set<Module> foundRoots = result.findModules(URI.create("root-module"));
+        final Collection<? extends Module> foundRoots = result.findModules(URI.create("root-module"));
         final Module foundRoot3 = result.findModule(URI.create("root-module")).get();
 
         assertNotNull(foundRoot);
@@ -182,7 +179,7 @@ public class EffectiveModulesAndSubmodulesTest {
         assertEquals(root, foundRoot3);
 
         final Module foundImported = result.findModule("imported-module").get();
-        final Set<Module> foundImporteds = result.findModules(URI.create("imported-module"));
+        final Collection<? extends Module> foundImporteds = result.findModules(URI.create("imported-module"));
         final Module foundImported3 = result.findModule(URI.create("imported-module")).get();
 
         assertNotNull(foundImported);
index 70fb76b8e8268ef4682f2e58c55f4f1646d3231b..f80e6dd7ffbe37797e065a7cf8053581f1bc2b91 100644 (file)
@@ -19,7 +19,6 @@ import java.net.URI;
 import java.net.URISyntaxException;
 import java.text.ParseException;
 import java.util.Collection;
-import java.util.List;
 import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
@@ -56,22 +55,22 @@ public class EffectiveSchemaContextTest {
                 .buildEffective();
         assertNotNull(schemaContext);
 
-        final Set<DataSchemaNode> dataDefinitions = schemaContext.getDataDefinitions();
+        final Collection<? extends DataSchemaNode> dataDefinitions = schemaContext.getDataDefinitions();
         assertEquals(3, dataDefinitions.size());
 
-        final Collection<DataSchemaNode> childNodes = schemaContext.getChildNodes();
+        final Collection<? extends DataSchemaNode> childNodes = schemaContext.getChildNodes();
         assertEquals(3, childNodes.size());
 
-        final Set<NotificationDefinition> notifications = schemaContext.getNotifications();
+        final Collection<? extends NotificationDefinition> notifications = schemaContext.getNotifications();
         assertEquals(3, notifications.size());
 
-        final Set<RpcDefinition> rpcs = schemaContext.getOperations();
+        final Collection<? extends RpcDefinition> rpcs = schemaContext.getOperations();
         assertEquals(3, rpcs.size());
 
-        final Set<ExtensionDefinition> extensions = schemaContext.getExtensions();
+        final Collection<? extends ExtensionDefinition> extensions = schemaContext.getExtensions();
         assertEquals(3, extensions.size());
 
-        final List<UnknownSchemaNode> unknownSchemaNodes = schemaContext.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> unknownSchemaNodes = schemaContext.getUnknownSchemaNodes();
         assertEquals(3, unknownSchemaNodes.size());
 
         assertNull(schemaContext.getDataChildByName(QName.create("foo-namespace", "2016-09-21", "foo-cont")));
index ee76fdc092d742c8a89d451c5c64d66decc8c33b..25550b9d01dd7ef7a0caf89602f433c1f08ed220 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import static org.junit.Assert.assertEquals;
@@ -16,6 +15,7 @@ import static org.junit.Assert.assertTrue;
 import static org.opendaylight.yangtools.yang.stmt.StmtTestUtils.sourceForResource;
 
 import com.google.common.collect.Range;
+import java.util.Iterator;
 import java.util.List;
 import java.util.Optional;
 import org.junit.AfterClass;
@@ -99,9 +99,9 @@ public class EffectiveStatementTypeTest {
         currentLeaf = (LeafSchemaNode) types.getDataChildByName(QName.create(types.getQNameModule(), "leaf-bits"));
         assertNotNull(currentLeaf.getType());
 
-        final List<BitsTypeDefinition.Bit> bitsEffIter = ((BitsTypeDefinition) currentLeaf.getType()).getBits();
-        final Bit bitEff = bitsEffIter.get(0);
-        final Bit bitEffSecond = bitsEffIter.get(1);
+        final Iterator<? extends Bit> bitsEffIter = ((BitsTypeDefinition) currentLeaf.getType()).getBits().iterator();
+        final Bit bitEff = bitsEffIter.next();
+        final Bit bitEffSecond = bitsEffIter.next();
 
         final BitsTypeDefinition bitsEff = ((BitsSpecificationEffectiveStatement)
                 ((LeafEffectiveStatement) currentLeaf).effectiveSubstatements().iterator().next())
index d611e0d8b509b370249c22992d5573a875b8f0b9..01d5d77122c36b36cc9eaf6ab49224dc6a7ddbdd 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import static org.junit.Assert.assertEquals;
@@ -14,8 +13,8 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 import static org.opendaylight.yangtools.yang.stmt.StmtTestUtils.sourceForResource;
 
+import java.util.Collection;
 import java.util.Optional;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.QNameModule;
@@ -40,7 +39,7 @@ public class EffectiveUsesRefineAndConstraintsTest {
                 .buildEffective();
         assertNotNull(result);
 
-        Set<Module> modules = result.getModules();
+        Collection<? extends Module> modules = result.getModules();
         assertNotNull(modules);
         assertEquals(1, modules.size());
 
index 10d45274344ccbc6c5dbb82a588b517e1f174b5c..c0cf2aa7c15dd0bbcbe3a45ea07dbff254f7ca91 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import static org.junit.Assert.assertEquals;
@@ -13,7 +12,7 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 import static org.opendaylight.yangtools.yang.stmt.StmtTestUtils.sourceForResource;
 
-import java.util.List;
+import java.util.Collection;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.ExtensionDefinition;
@@ -37,8 +36,8 @@ public class ExtensionStmtTest {
 
         assertEquals(1, testModule.getExtensionSchemaNodes().size());
 
-        final List<ExtensionDefinition> extensions = testModule.getExtensionSchemaNodes();
-        final ExtensionDefinition extension = extensions.get(0);
+        final Collection<? extends ExtensionDefinition> extensions = testModule.getExtensionSchemaNodes();
+        final ExtensionDefinition extension = extensions.iterator().next();
         assertEquals("opendaylight", extension.getQName().getLocalName());
         assertEquals("name", extension.getArgument());
         assertTrue(extension.isYinElement());
@@ -57,8 +56,8 @@ public class ExtensionStmtTest {
 
         assertEquals(1, testModule1.getExtensionSchemaNodes().size());
 
-        final List<ExtensionDefinition> extensions = testModule1.getExtensionSchemaNodes();
-        final ExtensionDefinition extensionDefinition = extensions.get(0);
+        final Collection<? extends ExtensionDefinition> extensions = testModule1.getExtensionSchemaNodes();
+        final ExtensionDefinition extensionDefinition = extensions.iterator().next();
 
         final Module testModule2 = result.findModules("ext-use").iterator().next();
         assertNotNull(testModule2);
@@ -68,8 +67,8 @@ public class ExtensionStmtTest {
         assertNotNull(leaf);
 
         assertEquals(1, leaf.getUnknownSchemaNodes().size());
-        final List<UnknownSchemaNode> unknownNodes = leaf.getUnknownSchemaNodes();
-        final UnknownSchemaNode extensionUse = unknownNodes.get(0);
+        final Collection<? extends UnknownSchemaNode> unknownNodes = leaf.getUnknownSchemaNodes();
+        final UnknownSchemaNode extensionUse = unknownNodes.iterator().next();
         assertEquals(extensionDefinition.getQName().getLocalName(), extensionUse.getExtensionDefinition().getQName()
                 .getLocalName());
         assertEquals(extensionDefinition.getArgument(), extensionUse.getExtensionDefinition().getArgument());
index b7399bd0f644ef0ebc4392f83e094a5acda959b9..3b8f25ef8281176ce1aa87bdd9bb7b675f4a63c0 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import static org.hamcrest.CoreMatchers.anyOf;
@@ -15,10 +14,9 @@ import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.opendaylight.yangtools.yang.stmt.StmtTestUtils.sourceForResource;
 
+import java.util.Collection;
 import java.util.Iterator;
-import java.util.List;
 import java.util.Map;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.AnyxmlSchemaNode;
@@ -54,10 +52,10 @@ public class GroupingAndUsesStmtTest {
         final Module testModule = result.findModules("baz").iterator().next();
         assertNotNull(testModule);
 
-        final Set<GroupingDefinition> groupings = testModule.getGroupings();
+        final Collection<? extends GroupingDefinition> groupings = testModule.getGroupings();
         assertEquals(1, groupings.size());
 
-        final Iterator<GroupingDefinition> groupingsIterator = groupings.iterator();
+        final Iterator<? extends GroupingDefinition> groupingsIterator = groupings.iterator();
         final GroupingDefinition grouping = groupingsIterator.next();
         assertEquals("target", grouping.getQName().getLocalName());
         assertEquals(5, grouping.getChildNodes().size());
@@ -84,9 +82,9 @@ public class GroupingAndUsesStmtTest {
         assertEquals(1, grouping.getTypeDefinitions().size());
         assertEquals("group-type", grouping.getTypeDefinitions().iterator().next().getQName().getLocalName());
 
-        final List<UnknownSchemaNode> unknownSchemaNodes = grouping.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> unknownSchemaNodes = grouping.getUnknownSchemaNodes();
         assertEquals(1, unknownSchemaNodes.size());
-        final UnknownSchemaNode extensionUse = unknownSchemaNodes.get(0);
+        final UnknownSchemaNode extensionUse = unknownSchemaNodes.iterator().next();
         assertEquals("opendaylight", extensionUse.getExtensionDefinition().getQName().getLocalName());
     }
 
@@ -100,7 +98,7 @@ public class GroupingAndUsesStmtTest {
         final Module testModule = result.findModules("foo").iterator().next();
         assertNotNull(testModule);
 
-        final Set<UsesNode> usesNodes = testModule.getUses();
+        final Collection<? extends UsesNode> usesNodes = testModule.getUses();
         assertEquals(1, usesNodes.size());
 
         UsesNode usesNode = usesNodes.iterator().next();
index dea745f814efb18bb9b30c5f584a674e9d7bc243..6bb3fe7a77954d674ab3acf97caac5479a14b7ab 100644 (file)
@@ -17,10 +17,8 @@ import java.io.IOException;
 import java.net.URI;
 import java.text.ParseException;
 import java.util.Collection;
-import java.util.List;
 import java.util.Map;
 import java.util.Optional;
-import java.util.Set;
 import java.util.SortedMap;
 import org.junit.Before;
 import org.junit.Test;
@@ -70,7 +68,7 @@ public class GroupingTest {
         final ContainerSchemaNode destination = (ContainerSchemaNode) peer.getDataChildByName(QName.create(
                 testModule.getQNameModule(), "destination"));
 
-        final Set<UsesNode> usesNodes = destination.getUses();
+        final Collection<? extends UsesNode> usesNodes = destination.getUses();
         assertEquals(1, usesNodes.size());
         final UsesNode usesNode = usesNodes.iterator().next();
         final Map<SchemaPath, SchemaNode> refines = usesNode.getRefines();
@@ -105,7 +103,7 @@ public class GroupingTest {
         assertEquals(Optional.of("address reference added by refine"), refineLeaf.getReference());
         assertFalse(refineLeaf.isConfiguration());
         assertFalse(refineLeaf.isMandatory());
-        final Collection<MustDefinition> leafMustConstraints = refineLeaf.getMustConstraints();
+        final Collection<? extends MustDefinition> leafMustConstraints = refineLeaf.getMustConstraints();
         assertEquals(1, leafMustConstraints.size());
         final MustDefinition leafMust = leafMustConstraints.iterator().next();
         assertEquals("ifType != 'ethernet' or (ifType = 'ethernet' and ifMTU = 1500)", leafMust.toString());
@@ -113,7 +111,7 @@ public class GroupingTest {
 
         // container port
         assertNotNull(refineContainer);
-        final Collection<MustDefinition> mustConstraints = refineContainer.getMustConstraints();
+        final Collection<? extends MustDefinition> mustConstraints = refineContainer.getMustConstraints();
         assertTrue(mustConstraints.isEmpty());
         assertEquals(Optional.of("description of port defined by refine"), refineContainer.getDescription());
         assertEquals(Optional.of("port reference added by refine"), refineContainer.getReference());
@@ -137,10 +135,10 @@ public class GroupingTest {
     @Test
     public void testGrouping() {
         final Module testModule = TestUtils.findModule(ctx, "baz").get();
-        final Set<GroupingDefinition> groupings = testModule.getGroupings();
+        final Collection<? extends GroupingDefinition> groupings = testModule.getGroupings();
         assertEquals(1, groupings.size());
         final GroupingDefinition grouping = groupings.iterator().next();
-        final Collection<DataSchemaNode> children = grouping.getChildNodes();
+        final Collection<? extends DataSchemaNode> children = grouping.getChildNodes();
         assertEquals(5, children.size());
     }
 
@@ -151,7 +149,7 @@ public class GroupingTest {
 
 
         // get grouping
-        final Set<GroupingDefinition> groupings = baz.getGroupings();
+        final Collection<? extends GroupingDefinition> groupings = baz.getGroupings();
         assertEquals(1, groupings.size());
         final GroupingDefinition grouping = groupings.iterator().next();
 
@@ -162,7 +160,7 @@ public class GroupingTest {
                 foo.getQNameModule(), "destination"));
 
         // check uses
-        final Set<UsesNode> uses = destination.getUses();
+        final Collection<? extends UsesNode> uses = destination.getUses();
         assertEquals(1, uses.size());
 
         // check uses process
@@ -239,26 +237,26 @@ public class GroupingTest {
         assertEquals(addresses_g, SchemaNodeUtils.getRootOriginalIfPossible(addresses_u));
 
         // grouping defined by 'uses'
-        final Set<GroupingDefinition> groupings_u = destination.getGroupings();
+        final Collection<? extends GroupingDefinition> groupings_u = destination.getGroupings();
         assertEquals(1, groupings_u.size());
         final GroupingDefinition grouping_u = groupings_u.iterator().next();
         TestUtils.checkIsAddedByUses(grouping_u, true);
 
         // grouping defined in 'grouping' node
-        final Set<GroupingDefinition> groupings_g = grouping.getGroupings();
+        final Collection<? extends GroupingDefinition> groupings_g = grouping.getGroupings();
         assertEquals(1, groupings_g.size());
         final GroupingDefinition grouping_g = groupings_g.iterator().next();
         TestUtils.checkIsAddedByUses(grouping_g, false);
         assertFalse(grouping_u.equals(grouping_g));
 
-        final List<UnknownSchemaNode> nodes_u = destination.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> nodes_u = destination.getUnknownSchemaNodes();
         assertEquals(1, nodes_u.size());
-        final UnknownSchemaNode node_u = nodes_u.get(0);
+        final UnknownSchemaNode node_u = nodes_u.iterator().next();
         assertTrue(node_u.isAddedByUses());
 
-        final List<UnknownSchemaNode> nodes_g = grouping.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> nodes_g = grouping.getUnknownSchemaNodes();
         assertEquals(1, nodes_g.size());
-        final UnknownSchemaNode node_g = nodes_g.get(0);
+        final UnknownSchemaNode node_g = nodes_g.iterator().next();
         assertFalse(node_g.isAddedByUses());
         assertFalse(node_u.equals(node_g));
     }
@@ -269,12 +267,12 @@ public class GroupingTest {
         // suffix _g = defined in grouping
 
         // get grouping
-        final Set<GroupingDefinition> groupings = baz.getGroupings();
+        final Collection<? extends GroupingDefinition> groupings = baz.getGroupings();
         assertEquals(1, groupings.size());
         final GroupingDefinition grouping = groupings.iterator().next();
 
         // check uses
-        final Set<UsesNode> uses = foo.getUses();
+        final Collection<? extends UsesNode> uses = foo.getUses();
         assertEquals(1, uses.size());
 
         // check uses process
@@ -358,35 +356,35 @@ public class GroupingTest {
         assertEquals(addresses_g, SchemaNodeUtils.getRootOriginalIfPossible(addresses_u));
 
         // grouping defined by 'uses'
-        final Set<GroupingDefinition> groupings_u = foo.getGroupings();
+        final Collection<? extends GroupingDefinition> groupings_u = foo.getGroupings();
         assertEquals(1, groupings_u.size());
         final GroupingDefinition grouping_u = groupings_u.iterator().next();
         TestUtils.checkIsAddedByUses(grouping_u, true);
 
         // grouping defined in 'grouping' node
-        final Set<GroupingDefinition> groupings_g = grouping.getGroupings();
+        final Collection<? extends GroupingDefinition> groupings_g = grouping.getGroupings();
         assertEquals(1, groupings_g.size());
         final GroupingDefinition grouping_g = groupings_g.iterator().next();
         TestUtils.checkIsAddedByUses(grouping_g, false);
         assertFalse(grouping_u.equals(grouping_g));
 
-        final List<UnknownSchemaNode> nodes_u = foo.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> nodes_u = foo.getUnknownSchemaNodes();
         assertEquals(1, nodes_u.size());
-        final UnknownSchemaNode node_u = nodes_u.get(0);
+        final UnknownSchemaNode node_u = nodes_u.iterator().next();
         assertTrue(node_u.isAddedByUses());
 
-        final List<UnknownSchemaNode> nodes_g = grouping.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> nodes_g = grouping.getUnknownSchemaNodes();
         assertEquals(1, nodes_g.size());
-        final UnknownSchemaNode node_g = nodes_g.get(0);
+        final UnknownSchemaNode node_g = nodes_g.iterator().next();
         assertFalse(node_g.isAddedByUses());
         assertFalse(node_u.equals(node_g));
 
         final UsesNode un = uses.iterator().next();
-        final Set<AugmentationSchemaNode> usesAugments = un.getAugmentations();
+        final Collection<? extends AugmentationSchemaNode> usesAugments = un.getAugmentations();
         assertEquals(1, usesAugments.size());
         final AugmentationSchemaNode augment = usesAugments.iterator().next();
         assertEquals(Optional.of("inner augment"), augment.getDescription());
-        final Collection<DataSchemaNode> children = augment.getChildNodes();
+        final Collection<? extends DataSchemaNode> children = augment.getChildNodes();
         assertEquals(1, children.size());
         final DataSchemaNode leaf = children.iterator().next();
         assertTrue(leaf instanceof LeafSchemaNode);
@@ -399,7 +397,7 @@ public class GroupingTest {
         assertEquals(1, ctx.getModules().size());
 
         final Module testModule = TestUtils.findModule(ctx, "cascade-uses").get();
-        final Set<GroupingDefinition> groupings = testModule.getGroupings();
+        final Collection<? extends GroupingDefinition> groupings = testModule.getGroupings();
 
         GroupingDefinition gu = null;
         GroupingDefinition gv = null;
@@ -443,7 +441,7 @@ public class GroupingTest {
             Revision.of("2013-07-18"));
 
         // grouping-U
-        Collection<DataSchemaNode> childNodes = gu.getChildNodes();
+        Collection<? extends DataSchemaNode> childNodes = gu.getChildNodes();
         assertEquals(7, childNodes.size());
 
         final LeafSchemaNode leafGroupingU = (LeafSchemaNode) gu.getDataChildByName(QName.create(
@@ -614,8 +612,7 @@ public class GroupingTest {
                 .getDataChildByName(QName.create(foo.getQNameModule(), "my-leaf"));
 
         TypeDefinition<?> impType = null;
-        final Set<TypeDefinition<?>> typeDefinitions = imp.getTypeDefinitions();
-        for (final TypeDefinition<?> typeDefinition : typeDefinitions) {
+        for (final TypeDefinition<?> typeDefinition : imp.getTypeDefinitions()) {
             if (typeDefinition.getQName().getLocalName().equals("imp-type")) {
                 impType = typeDefinition;
                 break;
index a58ece2738cd0294aded3f9298ff4d43399669f5..4e300e925bf080a9918eb2c0c9e8515da741979f 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import static org.hamcrest.CoreMatchers.anyOf;
@@ -15,8 +14,8 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertThat;
 import static org.opendaylight.yangtools.yang.stmt.StmtTestUtils.sourceForResource;
 
+import java.util.Collection;
 import java.util.Iterator;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.model.api.IdentitySchemaNode;
 import org.opendaylight.yangtools.yang.model.api.Module;
@@ -79,10 +78,10 @@ public class IdentityStmtTest {
         Module testModule = result.findModules("legal-chained-identity-test").iterator().next();
         assertNotNull(testModule);
 
-        Set<IdentitySchemaNode> identities = testModule.getIdentities();
+        Collection<? extends IdentitySchemaNode> identities = testModule.getIdentities();
         assertEquals(4, identities.size());
 
-        Iterator<IdentitySchemaNode> identitiesIterator = identities.iterator();
+        Iterator<? extends IdentitySchemaNode> identitiesIterator = identities.iterator();
         IdentitySchemaNode identity = identitiesIterator.next();
         assertThat(identity.getQName().getLocalName(), anyOf(is("first-identity"), is("second-identity"),
             is("third-identity"), is("fourth-identity")));
@@ -108,7 +107,7 @@ public class IdentityStmtTest {
         assertNotNull(result);
 
         Module testModule = result.findModules("duplicate-identity-test").iterator().next();
-        Set<IdentitySchemaNode> identities = testModule.getIdentities();
+        Collection<? extends IdentitySchemaNode> identities = testModule.getIdentities();
         assertEquals(1, identities.size());
     }
 }
index e078597c8a8fdf845a9a07be613030ed74cee448..c3d0c1575be70a0b10df08541f5f42ffc8887cf9 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import static org.hamcrest.CoreMatchers.anyOf;
@@ -15,8 +14,8 @@ import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.opendaylight.yangtools.yang.stmt.StmtTestUtils.sourceForResource;
 
+import java.util.Collection;
 import java.util.Iterator;
-import java.util.Set;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.Test;
@@ -51,10 +50,10 @@ public class IncludedStmtsTest {
         final Module testModule = result.findModules("root-module").iterator().next();
         assertNotNull(testModule);
 
-        final Set<TypeDefinition<?>> typedefs = testModule.getTypeDefinitions();
+        final Collection<? extends TypeDefinition<?>> typedefs = testModule.getTypeDefinitions();
         assertEquals(2, typedefs.size());
 
-        final Iterator<TypeDefinition<?>> typedefsIterator = typedefs.iterator();
+        final Iterator<? extends TypeDefinition<?>> typedefsIterator = typedefs.iterator();
         TypeDefinition<?> typedef = typedefsIterator.next();
         assertThat(typedef.getQName().getLocalName(), anyOf(is("new-string-type"), is("new-int32-type")));
         assertThat(typedef.getBaseType().getQName().getLocalName(), anyOf(is("string"), is("int32")));
@@ -68,10 +67,10 @@ public class IncludedStmtsTest {
         final Module testModule = result.findModules("root-module").iterator().next();
         assertNotNull(testModule);
 
-        final Set<FeatureDefinition> features = testModule.getFeatures();
+        final Collection<? extends FeatureDefinition> features = testModule.getFeatures();
         assertEquals(2, features.size());
 
-        final Iterator<FeatureDefinition> featuresIterator = features.iterator();
+        final Iterator<? extends FeatureDefinition> featuresIterator = features.iterator();
         FeatureDefinition feature = featuresIterator.next();
         assertThat(feature.getQName().getLocalName(), anyOf(is("new-feature1"), is("new-feature2")));
         feature = featuresIterator.next();
index 55cb14136be8874dc9e51173d2ebd742f5e5ead5..e3f9e1982740b5af54c40f7ec28ccd103a92df6d 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import static org.junit.Assert.assertEquals;
@@ -15,8 +14,8 @@ import static org.junit.Assert.assertTrue;
 import static org.opendaylight.yangtools.yang.stmt.StmtTestUtils.sourceForResource;
 
 import java.net.URI;
+import java.util.Collection;
 import java.util.Optional;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.QNameModule;
@@ -89,7 +88,7 @@ public class MoreRevisionsTest {
                 .addSources(NETWORK_TOPOLOGY_20130712, NETWORK_TOPOLOGY_20131021, IETF_TYPES)
                 .buildEffective();
         assertNotNull(result);
-        Set<Module> modules = result.getModules();
+        Collection<? extends Module> modules = result.getModules();
 
         assertEquals(3, modules.size());
         assertEquals(2, StmtTestUtils.findModules(modules, "network-topology").size());
@@ -155,7 +154,7 @@ public class MoreRevisionsTest {
         Revision rev20121115 = Revision.of("2012-11-15");
 
         Module interfacesModule20121115 = context.findModule("ietf-interfaces", rev20121115).get();
-        Set<ModuleImport> imports = interfacesModule20121115.getImports();
+        Collection<? extends ModuleImport> imports = interfacesModule20121115.getImports();
         assertEquals(1, imports.size());
         ModuleImport interfacesImport = imports.iterator().next();
         assertEquals("ietf-yang-types", interfacesImport.getModuleName());
@@ -167,7 +166,7 @@ public class MoreRevisionsTest {
         Revision rev20101004 = Revision.of("2010-10-04");
 
         Module monitoringModule20101004 = context.findModule("ietf-netconf-monitoring", rev20101004).get();
-        Set<ModuleImport> imports = monitoringModule20101004.getImports();
+        Collection<? extends ModuleImport> imports = monitoringModule20101004.getImports();
         assertEquals(2, imports.size());
         for (ModuleImport monitoringImport : imports) {
             if (monitoringImport.getModuleName().equals("ietf-yang-types")) {
@@ -228,7 +227,7 @@ public class MoreRevisionsTest {
         QName lastChangeTypeQName = ((LeafSchemaNode) leafLastChange).getType().getQName();
         assertEquals(dateTimeTypeDef20100924, lastChangeTypeQName);
 
-        Set<ModuleImport> imports = interfacesModule20121115.getImports();
+        Collection<? extends ModuleImport> imports = interfacesModule20121115.getImports();
         assertEquals(1, imports.size());
         ModuleImport interfacesImport = imports.iterator().next();
         assertEquals("ietf-yang-types", interfacesImport.getModuleName());
@@ -249,7 +248,7 @@ public class MoreRevisionsTest {
         QName lockedTimeTypeQName = ((LeafSchemaNode) leafLockedTime).getType().getQName();
         assertEquals(dateTimeTypeDef20130715, lockedTimeTypeQName);
 
-        Set<ModuleImport> imports = monitoringModule19700101.getImports();
+        Collection<? extends ModuleImport> imports = monitoringModule19700101.getImports();
         assertEquals(1, imports.size());
         ModuleImport monitoringImport = imports.iterator().next();
         assertEquals("ietf-yang-types", monitoringImport.getModuleName());
index 98e6656c3f78f3fabfa6815bdd1c7ba0b25addf2..4b0d2086ad60e66e4a4dca1bbe88e7269153e0bc 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import static org.hamcrest.CoreMatchers.anyOf;
@@ -44,10 +43,10 @@ public class MustAndWhenStmtTest {
         assertNotNull(container);
         assertTrue(container.isPresenceContainer());
 
-        final Collection<MustDefinition> musts = container.getMustConstraints();
+        final Collection<? extends MustDefinition> musts = container.getMustConstraints();
         assertEquals(2, musts.size());
 
-        final Iterator<MustDefinition> mustsIterator = musts.iterator();
+        final Iterator<? extends MustDefinition> mustsIterator = musts.iterator();
         MustDefinition mustStmt = mustsIterator.next();
         assertThat(mustStmt.getXpath().getOriginalString(), anyOf(is("ifType != 'ethernet' or (ifType = 'ethernet' and "
                 + "ifMTU = 1500)"), is("ifType != 'atm' or (ifType = 'atm' and ifMTU <= 17966 and ifMTU >= 64)")));
index 87f6356f1e5aee0c8b5fa6aef14fa831f12010b4..e8530efea91565c1ea8747c190f8b075ac4b0b8d 100644 (file)
@@ -5,14 +5,13 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.opendaylight.yangtools.yang.stmt.StmtTestUtils.sourceForResource;
 
-import java.util.Set;
+import java.util.Collection;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.AnyxmlSchemaNode;
@@ -35,7 +34,7 @@ public class NotificationStmtTest {
         final Module testModule = result.findModules("baz").iterator().next();
         assertNotNull(testModule);
 
-        final Set<NotificationDefinition> notifications = testModule.getNotifications();
+        final Collection<? extends NotificationDefinition> notifications = testModule.getNotifications();
         assertEquals(1, notifications.size());
 
         final NotificationDefinition notification = notifications.iterator().next();
index 9b44d3b33ba1395fb2d3485b28502a968279d300..c29b5d55eb15b5efb988dacd2f89c362499bdb29 100644 (file)
@@ -14,7 +14,6 @@ import static org.junit.Assert.assertNotNull;
 import java.io.IOException;
 import java.net.URISyntaxException;
 import java.util.Collection;
-import java.util.Set;
 import org.junit.Before;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
@@ -45,7 +44,7 @@ public class OrderingTest {
 
     @Test
     public void testOrderingTypedef() throws Exception {
-        final Set<TypeDefinition<?>> typedefs = bar.getTypeDefinitions();
+        final Collection<? extends TypeDefinition<?>> typedefs = bar.getTypeDefinitions();
         final String[] expectedOrder = { "int32-ext1", "int32-ext2", "string-ext1", "string-ext2", "string-ext3",
             "string-ext4", "invalid-string-pattern", "multiple-pattern-string", "my-decimal-type", "my-union",
             "my-union-ext", "nested-union2"
@@ -85,7 +84,7 @@ public class OrderingTest {
 
     @Test
     public void testOrderingNestedChildNodes1() throws Exception {
-        final Collection<DataSchemaNode> childNodes = foo.getChildNodes();
+        final Collection<? extends DataSchemaNode> childNodes = foo.getChildNodes();
         final String[] expectedOrder = { "int32-leaf", "string-leaf", "invalid-pattern-string-leaf",
             "invalid-direct-string-pattern-def-leaf", "multiple-pattern-string-leaf",
             "multiple-pattern-direct-string-def-leaf", "length-leaf", "decimal-leaf", "decimal-leaf2", "ext",
@@ -104,11 +103,11 @@ public class OrderingTest {
 
     @Test
     public void testOrderingNestedChildNodes2() throws Exception {
-        final Set<GroupingDefinition> groupings = baz.getGroupings();
+        final Collection<? extends GroupingDefinition> groupings = baz.getGroupings();
         assertEquals(1, groupings.size());
         final GroupingDefinition target = groupings.iterator().next();
 
-        final Collection<DataSchemaNode> childNodes = target.getChildNodes();
+        final Collection<? extends DataSchemaNode> childNodes = target.getChildNodes();
         final String[] expectedOrder = { "data", "how", "address", "port", "addresses" };
         final String[] actualOrder = new String[childNodes.size()];
 
@@ -126,7 +125,7 @@ public class OrderingTest {
                 .getModules().iterator().next();
         final ContainerSchemaNode x = (ContainerSchemaNode) justFoo
                 .getDataChildByName(QName.create(justFoo.getQNameModule(), "x"));
-        final Collection<DataSchemaNode> childNodes = x.getChildNodes();
+        final Collection<? extends DataSchemaNode> childNodes = x.getChildNodes();
 
         final String[] expectedOrder = { "x15", "x10", "x5", "x1", "a5", "a1", "x2", "b5", "b1", "x3", "ax15", "ax5" };
         final String[] actualOrder = new String[childNodes.size()];
index 0458bf3b770a9ba02f082dc3e4335d1105e4ca53..4ff7eb1298faf9ad96bee80971dca54f1b75c8f3 100644 (file)
@@ -15,7 +15,7 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 import static org.opendaylight.yangtools.yang.stmt.StmtTestUtils.sourceForResource;
 
-import java.util.Set;
+import java.util.Collection;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.Revision;
@@ -65,7 +65,7 @@ public class RpcStmtTest {
         assertNotNull(anyXml);
 
         final Module fooModule = result.findModule("foo", Revision.of("2016-09-23")).get();
-        final Set<RpcDefinition> rpcs = fooModule.getRpcs();
+        final Collection<? extends RpcDefinition> rpcs = fooModule.getRpcs();
         assertEquals(2, rpcs.size());
 
         RpcDefinition fooRpc1 = null;
@@ -103,7 +103,7 @@ public class RpcStmtTest {
         assertNotNull(schemaContext);
 
         final Module barModule = schemaContext.findModule("bar", Revision.of("2016-11-25")).get();
-        final Set<RpcDefinition> rpcs = barModule.getRpcs();
+        final Collection<? extends RpcDefinition> rpcs = barModule.getRpcs();
         assertEquals(1, rpcs.size());
 
         final RpcDefinition barRpc = rpcs.iterator().next();
index b2042cfd2a3fb81af49980d2a0e540ca4d52f49d..0b5b6a4f581c6f9c6791df273d54cd8e7eb031fc 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import com.google.common.io.Files;
@@ -65,7 +64,7 @@ public final class StmtTestUtils {
         }
     }
 
-    public static List<Module> findModules(final Set<Module> modules, final String moduleName) {
+    public static List<Module> findModules(final Collection<? extends Module> modules, final String moduleName) {
         final List<Module> result = new ArrayList<>();
         for (final Module module : modules) {
             if (module.getName().equals(moduleName)) {
@@ -84,15 +83,14 @@ public final class StmtTestUtils {
     }
 
     public static void printReferences(final Module module, final boolean isSubmodule, final String indent) {
-        LOG.debug("{}{} {}", indent, (isSubmodule ? "Submodule" : "Module"), module.getName());
-        final Set<Module> submodules = module.getSubmodules();
-        for (final Module submodule : submodules) {
+        LOG.debug("{}{} {}", indent, isSubmodule ? "Submodule" : "Module", module.getName());
+        for (final Module submodule : module.getSubmodules()) {
             printReferences(submodule, true, indent + "      ");
             printChilds(submodule.getChildNodes(), indent + "            ");
         }
     }
 
-    public static void printChilds(final Collection<DataSchemaNode> childNodes, final String indent) {
+    public static void printChilds(final Collection<? extends DataSchemaNode> childNodes, final String indent) {
 
         for (final DataSchemaNode child : childNodes) {
             LOG.debug("{}{} {}", indent, "Child", child.getQName().getLocalName());
@@ -257,8 +255,7 @@ public final class StmtTestUtils {
     public static Module findImportedModule(final SchemaContext context, final Module rootModule,
             final String importedModuleName) {
         ModuleImport requestedModuleImport = null;
-        final Set<ModuleImport> rootImports = rootModule.getImports();
-        for (final ModuleImport moduleImport : rootImports) {
+        for (final ModuleImport moduleImport : rootModule.getImports()) {
             if (moduleImport.getModuleName().equals(importedModuleName)) {
                 requestedModuleImport = moduleImport;
                 break;
index 21cb097921dcd35440b6bd7198ed43690b55ca96..3498fe561e50558e6f7be63ec9636711cf4c6406 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import static org.junit.Assert.assertEquals;
@@ -16,7 +15,7 @@ import static org.junit.Assert.fail;
 import java.io.ByteArrayOutputStream;
 import java.io.PrintStream;
 import java.io.UnsupportedEncodingException;
-import java.util.Set;
+import java.util.Collection;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Rule;
@@ -80,8 +79,8 @@ public class SubstatementValidatorTest {
 
     @Test
     public void bug6173Test() throws Exception {
-        final Set<Module> loadModules = TestUtils.loadModules(getClass().getResource(
-                "/substatement-validator/empty-element").toURI()).getModules();
+        final Collection<? extends Module> loadModules = TestUtils.loadModules(getClass()
+            .getResource("/substatement-validator/empty-element").toURI()).getModules();
         assertEquals(1, loadModules.size());
     }
 
index 1f2ba43b3b2a3ab9134d725b9ecd702bc4039fd3..ec127b8a6c56c23bc2fbb8668bd48cc0217e0d2d 100644 (file)
@@ -18,7 +18,6 @@ import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
 import java.util.Optional;
-import java.util.Set;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.QNameModule;
 import org.opendaylight.yangtools.yang.common.YangConstants;
@@ -100,30 +99,27 @@ public final class TestUtils {
         return ctx.getModules().iterator().next();
     }
 
-    public static Optional<Module> findModule(final SchemaContext context, final String moduleName) {
+    public static Optional<? extends Module> findModule(final SchemaContext context, final String moduleName) {
         return context.getModules().stream().filter(module -> moduleName.equals(module.getName())).findAny();
     }
 
-    public static ModuleImport findImport(final Set<ModuleImport> imports, final String prefix) {
-        ModuleImport result = null;
+    public static ModuleImport findImport(final Collection<? extends ModuleImport> imports, final String prefix) {
         for (ModuleImport moduleImport : imports) {
             if (moduleImport.getPrefix().equals(prefix)) {
-                result = moduleImport;
-                break;
+                return moduleImport;
             }
         }
-        return result;
+        return null;
     }
 
-    public static TypeDefinition<?> findTypedef(final Set<TypeDefinition<?>> typedefs, final String name) {
-        TypeDefinition<?> result = null;
+    public static TypeDefinition<?> findTypedef(final Collection<? extends TypeDefinition<?>> typedefs,
+            final String name) {
         for (TypeDefinition<?> td : typedefs) {
             if (td.getQName().getLocalName().equals(name)) {
-                result = td;
-                break;
+                return td;
             }
         }
-        return result;
+        return null;
     }
 
     public static SchemaPath createPath(final boolean absolute, final QNameModule module, final String... names) {
@@ -187,7 +183,7 @@ public final class TestUtils {
         }
     }
 
-    public static List<Module> findModules(final Set<Module> modules, final String moduleName) {
+    public static List<Module> findModules(final Collection<? extends Module> modules, final String moduleName) {
         List<Module> result = new ArrayList<>();
         for (Module module : modules) {
             if (module.getName().equals(moduleName)) {
index cd1e06801419f6314ca75bcf7057c2f775e65c5d..1a1eee60d5593d81e7fb6186dd5a256b1533e030 100644 (file)
@@ -9,17 +9,16 @@ package org.opendaylight.yangtools.yang.stmt;
 
 import static org.junit.Assert.assertEquals;
 
-import java.util.Set;
+import java.util.Collection;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.model.api.Module;
 
 public class TwoRevisionsTest {
-
     @Test
     public void testTwoRevisions() throws Exception {
-        Set<Module> modules = TestUtils.loadModules(getClass().getResource("/ietf").toURI()).getModules();
+        Collection<? extends Module> modules = TestUtils.loadModules(getClass().getResource("/ietf").toURI())
+                .getModules();
         //FIXME: following assert needs module revisions .equals() solution first
         assertEquals(2, TestUtils.findModules(modules, "network-topology").size());
     }
-
 }
index 70e0c9e6f5be414b3df9df380fe9b4a52fd84e7c..0d5921bef419e5dc5a7f38619c799230817ca8ad 100644 (file)
@@ -5,7 +5,6 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import static org.junit.Assert.assertEquals;
@@ -15,6 +14,7 @@ import static org.junit.Assert.assertTrue;
 
 import com.google.common.collect.Range;
 import java.math.BigDecimal;
+import java.util.Collection;
 import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
@@ -33,7 +33,7 @@ public class TypedefConstraintsTest {
 
         assertNotNull(context);
 
-        final Set<TypeDefinition<?>> typeDefinitions = context.getTypeDefinitions();
+        final Collection<? extends TypeDefinition<?>> typeDefinitions = context.getTypeDefinitions();
         assertNotNull(typeDefinitions);
         assertEquals(1, typeDefinitions.size());
 
index b967de0b7dd2b9d9798541f2c43127aa0068c74e..a4b722e7c4e7196de1e08d5760e1c72f0eb5f616 100644 (file)
@@ -5,15 +5,14 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.opendaylight.yangtools.yang.stmt.StmtTestUtils.sourceForResource;
 
+import java.util.Collection;
 import java.util.Optional;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.model.api.SchemaContext;
 import org.opendaylight.yangtools.yang.model.api.TypeDefinition;
@@ -29,7 +28,7 @@ public class TypedefSubStmtsTest {
                 .buildEffective();
         assertNotNull(result);
 
-        Set<TypeDefinition<?>> typedefs = result.getTypeDefinitions();
+        Collection<? extends TypeDefinition<?>> typedefs = result.getTypeDefinitions();
         assertEquals(1, typedefs.size());
 
         TypeDefinition<?> typedef = typedefs.iterator().next();
index 254b4ca8bcf55b349e55a73c2c17cfbcd1f2c19b..ace5eebc1b0f69ed511aaf9f0d1b8bb62b305e98 100644 (file)
@@ -17,9 +17,10 @@ import static org.opendaylight.yangtools.yang.stmt.StmtTestUtils.sourceForResour
 import com.google.common.collect.Iterables;
 import com.google.common.collect.Range;
 import java.net.URI;
+import java.util.Collection;
+import java.util.Iterator;
 import java.util.List;
 import java.util.Optional;
-import java.util.Set;
 import org.junit.Before;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
@@ -63,7 +64,7 @@ public class TypesResolutionTest {
     @Test
     public void testIPVersion() {
         Module tested = TestUtils.findModule(context, "ietf-inet-types").get();
-        Set<TypeDefinition<?>> typedefs = tested.getTypeDefinitions();
+        Collection<? extends TypeDefinition<?>> typedefs = tested.getTypeDefinitions();
         assertEquals(14, typedefs.size());
 
         TypeDefinition<?> type = TestUtils.findTypedef(typedefs, "ip-version");
@@ -94,7 +95,7 @@ public class TypesResolutionTest {
     @Test
     public void testEnumeration() {
         Module tested = TestUtils.findModule(context, "custom-types-test").get();
-        Set<TypeDefinition<?>> typedefs = tested.getTypeDefinitions();
+        Collection<? extends TypeDefinition<?>> typedefs = tested.getTypeDefinitions();
 
         TypeDefinition<?> type = TestUtils.findTypedef(typedefs, "ip-version");
         EnumTypeDefinition enumType = (EnumTypeDefinition) type.getBaseType();
@@ -126,7 +127,7 @@ public class TypesResolutionTest {
     @Test
     public void testIpAddress() {
         Module tested = TestUtils.findModule(context, "ietf-inet-types").get();
-        Set<TypeDefinition<?>> typedefs = tested.getTypeDefinitions();
+        Collection<? extends TypeDefinition<?>> typedefs = tested.getTypeDefinitions();
         TypeDefinition<?> type = TestUtils.findTypedef(typedefs, "ip-address");
         UnionTypeDefinition baseType = (UnionTypeDefinition) type.getBaseType();
         List<TypeDefinition<?>> unionTypes = baseType.getTypes();
@@ -153,7 +154,7 @@ public class TypesResolutionTest {
     @Test
     public void testDomainName() {
         Module tested = TestUtils.findModule(context, "ietf-inet-types").get();
-        Set<TypeDefinition<?>> typedefs = tested.getTypeDefinitions();
+        Collection<? extends TypeDefinition<?>> typedefs = tested.getTypeDefinitions();
         StringTypeDefinition type = (StringTypeDefinition) TestUtils.findTypedef(typedefs, "domain-name");
         assertNotNull(type.getBaseType());
         List<PatternConstraint> patterns = type.getPatternConstraints();
@@ -191,7 +192,7 @@ public class TypesResolutionTest {
     @Test
     public void testIdentity() {
         Module tested = TestUtils.findModule(context, "custom-types-test").get();
-        Set<IdentitySchemaNode> identities = tested.getIdentities();
+        Collection<? extends IdentitySchemaNode> identities = tested.getIdentities();
         assertEquals(5, identities.size());
         IdentitySchemaNode cryptoAlg = null;
         IdentitySchemaNode cryptoBase = null;
@@ -225,57 +226,59 @@ public class TypesResolutionTest {
         LeafSchemaNode leaf = (LeafSchemaNode) tested.getDataChildByName(
                 QName.create(tested.getQNameModule(), "mybits"));
         BitsTypeDefinition leafType = (BitsTypeDefinition) leaf.getType();
-        List<Bit> bits = leafType.getBits();
-        assertEquals(3, bits.size());
+        Iterator<? extends Bit> bits = leafType.getBits().iterator();
 
-        Bit bit1 = bits.get(0);
+        Bit bit1 = bits.next();
         assertEquals("disable-nagle", bit1.getName());
         assertEquals(0L, bit1.getPosition());
 
-        Bit bit2 = bits.get(1);
+        Bit bit2 = bits.next();
         assertEquals("auto-sense-speed", bit2.getName());
         assertEquals(1L, bit2.getPosition());
 
-        Bit bit3 = bits.get(2);
+        Bit bit3 = bits.next();
         assertEquals("only-10-Mb", bit3.getName());
         assertEquals(2L, bit3.getPosition());
+
+        assertFalse(bits.hasNext());
     }
 
     @Test
     public void testBitsType2() {
         Module tested = TestUtils.findModule(context, "custom-types-test").get();
-        Set<TypeDefinition<?>> typedefs = tested.getTypeDefinitions();
+        Collection<? extends TypeDefinition<?>> typedefs = tested.getTypeDefinitions();
         TypeDefinition<?> testedType = TestUtils.findTypedef(typedefs, "access-operations-type");
 
         BitsTypeDefinition bitsType = (BitsTypeDefinition) testedType.getBaseType();
-        List<Bit> bits = bitsType.getBits();
-        assertEquals(5, bits.size());
+        Iterator<? extends Bit> bits = bitsType.getBits().iterator();
 
-        Bit bit0 = bits.get(0);
+        Bit bit0 = bits.next();
         assertEquals("create", bit0.getName());
         assertEquals(0L, bit0.getPosition());
 
-        Bit bit1 = bits.get(1);
+        Bit bit1 = bits.next();
         assertEquals("delete", bit1.getName());
         assertEquals(365L, bit1.getPosition());
 
-        Bit bit2 = bits.get(2);
+        Bit bit2 = bits.next();
         assertEquals("read", bit2.getName());
         assertEquals(500L, bit2.getPosition());
 
-        Bit bit3 = bits.get(3);
+        Bit bit3 = bits.next();
         assertEquals("update", bit3.getName());
         assertEquals(501L, bit3.getPosition());
 
-        Bit bit4 = bits.get(4);
+        Bit bit4 = bits.next();
         assertEquals("exec", bit4.getName());
         assertEquals(502L, bit4.getPosition());
+
+        assertFalse(bits.hasNext());
     }
 
     @Test
     public void testIanaTimezones() {
         Module tested = TestUtils.findModule(context, "iana-timezones").get();
-        Set<TypeDefinition<?>> typedefs = tested.getTypeDefinitions();
+        Collection<? extends TypeDefinition<?>> typedefs = tested.getTypeDefinitions();
         TypeDefinition<?> testedType = TestUtils.findTypedef(typedefs, "iana-timezone");
 
         String expectedDesc = "A timezone location as defined by the IANA timezone";
@@ -307,7 +310,7 @@ public class TypesResolutionTest {
     @Test
     public void testObjectId128() {
         Module tested = TestUtils.findModule(context, "ietf-yang-types").get();
-        Set<TypeDefinition<?>> typedefs = tested.getTypeDefinitions();
+        Collection<? extends TypeDefinition<?>> typedefs = tested.getTypeDefinitions();
         StringTypeDefinition testedType = (StringTypeDefinition) TestUtils.findTypedef(typedefs,
                 "object-identifier-128");
 
@@ -338,7 +341,7 @@ public class TypesResolutionTest {
     @Test
     public void testIdentityref() {
         Module tested = TestUtils.findModule(context, "custom-types-test").get();
-        Set<TypeDefinition<?>> typedefs = tested.getTypeDefinitions();
+        Collection<? extends TypeDefinition<?>> typedefs = tested.getTypeDefinitions();
         TypeDefinition<?> testedType = TestUtils.findTypedef(typedefs, "service-type-ref");
         IdentityrefTypeDefinition baseType = (IdentityrefTypeDefinition) testedType.getBaseType();
         QName identity = baseType.getIdentities().iterator().next().getQName();
index a0a9c59068c21172755fcf423c95fa605048f9e4..2888a67a3a0c573889a0b17545448779c7fec37d 100644 (file)
@@ -18,7 +18,6 @@ import java.net.URISyntaxException;
 import java.util.ArrayDeque;
 import java.util.Collection;
 import java.util.Deque;
-import java.util.Set;
 import org.junit.Before;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
@@ -117,7 +116,7 @@ public class UsesAugmentTest {
         final Deque<QName> path = new ArrayDeque<>();
 
         // * notification pcreq
-        final Set<NotificationDefinition> notifications = testModule.getNotifications();
+        final Collection<? extends NotificationDefinition> notifications = testModule.getNotifications();
         assertEquals(1, notifications.size());
         final NotificationDefinition pcreq = notifications.iterator().next();
         assertNotNull(pcreq);
@@ -125,7 +124,7 @@ public class UsesAugmentTest {
         path.offer(expectedQName);
         SchemaPath expectedPath = SchemaPath.create(path, true);
         assertEquals(expectedPath, pcreq.getPath());
-        Collection<DataSchemaNode> childNodes = pcreq.getChildNodes();
+        Collection<? extends DataSchemaNode> childNodes = pcreq.getChildNodes();
         assertEquals(4, childNodes.size());
         // * |-- leaf version
         LeafSchemaNode version = (LeafSchemaNode) pcreq.getDataChildByName(QName.create(testModule.getQNameModule(),
@@ -642,7 +641,7 @@ public class UsesAugmentTest {
     @Test
     public void testTypedefs() throws Exception {
         final Module testModule = TestUtils.findModule(context, "grouping-definitions").get();
-        final Set<TypeDefinition<?>> types = testModule.getTypeDefinitions();
+        final Collection<? extends TypeDefinition<?>> types = testModule.getTypeDefinitions();
 
         TypeDefinition<?> intExt = null;
         for (final TypeDefinition<?> td : types) {
index 4b2d78add262eba05b9bb5b1bb59355fe2cfaeca..1da4672592bd885de09356c056abbb4f43ab876b 100644 (file)
@@ -5,14 +5,13 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.yangtools.yang.stmt;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotEquals;
 
 import java.io.IOException;
-import java.util.Set;
+import java.util.Collection;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.model.api.Module;
 import org.opendaylight.yangtools.yang.model.api.ModuleImport;
@@ -50,7 +49,7 @@ public class YangParserIdentityTest {
     public void testParsingImportPrefixIdentityTestModule() throws Exception {
         Module module = TestUtils.findModule(TestUtils.loadModules(getClass().getResource("/identity/import").toURI()),
             "prefiximportidentitytest").get();
-        Set<ModuleImport> imports = module.getImports();
+        Collection<? extends ModuleImport> imports = module.getImports();
         assertEquals(imports.size(), 1);
         ModuleImport dummy = TestUtils.findImport(imports, "dummy");
         assertNotEquals(dummy.getPrefix(), module.getPrefix());
index 328ac01b3d2541cfc580314f0b6aea4987bf44e9..4a70b3b2486afaedb8f5301e8f0f69691c68713e 100644 (file)
@@ -17,7 +17,6 @@ import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
 import java.util.Optional;
-import java.util.Set;
 import org.junit.Before;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
@@ -74,7 +73,7 @@ public class YangParserSimpleTest {
 
         assertTrue(data.isMandatory());
         assertEquals("class != 'wheel'", data.getWhenCondition().get().getOriginalString());
-        final Collection<MustDefinition> mustConstraints = data.getMustConstraints();
+        final Collection<? extends MustDefinition> mustConstraints = data.getMustConstraints();
         assertEquals(2, mustConstraints.size());
 
         final String must1 = "ifType != 'ethernet' or (ifType = 'ethernet' and ifMTU = 1500)";
@@ -121,7 +120,7 @@ public class YangParserSimpleTest {
         assertTrue(anydata.isMandatory());
         assertTrue(anydata.getWhenCondition().isPresent());
         assertEquals("class != 'wheel'", anydata.getWhenCondition().get().getOriginalString());
-        final Collection<MustDefinition> mustConstraints = anydata.getMustConstraints();
+        final Collection<? extends MustDefinition> mustConstraints = anydata.getMustConstraints();
         assertEquals(2, mustConstraints.size());
 
         final String must1 = "ifType != 'ethernet' or (ifType = 'ethernet' and ifMTU = 1500)";
@@ -162,7 +161,7 @@ public class YangParserSimpleTest {
 
         // constraints
         assertEquals("class != 'wheel'", nodes.getWhenCondition().get().getOriginalString());
-        final Collection<MustDefinition> mustConstraints = nodes.getMustConstraints();
+        final Collection<? extends MustDefinition> mustConstraints = nodes.getMustConstraints();
         assertEquals(2, mustConstraints.size());
 
         final String must1 = "ifType != 'atm' or (ifType = 'atm' and ifMTU <= 17966 and ifMTU >= 64)";
@@ -189,7 +188,7 @@ public class YangParserSimpleTest {
         assertTrue(nodes.isPresenceContainer());
 
         // typedef
-        final Set<TypeDefinition<?>> typedefs = nodes.getTypeDefinitions();
+        final Collection<? extends TypeDefinition<?>> typedefs = nodes.getTypeDefinitions();
         assertEquals(1, typedefs.size());
         final TypeDefinition<?> nodesType = typedefs.iterator().next();
         final QName typedefQName = QName.create(SN, "nodes-type");
@@ -212,7 +211,7 @@ public class YangParserSimpleTest {
             testModule.getQNameModule(), "links"));
         assertFalse(links.isUserOrdered());
 
-        final Set<GroupingDefinition> groupings = nodes.getGroupings();
+        final Collection<? extends GroupingDefinition> groupings = nodes.getGroupings();
         assertEquals(1, groupings.size());
         final GroupingDefinition nodeGroup = groupings.iterator().next();
         final QName groupQName = QName.create(SN, "node-group");
@@ -220,7 +219,7 @@ public class YangParserSimpleTest {
         final SchemaPath nodeGroupPath = SN_NODES_PATH.createChild(groupQName);
         assertEquals(nodeGroupPath, nodeGroup.getPath());
 
-        final Set<UsesNode> uses = nodes.getUses();
+        final Collection<? extends UsesNode> uses = nodes.getUses();
         assertEquals(1, uses.size());
         final UsesNode use = uses.iterator().next();
         assertEquals(nodeGroupPath, use.getGroupingPath());
index 44e219c129bad600ab6bc48588e7818513d5f0e0..b110164a1595e9b37d7df6a51f2f7f70e39a3d7a 100644 (file)
@@ -99,7 +99,7 @@ public class YangParserTest {
         assertEquals(FOO.getNamespace(), foo.getNamespace());
         assertEquals("foo", foo.getPrefix());
 
-        final Set<ModuleImport> imports = foo.getImports();
+        final Collection<? extends ModuleImport> imports = foo.getImports();
         assertEquals(2, imports.size());
 
         final ModuleImport import2 = TestUtils.findImport(imports, "br");
@@ -143,7 +143,7 @@ public class YangParserTest {
         assertEquals(1, constraints.getMinElements().intValue());
         assertEquals(11, constraints.getMaxElements().intValue());
         // test AugmentationTarget args
-        final Set<AugmentationSchemaNode> availableAugmentations = ifEntry.getAvailableAugmentations();
+        final Collection<? extends AugmentationSchemaNode> availableAugmentations = ifEntry.getAvailableAugmentations();
         assertEquals(2, availableAugmentations.size());
         // test ListSchemaNode args
         final List<QName> expectedKey = new ArrayList<>();
@@ -543,7 +543,7 @@ public class YangParserTest {
 
     @Test
     public void testDeviation() {
-        final Set<Deviation> deviations = foo.getDeviations();
+        final Collection<? extends Deviation> deviations = foo.getDeviations();
         assertEquals(1, deviations.size());
         final Deviation dev = deviations.iterator().next();
         assertEquals(Optional.of("system/user ref"), dev.getReference());
@@ -560,24 +560,24 @@ public class YangParserTest {
     public void testUnknownNode() {
         final ContainerSchemaNode network = (ContainerSchemaNode) baz.getDataChildByName(
             QName.create(baz.getQNameModule(), "network"));
-        final List<UnknownSchemaNode> unknownNodes = network.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> unknownNodes = network.getUnknownSchemaNodes();
         assertEquals(1, unknownNodes.size());
-        final UnknownSchemaNode unknownNode = unknownNodes.get(0);
+        final UnknownSchemaNode unknownNode = unknownNodes.iterator().next();
         assertNotNull(unknownNode.getNodeType());
         assertEquals("point", unknownNode.getNodeParameter());
     }
 
     @Test
     public void testFeature() {
-        final Set<FeatureDefinition> features = baz.getFeatures();
+        final Collection<? extends FeatureDefinition> features = baz.getFeatures();
         assertEquals(3, features.size());
     }
 
     @Test
     public void testExtension() {
-        final List<ExtensionDefinition> extensions = baz.getExtensionSchemaNodes();
+        final Collection<? extends ExtensionDefinition> extensions = baz.getExtensionSchemaNodes();
         assertEquals(1, extensions.size());
-        final ExtensionDefinition extension = extensions.get(0);
+        final ExtensionDefinition extension = extensions.iterator().next();
         assertEquals("name", extension.getArgument());
         assertEquals(
             Optional.of("Takes as argument a name string. Makes the code generator use the given name in the #define."),
@@ -587,7 +587,7 @@ public class YangParserTest {
 
     @Test
     public void testNotification() {
-        final Set<NotificationDefinition> notifications = baz.getNotifications();
+        final Collection<? extends NotificationDefinition> notifications = baz.getNotifications();
         assertEquals(1, notifications.size());
 
         final NotificationDefinition notification = notifications.iterator().next();
@@ -615,7 +615,7 @@ public class YangParserTest {
 
     @Test
     public void testRpc() {
-        final Set<RpcDefinition> rpcs = baz.getRpcs();
+        final Collection<? extends RpcDefinition> rpcs = baz.getRpcs();
         assertEquals(1, rpcs.size());
 
         final RpcDefinition rpc = rpcs.iterator().next();
@@ -625,7 +625,7 @@ public class YangParserTest {
 
     @Test
     public void testTypePath() throws ParseException {
-        final Set<TypeDefinition<?>> types = bar.getTypeDefinitions();
+        final Collection<? extends TypeDefinition<?>> types = bar.getTypeDefinitions();
 
         // int32-ext1
         final Int32TypeDefinition int32ext1 = (Int32TypeDefinition) TestUtils.findTypedef(types, "int32-ext1");
@@ -645,7 +645,7 @@ public class YangParserTest {
 
     @Test
     public void testTypePath2() throws ParseException {
-        final Set<TypeDefinition<?>> types = bar.getTypeDefinitions();
+        final Collection<? extends TypeDefinition<?>> types = bar.getTypeDefinitions();
 
         // my-decimal-type
         final DecimalTypeDefinition myDecType = (DecimalTypeDefinition) TestUtils.findTypedef(types, "my-decimal-type");
index 259aa1d25c41c64a346774742bc31e7637bbc0cc..7752047fad7378609a53dea17eaf84d27b9d2dcd 100644 (file)
@@ -113,7 +113,7 @@ public class YangParserWithContextTest {
         final Module testModule = context.findModule("test2", Revision.of("2013-06-18")).get();
         final Module contextModule = context.findModules(URI.create("urn:opendaylight.baz")).iterator().next();
         assertNotNull(contextModule);
-        final Set<GroupingDefinition> groupings = contextModule.getGroupings();
+        final Collection<? extends GroupingDefinition> groupings = contextModule.getGroupings();
         assertEquals(1, groupings.size());
         final GroupingDefinition grouping = groupings.iterator().next();
 
@@ -124,7 +124,7 @@ public class YangParserWithContextTest {
                 testModule.getQNameModule(), "destination"));
 
         // check uses
-        final Set<UsesNode> uses = destination.getUses();
+        final Collection<? extends UsesNode> uses = destination.getUses();
         assertEquals(1, uses.size());
 
         // check uses process
@@ -184,26 +184,26 @@ public class YangParserWithContextTest {
         assertFalse(addresses_u.equals(addresses_g));
 
         // grouping defined by 'uses'
-        final Set<GroupingDefinition> groupings_u = destination.getGroupings();
+        final Collection<? extends GroupingDefinition> groupings_u = destination.getGroupings();
         assertEquals(1, groupings_u.size());
         final GroupingDefinition grouping_u = groupings_u.iterator().next();
         assertTrue(grouping_u.isAddedByUses());
 
         // grouping defined in 'grouping' node
-        final Set<GroupingDefinition> groupings_g = grouping.getGroupings();
+        final Collection<? extends GroupingDefinition> groupings_g = grouping.getGroupings();
         assertEquals(1, groupings_g.size());
         final GroupingDefinition grouping_g = groupings_g.iterator().next();
         assertFalse(grouping_g.isAddedByUses());
         assertFalse(grouping_u.equals(grouping_g));
 
-        final List<UnknownSchemaNode> nodes_u = destination.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> nodes_u = destination.getUnknownSchemaNodes();
         assertEquals(1, nodes_u.size());
-        final UnknownSchemaNode node_u = nodes_u.get(0);
+        final UnknownSchemaNode node_u = nodes_u.iterator().next();
         assertTrue(node_u.isAddedByUses());
 
-        final List<UnknownSchemaNode> nodes_g = grouping.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> nodes_g = grouping.getUnknownSchemaNodes();
         assertEquals(1, nodes_g.size());
-        final UnknownSchemaNode node_g = nodes_g.get(0);
+        final UnknownSchemaNode node_g = nodes_g.iterator().next();
         assertFalse(node_g.isAddedByUses());
         assertFalse(node_u.equals(node_g));
     }
@@ -219,7 +219,7 @@ public class YangParserWithContextTest {
                 module.getQNameModule(), "peer"));
         final ContainerSchemaNode destination = (ContainerSchemaNode) peer.getDataChildByName(QName.create(
                 module.getQNameModule(), "destination"));
-        final Set<UsesNode> usesNodes = destination.getUses();
+        final Collection<? extends UsesNode> usesNodes = destination.getUses();
         assertEquals(1, usesNodes.size());
         final UsesNode usesNode = usesNodes.iterator().next();
 
@@ -255,14 +255,14 @@ public class YangParserWithContextTest {
         assertEquals(Optional.of("address reference added by refine"), refineLeaf.getReference());
         assertFalse(refineLeaf.isConfiguration());
         assertTrue(refineLeaf.isMandatory());
-        final Collection<MustDefinition> leafMustConstraints = refineLeaf.getMustConstraints();
+        final Collection<? extends MustDefinition> leafMustConstraints = refineLeaf.getMustConstraints();
         assertEquals(1, leafMustConstraints.size());
         final MustDefinition leafMust = leafMustConstraints.iterator().next();
         assertEquals("ifType != 'ethernet' or (ifType = 'ethernet' and ifMTU = 1500)", leafMust.toString());
 
         // container port
         assertNotNull(refineContainer);
-        final Collection<MustDefinition> mustConstraints = refineContainer.getMustConstraints();
+        final Collection<? extends MustDefinition> mustConstraints = refineContainer.getMustConstraints();
         assertTrue(mustConstraints.isEmpty());
         assertEquals(Optional.of("description of port defined by refine"), refineContainer.getDescription());
         assertEquals(Optional.of("port reference added by refine"), refineContainer.getReference());
@@ -288,7 +288,7 @@ public class YangParserWithContextTest {
                 .buildEffective();
 
         final Module module = context.findModule("test3", Revision.of("2013-06-18")).get();
-        final Set<IdentitySchemaNode> identities = module.getIdentities();
+        final Collection<? extends IdentitySchemaNode> identities = module.getIdentities();
         assertEquals(1, identities.size());
 
         final IdentitySchemaNode identity = identities.iterator().next();
@@ -315,10 +315,10 @@ public class YangParserWithContextTest {
         final Module module = context.findModule("test3", Revision.of("2013-06-18")).get();
         final ContainerSchemaNode network = (ContainerSchemaNode) module.getDataChildByName(QName.create(
                 module.getQNameModule(), "network"));
-        final List<UnknownSchemaNode> unknownNodes = network.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> unknownNodes = network.getUnknownSchemaNodes();
         assertEquals(1, unknownNodes.size());
 
-        final UnknownSchemaNode un = unknownNodes.get(0);
+        final UnknownSchemaNode un = unknownNodes.iterator().next();
         final QName unType = un.getNodeType();
         assertEquals(URI.create("urn:custom.types.demo"), unType.getNamespace());
         assertEquals(Revision.ofNullable("2012-04-16"), unType.getRevision());
@@ -371,7 +371,7 @@ public class YangParserWithContextTest {
                 .buildEffective();
 
         final Module testModule = context.findModule("deviation-test", Revision.of("2013-02-27")).get();
-        final Set<Deviation> deviations = testModule.getDeviations();
+        final Collection<? extends Deviation> deviations = testModule.getDeviations();
         assertEquals(1, deviations.size());
         final Deviation dev = deviations.iterator().next();
 
index a26f0027c804dbd127e7b4f952e4345e79906bf2..7359edb52a3136ac18991ff750a60912cff48cd2 100644 (file)
@@ -13,7 +13,6 @@ import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
 import java.net.URI;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.concepts.SemVer;
 import org.opendaylight.yangtools.yang.model.api.Module;
@@ -82,8 +81,7 @@ public class OpenconfigVersionMultipleImportTest {
     private static Module findImportedModule(final SchemaContext context, final Module rootModule,
             final String importedModuleName) {
         ModuleImport requestedModuleImport = null;
-        Set<ModuleImport> rootImports = rootModule.getImports();
-        for (ModuleImport moduleImport : rootImports) {
+        for (ModuleImport moduleImport : rootModule.getImports()) {
             if (moduleImport.getModuleName().equals(importedModuleName)) {
                 requestedModuleImport = moduleImport;
                 break;
index c842887960e0b67736cf00c9db33176cb120bb08..8843256b56c366e11ae0576632958fc4d5cf75ec 100644 (file)
@@ -13,8 +13,8 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertThat;
 import static org.junit.Assert.assertTrue;
 
+import java.util.Collection;
 import java.util.Iterator;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.AugmentationSchemaNode;
@@ -30,10 +30,10 @@ public class YinFileAugmentStmtTest extends AbstractYinModulesTest {
         final Module testModule = TestUtils.findModule(context, "main-impl").get();
         assertNotNull(testModule);
 
-        final Set<AugmentationSchemaNode> augmentations = testModule.getAugmentations();
+        final Collection<? extends AugmentationSchemaNode> augmentations = testModule.getAugmentations();
         assertEquals(1, augmentations.size());
 
-        final Iterator<AugmentationSchemaNode> augmentIterator = augmentations.iterator();
+        final Iterator<? extends AugmentationSchemaNode> augmentIterator = augmentations.iterator();
         final AugmentationSchemaNode augment = augmentIterator.next();
         assertNotNull(augment);
         assertTrue(augment.getTargetPath().toString().contains(
index 7a57d5cd1986e82915a0bcf97c74c5f272741371..cdd573ffb6b14c2df2573344550980402fd8b5df 100644 (file)
@@ -11,8 +11,8 @@ import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertNull;
 
+import java.util.Collection;
 import java.util.Iterator;
-import java.util.List;
 import java.util.Optional;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.model.api.ExtensionDefinition;
@@ -26,10 +26,10 @@ public class YinFileExtensionStmtTest extends AbstractYinModulesTest {
         Module testModule = TestUtils.findModule(context, "config").get();
         assertNotNull(testModule);
 
-        List<ExtensionDefinition> extensions = testModule.getExtensionSchemaNodes();
+        Collection<? extends ExtensionDefinition> extensions = testModule.getExtensionSchemaNodes();
         assertEquals(5, extensions.size());
 
-        Iterator<ExtensionDefinition> extIterator = extensions.iterator();
+        Iterator<? extends ExtensionDefinition> extIterator = extensions.iterator();
         ExtensionDefinition extension = extIterator.next();
         assertEquals("name", extension.getArgument());
         assertEquals("java-class", extension.getQName().getLocalName());
index b3c8ce95045e012e3495dda67a03f634328ac002..3219ec25150aa8915285661d558d192a6ab9895f 100644 (file)
@@ -15,8 +15,8 @@ import static org.junit.Assert.assertThat;
 
 import java.io.IOException;
 import java.net.URISyntaxException;
+import java.util.Collection;
 import java.util.Iterator;
-import java.util.Set;
 import org.junit.Before;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.model.api.FeatureDefinition;
@@ -42,10 +42,10 @@ public class YinFileFeatureStmtTest {
         Module testModule = TestUtils.findModule(context, "yang-with-features").get();
         assertNotNull(testModule);
 
-        Set<FeatureDefinition> features = testModule.getFeatures();
+        Collection<? extends FeatureDefinition> features = testModule.getFeatures();
         assertEquals(2, features.size());
 
-        Iterator<FeatureDefinition> featuresIterator = features.iterator();
+        Iterator<? extends FeatureDefinition> featuresIterator = features.iterator();
         FeatureDefinition feature = featuresIterator.next();
 
         assertThat(feature.getQName().getLocalName(), anyOf(is("arbitrary-names"), is("pre-provisioning")));
index 0b23496c559514ab9c11177f4ce0fe9ab3ee4ea6..d405e2bc9794c54f6eff48680f486bb5c41350b2 100644 (file)
@@ -15,7 +15,6 @@ import java.net.URISyntaxException;
 import java.util.Collection;
 import java.util.Iterator;
 import java.util.Optional;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.DataSchemaNode;
@@ -31,10 +30,10 @@ public class YinFileGroupingStmtTest extends AbstractYinModulesTest {
         final Module testModule = TestUtils.findModule(context, "config").get();
         assertNotNull(testModule);
 
-        final Set<GroupingDefinition> groupings = testModule.getGroupings();
+        final Collection<? extends GroupingDefinition> groupings = testModule.getGroupings();
         assertEquals(1, groupings.size());
 
-        final Iterator<GroupingDefinition> groupingsIterator = groupings.iterator();
+        final Iterator<? extends GroupingDefinition> groupingsIterator = groupings.iterator();
         final GroupingDefinition grouping = groupingsIterator.next();
         assertEquals("service-ref", grouping.getQName().getLocalName());
         assertEquals(Optional.of("Type of references to a particular service instance. This type\n"
@@ -44,7 +43,7 @@ public class YinFileGroupingStmtTest extends AbstractYinModulesTest {
                 + "is expected to inject a reference to the service as the value\n"
                 + "of the container."), grouping.getDescription());
 
-        final Collection<DataSchemaNode> children = grouping.getChildNodes();
+        final Collection<? extends DataSchemaNode> children = grouping.getChildNodes();
         assertEquals(2, children.size());
 
         final LeafSchemaNode leaf1 = (LeafSchemaNode) grouping.findDataChildByName(QName.create(
index a4a1900144dfe08020d8a5b46f89936ae0925698..4ec4a7529d3136c3ea4b6589fe6db5e74a21de14 100644 (file)
@@ -15,8 +15,8 @@ import static org.junit.Assert.assertThat;
 import static org.junit.Assert.assertTrue;
 
 import java.net.URISyntaxException;
+import java.util.Collection;
 import java.util.Iterator;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.model.api.IdentitySchemaNode;
 import org.opendaylight.yangtools.yang.model.api.Module;
@@ -29,10 +29,10 @@ public class YinFileIdentityStmtTest extends AbstractYinModulesTest {
         Module testModule = TestUtils.findModule(context, "config").get();
         assertNotNull(testModule);
 
-        Set<IdentitySchemaNode> identities = testModule.getIdentities();
+        Collection<? extends IdentitySchemaNode> identities = testModule.getIdentities();
         assertEquals(2, identities.size());
 
-        Iterator<IdentitySchemaNode> idIterator = identities.iterator();
+        Iterator<? extends IdentitySchemaNode> idIterator = identities.iterator();
         IdentitySchemaNode id = idIterator.next();
 
         assertThat(id.getQName().getLocalName(), anyOf(is("module-type"), is("service-type")));
index abacb5a5dd413f3eee7e1ad0c701724d450b5805..34edf8a71d6a70779845edb1acfe907888dd70b9 100644 (file)
@@ -14,8 +14,8 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertThat;
 
 import java.text.ParseException;
+import java.util.Collection;
 import java.util.Iterator;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.model.api.Module;
 import org.opendaylight.yangtools.yang.model.api.ModuleImport;
@@ -28,10 +28,10 @@ public class YinFileImportStmtTest extends AbstractYinModulesTest {
         Module testModule = TestUtils.findModule(context, "ietf-netconf-monitoring").get();
         assertNotNull(testModule);
 
-        Set<ModuleImport> imports = testModule.getImports();
+        Collection<? extends ModuleImport> imports = testModule.getImports();
         assertEquals(2, imports.size());
 
-        Iterator<ModuleImport> importsIterator = imports.iterator();
+        Iterator<? extends ModuleImport> importsIterator = imports.iterator();
         ModuleImport moduleImport = importsIterator.next();
 
         assertThat(moduleImport.getModuleName(), anyOf(is("ietf-yang-types"), is("ietf-inet-types")));
index ee69341eb171ceda298f39acc439962b2261b45a..c2cd1fb8f7b00da992b541af1b9366baa1b08a9e 100644 (file)
@@ -39,7 +39,7 @@ public class YinFileIncludeStmtTest {
         assertNotNull(parentModule);
 
         assertEquals(1, parentModule.getSubmodules().size());
-        Iterator<Module> submodulesIterator = parentModule.getSubmodules().iterator();
+        Iterator<? extends Module> submodulesIterator = parentModule.getSubmodules().iterator();
 
         Module childModule = submodulesIterator.next() ;
         assertNotNull(childModule);
index 45e941fd0fa2533f1b2e1b2800090ac8e299f37e..1bddb055831b5e5320b1090bfbdfb2eee897b472 100644 (file)
@@ -40,10 +40,10 @@ public class YinFileListStmtTest extends AbstractYinModulesTest {
         assertEquals(1, keys.size());
         assertEquals("name", keys.get(0).getLocalName());
 
-        final Collection<DataSchemaNode> children = list.getChildNodes();
+        final Collection<? extends DataSchemaNode> children = list.getChildNodes();
         assertEquals(4, children.size());
 
-        final Iterator<DataSchemaNode> childrenIterator = children.iterator();
+        final Iterator<? extends DataSchemaNode> childrenIterator = children.iterator();
         LeafSchemaNode leaf = (LeafSchemaNode) childrenIterator.next();
         assertEquals("name", leaf.getQName().getLocalName());
         assertEquals(Optional.of("Unique module instance name"), leaf.getDescription());
index 86884f45f4bc2e304ade3be37e79619cae18a338..56493db97e4a228100b77ce4468e4ef2b3d8ec77 100644 (file)
@@ -10,8 +10,8 @@ package org.opendaylight.yangtools.yang.stmt.yin;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 
+import java.util.Collection;
 import java.util.Optional;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.Module;
@@ -24,7 +24,7 @@ public class YinFileRpcStmtTest extends AbstractYinModulesTest {
     public void testRpc() {
         Module testModule = TestUtils.findModule(context, "ietf-netconf-monitoring").get();
 
-        Set<RpcDefinition> rpcs = testModule.getRpcs();
+        Collection<? extends RpcDefinition> rpcs = testModule.getRpcs();
         assertEquals(1, rpcs.size());
 
         RpcDefinition rpc = rpcs.iterator().next();
index 0faec82721d3dca04e28922102912d3ee064abe2..f23d9075b2431506cc89580315c3c153924eedf1 100644 (file)
@@ -10,25 +10,24 @@ package org.opendaylight.yangtools.yang.stmt.yin;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 
+import java.util.Collection;
 import java.util.Iterator;
 import java.util.Optional;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.model.api.Module;
 import org.opendaylight.yangtools.yang.model.api.TypeDefinition;
 import org.opendaylight.yangtools.yang.stmt.TestUtils;
 
 public class YinFileTypeDefStmtTest extends AbstractYinModulesTest {
-
     @Test
     public void testTypedef() {
         Module testModule = TestUtils.findModule(context, "config").get();
         assertNotNull(testModule);
 
-        Set<TypeDefinition<?>> typeDefs = testModule.getTypeDefinitions();
+        Collection<? extends TypeDefinition<?>> typeDefs = testModule.getTypeDefinitions();
         assertEquals(1, typeDefs.size());
 
-        Iterator<TypeDefinition<?>> typeDefIterator = typeDefs.iterator();
+        Iterator<? extends TypeDefinition<?>> typeDefIterator = typeDefs.iterator();
         TypeDefinition<?> typeDef = typeDefIterator.next();
         assertEquals("service-type-ref", typeDef.getQName().getLocalName());
         assertEquals(Optional.of("Internal type of references to service type identity."), typeDef.getDescription());
index 40d705529ffbb0b2af4de250a99e7bb918ca0ad4..370ec9e039daa96e14100d8fb920d271e453ce59 100644 (file)
@@ -12,8 +12,8 @@ import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertThat;
 
+import java.util.Collection;
 import java.util.Iterator;
-import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.AugmentationSchemaNode;
@@ -28,10 +28,10 @@ public class YinFileUsesStmtTest extends AbstractYinModulesTest {
     public void testUses() {
         final Module testModule = TestUtils.findModule(context, "main-impl").get();
 
-        final Set<AugmentationSchemaNode> augmentations = testModule.getAugmentations();
+        final Collection<? extends AugmentationSchemaNode> augmentations = testModule.getAugmentations();
         assertEquals(1, augmentations.size());
 
-        final Iterator<AugmentationSchemaNode> augmentIterator = augmentations.iterator();
+        final Iterator<? extends AugmentationSchemaNode> augmentIterator = augmentations.iterator();
         final AugmentationSchemaNode augment = augmentIterator.next();
 
         final ContainerSchemaNode container = (ContainerSchemaNode) augment.findDataChildByName(
index bd756fc152d8bdb007e39a5abd9f069aebd76f45..eaad69456697b254f4980236d00a8e2bd68f4907 100644 (file)
@@ -13,7 +13,7 @@ import static org.junit.Assert.assertThat;
 
 import java.io.IOException;
 import java.net.URISyntaxException;
-import java.util.List;
+import java.util.Collection;
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode;
@@ -41,10 +41,10 @@ public class ThirdPartyExtensionPluginTest {
 
         final ContainerSchemaNode root = (ContainerSchemaNode) dataChildByName;
 
-        final List<UnknownSchemaNode> unknownSchemaNodes = root.getUnknownSchemaNodes();
+        final Collection<? extends UnknownSchemaNode> unknownSchemaNodes = root.getUnknownSchemaNodes();
         assertEquals(1, unknownSchemaNodes.size());
 
-        final UnknownSchemaNode unknownSchemaNode = unknownSchemaNodes.get(0);
+        final UnknownSchemaNode unknownSchemaNode = unknownSchemaNodes.iterator().next();
         assertThat(unknownSchemaNode, isA(ThirdPartyExtensionEffectiveStatement.class));
         final ThirdPartyExtensionEffectiveStatement thirdPartyExtensionStmt =
                 (ThirdPartyExtensionEffectiveStatement) unknownSchemaNode;