Removed 'code-generator' and 'model' projects. 03/803/1
authorMartin Vitez <mvitez@cisco.com>
Tue, 6 Aug 2013 13:09:42 +0000 (15:09 +0200)
committerMartin Vitez <mvitez@cisco.com>
Tue, 6 Aug 2013 13:11:25 +0000 (15:11 +0200)
Updated pom.

Change-Id: I3c9498af4a545215cecc441c995bcb47c6bf82fe
Signed-off-by: Martin Vitez <mvitez@cisco.com>
207 files changed:
opendaylight/sal/yang-prototype/code-generator/.gitignore [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-api/pom.xml [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-api/src/main/java/org/opendaylight/controller/sal/binding/generator/api/BindingGenerator.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-api/src/main/java/org/opendaylight/controller/sal/binding/generator/api/package-info.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/pom.xml [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/generator/impl/BindingGeneratorImpl.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/generator/impl/package-info.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/yang/types/BaseYangTypes.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/yang/types/GroupingDefinitionDependencySort.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/yang/types/TypeProviderImpl.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/yang/types/UnionDependencySort.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/yang/types/package-info.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/AugmentRleativeXPathTest.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/AugmentedTypeTest.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/BaseTypeProvider.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/BinaryTypeTest.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/BitAndUnionTOEnclosingTest.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/ChoiceCaseGenTypesTest.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/ControllerTest.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/DefinedTypesProviderTest.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/ExtendedTypedefTest.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/GenEnumResolvingTest.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/GenTypesSubSetTest.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/GeneratedTypesBitsTest.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/GeneratedTypesStringTest.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/GeneratedTypesTest.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/MethodSignaturePattern.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/SupportTestUtil.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/UnionTypeDefTest.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/UsesTest.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/abstract-topology.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-relative-xpath-models/abstract-topology@2013-02-08.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-relative-xpath-models/augment-abstract-topology@2013-05-03.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-relative-xpath-models/iana-if-type@2012-06-05.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-relative-xpath-models/ietf-inet-types@2010-09-24.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-relative-xpath-models/ietf-interfaces@2012-11-15.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-relative-xpath-models/ietf-yang-types@2010-09-24.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/abstract-topology@2013-02-08.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/augment-abstract-topology@2013-05-03.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/augment-network-link-attributes@2013-05-03.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/augment-topology-tunnels@2013-05-03.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/iana-if-type@2012-06-05.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/ietf-inet-types@2010-09-24.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/ietf-interfaces@2012-11-15.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/ietf-yang-types@2010-09-24.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/binary-type-test-models/binary-type-test.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/binary-type-test-models/binary-types@2013-06-13.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/bit_and_union_in_leaf.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/choice-case-type-test-models/augment-monitoring@2013-07-01.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/choice-case-type-test-models/choice-monitoring@2013-07-01.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/choice-case-type-test-models/ietf-inet-types@2010-09-24.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/choice-case-type-test-models/ietf-yang-types@2010-09-24.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/controller-models/controller-network.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/controller-models/controller-openflow.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/controller-models/ietf-inet-types@2010-09-24.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/controller-models/ietf-yang-types@2010-09-24.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/demo-topology.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/enum-test-models/abstract-topology@2013-02-08.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/enum-test-models/iana-if-type@2012-06-05.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/enum-test-models/ietf-inet-types@2010-09-24.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/enum-test-models/ietf-interfaces@2012-11-15.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/enum-test-models/ietf-yang-types@2010-09-24.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/ietf-inet-types@2010-09-24.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/leafref-test-models/abstract-topology@2013-02-08.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/leafref-test-models/iana-if-type@2012-06-05.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/leafref-test-models/ietf-inet-types@2010-09-24.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/leafref-test-models/ietf-interfaces@2012-11-15.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/leafref-test-models/ietf-yang-types@2010-09-24.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/list-composite-key.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/simple-bits-demo.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/simple-container-demo.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/simple-leaf-list-demo.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/simple-list-demo.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/simple-string-demo.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/typedef_of_typedef.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/union-test-models/abstract-topology.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/union-test-models/ietf-inet-types@2010-09-24.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-augment.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-case.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-container.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-dependencies.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-grouping.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-list.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-modul.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-notification.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-rpc.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-spi/pom.xml [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-spi/src/main/java/org/opendaylight/controller/sal/binding/generator/spi/BindingGeneratorServiceProvider.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-spi/src/main/java/org/opendaylight/controller/sal/binding/generator/spi/TypeProvider.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-spi/src/main/java/org/opendaylight/controller/sal/binding/generator/spi/TypeProviderFactory.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-spi/src/main/java/org/opendaylight/controller/sal/binding/generator/spi/YANGModuleIdentifier.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-spi/src/main/java/org/opendaylight/controller/sal/binding/generator/spi/package-info.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-util/pom.xml [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/AbstractBaseType.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/BindingGeneratorUtil.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/ReferencedTypeImpl.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/TypeConstants.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/Types.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/AbstractGeneratedType.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/AbstractGeneratedTypeBuilder.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/AbstractTypeMember.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/AbstractTypeMemberBuilder.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/AnnotationTypeBuilderImpl.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/ConstantImpl.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/EnumerationBuilderImpl.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/GeneratedPropertyBuilderImpl.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/GeneratedPropertyImpl.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/GeneratedTOBuilderImpl.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/GeneratedTypeBuilderImpl.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/MethodParameterImpl.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/MethodSignatureBuilderImpl.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/MethodSignatureImpl.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/package-info.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/test/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/AnnotationBuilderTest.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/pom.xml [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/BuilderGenerator.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/BuilderTemplate.xtend [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/ClassGenerator.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/ClassTemplate.xtend [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/Constants.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/EnumGenerator.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/EnumTemplate.xtend [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/GeneratorJavaFile.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/GeneratorUtil.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/InterfaceGenerator.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/InterfaceTemplate.xtend [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/package-info.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/java/org/opendaylight/controller/sal/java/api/generator/test/ClassCodeGeneratorTest.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/java/org/opendaylight/controller/sal/java/api/generator/test/GenerateInnerClassForBitsAndUnionInLeavesTest.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/java/org/opendaylight/controller/sal/java/api/generator/test/GeneratorJavaFileTest.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/java/org/opendaylight/controller/sal/java/api/generator/test/package-info.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/abstract-topology.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/bit_and_union_in_leaf.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/demo-topology.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/list-composite-key.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/simple-container-demo.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/simple-leaf-list-demo.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/simple-list-demo.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/yang/abstract-topology@2013-02-08.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/yang/iana-if-type@2012-06-05.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/yang/ietf-inet-types@2010-09-24.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/yang/ietf-interfaces@2012-11-15.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/yang/ietf-yang-types@2010-09-24.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/pom.xml [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/AccessModifier.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/AnnotationType.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/CodeGenerator.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/ConcreteType.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/Constant.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/Enumeration.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/GeneratedProperty.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/GeneratedTransferIdentityObject.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/GeneratedTransferObject.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/GeneratedType.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/MethodSignature.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/ParameterizedType.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/Type.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/TypeMember.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/WildcardType.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/package-info.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/AnnotationTypeBuilder.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/ConstantBuilder.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/EnumBuilder.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/GeneratedPropertyBuilder.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/GeneratedTOBuilder.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/GeneratedTypeBuilder.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/MethodSignatureBuilder.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/TypeMemberBuilder.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/package-info.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/provider/package-info.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/maven-sal-api-gen-plugin/pom.xml [deleted file]
opendaylight/sal/yang-prototype/code-generator/maven-sal-api-gen-plugin/src/main/java/org/opendaylight/controller/maven/sal/api/gen/plugin/CodeGeneratorImpl.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/pom.xml [deleted file]
opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/pom.xml [deleted file]
opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/java/Example.java [deleted file]
opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/augment-monitoring@2013-07-01.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/bit_and_union_in_leaf.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/choice-monitoring@2013-07-01.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/controller-network-ne.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/controller-network.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/controller-openflow-ipv6.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/controller-openflow.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/demo-topology.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/ietf-inet-types@2010-09-24.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/ietf-yang-types@2010-09-24.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/simple-string-demo.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/typedef_of_typedef.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/samples/modeling-sample/pom.xml [deleted file]
opendaylight/sal/yang-prototype/code-generator/samples/modeling-sample/src/main/yang/toaster.yang [deleted file]
opendaylight/sal/yang-prototype/code-generator/src/site/site.xml [deleted file]
opendaylight/sal/yang-prototype/model/ietf/ietf-inet-types/pom.xml [deleted file]
opendaylight/sal/yang-prototype/model/ietf/ietf-inet-types/src/main/yang/ietf-inet-types.yang [deleted file]
opendaylight/sal/yang-prototype/model/ietf/ietf-yang-types/pom.xml [deleted file]
opendaylight/sal/yang-prototype/model/ietf/ietf-yang-types/src/main/yang/ietf-yang-types.yang [deleted file]
opendaylight/sal/yang-prototype/model/ietf/pom.xml [deleted file]
opendaylight/sal/yang-prototype/model/ietf/src/main/yang/.gitignore [deleted file]
opendaylight/sal/yang-prototype/model/model-openflow/pom.xml [deleted file]
opendaylight/sal/yang-prototype/model/model-openflow/src/main/yang/.gitignore [deleted file]
opendaylight/sal/yang-prototype/model/model-topology-bgp/pom.xml [deleted file]
opendaylight/sal/yang-prototype/model/model-topology/pom.xml [deleted file]
opendaylight/sal/yang-prototype/model/model-topology/src/main/yang/topology.yang [deleted file]
opendaylight/sal/yang-prototype/model/pom.xml [deleted file]
opendaylight/sal/yang-prototype/model/src/main/yang/.gitignore [deleted file]
opendaylight/sal/yang-prototype/model/src/site/site.xml [deleted file]
opendaylight/sal/yang-prototype/pom.xml
opendaylight/sal/yang-prototype/src/site/markdown/readme.md

diff --git a/opendaylight/sal/yang-prototype/code-generator/.gitignore b/opendaylight/sal/yang-prototype/code-generator/.gitignore
deleted file mode 100644 (file)
index acda883..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-/.settings
-/binding-java-api-generator/src/main/xtend-gen
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-api/pom.xml b/opendaylight/sal/yang-prototype/code-generator/binding-generator-api/pom.xml
deleted file mode 100644 (file)
index 544942b..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">\r
-\r
-    <parent>\r
-        <groupId>org.opendaylight.controller</groupId>\r
-        <artifactId>binding-generator</artifactId>\r
-        <version>0.5.5-SNAPSHOT</version>\r
-    </parent>\r
-\r
-    <modelVersion>4.0.0</modelVersion>\r
-    <artifactId>binding-generator-api</artifactId>\r
-\r
-    <dependencies>\r
-        <dependency>\r
-            <groupId>org.opendaylight.controller</groupId>\r
-            <artifactId>binding-model-api</artifactId>\r
-        </dependency>\r
-        <dependency>\r
-            <groupId>org.opendaylight.yangtools</groupId>\r
-            <artifactId>yang-model-api</artifactId>\r
-        </dependency>\r
-    </dependencies>\r
-\r
-</project>\r
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-api/src/main/java/org/opendaylight/controller/sal/binding/generator/api/BindingGenerator.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-api/src/main/java/org/opendaylight/controller/sal/binding/generator/api/BindingGenerator.java
deleted file mode 100644 (file)
index 4c07970..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/*\r
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
- *\r
- * This program and the accompanying materials are made available under the\r
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
- * and is available at http://www.eclipse.org/legal/epl-v10.html\r
- */\r
-package org.opendaylight.controller.sal.binding.generator.api;\r
-\r
-import java.util.List;\r
-import java.util.Set;\r
-\r
-import org.opendaylight.controller.sal.binding.model.api.Type;\r
-import org.opendaylight.yangtools.yang.model.api.Module;\r
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;\r
-\r
-/**\r
- *\r
- *\r
- */\r
-public interface BindingGenerator {\r
-\r
-    /**\r
-     * Generate Types from whole Schema Context.\r
-     * <br>\r
-     * The method will return List of All Generated Types that could be\r
-     * Generated from Schema Context.\r
-     *\r
-     *\r
-     * @param context Schema Context\r
-     * @return List of Generated Types\r
-     *\r
-     * @see SchemaContext\r
-     */\r
-    public List<Type> generateTypes(final SchemaContext context);\r
-\r
-    /**\r
-     * Generate Types from Schema Context restricted by sub set of specified\r
-     * Modules. The Schema Context MUST contain all of the sub modules\r
-     * otherwise the there is no guarantee that result List of Generated\r
-     * Types will contain correct Generated Types.\r
-     *\r
-     * @param context Schema Context\r
-     * @param modules Sub Set of Modules\r
-     * @return List of Generated Types restricted by sub set of Modules\r
-     *\r
-     * @see Module\r
-     * @see SchemaContext\r
-     *\r
-     */\r
-    public List<Type> generateTypes(final SchemaContext context,\r
-                                    final Set<Module> modules);\r
-}\r
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-api/src/main/java/org/opendaylight/controller/sal/binding/generator/api/package-info.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-api/src/main/java/org/opendaylight/controller/sal/binding/generator/api/package-info.java
deleted file mode 100644 (file)
index 237690c..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.generator.api;
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/pom.xml b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/pom.xml
deleted file mode 100644 (file)
index cbecf02..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">\r
-\r
-    <parent>\r
-        <groupId>org.opendaylight.controller</groupId>\r
-        <artifactId>binding-generator</artifactId>\r
-        <version>0.5.5-SNAPSHOT</version>\r
-    </parent>\r
-\r
-    <modelVersion>4.0.0</modelVersion>\r
-    <artifactId>binding-generator-impl</artifactId>\r
-\r
-    <dependencies>\r
-        <dependency>\r
-            <groupId>org.opendaylight.controller</groupId>\r
-            <artifactId>binding-generator-util</artifactId>\r
-        </dependency>\r
-        <dependency>\r
-            <groupId>org.opendaylight.yangtools</groupId>\r
-            <artifactId>yang-parser-impl</artifactId>\r
-            <version>${yangtools.version}</version>\r
-        </dependency>\r
-        <dependency>\r
-            <groupId>org.opendaylight.controller</groupId>\r
-            <artifactId>binding-generator-api</artifactId>\r
-        </dependency>\r
-        <dependency>\r
-            <groupId>org.opendaylight.controller</groupId>\r
-            <artifactId>binding-generator-spi</artifactId>\r
-        </dependency>\r
-        <dependency>\r
-            <groupId>junit</groupId>\r
-            <artifactId>junit</artifactId>\r
-        </dependency>\r
-        <dependency>\r
-            <groupId>commons-lang</groupId>\r
-            <artifactId>commons-lang</artifactId>\r
-            <version>2.1</version>\r
-        </dependency>\r
-    </dependencies>\r
-\r
-</project>\r
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/generator/impl/BindingGeneratorImpl.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/generator/impl/BindingGeneratorImpl.java
deleted file mode 100644 (file)
index 3b5272d..0000000
+++ /dev/null
@@ -1,1258 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.generator.impl;
-
-import static org.opendaylight.controller.binding.generator.util.BindingGeneratorUtil.*;
-import static org.opendaylight.yangtools.yang.model.util.SchemaContextUtil.*;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.concurrent.Future;
-
-import javax.management.Notification;
-
-import org.opendaylight.controller.binding.generator.util.ReferencedTypeImpl;
-import org.opendaylight.controller.binding.generator.util.Types;
-import org.opendaylight.controller.binding.generator.util.generated.type.builder.GeneratedTOBuilderImpl;
-import org.opendaylight.controller.binding.generator.util.generated.type.builder.GeneratedTypeBuilderImpl;
-import org.opendaylight.controller.sal.binding.generator.api.BindingGenerator;
-import org.opendaylight.controller.sal.binding.generator.spi.TypeProvider;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.EnumBuilder;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.GeneratedPropertyBuilder;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.GeneratedTOBuilder;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.GeneratedTypeBuilder;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.MethodSignatureBuilder;
-import org.opendaylight.controller.sal.binding.yang.types.GroupingDefinitionDependencySort;
-import org.opendaylight.controller.sal.binding.yang.types.TypeProviderImpl;
-import org.opendaylight.yangtools.yang.common.QName;
-import org.opendaylight.yangtools.yang.common.RpcResult;
-import org.opendaylight.yangtools.yang.model.api.AugmentationSchema;
-import org.opendaylight.yangtools.yang.model.api.ChoiceCaseNode;
-import org.opendaylight.yangtools.yang.model.api.ChoiceNode;
-import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode;
-import org.opendaylight.yangtools.yang.model.api.DataNodeContainer;
-import org.opendaylight.yangtools.yang.model.api.DataSchemaNode;
-import org.opendaylight.yangtools.yang.model.api.GroupingDefinition;
-import org.opendaylight.yangtools.yang.model.api.IdentitySchemaNode;
-import org.opendaylight.yangtools.yang.model.api.LeafListSchemaNode;
-import org.opendaylight.yangtools.yang.model.api.LeafSchemaNode;
-import org.opendaylight.yangtools.yang.model.api.ListSchemaNode;
-import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.NotificationDefinition;
-import org.opendaylight.yangtools.yang.model.api.RpcDefinition;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang.model.api.SchemaNode;
-import org.opendaylight.yangtools.yang.model.api.SchemaPath;
-import org.opendaylight.yangtools.yang.model.api.TypeDefinition;
-import org.opendaylight.yangtools.yang.model.api.UsesNode;
-import org.opendaylight.yangtools.yang.model.api.type.BitsTypeDefinition;
-import org.opendaylight.yangtools.yang.model.api.type.EnumTypeDefinition;
-import org.opendaylight.yangtools.yang.model.api.type.EnumTypeDefinition.EnumPair;
-import org.opendaylight.yangtools.yang.model.util.DataNodeIterator;
-import org.opendaylight.yangtools.yang.model.util.ExtendedType;
-import org.opendaylight.yangtools.yang.model.util.SchemaContextUtil;
-import org.opendaylight.yangtools.yang.model.util.UnionType;
-
-public final class BindingGeneratorImpl implements BindingGenerator {
-
-    private Map<String, Map<String, GeneratedTypeBuilder>> genTypeBuilders;
-    private TypeProvider typeProvider;
-    private SchemaContext schemaContext;
-    private final Map<SchemaPath, GeneratedType> allGroupings = new HashMap<SchemaPath, GeneratedType>();
-
-    public BindingGeneratorImpl() {
-        super();
-    }
-
-    @Override
-    public List<Type> generateTypes(final SchemaContext context) {
-        if (context == null) {
-            throw new IllegalArgumentException("Schema Context reference cannot be NULL!");
-        }
-        if (context.getModules() == null) {
-            throw new IllegalStateException("Schema Context does not contain defined modules!");
-        }
-
-        final List<Type> generatedTypes = new ArrayList<>();
-        schemaContext = context;
-        typeProvider = new TypeProviderImpl(context);
-        final Set<Module> modules = context.getModules();
-        genTypeBuilders = new HashMap<>();
-        for (final Module module : modules) {
-            generatedTypes.addAll(allGroupingsToGenTypes(module));
-            generatedTypes.add(moduleToDataType(module));
-            generatedTypes.addAll(allTypeDefinitionsToGenTypes(module));
-            generatedTypes.addAll(allContainersToGenTypes(module));
-            generatedTypes.addAll(allListsToGenTypes(module));
-            generatedTypes.addAll(allChoicesToGenTypes(module));
-            generatedTypes.addAll(allAugmentsToGenTypes(module));
-            generatedTypes.addAll(allRPCMethodsToGenType(module));
-            generatedTypes.addAll(allNotificationsToGenType(module));
-            generatedTypes.addAll(allIdentitiesToGenTypes(module, context));
-
-        }
-        return generatedTypes;
-    }
-
-    @Override
-    public List<Type> generateTypes(final SchemaContext context, final Set<Module> modules) {
-        if (context == null) {
-            throw new IllegalArgumentException("Schema Context reference cannot be NULL!");
-        }
-        if (context.getModules() == null) {
-            throw new IllegalStateException("Schema Context does not contain defined modules!");
-        }
-        if (modules == null) {
-            throw new IllegalArgumentException("Sef of Modules cannot be NULL!");
-        }
-
-        final List<Type> filteredGenTypes = new ArrayList<>();
-        schemaContext = context;
-        typeProvider = new TypeProviderImpl(context);
-        final Set<Module> contextModules = context.getModules();
-        genTypeBuilders = new HashMap<>();
-        for (final Module contextModule : contextModules) {
-            final List<Type> generatedTypes = new ArrayList<>();
-
-            generatedTypes.addAll(allGroupingsToGenTypes(contextModule));
-            generatedTypes.add(moduleToDataType(contextModule));
-            generatedTypes.addAll(allTypeDefinitionsToGenTypes(contextModule));
-            generatedTypes.addAll(allContainersToGenTypes(contextModule));
-            generatedTypes.addAll(allListsToGenTypes(contextModule));
-            generatedTypes.addAll(allChoicesToGenTypes(contextModule));
-            generatedTypes.addAll(allAugmentsToGenTypes(contextModule));
-            generatedTypes.addAll(allRPCMethodsToGenType(contextModule));
-            generatedTypes.addAll(allNotificationsToGenType(contextModule));
-            generatedTypes.addAll(allIdentitiesToGenTypes(contextModule, context));
-
-            if (modules.contains(contextModule)) {
-                filteredGenTypes.addAll(generatedTypes);
-            }
-        }
-        return filteredGenTypes;
-    }
-
-    private List<Type> allTypeDefinitionsToGenTypes(final Module module) {
-        if (module == null) {
-            throw new IllegalArgumentException("Module reference cannot be NULL!");
-        }
-        if (module.getName() == null) {
-            throw new IllegalArgumentException("Module name cannot be NULL!");
-        }
-        if (module.getTypeDefinitions() == null) {
-            throw new IllegalArgumentException("Type Definitions for module " + module.getName() + " cannot be NULL!");
-        }
-
-        final Set<TypeDefinition<?>> typeDefinitions = module.getTypeDefinitions();
-        final List<Type> generatedTypes = new ArrayList<>();
-        for (final TypeDefinition<?> typedef : typeDefinitions) {
-            if (typedef != null) {
-                final Type type = ((TypeProviderImpl) typeProvider).generatedTypeForExtendedDefinitionType(typedef);
-                if ((type != null) && !generatedTypes.contains(type)) {
-                    generatedTypes.add(type);
-                }
-            }
-        }
-        return generatedTypes;
-    }
-
-    private List<Type> allContainersToGenTypes(final Module module) {
-        if (module == null) {
-            throw new IllegalArgumentException("Module reference cannot be NULL!");
-        }
-
-        if (module.getName() == null) {
-            throw new IllegalArgumentException("Module name cannot be NULL!");
-        }
-
-        if (module.getChildNodes() == null) {
-            throw new IllegalArgumentException("Reference to Set of Child Nodes in module " + module.getName()
-                    + " cannot be NULL!");
-        }
-
-        final List<Type> generatedTypes = new ArrayList<>();
-        final DataNodeIterator it = new DataNodeIterator(module);
-        final List<ContainerSchemaNode> schemaContainers = it.allContainers();
-        final String basePackageName = moduleNamespaceToPackageName(module);
-        for (final ContainerSchemaNode container : schemaContainers) {
-            if (!container.isAddedByUses()) {
-                generatedTypes.add(containerToGenType(basePackageName, container));
-            }
-        }
-        return generatedTypes;
-    }
-
-    private List<Type> allListsToGenTypes(final Module module) {
-        if (module == null) {
-            throw new IllegalArgumentException("Module reference cannot be NULL!");
-        }
-
-        if (module.getName() == null) {
-            throw new IllegalArgumentException("Module name cannot be NULL!");
-        }
-
-        if (module.getChildNodes() == null) {
-            throw new IllegalArgumentException("Reference to Set of Child Nodes in module " + module.getName()
-                    + " cannot be NULL!");
-        }
-
-        final List<Type> generatedTypes = new ArrayList<>();
-        final DataNodeIterator it = new DataNodeIterator(module);
-        final List<ListSchemaNode> schemaLists = it.allLists();
-        final String basePackageName = moduleNamespaceToPackageName(module);
-        if (schemaLists != null) {
-            for (final ListSchemaNode list : schemaLists) {
-                if (!list.isAddedByUses()) {
-                    generatedTypes.addAll(listToGenType(basePackageName, list));
-                }
-            }
-        }
-        return generatedTypes;
-    }
-
-    private List<GeneratedType> allChoicesToGenTypes(final Module module) {
-        if (module == null) {
-            throw new IllegalArgumentException("Module reference cannot be NULL!");
-        }
-        if (module.getName() == null) {
-            throw new IllegalArgumentException("Module name cannot be NULL!");
-        }
-
-        final DataNodeIterator it = new DataNodeIterator(module);
-        final List<ChoiceNode> choiceNodes = it.allChoices();
-        final String basePackageName = moduleNamespaceToPackageName(module);
-
-        final List<GeneratedType> generatedTypes = new ArrayList<>();
-        for (final ChoiceNode choice : choiceNodes) {
-            if ((choice != null) && !choice.isAddedByUses()) {
-                generatedTypes.addAll(choiceToGeneratedType(basePackageName, choice));
-            }
-        }
-        return generatedTypes;
-    }
-
-    private List<Type> allAugmentsToGenTypes(final Module module) {
-        if (module == null) {
-            throw new IllegalArgumentException("Module reference cannot be NULL!");
-        }
-        if (module.getName() == null) {
-            throw new IllegalArgumentException("Module name cannot be NULL!");
-        }
-        if (module.getChildNodes() == null) {
-            throw new IllegalArgumentException("Reference to Set of Augmentation Definitions in module "
-                    + module.getName() + " cannot be NULL!");
-        }
-
-        final List<Type> generatedTypes = new ArrayList<>();
-        final String basePackageName = moduleNamespaceToPackageName(module);
-        final List<AugmentationSchema> augmentations = resolveAugmentations(module);
-        for (final AugmentationSchema augment : augmentations) {
-            generatedTypes.addAll(augmentationToGenTypes(basePackageName, augment));
-        }
-        return generatedTypes;
-    }
-
-    private List<AugmentationSchema> resolveAugmentations(final Module module) {
-        if (module == null) {
-            throw new IllegalArgumentException("Module reference cannot be NULL!");
-        }
-        if (module.getAugmentations() == null) {
-            throw new IllegalStateException("Augmentations Set cannot be NULL!");
-        }
-
-        final Set<AugmentationSchema> augmentations = module.getAugmentations();
-        final List<AugmentationSchema> sortedAugmentations = new ArrayList<>(augmentations);
-        Collections.sort(sortedAugmentations, new Comparator<AugmentationSchema>() {
-
-            @Override
-            public int compare(AugmentationSchema augSchema1, AugmentationSchema augSchema2) {
-
-                if (augSchema1.getTargetPath().getPath().size() > augSchema2.getTargetPath().getPath().size()) {
-                    return 1;
-                } else if (augSchema1.getTargetPath().getPath().size() < augSchema2.getTargetPath().getPath().size()) {
-                    return -1;
-                }
-                return 0;
-
-            }
-        });
-
-        return sortedAugmentations;
-    }
-
-    private GeneratedType moduleToDataType(final Module module) {
-        if (module == null) {
-            throw new IllegalArgumentException("Module reference cannot be NULL!");
-        }
-
-        final GeneratedTypeBuilder moduleDataTypeBuilder = moduleTypeBuilder(module, "Data");
-        addInterfaceDefinition(module, moduleDataTypeBuilder);
-
-        final String basePackageName = moduleNamespaceToPackageName(module);
-        if (moduleDataTypeBuilder != null) {
-            final Set<DataSchemaNode> dataNodes = module.getChildNodes();
-            resolveDataSchemaNodes(basePackageName, moduleDataTypeBuilder, dataNodes);
-        }
-        return moduleDataTypeBuilder.toInstance();
-    }
-
-    private List<Type> allRPCMethodsToGenType(final Module module) {
-        if (module == null) {
-            throw new IllegalArgumentException("Module reference cannot be NULL!");
-        }
-
-        if (module.getName() == null) {
-            throw new IllegalArgumentException("Module name cannot be NULL!");
-        }
-
-        if (module.getChildNodes() == null) {
-            throw new IllegalArgumentException("Reference to Set of RPC Method Definitions in module "
-                    + module.getName() + " cannot be NULL!");
-        }
-
-        final String basePackageName = moduleNamespaceToPackageName(module);
-        final Set<RpcDefinition> rpcDefinitions = module.getRpcs();
-        final List<Type> genRPCTypes = new ArrayList<>();
-        final GeneratedTypeBuilder interfaceBuilder = moduleTypeBuilder(module, "Service");
-        final Type future = Types.typeForClass(Future.class);
-        for (final RpcDefinition rpc : rpcDefinitions) {
-            if (rpc != null) {
-
-                String rpcName = parseToClassName(rpc.getQName().getLocalName());
-                String rpcMethodName = parseToValidParamName(rpcName);
-                MethodSignatureBuilder method = interfaceBuilder.addMethod(rpcMethodName);
-
-                final List<DataNodeIterator> rpcInOut = new ArrayList<>();
-
-                ContainerSchemaNode input = rpc.getInput();
-                ContainerSchemaNode output = rpc.getOutput();
-
-                if (input != null) {
-                    rpcInOut.add(new DataNodeIterator(input));
-                    GeneratedTypeBuilder inType = addRawInterfaceDefinition(basePackageName, input, rpcName);
-                    addInterfaceDefinition(input, inType);
-                    resolveDataSchemaNodes(basePackageName, inType, input.getChildNodes());
-                    Type inTypeInstance = inType.toInstance();
-                    genRPCTypes.add(inTypeInstance);
-                    method.addParameter(inTypeInstance, "input");
-                }
-
-                Type outTypeInstance = Types.typeForClass(Void.class);
-                if (output != null) {
-                    rpcInOut.add(new DataNodeIterator(output));
-                    GeneratedTypeBuilder outType = addRawInterfaceDefinition(basePackageName, output, rpcName);
-                    addInterfaceDefinition(output, outType);
-                    resolveDataSchemaNodes(basePackageName, outType, output.getChildNodes());
-                    outTypeInstance = outType.toInstance();
-                    genRPCTypes.add(outTypeInstance);
-
-                }
-
-                final Type rpcRes = Types.parameterizedTypeFor(Types.typeForClass(RpcResult.class), outTypeInstance);
-                method.setReturnType(Types.parameterizedTypeFor(future, rpcRes));
-                for (DataNodeIterator it : rpcInOut) {
-                    List<ContainerSchemaNode> nContainers = it.allContainers();
-                    if ((nContainers != null) && !nContainers.isEmpty()) {
-                        for (final ContainerSchemaNode container : nContainers) {
-                            if (!container.isAddedByUses()) {
-                                genRPCTypes.add(containerToGenType(basePackageName, container));
-                            }
-                        }
-                    }
-                    List<ListSchemaNode> nLists = it.allLists();
-                    if ((nLists != null) && !nLists.isEmpty()) {
-                        for (final ListSchemaNode list : nLists) {
-                            if (!list.isAddedByUses()) {
-                                genRPCTypes.addAll(listToGenType(basePackageName, list));
-                            }
-                        }
-                    }
-                }
-            }
-        }
-        genRPCTypes.add(interfaceBuilder.toInstance());
-        return genRPCTypes;
-    }
-
-    private List<Type> allNotificationsToGenType(final Module module) {
-        if (module == null) {
-            throw new IllegalArgumentException("Module reference cannot be NULL!");
-        }
-
-        if (module.getName() == null) {
-            throw new IllegalArgumentException("Module name cannot be NULL!");
-        }
-
-        if (module.getChildNodes() == null) {
-            throw new IllegalArgumentException("Reference to Set of Notification Definitions in module "
-                    + module.getName() + " cannot be NULL!");
-        }
-
-        final String basePackageName = moduleNamespaceToPackageName(module);
-        final List<Type> genNotifyTypes = new ArrayList<>();
-        final Set<NotificationDefinition> notifications = module.getNotifications();
-
-        for (final NotificationDefinition notification : notifications) {
-            if (notification != null) {
-                DataNodeIterator it = new DataNodeIterator(notification);
-
-                // Containers
-                for (ContainerSchemaNode node : it.allContainers()) {
-                    if (!node.isAddedByUses()) {
-                        genNotifyTypes.add(containerToGenType(basePackageName, node));
-                    }
-                }
-                // Lists
-                for (ListSchemaNode node : it.allLists()) {
-                    if (!node.isAddedByUses()) {
-                        genNotifyTypes.addAll(listToGenType(basePackageName, node));
-                    }
-                }
-                final GeneratedTypeBuilder notificationTypeBuilder = addDefaultInterfaceDefinition(basePackageName,
-                        notification);
-                notificationTypeBuilder.addImplementsType(Types.typeForClass(Notification.class));
-                // Notification object
-                resolveDataSchemaNodes(basePackageName, notificationTypeBuilder, notification.getChildNodes());
-                genNotifyTypes.add(notificationTypeBuilder.toInstance());
-            }
-        }
-        return genNotifyTypes;
-    }
-
-    private List<Type> allIdentitiesToGenTypes(final Module module, final SchemaContext context) {
-        List<Type> genTypes = new ArrayList<>();
-
-        final Set<IdentitySchemaNode> schemaIdentities = module.getIdentities();
-
-        final String basePackageName = moduleNamespaceToPackageName(module);
-
-        if (schemaIdentities != null && !schemaIdentities.isEmpty()) {
-            for (final IdentitySchemaNode identity : schemaIdentities) {
-                genTypes.add(identityToGenType(basePackageName, identity, context));
-            }
-        }
-        return genTypes;
-    }
-
-    private GeneratedType identityToGenType(final String basePackageName, final IdentitySchemaNode identity,
-            final SchemaContext context) {
-        if (identity == null) {
-            return null;
-        }
-
-        final String packageName = packageNameForGeneratedType(basePackageName, identity.getPath());
-        final String genTypeName = parseToClassName(identity.getQName().getLocalName());
-        final GeneratedTOBuilderImpl newType = new GeneratedTOBuilderImpl(packageName, genTypeName);
-
-        IdentitySchemaNode baseIdentity = identity.getBaseIdentity();
-        if (baseIdentity != null) {
-            Module baseIdentityParentModule = SchemaContextUtil.findParentModule(context, baseIdentity);
-
-            final String returnTypePkgName = moduleNamespaceToPackageName(baseIdentityParentModule);
-            final String returnTypeName = parseToClassName(baseIdentity.getQName().getLocalName());
-
-            GeneratedTransferObject gto = new GeneratedTOBuilderImpl(returnTypePkgName, returnTypeName).toInstance();
-            newType.setExtendsType(gto);
-        } else {
-            newType.setExtendsType(Types.getBaseIdentityTO());
-        }
-        newType.setAbstract(true);
-        return newType.toInstance();
-    }
-
-    private List<Type> allGroupingsToGenTypes(final Module module) {
-        final List<Type> genTypes = new ArrayList<>();
-        final String basePackageName = moduleNamespaceToPackageName(module);
-        final Set<GroupingDefinition> groupings = module.getGroupings();
-        List<GroupingDefinition> groupingsSortedByDependencies;
-        // groupingsSortedByDependencies =
-        // sortGroupingDefinitionsByUses(groupings);
-        groupingsSortedByDependencies = GroupingDefinitionDependencySort.sort(groupings);
-
-        for (final GroupingDefinition grouping : groupingsSortedByDependencies) {
-            GeneratedType genType = groupingToGenType(basePackageName, grouping);
-            genTypes.add(genType);
-            SchemaPath schemaPath = grouping.getPath();
-            allGroupings.put(schemaPath, genType);
-        }
-        return genTypes;
-    }
-
-    private GeneratedType groupingToGenType(final String basePackageName, GroupingDefinition grouping) {
-        if (grouping == null) {
-            return null;
-        }
-
-        final String packageName = packageNameForGeneratedType(basePackageName, grouping.getPath());
-        final Set<DataSchemaNode> schemaNodes = grouping.getChildNodes();
-        final GeneratedTypeBuilder typeBuilder = addDefaultInterfaceDefinition(packageName, grouping);
-
-        resolveDataSchemaNodes(basePackageName, typeBuilder, schemaNodes);
-        return typeBuilder.toInstance();
-    }
-
-    private EnumTypeDefinition enumTypeDefFromExtendedType(final TypeDefinition<?> typeDefinition) {
-        if (typeDefinition != null) {
-            if (typeDefinition.getBaseType() instanceof EnumTypeDefinition) {
-                return (EnumTypeDefinition) typeDefinition.getBaseType();
-            } else if (typeDefinition.getBaseType() instanceof ExtendedType) {
-                return enumTypeDefFromExtendedType(typeDefinition.getBaseType());
-            }
-        }
-        return null;
-    }
-
-    private EnumBuilder resolveInnerEnumFromTypeDefinition(final EnumTypeDefinition enumTypeDef, final String enumName,
-            final GeneratedTypeBuilder typeBuilder) {
-        if ((enumTypeDef != null) && (typeBuilder != null) && (enumTypeDef.getQName() != null)
-                && (enumTypeDef.getQName().getLocalName() != null)) {
-
-            final String enumerationName = parseToClassName(enumName);
-            final EnumBuilder enumBuilder = typeBuilder.addEnumeration(enumerationName);
-
-            if (enumBuilder != null) {
-                final List<EnumPair> enums = enumTypeDef.getValues();
-                if (enums != null) {
-                    int listIndex = 0;
-                    for (final EnumPair enumPair : enums) {
-                        if (enumPair != null) {
-                            final String enumPairName = parseToClassName(enumPair.getName());
-                            Integer enumPairValue = enumPair.getValue();
-
-                            if (enumPairValue == null) {
-                                enumPairValue = listIndex;
-                            }
-                            enumBuilder.addValue(enumPairName, enumPairValue);
-                            listIndex++;
-                        }
-                    }
-                }
-                return enumBuilder;
-            }
-        }
-        return null;
-    }
-
-    private GeneratedTypeBuilder moduleTypeBuilder(final Module module, final String postfix) {
-        if (module == null) {
-            throw new IllegalArgumentException("Module reference cannot be NULL!");
-        }
-        String packageName = moduleNamespaceToPackageName(module);
-        final String moduleName = parseToClassName(module.getName()) + postfix;
-
-        return new GeneratedTypeBuilderImpl(packageName, moduleName);
-
-    }
-
-    private List<Type> augmentationToGenTypes(final String augmentPackageName, final AugmentationSchema augSchema) {
-        if (augmentPackageName == null) {
-            throw new IllegalArgumentException("Package Name cannot be NULL!");
-        }
-        if (augSchema == null) {
-            throw new IllegalArgumentException("Augmentation Schema cannot be NULL!");
-        }
-        if (augSchema.getTargetPath() == null) {
-            throw new IllegalStateException("Augmentation Schema does not contain Target Path (Target Path is NULL).");
-        }
-
-        final List<Type> genTypes = new ArrayList<>();
-
-        // EVERY augmented interface will extends Augmentation<T> interface
-        // and DataObject interface!!!
-        final SchemaPath targetPath = augSchema.getTargetPath();
-        final DataSchemaNode targetSchemaNode = findDataSchemaNode(schemaContext, targetPath);
-        if ((targetSchemaNode != null) && (targetSchemaNode.getQName() != null)
-                && (targetSchemaNode.getQName().getLocalName() != null)) {
-            final Module targetModule = findParentModule(schemaContext, targetSchemaNode);
-            final String targetBasePackage = moduleNamespaceToPackageName(targetModule);
-            final String targetPackageName = packageNameForGeneratedType(targetBasePackage, targetSchemaNode.getPath());
-            final String targetSchemaNodeName = targetSchemaNode.getQName().getLocalName();
-            final Set<DataSchemaNode> augChildNodes = augSchema.getChildNodes();
-
-            if (!(targetSchemaNode instanceof ChoiceNode)) {
-                final GeneratedTypeBuilder augTypeBuilder = addRawAugmentGenTypeDefinition(augmentPackageName,
-                        targetPackageName, targetSchemaNodeName, augSchema);
-                addInterfaceDefinition(augSchema, augTypeBuilder);
-
-                final GeneratedType augType = augTypeBuilder.toInstance();
-                genTypes.add(augType);
-            } else {
-                final Type refChoiceType = new ReferencedTypeImpl(targetPackageName,
-                        parseToClassName(targetSchemaNodeName));
-                final ChoiceNode choiceTarget = (ChoiceNode) targetSchemaNode;
-                final Set<ChoiceCaseNode> choiceCaseNodes = choiceTarget.getCases();
-                genTypes.addAll(augmentCasesToGenTypes(augmentPackageName, refChoiceType, choiceCaseNodes));
-            }
-            genTypes.addAll(augmentationBodyToGenTypes(augmentPackageName, augChildNodes));
-        }
-        return genTypes;
-    }
-
-    private List<GeneratedType> augmentCasesToGenTypes(final String augmentPackageName, final Type refChoiceType,
-            final Set<ChoiceCaseNode> choiceCaseNodes) {
-        if (augmentPackageName == null) {
-            throw new IllegalArgumentException("Augment Package Name string cannot be NULL!");
-        }
-        if (choiceCaseNodes == null) {
-            throw new IllegalArgumentException("Set of Choice Case Nodes cannot be NULL!");
-        }
-        final List<GeneratedType> genTypes = generateTypesFromAugmentedChoiceCases(augmentPackageName, refChoiceType,
-                choiceCaseNodes);
-        return genTypes;
-    }
-
-    private GeneratedTypeBuilder addRawAugmentGenTypeDefinition(final String augmentPackageName,
-            final String targetPackageName, final String targetSchemaNodeName, final AugmentationSchema augSchema) {
-        final String targetTypeName = parseToClassName(targetSchemaNodeName);
-        Map<String, GeneratedTypeBuilder> augmentBuilders = genTypeBuilders.get(augmentPackageName);
-        if (augmentBuilders == null) {
-            augmentBuilders = new HashMap<>();
-            genTypeBuilders.put(augmentPackageName, augmentBuilders);
-        }
-
-        final String augTypeName = augGenTypeName(augmentBuilders, targetTypeName);
-        final Type targetTypeRef = new ReferencedTypeImpl(targetPackageName, targetTypeName);
-        final Set<DataSchemaNode> augChildNodes = augSchema.getChildNodes();
-
-        final GeneratedTypeBuilder augTypeBuilder = new GeneratedTypeBuilderImpl(augmentPackageName, augTypeName);
-
-        augTypeBuilder.addImplementsType(Types.DATA_OBJECT);
-        augTypeBuilder.addImplementsType(Types.augmentationTypeFor(targetTypeRef));
-
-        augSchemaNodeToMethods(augmentPackageName, augTypeBuilder, augChildNodes);
-        augmentBuilders.put(augTypeName, augTypeBuilder);
-        return augTypeBuilder;
-    }
-
-    private List<Type> augmentationBodyToGenTypes(final String augBasePackageName,
-            final Set<DataSchemaNode> augChildNodes) {
-        final List<Type> genTypes = new ArrayList<>();
-        final List<DataNodeIterator> augSchemaIts = new ArrayList<>();
-        for (final DataSchemaNode childNode : augChildNodes) {
-            if (childNode instanceof DataNodeContainer) {
-                augSchemaIts.add(new DataNodeIterator((DataNodeContainer) childNode));
-
-                if (childNode instanceof ContainerSchemaNode) {
-                    genTypes.add(containerToGenType(augBasePackageName, (ContainerSchemaNode) childNode));
-                } else if (childNode instanceof ListSchemaNode) {
-                    genTypes.addAll(listToGenType(augBasePackageName, (ListSchemaNode) childNode));
-                }
-            } else if (childNode instanceof ChoiceNode) {
-                final ChoiceNode choice = (ChoiceNode) childNode;
-                for (final ChoiceCaseNode caseNode : choice.getCases()) {
-                    augSchemaIts.add(new DataNodeIterator(caseNode));
-                }
-                genTypes.addAll(choiceToGeneratedType(augBasePackageName, (ChoiceNode) childNode));
-            }
-        }
-
-        for (final DataNodeIterator it : augSchemaIts) {
-            final List<ContainerSchemaNode> augContainers = it.allContainers();
-            final List<ListSchemaNode> augLists = it.allLists();
-            final List<ChoiceNode> augChoices = it.allChoices();
-
-            if (augContainers != null) {
-                for (final ContainerSchemaNode container : augContainers) {
-                    genTypes.add(containerToGenType(augBasePackageName, container));
-                }
-            }
-            if (augLists != null) {
-                for (final ListSchemaNode list : augLists) {
-                    genTypes.addAll(listToGenType(augBasePackageName, list));
-                }
-            }
-            if (augChoices != null) {
-                for (final ChoiceNode choice : augChoices) {
-                    genTypes.addAll(choiceToGeneratedType(augBasePackageName, choice));
-                }
-            }
-        }
-        return genTypes;
-    }
-
-    private String augGenTypeName(final Map<String, GeneratedTypeBuilder> builders, final String genTypeName) {
-        String augTypeName = genTypeName;
-
-        int index = 1;
-        while ((builders != null) && builders.containsKey(genTypeName + index)) {
-            index++;
-        }
-        augTypeName += index;
-        return augTypeName;
-    }
-
-    private GeneratedType containerToGenType(final String basePackageName, ContainerSchemaNode containerNode) {
-        if (containerNode == null) {
-            return null;
-        }
-
-        final String packageName = packageNameForGeneratedType(basePackageName, containerNode.getPath());
-        final Set<DataSchemaNode> schemaNodes = containerNode.getChildNodes();
-        final GeneratedTypeBuilder typeBuilder = addDefaultInterfaceDefinition(packageName, containerNode);
-
-        resolveDataSchemaNodes(basePackageName, typeBuilder, schemaNodes);
-        return typeBuilder.toInstance();
-    }
-
-    private GeneratedTypeBuilder resolveDataSchemaNodes(final String basePackageName,
-            final GeneratedTypeBuilder typeBuilder, final Set<DataSchemaNode> schemaNodes) {
-        if ((schemaNodes != null) && (typeBuilder != null)) {
-            for (final DataSchemaNode schemaNode : schemaNodes) {
-                if (schemaNode.isAugmenting() || schemaNode.isAddedByUses()) {
-                    continue;
-                }
-                addSchemaNodeToBuilderAsMethod(basePackageName, schemaNode, typeBuilder);
-            }
-        }
-        return typeBuilder;
-    }
-
-    private GeneratedTypeBuilder augSchemaNodeToMethods(final String basePackageName,
-            final GeneratedTypeBuilder typeBuilder, final Set<DataSchemaNode> schemaNodes) {
-        if ((schemaNodes != null) && (typeBuilder != null)) {
-            for (final DataSchemaNode schemaNode : schemaNodes) {
-                if (schemaNode.isAugmenting()) {
-                    addSchemaNodeToBuilderAsMethod(basePackageName, schemaNode, typeBuilder);
-                }
-            }
-        }
-        return typeBuilder;
-    }
-
-    private void addSchemaNodeToBuilderAsMethod(final String basePackageName, final DataSchemaNode schemaNode,
-            final GeneratedTypeBuilder typeBuilder) {
-        if (schemaNode != null && typeBuilder != null) {
-            if (schemaNode instanceof LeafSchemaNode) {
-                resolveLeafSchemaNodeAsMethod(typeBuilder, (LeafSchemaNode) schemaNode);
-            } else if (schemaNode instanceof LeafListSchemaNode) {
-                resolveLeafListSchemaNode(typeBuilder, (LeafListSchemaNode) schemaNode);
-            } else if (schemaNode instanceof ContainerSchemaNode) {
-                resolveContainerSchemaNode(basePackageName, typeBuilder, (ContainerSchemaNode) schemaNode);
-            } else if (schemaNode instanceof ListSchemaNode) {
-                resolveListSchemaNode(basePackageName, typeBuilder, (ListSchemaNode) schemaNode);
-            } else if (schemaNode instanceof ChoiceNode) {
-                resolveChoiceSchemaNode(basePackageName, typeBuilder, (ChoiceNode) schemaNode);
-            }
-        }
-    }
-
-    private void resolveChoiceSchemaNode(final String basePackageName, final GeneratedTypeBuilder typeBuilder,
-            final ChoiceNode choiceNode) {
-        if (basePackageName == null) {
-            throw new IllegalArgumentException("Base Package Name cannot be NULL!");
-        }
-        if (typeBuilder == null) {
-            throw new IllegalArgumentException("Generated Type Builder cannot be NULL!");
-        }
-        if (choiceNode == null) {
-            throw new IllegalArgumentException("Choice Schema Node cannot be NULL!");
-        }
-
-        final String choiceName = choiceNode.getQName().getLocalName();
-        if (choiceName != null && !choiceNode.isAddedByUses()) {
-            final String packageName = packageNameForGeneratedType(basePackageName, choiceNode.getPath());
-            final GeneratedTypeBuilder choiceType = addDefaultInterfaceDefinition(packageName, choiceNode);
-            constructGetter(typeBuilder, choiceName, choiceNode.getDescription(), choiceType);
-        }
-    }
-
-    private List<GeneratedType> choiceToGeneratedType(final String basePackageName, final ChoiceNode choiceNode) {
-        if (basePackageName == null) {
-            throw new IllegalArgumentException("Base Package Name cannot be NULL!");
-        }
-        if (choiceNode == null) {
-            throw new IllegalArgumentException("Choice Schema Node cannot be NULL!");
-        }
-
-        final List<GeneratedType> generatedTypes = new ArrayList<>();
-        final String packageName = packageNameForGeneratedType(basePackageName, choiceNode.getPath());
-        final GeneratedTypeBuilder choiceTypeBuilder = addRawInterfaceDefinition(packageName, choiceNode);
-        choiceTypeBuilder.addImplementsType(Types.DATA_OBJECT);
-        final GeneratedType choiceType = choiceTypeBuilder.toInstance();
-
-        generatedTypes.add(choiceType);
-        final Set<ChoiceCaseNode> caseNodes = choiceNode.getCases();
-        if ((caseNodes != null) && !caseNodes.isEmpty()) {
-            generatedTypes.addAll(generateTypesFromChoiceCases(basePackageName, choiceType, caseNodes));
-        }
-        return generatedTypes;
-    }
-
-    private List<GeneratedType> generateTypesFromChoiceCases(final String basePackageName, final Type refChoiceType,
-            final Set<ChoiceCaseNode> caseNodes) {
-        if (basePackageName == null) {
-            throw new IllegalArgumentException("Base Package Name cannot be NULL!");
-        }
-        if (refChoiceType == null) {
-            throw new IllegalArgumentException("Referenced Choice Type cannot be NULL!");
-        }
-        if (caseNodes == null) {
-            throw new IllegalArgumentException("Set of Choice Case Nodes cannot be NULL!");
-        }
-
-        final List<GeneratedType> generatedTypes = new ArrayList<>();
-        for (final ChoiceCaseNode caseNode : caseNodes) {
-            if (caseNode != null && !caseNode.isAddedByUses() && !caseNode.isAugmenting()) {
-                final String packageName = packageNameForGeneratedType(basePackageName, caseNode.getPath());
-                final GeneratedTypeBuilder caseTypeBuilder = addDefaultInterfaceDefinition(packageName, caseNode);
-                caseTypeBuilder.addImplementsType(refChoiceType);
-
-                final Set<DataSchemaNode> childNodes = caseNode.getChildNodes();
-                if (childNodes != null) {
-                    resolveDataSchemaNodes(basePackageName, caseTypeBuilder, childNodes);
-                }
-                generatedTypes.add(caseTypeBuilder.toInstance());
-            }
-        }
-
-        return generatedTypes;
-    }
-
-    private List<GeneratedType> generateTypesFromAugmentedChoiceCases(final String basePackageName,
-            final Type refChoiceType, final Set<ChoiceCaseNode> caseNodes) {
-        if (basePackageName == null) {
-            throw new IllegalArgumentException("Base Package Name cannot be NULL!");
-        }
-        if (refChoiceType == null) {
-            throw new IllegalArgumentException("Referenced Choice Type cannot be NULL!");
-        }
-        if (caseNodes == null) {
-            throw new IllegalArgumentException("Set of Choice Case Nodes cannot be NULL!");
-        }
-
-        final List<GeneratedType> generatedTypes = new ArrayList<>();
-        for (final ChoiceCaseNode caseNode : caseNodes) {
-            if (caseNode != null && caseNode.isAugmenting()) {
-                final String packageName = packageNameForGeneratedType(basePackageName, caseNode.getPath());
-                final GeneratedTypeBuilder caseTypeBuilder = addDefaultInterfaceDefinition(packageName, caseNode);
-                caseTypeBuilder.addImplementsType(refChoiceType);
-
-                final Set<DataSchemaNode> childNodes = caseNode.getChildNodes();
-                if (childNodes != null) {
-                    resolveDataSchemaNodes(basePackageName, caseTypeBuilder, childNodes);
-                }
-                generatedTypes.add(caseTypeBuilder.toInstance());
-            }
-        }
-
-        return generatedTypes;
-    }
-
-    private boolean resolveLeafSchemaNodeAsMethod(final GeneratedTypeBuilder typeBuilder, final LeafSchemaNode leaf) {
-        if ((leaf != null) && (typeBuilder != null)) {
-            final String leafName = leaf.getQName().getLocalName();
-            String leafDesc = leaf.getDescription();
-            if (leafDesc == null) {
-                leafDesc = "";
-            }
-
-            if (leafName != null && !leaf.isAddedByUses()) {
-                final TypeDefinition<?> typeDef = leaf.getType();
-
-                Type returnType = null;
-                if (typeDef instanceof EnumTypeDefinition) {
-                    returnType = typeProvider.javaTypeForSchemaDefinitionType(typeDef);
-                    final EnumTypeDefinition enumTypeDef = enumTypeDefFromExtendedType(typeDef);
-                    final EnumBuilder enumBuilder = resolveInnerEnumFromTypeDefinition(enumTypeDef, leafName,
-                            typeBuilder);
-
-                    if (enumBuilder != null) {
-                        returnType = new ReferencedTypeImpl(enumBuilder.getPackageName(), enumBuilder.getName());
-                    }
-                    ((TypeProviderImpl) typeProvider).putReferencedType(leaf.getPath(), returnType);
-                } else if (typeDef instanceof UnionType) {
-                    GeneratedTOBuilder genTOBuilder = addEnclosedTOToTypeBuilder(typeDef, typeBuilder, leafName);
-                    if (genTOBuilder != null) {
-                        returnType = new ReferencedTypeImpl(genTOBuilder.getPackageName(), genTOBuilder.getName());
-                    }
-                } else if (typeDef instanceof BitsTypeDefinition) {
-                    GeneratedTOBuilder genTOBuilder = addEnclosedTOToTypeBuilder(typeDef, typeBuilder, leafName);
-                    if (genTOBuilder != null) {
-                        returnType = new ReferencedTypeImpl(genTOBuilder.getPackageName(), genTOBuilder.getName());
-                    }
-                } else {
-                    returnType = typeProvider.javaTypeForSchemaDefinitionType(typeDef);
-                }
-                if (returnType != null) {
-                    constructGetter(typeBuilder, leafName, leafDesc, returnType);
-                    return true;
-                }
-            }
-        }
-        return false;
-    }
-
-    private boolean resolveLeafSchemaNodeAsProperty(final GeneratedTOBuilder toBuilder, final LeafSchemaNode leaf,
-            boolean isReadOnly) {
-        if ((leaf != null) && (toBuilder != null)) {
-            final String leafName = leaf.getQName().getLocalName();
-            String leafDesc = leaf.getDescription();
-            if (leafDesc == null) {
-                leafDesc = "";
-            }
-
-            if (leafName != null && !leaf.isAddedByUses()) {
-                final TypeDefinition<?> typeDef = leaf.getType();
-
-                // TODO: properly resolve enum types
-                final Type returnType = typeProvider.javaTypeForSchemaDefinitionType(typeDef);
-
-                if (returnType != null) {
-                    final GeneratedPropertyBuilder propBuilder = toBuilder.addProperty(parseToClassName(leafName));
-
-                    propBuilder.setReadOnly(isReadOnly);
-                    propBuilder.setReturnType(returnType);
-                    propBuilder.setComment(leafDesc);
-
-                    toBuilder.addEqualsIdentity(propBuilder);
-                    toBuilder.addHashIdentity(propBuilder);
-                    toBuilder.addToStringProperty(propBuilder);
-
-                    return true;
-                }
-            }
-        }
-        return false;
-    }
-
-    private boolean resolveLeafListSchemaNode(final GeneratedTypeBuilder typeBuilder, final LeafListSchemaNode node) {
-        if ((node != null) && (typeBuilder != null)) {
-            final String nodeName = node.getQName().getLocalName();
-            String nodeDesc = node.getDescription();
-            if (nodeDesc == null) {
-                nodeDesc = "";
-            }
-
-            if (nodeName != null && !node.isAddedByUses()) {
-                final TypeDefinition<?> type = node.getType();
-                final Type listType = Types.listTypeFor(typeProvider.javaTypeForSchemaDefinitionType(type));
-
-                constructGetter(typeBuilder, nodeName, nodeDesc, listType);
-                return true;
-            }
-        }
-        return false;
-    }
-
-    private boolean resolveContainerSchemaNode(final String basePackageName, final GeneratedTypeBuilder typeBuilder,
-            final ContainerSchemaNode containerNode) {
-        if ((containerNode != null) && (typeBuilder != null)) {
-            final String nodeName = containerNode.getQName().getLocalName();
-
-            if (nodeName != null && !containerNode.isAddedByUses()) {
-                final String packageName = packageNameForGeneratedType(basePackageName, containerNode.getPath());
-
-                final GeneratedTypeBuilder rawGenType = addDefaultInterfaceDefinition(packageName, containerNode);
-                constructGetter(typeBuilder, nodeName, containerNode.getDescription(), rawGenType);
-
-                return true;
-            }
-        }
-        return false;
-    }
-
-    private boolean resolveListSchemaNode(final String basePackageName, final GeneratedTypeBuilder typeBuilder,
-            final ListSchemaNode schemaNode) {
-        if ((schemaNode != null) && (typeBuilder != null)) {
-            final String listName = schemaNode.getQName().getLocalName();
-
-            if (listName != null && !schemaNode.isAddedByUses()) {
-                final String packageName = packageNameForGeneratedType(basePackageName, schemaNode.getPath());
-                final GeneratedTypeBuilder rawGenType = addDefaultInterfaceDefinition(packageName, schemaNode);
-                constructGetter(typeBuilder, listName, schemaNode.getDescription(), Types.listTypeFor(rawGenType));
-                return true;
-            }
-        }
-        return false;
-    }
-
-    /**
-     * Method instantiates new Generated Type Builder and sets the implements
-     * definitions of Data Object and Augmentable.
-     *
-     * @param packageName
-     *            Generated Type Package Name
-     * @param schemaNode
-     *            Schema Node definition
-     * @return Generated Type Builder instance for Schema Node definition
-     */
-    private GeneratedTypeBuilder addDefaultInterfaceDefinition(final String packageName, final SchemaNode schemaNode) {
-        final GeneratedTypeBuilder builder = addRawInterfaceDefinition(packageName, schemaNode, "");
-        builder.addImplementsType(Types.DATA_OBJECT);
-        if (!(schemaNode instanceof GroupingDefinition)) {
-            builder.addImplementsType(Types.augmentableTypeFor(builder));
-        }
-
-        if (schemaNode instanceof DataNodeContainer) {
-            addInterfaceDefinition((DataNodeContainer) schemaNode, builder);
-        }
-
-        return builder;
-    }
-
-    /**
-     *
-     * @param packageName
-     * @param schemaNode
-     * @return
-     */
-    private GeneratedTypeBuilder addRawInterfaceDefinition(final String packageName, final SchemaNode schemaNode) {
-        return addRawInterfaceDefinition(packageName, schemaNode, "");
-    }
-
-    private GeneratedTypeBuilder addRawInterfaceDefinition(final String packageName, final SchemaNode schemaNode,
-            final String prefix) {
-        if (schemaNode == null) {
-            throw new IllegalArgumentException("Data Schema Node cannot be NULL!");
-        }
-        if (packageName == null) {
-            throw new IllegalArgumentException("Package Name for Generated Type cannot be NULL!");
-        }
-        if (schemaNode.getQName() == null) {
-            throw new IllegalArgumentException("QName for Data Schema Node cannot be NULL!");
-        }
-        final String schemaNodeName = schemaNode.getQName().getLocalName();
-        if (schemaNodeName == null) {
-            throw new IllegalArgumentException("Local Name of QName for Data Schema Node cannot be NULL!");
-        }
-
-        final String genTypeName;
-        if (prefix == null) {
-            genTypeName = parseToClassName(schemaNodeName);
-        } else {
-            genTypeName = prefix + parseToClassName(schemaNodeName);
-        }
-
-        final GeneratedTypeBuilder newType = new GeneratedTypeBuilderImpl(packageName, genTypeName);
-        if (!genTypeBuilders.containsKey(packageName)) {
-            final Map<String, GeneratedTypeBuilder> builders = new HashMap<>();
-            builders.put(genTypeName, newType);
-            genTypeBuilders.put(packageName, builders);
-        } else {
-            final Map<String, GeneratedTypeBuilder> builders = genTypeBuilders.get(packageName);
-            if (!builders.containsKey(genTypeName)) {
-                builders.put(genTypeName, newType);
-            }
-        }
-        return newType;
-    }
-
-    private String getterMethodName(final String methodName) {
-        final StringBuilder method = new StringBuilder();
-        method.append("get");
-        method.append(parseToClassName(methodName));
-        return method.toString();
-    }
-
-    private String setterMethodName(final String methodName) {
-        final StringBuilder method = new StringBuilder();
-        method.append("set");
-        method.append(parseToClassName(methodName));
-        return method.toString();
-    }
-
-    private MethodSignatureBuilder constructGetter(final GeneratedTypeBuilder interfaceBuilder,
-            final String schemaNodeName, final String comment, final Type returnType) {
-        final MethodSignatureBuilder getMethod = interfaceBuilder.addMethod(getterMethodName(schemaNodeName));
-
-        getMethod.setComment(comment);
-        getMethod.setReturnType(returnType);
-
-        return getMethod;
-    }
-
-    private MethodSignatureBuilder constructSetter(final GeneratedTypeBuilder interfaceBuilder,
-            final String schemaNodeName, final String comment, final Type parameterType) {
-        final MethodSignatureBuilder setMethod = interfaceBuilder.addMethod(setterMethodName(schemaNodeName));
-
-        setMethod.setComment(comment);
-        setMethod.addParameter(parameterType, parseToValidParamName(schemaNodeName));
-        setMethod.setReturnType(Types.voidType());
-
-        return setMethod;
-    }
-
-    private List<Type> listToGenType(final String basePackageName, final ListSchemaNode list) {
-        if (basePackageName == null) {
-            throw new IllegalArgumentException("Package Name for Generated Type cannot be NULL!");
-        }
-        if (list == null) {
-            throw new IllegalArgumentException("List Schema Node cannot be NULL!");
-        }
-
-        final String packageName = packageNameForGeneratedType(basePackageName, list.getPath());
-        final GeneratedTypeBuilder typeBuilder = resolveListTypeBuilder(packageName, list);
-        final List<String> listKeys = listKeys(list);
-        GeneratedTOBuilder genTOBuilder = resolveListKeyTOBuilder(packageName, list, listKeys);
-
-        final Set<DataSchemaNode> schemaNodes = list.getChildNodes();
-
-        for (final DataSchemaNode schemaNode : schemaNodes) {
-            if (schemaNode.isAugmenting()) {
-                continue;
-            }
-            addSchemaNodeToListBuilders(basePackageName, schemaNode, typeBuilder, genTOBuilder, listKeys);
-        }
-        return typeBuildersToGenTypes(typeBuilder, genTOBuilder);
-    }
-
-    private void addSchemaNodeToListBuilders(final String basePackageName, final DataSchemaNode schemaNode,
-            final GeneratedTypeBuilder typeBuilder, final GeneratedTOBuilder genTOBuilder, final List<String> listKeys) {
-        if (schemaNode == null) {
-            throw new IllegalArgumentException("Data Schema Node cannot be NULL!");
-        }
-
-        if (typeBuilder == null) {
-            throw new IllegalArgumentException("Generated Type Builder cannot be NULL!");
-        }
-
-        if (schemaNode instanceof LeafSchemaNode) {
-            final LeafSchemaNode leaf = (LeafSchemaNode) schemaNode;
-            if (!isPartOfListKey(leaf, listKeys)) {
-                resolveLeafSchemaNodeAsMethod(typeBuilder, leaf);
-            } else {
-                resolveLeafSchemaNodeAsProperty(genTOBuilder, leaf, true);
-            }
-        } else if (schemaNode instanceof LeafListSchemaNode) {
-            resolveLeafListSchemaNode(typeBuilder, (LeafListSchemaNode) schemaNode);
-        } else if (schemaNode instanceof ContainerSchemaNode) {
-            resolveContainerSchemaNode(basePackageName, typeBuilder, (ContainerSchemaNode) schemaNode);
-        } else if (schemaNode instanceof ListSchemaNode) {
-            resolveListSchemaNode(basePackageName, typeBuilder, (ListSchemaNode) schemaNode);
-        }
-    }
-
-    private List<Type> typeBuildersToGenTypes(final GeneratedTypeBuilder typeBuilder, GeneratedTOBuilder genTOBuilder) {
-        final List<Type> genTypes = new ArrayList<>();
-        if (typeBuilder == null) {
-            throw new IllegalArgumentException("Generated Type Builder cannot be NULL!");
-        }
-
-        if (genTOBuilder != null) {
-            final GeneratedTransferObject genTO = genTOBuilder.toInstance();
-            constructGetter(typeBuilder, genTO.getName(), "Returns Primary Key of Yang List Type", genTO);
-            genTypes.add(genTO);
-        }
-        genTypes.add(typeBuilder.toInstance());
-        return genTypes;
-    }
-
-    /**
-     * @param list
-     * @return
-     */
-    private GeneratedTOBuilder resolveListKey(final String packageName, final ListSchemaNode list) {
-        final String listName = list.getQName().getLocalName() + "Key";
-        return schemaNodeToTransferObjectBuilder(packageName, list, listName);
-    }
-
-    private boolean isPartOfListKey(final LeafSchemaNode leaf, final List<String> keys) {
-        if ((leaf != null) && (keys != null) && (leaf.getQName() != null)) {
-            final String leafName = leaf.getQName().getLocalName();
-            if (keys.contains(leafName)) {
-                return true;
-            }
-        }
-        return false;
-    }
-
-    private List<String> listKeys(final ListSchemaNode list) {
-        final List<String> listKeys = new ArrayList<>();
-
-        if (list.getKeyDefinition() != null) {
-            final List<QName> keyDefinitions = list.getKeyDefinition();
-
-            for (final QName keyDefinition : keyDefinitions) {
-                listKeys.add(keyDefinition.getLocalName());
-            }
-        }
-        return listKeys;
-    }
-
-    private GeneratedTypeBuilder resolveListTypeBuilder(final String packageName, final ListSchemaNode list) {
-        if (packageName == null) {
-            throw new IllegalArgumentException("Package Name for Generated Type cannot be NULL!");
-        }
-        if (list == null) {
-            throw new IllegalArgumentException("List Schema Node cannot be NULL!");
-        }
-
-        final String schemaNodeName = list.getQName().getLocalName();
-        final String genTypeName = parseToClassName(schemaNodeName);
-
-        GeneratedTypeBuilder typeBuilder = null;
-        final Map<String, GeneratedTypeBuilder> builders = genTypeBuilders.get(packageName);
-        if (builders != null) {
-            typeBuilder = builders.get(genTypeName);
-        }
-        if (typeBuilder == null) {
-            typeBuilder = addDefaultInterfaceDefinition(packageName, list);
-        }
-        return typeBuilder;
-    }
-
-    private GeneratedTOBuilder resolveListKeyTOBuilder(final String packageName, final ListSchemaNode list,
-            final List<String> listKeys) {
-        GeneratedTOBuilder genTOBuilder = null;
-        if (listKeys.size() > 0) {
-            genTOBuilder = resolveListKey(packageName, list);
-        }
-        return genTOBuilder;
-    }
-
-    private GeneratedTOBuilder addEnclosedTOToTypeBuilder(TypeDefinition<?> typeDef, GeneratedTypeBuilder typeBuilder,
-            String leafName) {
-        String className = parseToClassName(leafName);
-        GeneratedTOBuilder genTOBuilder = null;
-        if (typeDef instanceof UnionType) {
-            genTOBuilder = ((TypeProviderImpl) typeProvider).addUnionGeneratedTypeDefinition(
-                    typeBuilder.getFullyQualifiedName(), typeDef, className);
-        } else if (typeDef instanceof BitsTypeDefinition) {
-            genTOBuilder = ((TypeProviderImpl) typeProvider).bitsTypedefToTransferObject(
-                    typeBuilder.getFullyQualifiedName(), typeDef, className);
-        }
-        if (genTOBuilder != null) {
-            typeBuilder.addEnclosingTransferObject(genTOBuilder);
-            return genTOBuilder;
-        }
-        return null;
-
-    }
-
-    /**
-     * Adds the implemented types to type builder. The method passes through the
-     * list of elements which contains {@code dataNodeContainer} and adds them
-     * as <i>implements type</i> to <code>builder</code>
-     *
-     * @param dataNodeContainer
-     *            element which contains the list of used YANG groupings
-     * @param builder
-     *            builder to which are added implemented types according to
-     *            <code>dataNodeContainer</code>
-     * @return generated type builder which contains implemented types
-     */
-    private GeneratedTypeBuilder addInterfaceDefinition(final DataNodeContainer dataNodeContainer,
-            final GeneratedTypeBuilder builder) {
-        for (UsesNode usesNode : dataNodeContainer.getUses()) {
-            if (usesNode.getGroupingPath() != null) {
-                GeneratedType genType = allGroupings.get(usesNode.getGroupingPath());
-                builder.addImplementsType(genType);
-            }
-        }
-        return builder;
-    }
-
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/generator/impl/package-info.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/generator/impl/package-info.java
deleted file mode 100644 (file)
index 741aeef..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.generator.impl;
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/yang/types/BaseYangTypes.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/yang/types/BaseYangTypes.java
deleted file mode 100644 (file)
index 38486e7..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.yang.types;
-
-import java.math.BigInteger;
-import java.util.HashMap;
-import java.util.Map;
-
-import org.opendaylight.controller.binding.generator.util.Types;
-import org.opendaylight.controller.sal.binding.generator.spi.TypeProvider;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.yangtools.yang.model.api.TypeDefinition;
-
-public final class BaseYangTypes {
-
-    private static Map<String, Type> typeMap = new HashMap<String, Type>();
-
-    public static final Type BOOLEAN_TYPE = Types.typeForClass(Boolean.class);
-    public static final Type EMPTY_TYPE = Types.typeForClass(Boolean.class);
-    public static final Type INT8_TYPE = Types.typeForClass(Byte.class);
-    public static final Type INT16_TYPE = Types.typeForClass(Short.class);
-    public static final Type INT32_TYPE = Types.typeForClass(Integer.class);
-    public static final Type INT64_TYPE = Types.typeForClass(Long.class);
-    public static final Type STRING_TYPE = Types.typeForClass(String.class);
-    public static final Type DECIMAL64_TYPE = Types.typeForClass(Double.class);
-    public static final Type UINT8_TYPE = Types.typeForClass(Short.class);
-    public static final Type UINT16_TYPE = Types.typeForClass(Integer.class);
-    public static final Type UINT32_TYPE = Types.typeForClass(Long.class);
-    public static final Type UINT64_TYPE = Types.typeForClass(BigInteger.class);
-    public static final Type BINARY_TYPE = Types.primitiveType("byte[]");
-
-    static {
-        typeMap.put("boolean", BOOLEAN_TYPE);
-        typeMap.put("empty", EMPTY_TYPE);
-        typeMap.put("int8", INT8_TYPE);
-        typeMap.put("int16", INT16_TYPE);
-        typeMap.put("int32", INT32_TYPE);
-        typeMap.put("int64", INT64_TYPE);
-        typeMap.put("string", STRING_TYPE);
-        typeMap.put("decimal64", DECIMAL64_TYPE);
-        typeMap.put("uint8", UINT8_TYPE);
-        typeMap.put("uint16", UINT16_TYPE);
-        typeMap.put("uint32", UINT32_TYPE);
-        typeMap.put("uint64", UINT64_TYPE);
-        typeMap.put("binary", BINARY_TYPE);
-    }
-
-    public static final TypeProvider BASE_YANG_TYPES_PROVIDER = new TypeProvider() {
-
-        @Override
-        public Type javaTypeForYangType(String type) {
-            return typeMap.get(type);
-        }
-
-        @Override
-        public Type javaTypeForSchemaDefinitionType(TypeDefinition<?> type) {
-            if (type != null) {
-                return typeMap.get(type.getQName().getLocalName());
-            }
-
-            return null;
-        }
-    };
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/yang/types/GroupingDefinitionDependencySort.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/yang/types/GroupingDefinitionDependencySort.java
deleted file mode 100644 (file)
index 2be70b1..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.yang.types;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.opendaylight.yangtools.yang.model.api.GroupingDefinition;
-import org.opendaylight.yangtools.yang.model.api.SchemaPath;
-import org.opendaylight.yangtools.yang.model.api.UsesNode;
-import org.opendaylight.yangtools.yang.parser.util.TopologicalSort;
-import org.opendaylight.yangtools.yang.parser.util.TopologicalSort.Node;
-import org.opendaylight.yangtools.yang.parser.util.TopologicalSort.NodeImpl;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import com.google.common.collect.Maps;
-import com.google.common.collect.Sets;
-
-//import org.opendaylight.controller.yang.model.util.GroupingDefinition;
-
-public class GroupingDefinitionDependencySort {
-    private static final Logger logger = LoggerFactory.getLogger(GroupingDefinitionDependencySort.class);
-
-    public static List<GroupingDefinition> sort(final Set<GroupingDefinition> groupingDefinitions) {
-        if (groupingDefinitions == null) {
-            logger.error("Set of grouping definitions cannot be NULL!");
-            throw new IllegalArgumentException("Set of Type Definitions " + "cannot be NULL!");
-        }
-
-        final List<GroupingDefinition> resultGroupingDefinitions = new ArrayList<GroupingDefinition>();
-        final Set<Node> unsorted = groupingDefinitionsToGroupingNodes(groupingDefinitions);
-        final List<Node> sortedNodes = TopologicalSort.sort(unsorted);
-        for (Node node : sortedNodes) {
-            resultGroupingDefinitions.add(((GroupingNode) node).getGroupingDefinition());
-        }
-        return resultGroupingDefinitions;
-
-    }
-
-    private static Set<Node> groupingDefinitionsToGroupingNodes(final Set<GroupingDefinition> groupingDefinitions) {
-        final Map<SchemaPath, Node> nodeMap = Maps.newHashMap();
-        final Set<Node> resultNodes = Sets.newHashSet();
-
-        for (final GroupingDefinition groupingDefinition : groupingDefinitions) {
-            final Node node = new GroupingNode(groupingDefinition);
-            nodeMap.put(groupingDefinition.getPath(), node);
-            resultNodes.add(node);
-        }
-
-        for (final Node node : resultNodes) {
-            final GroupingNode groupingNode = (GroupingNode) node;
-            final GroupingDefinition groupingDefinition = groupingNode.getGroupingDefinition();
-
-            Set<UsesNode> usesNodes = groupingDefinition.getUses();
-            for (UsesNode usesNode : usesNodes) {
-                SchemaPath schemaPath = usesNode.getGroupingPath();
-                if (schemaPath != null) {
-                    Node nodeTo = nodeMap.get(schemaPath);
-                    groupingNode.addEdge(nodeTo);
-                }
-            }
-        }
-
-        return resultNodes;
-    }
-
-    private static final class GroupingNode extends NodeImpl {
-        private final GroupingDefinition groupingDefinition;
-
-        GroupingNode(GroupingDefinition groupingDefinition) {
-            this.groupingDefinition = groupingDefinition;
-        }
-
-        GroupingDefinition getGroupingDefinition() {
-            return groupingDefinition;
-        }
-
-        @Override
-        public boolean equals(Object o) {
-            if (this == o) {
-                return true;
-            }
-            if (!(o instanceof GroupingNode)) {
-                return false;
-            }
-            GroupingNode groupingNode = (GroupingNode) o;
-            if (!groupingDefinition.equals(groupingNode.groupingDefinition)) {
-                return false;
-            }
-            return true;
-        }
-
-        @Override
-        public int hashCode() {
-            return groupingDefinition.hashCode();
-        }
-
-        @Override
-        public String toString() {
-            return "GroupingNode{" + "groupingType=" + groupingDefinition + '}';
-        }
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/yang/types/TypeProviderImpl.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/yang/types/TypeProviderImpl.java
deleted file mode 100644 (file)
index 7e6f93f..0000000
+++ /dev/null
@@ -1,743 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.yang.types;
-
-import static org.opendaylight.controller.binding.generator.util.BindingGeneratorUtil.*;
-import static org.opendaylight.yangtools.yang.model.util.SchemaContextUtil.*;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.TreeMap;
-
-import org.apache.commons.lang.StringEscapeUtils;
-import org.opendaylight.controller.binding.generator.util.ReferencedTypeImpl;
-import org.opendaylight.controller.binding.generator.util.TypeConstants;
-import org.opendaylight.controller.binding.generator.util.Types;
-import org.opendaylight.controller.binding.generator.util.generated.type.builder.EnumerationBuilderImpl;
-import org.opendaylight.controller.binding.generator.util.generated.type.builder.GeneratedTOBuilderImpl;
-import org.opendaylight.controller.sal.binding.generator.spi.TypeProvider;
-import org.opendaylight.controller.sal.binding.model.api.Enumeration;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.EnumBuilder;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.GeneratedPropertyBuilder;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.GeneratedTOBuilder;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.GeneratedTypeBuilder;
-import org.opendaylight.yangtools.yang.common.QName;
-import org.opendaylight.yangtools.yang.model.api.DataSchemaNode;
-import org.opendaylight.yangtools.yang.model.api.IdentitySchemaNode;
-import org.opendaylight.yangtools.yang.model.api.LeafListSchemaNode;
-import org.opendaylight.yangtools.yang.model.api.LeafSchemaNode;
-import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.RevisionAwareXPath;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang.model.api.SchemaPath;
-import org.opendaylight.yangtools.yang.model.api.TypeDefinition;
-import org.opendaylight.yangtools.yang.model.api.type.BitsTypeDefinition;
-import org.opendaylight.yangtools.yang.model.api.type.BitsTypeDefinition.Bit;
-import org.opendaylight.yangtools.yang.model.api.type.EnumTypeDefinition;
-import org.opendaylight.yangtools.yang.model.api.type.EnumTypeDefinition.EnumPair;
-import org.opendaylight.yangtools.yang.model.api.type.IdentityrefTypeDefinition;
-import org.opendaylight.yangtools.yang.model.api.type.LeafrefTypeDefinition;
-import org.opendaylight.yangtools.yang.model.api.type.PatternConstraint;
-import org.opendaylight.yangtools.yang.model.api.type.UnionTypeDefinition;
-import org.opendaylight.yangtools.yang.model.util.ExtendedType;
-import org.opendaylight.yangtools.yang.model.util.StringType;
-import org.opendaylight.yangtools.yang.model.util.UnionType;
-
-public final class TypeProviderImpl implements TypeProvider {
-
-    private final SchemaContext schemaContext;
-    private Map<String, Map<String, Type>> genTypeDefsContextMap;
-    private final Map<SchemaPath, Type> referencedTypes;
-
-    public TypeProviderImpl(final SchemaContext schemaContext) {
-        if (schemaContext == null) {
-            throw new IllegalArgumentException("Schema Context cannot be null!");
-        }
-
-        this.schemaContext = schemaContext;
-        this.genTypeDefsContextMap = new HashMap<>();
-        this.referencedTypes = new HashMap<>();
-        resolveTypeDefsFromContext();
-    }
-
-    public void putReferencedType(final SchemaPath refTypePath, final Type refType) {
-        if (refTypePath == null) {
-            throw new IllegalArgumentException("Path reference of " + "Enumeration Type Definition cannot be NULL!");
-        }
-
-        if (refType == null) {
-            throw new IllegalArgumentException("Reference to Enumeration " + "Type cannot be NULL!");
-        }
-        referencedTypes.put(refTypePath, refType);
-    }
-
-    /*
-     * (non-Javadoc)
-     *
-     * @see org.opendaylight.controller.yang.model.type.provider.TypeProvider#
-     * javaTypeForYangType(java.lang.String)
-     */
-    @Override
-    public Type javaTypeForYangType(String type) {
-        Type t = BaseYangTypes.BASE_YANG_TYPES_PROVIDER.javaTypeForYangType(type);
-        return t;
-    }
-
-    @Override
-    public Type javaTypeForSchemaDefinitionType(final TypeDefinition<?> typeDefinition) {
-        Type returnType = null;
-        if (typeDefinition == null) {
-            throw new IllegalArgumentException("Type Definition cannot be NULL!");
-        }
-        if (typeDefinition.getQName() == null) {
-            throw new IllegalArgumentException(
-                    "Type Definition cannot have non specified QName (QName cannot be NULL!)");
-        }
-        if (typeDefinition.getQName().getLocalName() == null) {
-            throw new IllegalArgumentException("Type Definitions Local Name cannot be NULL!");
-        }
-        final String typedefName = typeDefinition.getQName().getLocalName();
-        if (typeDefinition instanceof ExtendedType) {
-            final TypeDefinition<?> baseTypeDef = baseTypeDefForExtendedType(typeDefinition);
-
-            if (baseTypeDef instanceof LeafrefTypeDefinition) {
-                final LeafrefTypeDefinition leafref = (LeafrefTypeDefinition) baseTypeDef;
-                returnType = provideTypeForLeafref(leafref);
-            } else if (baseTypeDef instanceof IdentityrefTypeDefinition) {
-                final IdentityrefTypeDefinition idref = (IdentityrefTypeDefinition) baseTypeDef;
-                returnType = returnTypeForIdentityref(idref);
-            } else if (baseTypeDef instanceof EnumTypeDefinition) {
-                final EnumTypeDefinition enumTypeDef = (EnumTypeDefinition) baseTypeDef;
-                returnType = resolveEnumFromTypeDefinition(enumTypeDef, typedefName);
-            } else {
-                final Module module = findParentModuleForTypeDefinition(schemaContext, typeDefinition);
-                if (module != null) {
-                    final Map<String, Type> genTOs = genTypeDefsContextMap.get(module.getName());
-                    if (genTOs != null) {
-                        returnType = genTOs.get(typedefName);
-                    }
-                    if (returnType == null) {
-                        returnType = BaseYangTypes.BASE_YANG_TYPES_PROVIDER
-                                .javaTypeForSchemaDefinitionType(baseTypeDef);
-                    }
-                }
-            }
-        } else {
-            if (typeDefinition instanceof LeafrefTypeDefinition) {
-                final LeafrefTypeDefinition leafref = (LeafrefTypeDefinition) typeDefinition;
-                returnType = provideTypeForLeafref(leafref);
-            } else if (typeDefinition instanceof IdentityrefTypeDefinition) {
-                final IdentityrefTypeDefinition idref = (IdentityrefTypeDefinition) typeDefinition;
-                returnType = returnTypeForIdentityref(idref);
-            } else {
-                returnType = BaseYangTypes.BASE_YANG_TYPES_PROVIDER.javaTypeForSchemaDefinitionType(typeDefinition);
-            }
-        }
-        // TODO: add throw exception when we will be able to resolve ALL yang
-        // types!
-        // if (returnType == null) {
-        // throw new IllegalArgumentException("Type Provider can't resolve " +
-        // "type for specified Type Definition " + typedefName);
-        // }
-        return returnType;
-    }
-
-    private Type returnTypeForIdentityref(IdentityrefTypeDefinition idref) {
-        QName baseIdQName = idref.getIdentity();
-        Module module = schemaContext.findModuleByNamespace(baseIdQName.getNamespace());
-        IdentitySchemaNode identity = null;
-        for (IdentitySchemaNode id : module.getIdentities()) {
-            if (id.getQName().equals(baseIdQName)) {
-                identity = id;
-            }
-        }
-        if (identity == null) {
-            throw new IllegalArgumentException("Target identity '" + baseIdQName + "' do not exists");
-        }
-
-        final String basePackageName = moduleNamespaceToPackageName(module);
-        final String packageName = packageNameForGeneratedType(basePackageName, identity.getPath());
-        final String genTypeName = parseToClassName(identity.getQName().getLocalName());
-
-        Type baseType = Types.typeForClass(Class.class);
-        Type paramType = Types.wildcardTypeFor(packageName, genTypeName);
-        Type returnType = Types.parameterizedTypeFor(baseType, paramType);
-        return returnType;
-    }
-
-    public Type generatedTypeForExtendedDefinitionType(final TypeDefinition<?> typeDefinition) {
-        Type returnType = null;
-        if (typeDefinition == null) {
-            throw new IllegalArgumentException("Type Definition cannot be NULL!");
-        }
-        if (typeDefinition.getQName() == null) {
-            throw new IllegalArgumentException(
-                    "Type Definition cannot have non specified QName (QName cannot be NULL!)");
-        }
-        if (typeDefinition.getQName() == null) {
-            throw new IllegalArgumentException("Type Definitions Local Name cannot be NULL!");
-        }
-
-        final String typedefName = typeDefinition.getQName().getLocalName();
-        if (typeDefinition instanceof ExtendedType) {
-            final TypeDefinition<?> baseTypeDef = baseTypeDefForExtendedType(typeDefinition);
-
-            if (!(baseTypeDef instanceof LeafrefTypeDefinition) && !(baseTypeDef instanceof IdentityrefTypeDefinition)) {
-                final Module module = findParentModuleForTypeDefinition(schemaContext, typeDefinition);
-
-                if (module != null) {
-                    final Map<String, Type> genTOs = genTypeDefsContextMap.get(module.getName());
-                    if (genTOs != null) {
-                        returnType = genTOs.get(typedefName);
-                    }
-                }
-            }
-        }
-        return returnType;
-    }
-
-    private TypeDefinition<?> baseTypeDefForExtendedType(final TypeDefinition<?> extendTypeDef) {
-        if (extendTypeDef == null) {
-            throw new IllegalArgumentException("Type Definiition reference cannot be NULL!");
-        }
-        final TypeDefinition<?> baseTypeDef = extendTypeDef.getBaseType();
-        if (baseTypeDef instanceof ExtendedType) {
-            return baseTypeDefForExtendedType(baseTypeDef);
-        } else {
-            return baseTypeDef;
-        }
-
-    }
-
-    public Type provideTypeForLeafref(final LeafrefTypeDefinition leafrefType) {
-        Type returnType = null;
-        if (leafrefType == null) {
-            throw new IllegalArgumentException("Leafref Type Definition reference cannot be NULL!");
-        }
-
-        if (leafrefType.getPathStatement() == null) {
-            throw new IllegalArgumentException("The Path Statement for Leafref Type Definition cannot be NULL!");
-        }
-
-        final RevisionAwareXPath xpath = leafrefType.getPathStatement();
-        final String strXPath = xpath.toString();
-
-        if (strXPath != null) {
-            if (strXPath.contains("[")) {
-                returnType = Types.typeForClass(Object.class);
-            } else {
-                final Module module = findParentModuleForTypeDefinition(schemaContext, leafrefType);
-                if (module != null) {
-                    final DataSchemaNode dataNode;
-                    if (xpath.isAbsolute()) {
-                        dataNode = findDataSchemaNode(schemaContext, module, xpath);
-                    } else {
-                        dataNode = findDataSchemaNodeForRelativeXPath(schemaContext, module, leafrefType, xpath);
-                    }
-
-                    if (leafContainsEnumDefinition(dataNode)) {
-                        returnType = referencedTypes.get(dataNode.getPath());
-                    } else if (leafListContainsEnumDefinition(dataNode)) {
-                        returnType = Types.listTypeFor(referencedTypes.get(dataNode.getPath()));
-                    } else {
-                        returnType = resolveTypeFromDataSchemaNode(dataNode);
-                    }
-                }
-            }
-        }
-        return returnType;
-    }
-
-    private boolean leafContainsEnumDefinition(final DataSchemaNode dataNode) {
-        if (dataNode instanceof LeafSchemaNode) {
-            final LeafSchemaNode leaf = (LeafSchemaNode) dataNode;
-            if (leaf.getType() instanceof EnumTypeDefinition) {
-                return true;
-            }
-        }
-        return false;
-    }
-
-    private boolean leafListContainsEnumDefinition(final DataSchemaNode dataNode) {
-        if (dataNode instanceof LeafListSchemaNode) {
-            final LeafListSchemaNode leafList = (LeafListSchemaNode) dataNode;
-            if (leafList.getType() instanceof EnumTypeDefinition) {
-                return true;
-            }
-        }
-        return false;
-    }
-
-    private Enumeration resolveEnumFromTypeDefinition(final EnumTypeDefinition enumTypeDef, final String enumName) {
-        if (enumTypeDef == null) {
-            throw new IllegalArgumentException("EnumTypeDefinition reference cannot be NULL!");
-        }
-        if (enumTypeDef.getValues() == null) {
-            throw new IllegalArgumentException("EnumTypeDefinition MUST contain at least ONE value definition!");
-        }
-        if (enumTypeDef.getQName() == null) {
-            throw new IllegalArgumentException("EnumTypeDefinition MUST contain NON-NULL QName!");
-        }
-        if (enumTypeDef.getQName().getLocalName() == null) {
-            throw new IllegalArgumentException("Local Name in EnumTypeDefinition QName cannot be NULL!");
-        }
-
-        final String enumerationName = parseToClassName(enumName);
-
-        Module module = findParentModuleForTypeDefinition(schemaContext, enumTypeDef);
-        final String basePackageName = moduleNamespaceToPackageName(module);
-
-        final EnumBuilder enumBuilder = new EnumerationBuilderImpl(basePackageName, enumerationName);
-        updateEnumPairsFromEnumTypeDef(enumTypeDef, enumBuilder);
-        return enumBuilder.toInstance(null);
-    }
-
-    private EnumBuilder resolveInnerEnumFromTypeDefinition(final EnumTypeDefinition enumTypeDef, final String enumName,
-            final GeneratedTypeBuilder typeBuilder) {
-        if (enumTypeDef == null) {
-            throw new IllegalArgumentException("EnumTypeDefinition reference cannot be NULL!");
-        }
-        if (enumTypeDef.getValues() == null) {
-            throw new IllegalArgumentException("EnumTypeDefinition MUST contain at least ONE value definition!");
-        }
-        if (enumTypeDef.getQName() == null) {
-            throw new IllegalArgumentException("EnumTypeDefinition MUST contain NON-NULL QName!");
-        }
-        if (enumTypeDef.getQName().getLocalName() == null) {
-            throw new IllegalArgumentException("Local Name in EnumTypeDefinition QName cannot be NULL!");
-        }
-        if (typeBuilder == null) {
-            throw new IllegalArgumentException("Generated Type Builder reference cannot be NULL!");
-        }
-
-        final String enumerationName = parseToClassName(enumName);
-        final EnumBuilder enumBuilder = typeBuilder.addEnumeration(enumerationName);
-
-        updateEnumPairsFromEnumTypeDef(enumTypeDef, enumBuilder);
-
-        return enumBuilder;
-    }
-
-    private void updateEnumPairsFromEnumTypeDef(final EnumTypeDefinition enumTypeDef, final EnumBuilder enumBuilder) {
-        if (enumBuilder != null) {
-            final List<EnumPair> enums = enumTypeDef.getValues();
-            if (enums != null) {
-                int listIndex = 0;
-                for (final EnumPair enumPair : enums) {
-                    if (enumPair != null) {
-                        final String enumPairName = parseToClassName(enumPair.getName());
-                        Integer enumPairValue = enumPair.getValue();
-
-                        if (enumPairValue == null) {
-                            enumPairValue = listIndex;
-                        }
-                        enumBuilder.addValue(enumPairName, enumPairValue);
-                        listIndex++;
-                    }
-                }
-            }
-        }
-    }
-
-    private Type resolveTypeFromDataSchemaNode(final DataSchemaNode dataNode) {
-        Type returnType = null;
-        if (dataNode != null) {
-            if (dataNode instanceof LeafSchemaNode) {
-                final LeafSchemaNode leaf = (LeafSchemaNode) dataNode;
-                returnType = javaTypeForSchemaDefinitionType(leaf.getType());
-            } else if (dataNode instanceof LeafListSchemaNode) {
-                final LeafListSchemaNode leafList = (LeafListSchemaNode) dataNode;
-                returnType = javaTypeForSchemaDefinitionType(leafList.getType());
-            }
-        }
-        return returnType;
-    }
-
-    private void resolveTypeDefsFromContext() {
-        final Set<Module> modules = schemaContext.getModules();
-        if (modules == null) {
-            throw new IllegalArgumentException("Sef of Modules cannot be NULL!");
-        }
-        for (final Module module : modules) {
-            if (module == null) {
-                continue;
-            }
-            final String moduleName = module.getName();
-            final String basePackageName = moduleNamespaceToPackageName(module);
-
-            final Set<TypeDefinition<?>> typeDefinitions = module.getTypeDefinitions();
-            final List<TypeDefinition<?>> listTypeDefinitions = sortTypeDefinitionAccordingDepth(typeDefinitions);
-
-            final Map<String, Type> typeMap = new HashMap<>();
-            genTypeDefsContextMap.put(moduleName, typeMap);
-
-            if ((listTypeDefinitions != null) && (basePackageName != null)) {
-                for (final TypeDefinition<?> typedef : listTypeDefinitions) {
-                    typedefToGeneratedType(basePackageName, moduleName, typedef);
-                }
-            }
-        }
-    }
-
-    private Type typedefToGeneratedType(final String basePackageName, final String moduleName,
-            final TypeDefinition<?> typedef) {
-        if ((basePackageName != null) && (moduleName != null) && (typedef != null) && (typedef.getQName() != null)) {
-
-            final String typedefName = typedef.getQName().getLocalName();
-            final TypeDefinition<?> innerTypeDefinition = typedef.getBaseType();
-            if (!(innerTypeDefinition instanceof LeafrefTypeDefinition)
-                    && !(innerTypeDefinition instanceof IdentityrefTypeDefinition)) {
-                Type returnType = null;
-                if (innerTypeDefinition instanceof ExtendedType) {
-                    ExtendedType extendedTypeDef = (ExtendedType) innerTypeDefinition;
-                    returnType = resolveExtendedTypeFromTypeDef(extendedTypeDef, basePackageName, typedefName,
-                            moduleName);
-                } else if (innerTypeDefinition instanceof UnionTypeDefinition) {
-                    final GeneratedTOBuilder genTOBuilder = addUnionGeneratedTypeDefinition(basePackageName, typedef,
-                            typedefName);
-                    returnType = genTOBuilder.toInstance();
-                } else if (innerTypeDefinition instanceof EnumTypeDefinition) {
-                    final EnumTypeDefinition enumTypeDef = (EnumTypeDefinition) innerTypeDefinition;
-                    returnType = resolveEnumFromTypeDefinition(enumTypeDef, typedefName);
-
-                } else if (innerTypeDefinition instanceof BitsTypeDefinition) {
-                    final BitsTypeDefinition bitsTypeDefinition = (BitsTypeDefinition) innerTypeDefinition;
-                    final GeneratedTOBuilder genTOBuilder = bitsTypedefToTransferObject(basePackageName,
-                            bitsTypeDefinition, typedefName);
-                    returnType = genTOBuilder.toInstance();
-
-                } else {
-                    final Type javaType = BaseYangTypes.BASE_YANG_TYPES_PROVIDER
-                            .javaTypeForSchemaDefinitionType(innerTypeDefinition);
-
-                    returnType = wrapJavaTypeIntoTO(basePackageName, typedef, javaType);
-                }
-                if (returnType != null) {
-                    final Map<String, Type> typeMap = genTypeDefsContextMap.get(moduleName);
-                    if (typeMap != null) {
-                        typeMap.put(typedefName, returnType);
-                    }
-                    return returnType;
-                }
-            }
-        }
-        return null;
-    }
-
-    private GeneratedTransferObject wrapJavaTypeIntoTO(final String basePackageName, final TypeDefinition<?> typedef,
-            final Type javaType) {
-        if (javaType != null) {
-            final String typedefName = typedef.getQName().getLocalName();
-            final String propertyName = parseToValidParamName(typedefName);
-
-            final GeneratedTOBuilder genTOBuilder = typedefToTransferObject(basePackageName, typedef);
-
-            final GeneratedPropertyBuilder genPropBuilder = genTOBuilder.addProperty(propertyName);
-
-            genPropBuilder.setReturnType(javaType);
-            genTOBuilder.addEqualsIdentity(genPropBuilder);
-            genTOBuilder.addHashIdentity(genPropBuilder);
-            genTOBuilder.addToStringProperty(genPropBuilder);
-            if (javaType == BaseYangTypes.STRING_TYPE) {
-                if (typedef instanceof ExtendedType) {
-                    final List<String> regExps = resolveRegExpressionsFromTypedef((ExtendedType) typedef);
-                    addStringRegExAsConstant(genTOBuilder, regExps);
-                }
-            }
-            return genTOBuilder.toInstance();
-        }
-        return null;
-    }
-
-    public GeneratedTOBuilder addUnionGeneratedTypeDefinition(final String basePackageName,
-            final TypeDefinition<?> typedef, String typeDefName) {
-        if (basePackageName == null) {
-            throw new IllegalArgumentException("Base Package Name cannot be NULL!");
-        }
-        if (typedef == null) {
-            throw new IllegalArgumentException("Type Definition cannot be NULL!");
-        }
-        if (typedef.getQName() == null) {
-            throw new IllegalArgumentException(
-                    "Type Definition cannot have non specified QName (QName cannot be NULL!)");
-        }
-
-        final TypeDefinition<?> baseTypeDefinition = typedef.getBaseType();
-        if ((baseTypeDefinition != null) && (baseTypeDefinition instanceof UnionTypeDefinition)) {
-            final Module parentModule = findParentModuleForTypeDefinition(schemaContext, typedef);
-            final UnionTypeDefinition unionTypeDef = (UnionTypeDefinition) baseTypeDefinition;
-            final List<TypeDefinition<?>> unionTypes = unionTypeDef.getTypes();
-
-            Map<String, Type> genTOsMap = null;
-            if (parentModule != null && parentModule.getName() != null) {
-                genTOsMap = genTypeDefsContextMap.get(parentModule.getName());
-            }
-
-            final GeneratedTOBuilder unionGenTransObject;
-            if (typeDefName != null && !typeDefName.isEmpty()) {
-                final String typeName = parseToClassName(typeDefName);
-                unionGenTransObject = new GeneratedTOBuilderImpl(basePackageName, typeName);
-            } else {
-                unionGenTransObject = typedefToTransferObject(basePackageName, typedef);
-            }
-            unionGenTransObject.setIsUnion(true);
-
-            final List<String> regularExpressions = new ArrayList<String>();
-            for (final TypeDefinition<?> unionType : unionTypes) {
-                final String typeName = unionType.getQName().getLocalName();
-                if (unionType instanceof ExtendedType) {
-                    final Module unionTypeModule = findParentModuleForTypeDefinition(schemaContext, unionType);
-                    if (unionTypeModule != null && unionTypeModule.getName() != null) {
-                        final Map<String, Type> innerGenTOs = genTypeDefsContextMap.get(unionTypeModule.getName());
-                        Type genTransferObject = null;
-                        if (innerGenTOs != null) {
-                            genTransferObject = innerGenTOs.get(typeName);
-                        }
-                        if (genTransferObject != null) {
-                            updateUnionTypeAsProperty(unionGenTransObject, genTransferObject,
-                                    genTransferObject.getName());
-                        } else {
-                            final TypeDefinition<?> baseType = baseTypeDefForExtendedType(unionType);
-                            if (typeName.equals(baseType.getQName().getLocalName())) {
-                                final Type javaType = BaseYangTypes.BASE_YANG_TYPES_PROVIDER
-                                        .javaTypeForSchemaDefinitionType(baseType);
-                                if (javaType != null) {
-                                    updateUnionTypeAsProperty(unionGenTransObject, javaType, typeName);
-                                }
-                            }
-                            if (baseType instanceof StringType) {
-                                regularExpressions.addAll(resolveRegExpressionsFromTypedef((ExtendedType) unionType));
-                            }
-                        }
-                    }
-                } else if (unionType instanceof EnumTypeDefinition) {
-                    final EnumBuilder enumBuilder = resolveInnerEnumFromTypeDefinition((EnumTypeDefinition) unionType,
-                            typeName, unionGenTransObject);
-                    final Type enumRefType = new ReferencedTypeImpl(enumBuilder.getPackageName(), enumBuilder.getName());
-                    updateUnionTypeAsProperty(unionGenTransObject, enumRefType, typeName);
-                } else {
-                    final Type javaType = BaseYangTypes.BASE_YANG_TYPES_PROVIDER
-                            .javaTypeForSchemaDefinitionType(unionType);
-                    if (javaType != null) {
-                        updateUnionTypeAsProperty(unionGenTransObject, javaType, typeName);
-                    }
-                }
-            }
-            if (!regularExpressions.isEmpty()) {
-                addStringRegExAsConstant(unionGenTransObject, regularExpressions);
-            }
-
-            genTOsMap.put(typedef.getQName().getLocalName(), unionGenTransObject.toInstance());
-            return unionGenTransObject;
-        }
-        return null;
-    }
-
-    private void updateUnionTypeAsProperty(final GeneratedTOBuilder unionGenTransObject, final Type type,
-            final String propertyName) {
-        if (unionGenTransObject != null && type != null) {
-            if (!unionGenTransObject.containsProperty(propertyName)) {
-                final GeneratedPropertyBuilder propBuilder = unionGenTransObject
-                        .addProperty(parseToValidParamName(propertyName));
-                propBuilder.setReturnType(type);
-
-                if (!(type instanceof Enumeration)) {
-                    unionGenTransObject.addEqualsIdentity(propBuilder);
-                    unionGenTransObject.addHashIdentity(propBuilder);
-                    unionGenTransObject.addToStringProperty(propBuilder);
-                }
-            }
-        }
-    }
-
-    private GeneratedTOBuilder typedefToTransferObject(final String basePackageName, final TypeDefinition<?> typedef) {
-
-        final String packageName = packageNameForGeneratedType(basePackageName, typedef.getPath());
-        final String typeDefTOName = typedef.getQName().getLocalName();
-
-        if ((packageName != null) && (typedef != null) && (typeDefTOName != null)) {
-            final String genTOName = parseToClassName(typeDefTOName);
-            final GeneratedTOBuilder newType = new GeneratedTOBuilderImpl(packageName, genTOName);
-
-            return newType;
-        }
-        return null;
-    }
-
-    public GeneratedTOBuilder bitsTypedefToTransferObject(final String basePackageName,
-            final TypeDefinition<?> typeDef, String typeDefName) {
-
-        if (typeDef == null) {
-            throw new IllegalArgumentException("typeDef cannot be NULL!");
-        }
-        if (basePackageName == null) {
-            throw new IllegalArgumentException("Base Package Name cannot be NULL!");
-        }
-
-        if (typeDef instanceof BitsTypeDefinition) {
-            BitsTypeDefinition bitsTypeDefinition = (BitsTypeDefinition) typeDef;
-
-            final String typeName = parseToClassName(typeDefName);
-            final GeneratedTOBuilder genTOBuilder = new GeneratedTOBuilderImpl(basePackageName, typeName);
-
-            final List<Bit> bitList = bitsTypeDefinition.getBits();
-            GeneratedPropertyBuilder genPropertyBuilder;
-            for (final Bit bit : bitList) {
-                String name = bit.getName();
-                genPropertyBuilder = genTOBuilder.addProperty(parseToValidParamName(name));
-                genPropertyBuilder.setReadOnly(false);
-                genPropertyBuilder.setReturnType(BaseYangTypes.BOOLEAN_TYPE);
-
-                genTOBuilder.addEqualsIdentity(genPropertyBuilder);
-                genTOBuilder.addHashIdentity(genPropertyBuilder);
-                genTOBuilder.addToStringProperty(genPropertyBuilder);
-            }
-
-            return genTOBuilder;
-        }
-        return null;
-    }
-
-    private List<String> resolveRegExpressionsFromTypedef(ExtendedType typedef) {
-        final List<String> regExps = new ArrayList<String>();
-        if (typedef == null) {
-            throw new IllegalArgumentException("typedef can't be null");
-        }
-        final TypeDefinition<?> strTypeDef = baseTypeDefForExtendedType(typedef);
-        if (strTypeDef instanceof StringType) {
-            final List<PatternConstraint> patternConstraints = typedef.getPatterns();
-            if (!patternConstraints.isEmpty()) {
-                String regEx;
-                String modifiedRegEx;
-                for (PatternConstraint patternConstraint : patternConstraints) {
-                    regEx = patternConstraint.getRegularExpression();
-                    modifiedRegEx = StringEscapeUtils.escapeJava(regEx);
-                    regExps.add(modifiedRegEx);
-                }
-            }
-        }
-        return regExps;
-    }
-
-    private void addStringRegExAsConstant(GeneratedTOBuilder genTOBuilder, List<String> regularExpressions) {
-        if (genTOBuilder == null)
-            throw new IllegalArgumentException("genTOBuilder can't be null");
-        if (regularExpressions == null)
-            throw new IllegalArgumentException("regularExpressions can't be null");
-
-        if (!regularExpressions.isEmpty()) {
-            genTOBuilder.addConstant(Types.listTypeFor(BaseYangTypes.STRING_TYPE), TypeConstants.PATTERN_CONSTANT_NAME,
-                    regularExpressions);
-        }
-    }
-
-    private GeneratedTransferObject resolveExtendedTypeFromTypeDef(final ExtendedType extendedType,
-            final String basePackageName, final String typedefName, final String moduleName) {
-
-        if (extendedType == null) {
-            throw new IllegalArgumentException("Extended type cannot be NULL!");
-        }
-        if (basePackageName == null) {
-            throw new IllegalArgumentException("String with base package name cannot be NULL!");
-        }
-        if (typedefName == null) {
-            throw new IllegalArgumentException("String with type definition name cannot be NULL!");
-        }
-
-        final String typeDefName = parseToClassName(typedefName);
-        final String lowTypeDef = extendedType.getQName().getLocalName();
-        final GeneratedTOBuilder genTOBuilder = new GeneratedTOBuilderImpl(basePackageName, typeDefName);
-
-        final Map<String, Type> typeMap = genTypeDefsContextMap.get(moduleName);
-        if (typeMap != null) {
-            Type type = typeMap.get(lowTypeDef);
-            if (type instanceof GeneratedTransferObject) {
-                genTOBuilder.setExtendsType((GeneratedTransferObject) type);
-            }
-        }
-
-        return genTOBuilder.toInstance();
-    }
-
-    /**
-     * The method find out for each type definition how many immersion (depth)
-     * is necessary to get to the base type. Every type definition is inserted
-     * to the map which key is depth and value is list of type definitions with
-     * equal depth. In next step are lists from this map concatenated to one
-     * list in ascending order according to their depth. All type definitions
-     * are in the list behind all type definitions on which depends.
-     *
-     * @param unsortedTypeDefinitions
-     *            represents list of type definitions
-     * @return list of type definitions sorted according their each other
-     *         dependencies (type definitions which are depend on other type
-     *         definitions are in list behind them).
-     */
-    private List<TypeDefinition<?>> sortTypeDefinitionAccordingDepth(
-            final Set<TypeDefinition<?>> unsortedTypeDefinitions) {
-        List<TypeDefinition<?>> sortedTypeDefinition = new ArrayList<>();
-
-        Map<Integer, List<TypeDefinition<?>>> typeDefinitionsDepths = new TreeMap<>();
-        for (TypeDefinition<?> unsortedTypeDefinition : unsortedTypeDefinitions) {
-            final int depth = getTypeDefinitionDepth(unsortedTypeDefinition);
-            List<TypeDefinition<?>> typeDefinitionsConcreteDepth = typeDefinitionsDepths.get(depth);
-            if (typeDefinitionsConcreteDepth == null) {
-                typeDefinitionsConcreteDepth = new ArrayList<TypeDefinition<?>>();
-                typeDefinitionsDepths.put(depth, typeDefinitionsConcreteDepth);
-            }
-            typeDefinitionsConcreteDepth.add(unsortedTypeDefinition);
-        }
-
-        Set<Integer> depths = typeDefinitionsDepths.keySet(); // keys are in
-                                                              // ascending order
-        for (Integer depth : depths) {
-            sortedTypeDefinition.addAll(typeDefinitionsDepths.get(depth));
-        }
-
-        return sortedTypeDefinition;
-    }
-
-    /**
-     * The method return how many immersion is necessary to get from type
-     * definition to base type.
-     *
-     * @param typeDefinition
-     *            is type definition for which is depth looked for.
-     * @return how many immersion is necessary to get from type definition to
-     *         base type
-     */
-    private int getTypeDefinitionDepth(final TypeDefinition<?> typeDefinition) {
-        if (typeDefinition == null) {
-            throw new IllegalArgumentException("Type definition can't be null");
-        }
-        int depth = 1;
-        TypeDefinition<?> baseType = typeDefinition.getBaseType();
-
-        if (baseType instanceof ExtendedType) {
-            depth = depth + getTypeDefinitionDepth(typeDefinition.getBaseType());
-        } else if (baseType instanceof UnionType) {
-            List<TypeDefinition<?>> childTypeDefinitions = ((UnionType) baseType).getTypes();
-            int maxChildDepth = 0;
-            int childDepth = 1;
-            for (TypeDefinition<?> childTypeDefinition : childTypeDefinitions) {
-                childDepth = childDepth + getTypeDefinitionDepth(childTypeDefinition.getBaseType());
-                if (childDepth > maxChildDepth) {
-                    maxChildDepth = childDepth;
-                }
-            }
-            return maxChildDepth;
-        }
-        return depth;
-    }
-
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/yang/types/UnionDependencySort.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/yang/types/UnionDependencySort.java
deleted file mode 100644 (file)
index 171e1f6..0000000
+++ /dev/null
@@ -1,162 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.yang.types;
-
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.opendaylight.yangtools.yang.model.api.TypeDefinition;
-import org.opendaylight.yangtools.yang.model.api.type.UnionTypeDefinition;
-import org.opendaylight.yangtools.yang.model.util.ExtendedType;
-import org.opendaylight.yangtools.yang.parser.util.TopologicalSort;
-import org.opendaylight.yangtools.yang.parser.util.TopologicalSort.Node;
-import org.opendaylight.yangtools.yang.parser.util.TopologicalSort.NodeImpl;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import com.google.common.annotations.VisibleForTesting;
-import com.google.common.base.Function;
-import com.google.common.collect.Lists;
-import com.google.common.collect.Maps;
-import com.google.common.collect.Sets;
-
-public class UnionDependencySort {
-    private static final Logger logger = LoggerFactory
-            .getLogger(UnionDependencySort.class);
-
-    public static List<ExtendedType> sort(
-            final Set<TypeDefinition<?>> typeDefinitions) {
-        if (typeDefinitions == null) {
-            logger.error("Set of Type Definitions cannot be NULL!");
-            throw new IllegalArgumentException("Set of Type Definitions " +
-                    "cannot be NULL!");
-        }
-
-        final Set<ExtendedType> extUnionTypes =
-                unionsFromTypeDefinitions(typeDefinitions);
-
-        final Set<Node> unsorted = unionTypesToUnionNodes(extUnionTypes);
-
-        final List<Node> sortedNodes = TopologicalSort.sort(unsorted);
-        return Lists.transform(sortedNodes, new Function<Node, ExtendedType>() {
-            @Override
-            public ExtendedType apply(Node input) {
-                return ((UnionNode) input).getUnionType();
-            }
-        });
-    }
-
-    private static Set<ExtendedType> unionsFromTypeDefinitions(
-            final Set<TypeDefinition<?>> typeDefinitions) {
-        final Set<ExtendedType> unions = Sets.newHashSet();
-
-        for (final TypeDefinition<?> typedef : typeDefinitions) {
-            if ((typedef != null) && (typedef.getBaseType() != null)) {
-                if (typedef instanceof ExtendedType
-                        && typedef.getBaseType() instanceof UnionTypeDefinition) {
-                    unions.add((ExtendedType) typedef);
-                }
-            }
-        }
-        return unions;
-    }
-
-    private static Set<Node> unionTypesToUnionNodes(
-            final Set<ExtendedType> extUnionTypes) {
-        final Map<ExtendedType, Node> nodeMap = Maps.newHashMap();
-        final Set<Node> resultNodes = Sets.newHashSet();
-
-        for (final ExtendedType unionType : extUnionTypes) {
-            final Node node = new UnionNode(unionType);
-            nodeMap.put(unionType, node);
-            resultNodes.add(node);
-        }
-
-        for (final Node node : resultNodes) {
-            final UnionNode unionNode = (UnionNode) node;
-            final ExtendedType extUnionType = unionNode.getUnionType();
-
-            final UnionTypeDefinition unionType = (UnionTypeDefinition)
-                    extUnionType.getBaseType();
-
-            final List<TypeDefinition<?>> innerTypes = unionType.getTypes();
-            for (final TypeDefinition<?> typedef : innerTypes) {
-                if (extUnionTypes.contains(typedef)) {
-                    final Node toNode = nodeMap.get(typedef);
-                    unionNode.addEdge(toNode);
-                }
-            }
-        }
-
-        return resultNodes;
-    }
-
-    private static UnionNode unionTypeToUnionNode(
-            final ExtendedType extUnionType,
-            final Set<ExtendedType> extUnionTypes) {
-        final UnionNode node = new UnionNode(extUnionType);
-
-        if (extUnionType.getBaseType() instanceof UnionTypeDefinition) {
-            final UnionTypeDefinition unionType = (UnionTypeDefinition)
-                    extUnionType.getBaseType();
-
-            final List<TypeDefinition<?>> innerTypes = unionType.getTypes();
-            for (final TypeDefinition<?> typedef : innerTypes) {
-                if ((typedef != null) && (typedef instanceof ExtendedType)
-                        && (typedef.getBaseType() instanceof UnionTypeDefinition)) {
-                    if (extUnionTypes.contains(typedef)) {
-                        node.addEdge(new UnionNode((ExtendedType) typedef));
-                    }
-                }
-            }
-        }
-
-        return node;
-    }
-
-    @VisibleForTesting
-    static final class UnionNode extends NodeImpl {
-        private final ExtendedType unionType;
-
-        UnionNode(ExtendedType unionType) {
-            this.unionType = unionType;
-        }
-
-        ExtendedType getUnionType() {
-            return unionType;
-        }
-
-        @Override
-        public boolean equals(Object o) {
-            if (this == o) {
-                return true;
-            }
-            if (!(o instanceof UnionNode)) {
-                return false;
-            }
-            UnionNode unionNode = (UnionNode) o;
-            if (!unionType.equals(unionNode.unionType)) {
-                return false;
-            }
-            return true;
-        }
-
-        @Override
-        public int hashCode() {
-            return unionType.hashCode();
-        }
-
-        @Override
-        public String toString() {
-            return "UnionNode{" +
-                    "unionType=" + unionType +
-                    '}';
-        }
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/yang/types/package-info.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/main/java/org/opendaylight/controller/sal/binding/yang/types/package-info.java
deleted file mode 100644 (file)
index 199dfb9..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-/*\r
-  * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
-  *\r
-  * This program and the accompanying materials are made available under the\r
-  * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
-  * and is available at http://www.eclipse.org/legal/epl-v10.html\r
-  */\r
-package org.opendaylight.controller.sal.binding.yang.types;
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/AugmentRleativeXPathTest.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/AugmentRleativeXPathTest.java
deleted file mode 100644 (file)
index ed84df5..0000000
+++ /dev/null
@@ -1,152 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.generator.impl;
-
-import static org.junit.Assert.*;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.opendaylight.controller.sal.binding.generator.api.BindingGenerator;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedProperty;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType;
-import org.opendaylight.controller.sal.binding.model.api.MethodSignature;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang.model.parser.api.YangModelParser;
-import org.opendaylight.yangtools.yang.parser.impl.YangParserImpl;
-
-public class AugmentRleativeXPathTest {
-
-    private final static List<File> augmentModels = new ArrayList<>();
-    private final static String augmentFolderPath = AugmentedTypeTest.class
-            .getResource("/augment-relative-xpath-models").getPath();
-
-    @BeforeClass
-    public static void loadTestResources() {
-        final File augFolder = new File(augmentFolderPath);
-
-        for (final File fileEntry : augFolder.listFiles()) {
-            if (fileEntry.isFile()) {
-                augmentModels.add(fileEntry);
-            }
-        }
-    }
-
-    @Test
-    public void AugmentationWithRelativeXPathTest() {
-        final YangModelParser parser = new YangParserImpl();
-        final Set<Module> modules = parser.parseYangModels(augmentModels);
-        final SchemaContext context = parser.resolveSchemaContext(modules);
-
-        assertNotNull("context is null", context);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        assertNotNull("genTypes is null", genTypes);
-        assertFalse("genTypes is empty", genTypes.isEmpty());
-
-        GeneratedTransferObject gtInterfaceKey = null;
-        GeneratedType gtInterface = null;
-        GeneratedType gtTunnel = null;
-        GeneratedTransferObject gtTunnelKey = null;
-
-        for (final Type type : genTypes) {
-            if (type.getName().equals("InterfaceKey") && type.getPackageName().contains("augment._abstract.topology")) {
-                gtInterfaceKey = (GeneratedTransferObject) type;
-            } else if (type.getName().equals("Interface") && type.getPackageName().contains("augment._abstract.topology")) {
-                gtInterface = (GeneratedType) type;
-            } else if (type.getName().equals("Tunnel") && type.getPackageName().contains("augment._abstract.topology")) {
-                gtTunnel = (GeneratedType) type;
-            } else if (type.getName().equals("TunnelKey") && type.getPackageName().contains("augment._abstract.topology")) {
-                gtTunnelKey = (GeneratedTransferObject) type;
-            }
-        }
-
-        // 'Interface
-        assertNotNull("gtInterface is null", gtInterface);
-        final List<MethodSignature> gtInterfaceMethods = gtInterface.getMethodDefinitions();
-        assertNotNull("gtInterfaceMethods is null", gtInterfaceMethods);
-        MethodSignature getIfcKeyMethod = null;
-        for (final MethodSignature method : gtInterfaceMethods) {
-            if (method.getName().equals("getInterfaceKey")) {
-                getIfcKeyMethod = method;
-                break;
-            }
-        }
-        assertNotNull("getIfcKeyMethod is null", getIfcKeyMethod);
-        assertNotNull("getIfcKeyMethod.getReturnType() is null", getIfcKeyMethod.getReturnType());
-        assertFalse("getIfcKeyMethod.getReturnType() should not be Void",
-                getIfcKeyMethod.getReturnType().equals("java.lang.Void"));
-        assertTrue("getIfcKeyMethod.getReturnType().getName() must be InterfaceKey",
-                getIfcKeyMethod.getReturnType().getName().equals("InterfaceKey"));
-
-        // 'InterfaceKey'
-        assertNotNull("gtInterfaceKey is null", gtInterfaceKey);
-        final List<GeneratedProperty> properties = gtInterfaceKey.getProperties();
-        assertNotNull("properties is null", properties);
-        GeneratedProperty gtInterfaceId = null;
-        for (final GeneratedProperty property : properties) {
-            if (property.getName().equals("InterfaceId")) {
-                gtInterfaceId = property;
-                break;
-            }
-        }
-        assertNotNull("gtInterfaceId is null", gtInterfaceId);
-        assertNotNull("gtInterfaceId.getReturnType() is null", gtInterfaceId.getReturnType());
-        assertFalse("gtInterfaceId.getReturnType() should not be Void",
-                gtInterfaceId.getReturnType().equals("java.lang.Void"));
-        assertTrue("gtInterfaceId.getReturnType().getName() must be String",
-                gtInterfaceId.getReturnType().getName().equals("String"));
-
-        // 'Tunnel'
-        assertNotNull("gtTunnel is null", gtTunnel);
-        final List<MethodSignature> tunnelMethods = gtTunnel.getMethodDefinitions();
-        assertNotNull("tunnelMethods is null", tunnelMethods);
-        MethodSignature getTunnelKeyMethod = null;
-        for (MethodSignature method : tunnelMethods) {
-            if (method.getName().equals("getTunnelKey")) {
-                getTunnelKeyMethod = method;
-                break;
-            }
-        }
-        assertNotNull("getTunnelKeyMethod is null", getTunnelKeyMethod);
-        assertNotNull("getTunnelKeyMethod.getReturnType()",
-                getTunnelKeyMethod.getReturnType());
-        assertFalse("getTunnelKeyMethod.getReturnType() should not be Void",
-                getTunnelKeyMethod.getReturnType().equals("java.lang.Void"));
-        assertTrue("getTunnelKeyMethod.getReturnType().getName() must be TunnelKey",
-                getTunnelKeyMethod.getReturnType().getName().equals("TunnelKey"));
-
-        // 'TunnelKey'
-        assertNotNull("gtTunnelKey is null", gtTunnelKey);
-        final List<GeneratedProperty> tunnelKeyProperties = gtTunnelKey.getProperties();
-        assertNotNull("tunnelKeyProperties is null", tunnelKeyProperties);
-
-        GeneratedProperty gtTunnelId = null;
-        for (final GeneratedProperty property : tunnelKeyProperties) {
-            if (property.getName().equals("TunnelId")) {
-                gtTunnelId = property;
-            }
-        }
-        assertNotNull("gtTunnelId is null", gtTunnelId);
-        assertNotNull("gtTunnelId.getReturnType() is null",
-                gtTunnelId.getReturnType());
-        assertFalse("gtTunnelId.getReturnType() should not be Void",
-                gtTunnelId.getReturnType().equals("java.lang.Void"));
-        assertTrue("gtTunnelId.getReturnType().getName() must be Uri",
-                gtTunnelId.getReturnType().getName().equals("Uri"));
-    }
-
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/AugmentedTypeTest.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/AugmentedTypeTest.java
deleted file mode 100644 (file)
index f8958c1..0000000
+++ /dev/null
@@ -1,199 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.generator.impl;
-
-import static org.junit.Assert.*;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.opendaylight.controller.sal.binding.generator.api.BindingGenerator;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedProperty;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType;
-import org.opendaylight.controller.sal.binding.model.api.MethodSignature;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang.model.parser.api.YangModelParser;
-import org.opendaylight.yangtools.yang.parser.impl.YangParserImpl;
-
-public class AugmentedTypeTest {
-
-    private final static List<File> augmentModels = new ArrayList<>();
-    private final static String augmentFolderPath = AugmentedTypeTest.class
-            .getResource("/augment-test-models").getPath();
-
-    @BeforeClass
-    public static void loadTestResources() {
-        final File augFolder = new File(augmentFolderPath);
-
-        for (final File fileEntry : augFolder.listFiles()) {
-            if (fileEntry.isFile()) {
-                augmentModels.add(fileEntry);
-            }
-        }
-    }
-
-    @Test
-    public void augmentedAbstractTopologyTest() {
-        final YangModelParser parser = new YangParserImpl();
-        final Set<Module> modules = parser.parseYangModels(augmentModels);
-        final SchemaContext context = parser.resolveSchemaContext(modules);
-
-        assertNotNull("context is null", context);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        assertNotNull("genTypes is null", genTypes);
-        assertFalse("genTypes is empty", genTypes.isEmpty());
-
-        GeneratedTransferObject gtInterfaceKey = null;
-        GeneratedType gtInterface = null;
-        GeneratedType gtTunnel = null;
-        GeneratedTransferObject gtTunnelKey = null;
-        GeneratedType gtNetworkLink2 = null;
-
-        for (final Type type : genTypes) {
-            if (type.getName().equals("InterfaceKey") && type.getPackageName().contains("augment._abstract.topology")) {
-                gtInterfaceKey = (GeneratedTransferObject) type;
-            } else if (type.getName().equals("Interface") && type.getPackageName().contains("augment._abstract.topology")) {
-                gtInterface = (GeneratedType) type;
-            } else if (type.getName().equals("Tunnel") && type.getPackageName().contains("augment._abstract.topology")) {
-                gtTunnel = (GeneratedType) type;
-            } else if (type.getName().equals("TunnelKey") && type.getPackageName().contains("augment._abstract.topology")) {
-                gtTunnelKey = (GeneratedTransferObject) type;
-            } else if (type.getName().equals("NetworkLink2") && type.getPackageName().contains("augment._abstract.topology")) {
-                gtNetworkLink2 = (GeneratedType) type;
-            }
-        }
-
-        // 'Interface
-        assertNotNull("gtInterface is null", gtInterface);
-        final List<MethodSignature> gtInterfaceMethods = gtInterface.getMethodDefinitions();
-        assertNotNull("gtInterfaceMethods is null", gtInterfaceMethods);
-        MethodSignature getIfcKeyMethod = null;
-        for (final MethodSignature method : gtInterfaceMethods) {
-            if (method.getName().equals("getInterfaceKey")) {
-                getIfcKeyMethod = method;
-                break;
-            }
-        }
-        assertNotNull("getIfcKeyMethod is null", getIfcKeyMethod);
-        assertNotNull("getIfcKeyMethod.getReturnType() is null", getIfcKeyMethod.getReturnType());
-        assertFalse("getIfcKeyMethod.getReturnType() should not be Void",
-                getIfcKeyMethod.getReturnType().equals("java.lang.Void"));
-        assertTrue("getIfcKeyMethod.getReturnType().getName() must be InterfaceKey",
-                getIfcKeyMethod.getReturnType().getName().equals("InterfaceKey"));
-
-        MethodSignature getHigherLayerIfMethod = null;
-        for (final MethodSignature method : gtInterfaceMethods) {
-            if (method.getName().equals("getHigherLayerIf")) {
-                getHigherLayerIfMethod = method;
-                break;
-            }
-        }
-        assertNotNull("getHigherLayerIfMethod is null", getHigherLayerIfMethod);
-        assertNotNull("getHigherLayerIfMethod.getReturnType() is null",
-                getHigherLayerIfMethod.getReturnType());
-        assertFalse("getHigherLayerIfMethod.getReturnType() should not be Void",
-                getHigherLayerIfMethod.getReturnType().equals("java.lang.Void"));
-        assertTrue("getHigherLayerIfMethod.getReturnType().getName() must be List",
-                getHigherLayerIfMethod.getReturnType().getName().equals("List"));
-
-        // 'InterfaceKey'
-        assertNotNull("gtInterfaceKey is null", gtInterfaceKey);
-        final List<GeneratedProperty> properties = gtInterfaceKey.getProperties();
-        assertNotNull("properties is null", properties);
-        GeneratedProperty gtInterfaceId = null;
-        for (final GeneratedProperty property : properties) {
-            if (property.getName().equals("InterfaceId")) {
-                gtInterfaceId = property;
-                break;
-            }
-        }
-        assertNotNull("gtInterfaceId is null", gtInterfaceId);
-        assertNotNull("gtInterfaceId.getReturnType() is null", gtInterfaceId.getReturnType());
-        assertFalse("gtInterfaceId.getReturnType() should not be Void",
-                gtInterfaceId.getReturnType().equals("java.lang.Void"));
-        assertTrue("gtInterfaceId.getReturnType().getName() must be String",
-                gtInterfaceId.getReturnType().getName().equals("String"));
-
-        // 'Tunnel'
-        assertNotNull("gtTunnel is null", gtTunnel);
-        final List<MethodSignature> tunnelMethods = gtTunnel.getMethodDefinitions();
-        assertNotNull("tunnelMethods is null", tunnelMethods);
-        MethodSignature getTunnelKeyMethod = null;
-        for (MethodSignature method : tunnelMethods) {
-            if (method.getName().equals("getTunnelKey")) {
-                getTunnelKeyMethod = method;
-                break;
-            }
-        }
-        assertNotNull("getTunnelKeyMethod is null", getTunnelKeyMethod);
-        assertNotNull("getTunnelKeyMethod.getReturnType()",
-                getTunnelKeyMethod.getReturnType());
-        assertFalse("getTunnelKeyMethod.getReturnType() should not be Void",
-                getTunnelKeyMethod.getReturnType().equals("java.lang.Void"));
-        assertTrue("getTunnelKeyMethod.getReturnType().getName() must be TunnelKey",
-                getTunnelKeyMethod.getReturnType().getName().equals("TunnelKey"));
-
-        // 'TunnelKey'
-        assertNotNull("gtTunnelKey is null", gtTunnelKey);
-        final List<GeneratedProperty> tunnelKeyProperties = gtTunnelKey.getProperties();
-        assertNotNull("tunnelKeyProperties is null", tunnelKeyProperties);
-
-        GeneratedProperty gtTunnelId = null;
-        for (final GeneratedProperty property : tunnelKeyProperties) {
-            if (property.getName().equals("TunnelId")) {
-                gtTunnelId = property;
-            }
-        }
-        assertNotNull("gtTunnelId is null", gtTunnelId);
-        assertNotNull("gtTunnelId.getReturnType() is null",
-                gtTunnelId.getReturnType());
-        assertFalse("gtTunnelId.getReturnType() should not be Void",
-                gtTunnelId.getReturnType().equals("java.lang.Void"));
-        assertTrue("gtTunnelId.getReturnType().getName() must be Integer",
-                gtTunnelId.getReturnType().getName().equals("Integer"));
-
-        // 'NetworkLink2'
-        assertNotNull("gtNetworkLink2 is null", gtNetworkLink2);
-
-        final List<MethodSignature> networkLink2Methods = gtNetworkLink2.getMethodDefinitions();
-        assertNotNull("networkLink2Methods is null", networkLink2Methods);
-
-//        FIXME: in some cases getIfcMethod is null which causes test fail. fix ASAP
-//      MethodSignature getIfcMethod = null;
-//      for (MethodSignature method : networkLink2Methods) {
-//          if (method.getName().equals("getInterface")) {
-//              getIfcMethod = method;
-//              break;
-//          }
-//      }
-//
-//      assertNotNull("getIfcMethod is null", getIfcMethod);
-//      assertNotNull("getIfcMethod.getReturnType() is null", getIfcMethod.getReturnType());
-//      assertFalse("getIfcMethod.getReturnType() should not be Void", getIfcMethod.getReturnType().equals("java.lang.Void"));
-//      assertTrue("getIfcMethod.getReturnType().getName() must be String", getIfcMethod.getReturnType().getName().equals("String"));
-    }
-
-    @Test
-    public void augmentedNetworkLinkTest() {
-
-    }
-
-    @Test
-    public void augmentedTopologyTunnelsTest() {
-
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/BaseTypeProvider.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/BaseTypeProvider.java
deleted file mode 100644 (file)
index 1ea5d16..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.generator.impl;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-
-import org.junit.Test;
-import org.opendaylight.controller.binding.generator.util.Types;
-import org.opendaylight.controller.sal.binding.generator.spi.TypeProvider;
-import org.opendaylight.controller.sal.binding.model.api.ConcreteType;
-import org.opendaylight.controller.sal.binding.model.api.ParameterizedType;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.controller.sal.binding.yang.types.BaseYangTypes;
-
-public class BaseTypeProvider {
-
-    @Test
-    public void test() {
-        TypeProvider provider = BaseYangTypes.BASE_YANG_TYPES_PROVIDER;
-
-        Type stringType = provider.javaTypeForYangType("string");
-        assertEquals("java.lang", stringType.getPackageName());
-        assertEquals("String", stringType.getName());
-        assertTrue(stringType instanceof ConcreteType);
-        ParameterizedType stringBooleanMap = Types.mapTypeFor(
-                provider.javaTypeForYangType("string"),
-                provider.javaTypeForYangType("boolean"));
-        assertTrue(!(stringBooleanMap instanceof ConcreteType));
-        assertEquals("java.util", stringBooleanMap.getPackageName());
-        assertEquals("Map", stringBooleanMap.getName());
-        assertEquals(2, stringBooleanMap.getActualTypeArguments().length);
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/BinaryTypeTest.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/BinaryTypeTest.java
deleted file mode 100644 (file)
index e8093e3..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
-* Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
-*
-* This program and the accompanying materials are made available under the
-* 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.controller.sal.binding.generator.impl;
-
-import static org.junit.Assert.*;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.opendaylight.controller.sal.binding.generator.api.BindingGenerator;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang.model.parser.api.YangModelParser;
-import org.opendaylight.yangtools.yang.parser.impl.YangParserImpl;
-
-public class BinaryTypeTest {
-    private final static List<File> yangModels = new ArrayList<>();
-    private final static String yangModelsFolder = AugmentedTypeTest.class
-            .getResource("/binary-type-test-models").getPath();
-
-    @BeforeClass
-    public static void loadTestResources() {
-        final File augFolder = new File(yangModelsFolder);
-        for (final File fileEntry : augFolder.listFiles()) {
-            if (fileEntry.isFile()) {
-                yangModels.add(fileEntry);
-            }
-        }
-    }
-
-    @Test
-    public void binaryTypeTest() {
-        final YangModelParser parser = new YangParserImpl();
-        final Set<Module> modules = parser.parseYangModels(yangModels);
-        final SchemaContext context = parser.resolveSchemaContext(modules);
-
-        assertNotNull("context is null", context);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        assertNotNull("genTypes is null", genTypes);
-        assertFalse("genTypes is empty", genTypes.isEmpty());
-
-        //TODO: implement test
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/BitAndUnionTOEnclosingTest.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/BitAndUnionTOEnclosingTest.java
deleted file mode 100644 (file)
index 1f35b70..0000000
+++ /dev/null
@@ -1,132 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.generator.impl;
-
-import static org.junit.Assert.*;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.opendaylight.controller.sal.binding.generator.api.BindingGenerator;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedProperty;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang.model.parser.api.YangModelParser;
-import org.opendaylight.yangtools.yang.parser.impl.YangParserImpl;
-
-public class BitAndUnionTOEnclosingTest {
-
-    private final static List<File> testModels = new ArrayList<File>();
-
-    @BeforeClass
-    public static void loadTestResources() {
-        final File listModelFile = new File(ExtendedTypedefTest.class.getResource("/bit_and_union_in_leaf.yang")
-                .getPath());
-        testModels.add(listModelFile);
-    }
-
-    @Test
-    public void bitAndUnionEnclosingTest() {
-        final YangModelParser parser = new YangParserImpl();
-        final Set<Module> modules = parser.parseYangModels(testModels);
-        final SchemaContext context = parser.resolveSchemaContext(modules);
-
-        assertNotNull(context);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        GeneratedType parentContainer = null;
-
-        for (Type type : genTypes) {
-            if ((type instanceof GeneratedType) && !(type instanceof GeneratedTransferObject)) {
-                GeneratedType genTO = (GeneratedType) type;
-                if (genTO.getName().equals("ParentContainer")) {
-                    parentContainer = genTO;
-                    break;
-                }
-            }
-        }
-
-        assertNotNull("Parent container object wasn't found.", parentContainer);
-
-        GeneratedTransferObject bitLeaf = null;
-        GeneratedTransferObject unionLeaf = null;
-        List<GeneratedType> enclosedTypes = parentContainer.getEnclosedTypes();
-        for (GeneratedType genType : enclosedTypes) {
-            if (genType instanceof GeneratedTransferObject) {
-                if (genType.getName().equals("BitLeaf")) {
-                    bitLeaf = (GeneratedTransferObject) genType;
-                } else if (genType.getName().equals("UnionLeaf")) {
-                    unionLeaf = (GeneratedTransferObject) genType;
-                }
-            }
-        }
-
-        assertNotNull("BitLeaf TO builder wasn't found.", bitLeaf);
-        assertNotNull("UnionLeaf TO builder wasn't found.", unionLeaf);
-
-        assertEquals("BitLeaf has incorrect package name.",
-                "org.opendaylight.yang.gen.v1.urn.bit.union.in.leaf.rev2013626.ParentContainer",
-                bitLeaf.getPackageName());
-        assertEquals("UnionLeaf has incorrect package name.",
-                "org.opendaylight.yang.gen.v1.urn.bit.union.in.leaf.rev2013626.ParentContainer",
-                bitLeaf.getPackageName());
-
-        List<GeneratedProperty> propertiesBitLeaf = bitLeaf.getProperties();
-        GeneratedProperty firstBitProperty = null;
-        GeneratedProperty secondBitProperty = null;
-        GeneratedProperty thirdBitProperty = null;
-        for (GeneratedProperty genProperty : propertiesBitLeaf) {
-            if (genProperty.getName().equals("firstBit")) {
-                firstBitProperty = genProperty;
-            } else if (genProperty.getName().equals("secondBit")) {
-                secondBitProperty = genProperty;
-            } else if (genProperty.getName().equals("thirdBit")) {
-                thirdBitProperty = genProperty;
-            }
-        }
-
-        assertNotNull("firstBit property wasn't found", firstBitProperty);
-        assertNotNull("secondBit property wasn't found", secondBitProperty);
-        assertNotNull("thirdBit property wasn't found", thirdBitProperty);
-
-        assertEquals("firstBit property has incorrect type", "Boolean", firstBitProperty.getReturnType().getName());
-        assertEquals("secondBit property has incorrect type", "Boolean", secondBitProperty.getReturnType().getName());
-        assertEquals("thirdBit property has incorrect type", "Boolean", thirdBitProperty.getReturnType().getName());
-
-        GeneratedProperty uint32Property = null;
-        GeneratedProperty stringProperty = null;
-        GeneratedProperty uint8Property = null;
-        List<GeneratedProperty> propertiesUnionLeaf = unionLeaf.getProperties();
-        for (GeneratedProperty genProperty : propertiesUnionLeaf) {
-            if (genProperty.getName().equals("int32")) {
-                uint32Property = genProperty;
-            } else if (genProperty.getName().equals("string")) {
-                stringProperty = genProperty;
-            } else if (genProperty.getName().equals("uint8")) {
-                uint8Property = genProperty;
-            }
-        }
-
-        assertNotNull("uint32 property wasn't found", uint32Property);
-        assertNotNull("string property wasn't found", stringProperty);
-        assertNotNull("uint8 property wasn't found", uint8Property);
-
-        assertEquals("uint32 property has incorrect type", "Integer", uint32Property.getReturnType().getName());
-        assertEquals("string property has incorrect type", "String", stringProperty.getReturnType().getName());
-        assertEquals("uint8 property has incorrect type", "Short", uint8Property.getReturnType().getName());
-
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/ChoiceCaseGenTypesTest.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/ChoiceCaseGenTypesTest.java
deleted file mode 100644 (file)
index e283c65..0000000
+++ /dev/null
@@ -1,191 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.generator.impl;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotNull;
-import static org.opendaylight.controller.sal.binding.generator.impl.SupportTestUtil.containsInterface;
-import static org.opendaylight.controller.sal.binding.generator.impl.SupportTestUtil.containsSignatures;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.opendaylight.controller.sal.binding.generator.api.BindingGenerator;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang.model.parser.api.YangModelParser;
-import org.opendaylight.yangtools.yang.parser.impl.YangParserImpl;
-
-public class ChoiceCaseGenTypesTest {
-
-    private final static List<File> yangModels = new ArrayList<>();
-    private final static String yangModelsFolder = AugmentedTypeTest.class.getResource("/choice-case-type-test-models")
-            .getPath();
-
-    @BeforeClass
-    public static void loadTestResources() {
-        final File augFolder = new File(yangModelsFolder);
-        for (final File fileEntry : augFolder.listFiles()) {
-            if (fileEntry.isFile()) {
-                yangModels.add(fileEntry);
-            }
-        }
-    }
-
-    private static GeneratedType checkGeneratedType(List<Type> genTypes, String genTypeName, String packageName,
-            int occurences) {
-        GeneratedType searchedGenType = null;
-        int searchedGenTypeCounter = 0;
-        for (Type type : genTypes) {
-            if (type instanceof GeneratedType && !(type instanceof GeneratedTransferObject)) {
-                GeneratedType genType = (GeneratedType) type;
-                if (genType.getName().equals(genTypeName) && genType.getPackageName().equals(packageName)) {
-                    searchedGenType = genType;
-                    searchedGenTypeCounter++;
-                }
-            }
-        }
-        assertNotNull("Generated type " + genTypeName + " wasn't found", searchedGenType);
-        assertEquals(genTypeName + " generated type has incorrect number of occurences.", occurences,
-                searchedGenTypeCounter);
-        return searchedGenType;
-
-    }
-
-    private static GeneratedType checkGeneratedType(List<Type> genTypes, String genTypeName, String packageName) {
-        return checkGeneratedType(genTypes, genTypeName, packageName, 1);
-    }
-
-    @Test
-    public void choiceCaseResolvingTypeTest() {
-        final YangModelParser parser = new YangParserImpl();
-        final Set<Module> modules = parser.parseYangModels(yangModels);
-        final SchemaContext context = parser.resolveSchemaContext(modules);
-
-        assertNotNull("context is null", context);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        assertNotNull("genTypes is null", genTypes);
-        assertFalse("genTypes is empty", genTypes.isEmpty());
-
-        // test for file choice-monitoring
-        String pcgPref = "org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.choice.monitoring.rev201371.netconf.state.datastores.datastore.locks";
-        GeneratedType genType = null;
-
-        checkGeneratedType(genTypes, "LockType", pcgPref); // choice
-
-        genType = checkGeneratedType(genTypes, "GlobalLock", pcgPref + ".lock.type"); // case
-        containsSignatures(genType, new MethodSignaturePattern("getGlobalLock", "GlobalLock"));
-        containsInterface("LockType", genType);
-
-        genType = checkGeneratedType(genTypes, "PartialLock", pcgPref + ".lock.type"); // case
-        containsSignatures(genType, new MethodSignaturePattern("getPartialLock", "List<PartialLock>"));
-        containsInterface("LockType", genType);
-
-        genType = checkGeneratedType(genTypes, "Fingerprint", pcgPref + ".lock.type"); // case
-        containsSignatures(genType, new MethodSignaturePattern("getAlgorithmAndHash", "AlgorithmAndHash"));
-        containsInterface("LockType", genType);
-
-        genType = checkGeneratedType(genTypes, "AlgorithmAndHash", pcgPref + ".lock.type.fingerprint"); // choice
-
-        genType = checkGeneratedType(genTypes, "Md5", pcgPref + ".lock.type.fingerprint.algorithm.and.hash"); // case
-        containsSignatures(genType, new MethodSignaturePattern("getMd5", "TlsFingerprintType"));
-        containsInterface("AlgorithmAndHash", genType);
-
-        genType = checkGeneratedType(genTypes, "Sha1", pcgPref + ".lock.type.fingerprint.algorithm.and.hash"); // case
-        containsSignatures(genType, new MethodSignaturePattern("getSha1", "TlsFingerprintType"));
-        containsInterface("AlgorithmAndHash", genType);
-
-        genType = checkGeneratedType(genTypes, "Sha224", pcgPref + ".lock.type.fingerprint.algorithm.and.hash"); // case
-        containsSignatures(genType, new MethodSignaturePattern("getSha224", "TlsFingerprintType"));
-        containsInterface("AlgorithmAndHash", genType);
-
-        genType = checkGeneratedType(genTypes, "Sha256", pcgPref + ".lock.type.fingerprint.algorithm.and.hash"); // case
-        containsSignatures(genType, new MethodSignaturePattern("getSha256", "TlsFingerprintType"));
-        containsInterface("AlgorithmAndHash", genType);
-
-        genType = checkGeneratedType(genTypes, "Sha384", pcgPref + ".lock.type.fingerprint.algorithm.and.hash"); // case
-        containsSignatures(genType, new MethodSignaturePattern("getSha384", "TlsFingerprintType"));
-        containsInterface("AlgorithmAndHash", genType);
-
-        genType = checkGeneratedType(genTypes, "Sha512", pcgPref + ".lock.type.fingerprint.algorithm.and.hash"); // case
-        containsSignatures(genType, new MethodSignaturePattern("getSha512", "TlsFingerprintType"));
-        containsInterface("AlgorithmAndHash", genType);
-
-        // test for file augment-monitoring
-        // augment
-        // "/nm:netconf-state/nm:datastores/nm:datastore/nm:locks/nm:lock-type"
-        pcgPref = "org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.augment.monitoring.rev201371";
-        genType = null;
-
-        genType = checkGeneratedType(genTypes, "AutonomousLock", pcgPref
-                + ".netconf.state.datastores.datastore.locks.lock.type"); // choice
-        containsSignatures(genType, new MethodSignaturePattern("getAutonomousDef", "AutonomousDef"));
-        containsInterface("LockType", genType);
-
-        genType = checkGeneratedType(genTypes, "AnonymousLock", pcgPref
-                + ".netconf.state.datastores.datastore.locks.lock.type"); // choice
-        containsSignatures(genType, new MethodSignaturePattern("getLockTime", "Long"));
-        containsInterface("LockType", genType);
-
-        genType = checkGeneratedType(genTypes, "LeafAugCase", pcgPref
-                + ".netconf.state.datastores.datastore.locks.lock.type"); // choice
-        containsSignatures(genType, new MethodSignaturePattern("getLeafAugCase", "String"));
-        containsInterface("LockType", genType);
-
-        // augment
-        // "/nm:netconf-state/nm:datastores/nm:datastore/nm:locks/nm:lock-type/nm:partial-lock"
-        // {
-        genType = checkGeneratedType(genTypes, "PartialLock1", pcgPref); // case
-        containsSignatures(genType, new MethodSignaturePattern("getAugCaseByChoice", "AugCaseByChoice"));
-        containsInterface("Augmentation<PartialLock>", genType);
-
-        genType = checkGeneratedType(genTypes, "AugCaseByChoice", pcgPref
-                + ".netconf.state.datastores.datastore.locks.lock.type.partial.lock"); // choice
-
-        genType = checkGeneratedType(genTypes, "Foo", pcgPref
-                + ".netconf.state.datastores.datastore.locks.lock.type.partial.lock.aug._case.by.choice"); // case
-        containsSignatures(genType, new MethodSignaturePattern("getFoo", "String"));
-        containsInterface("AugCaseByChoice", genType);
-
-        genType = checkGeneratedType(genTypes, "Bar", pcgPref
-                + ".netconf.state.datastores.datastore.locks.lock.type.partial.lock.aug._case.by.choice"); // case
-        containsSignatures(genType, new MethodSignaturePattern("getBar", "Boolean"));
-        containsInterface("AugCaseByChoice", genType);
-
-        // augment "/nm:netconf-state/nm:datastores/nm:datastore" {
-        genType = checkGeneratedType(genTypes, "Datastore1", pcgPref);
-        containsSignatures(genType, new MethodSignaturePattern("getStorageFormat", "StorageFormat"));
-        containsInterface("Augmentation<Datastore>", genType);
-
-        genType = checkGeneratedType(genTypes, "StorageFormat", pcgPref + ".netconf.state.datastores.datastore"); // choice
-
-        genType = checkGeneratedType(genTypes, "UnknownFiles", pcgPref
-                + ".netconf.state.datastores.datastore.storage.format"); // case
-        containsSignatures(genType, new MethodSignaturePattern("getFiles", "List<Files>"));
-        containsInterface("StorageFormat", genType);
-
-        genType = checkGeneratedType(genTypes, "Xml", pcgPref + ".netconf.state.datastores.datastore.storage.format"); // case
-        containsSignatures(genType, new MethodSignaturePattern("getXmlDef", "XmlDef"));
-        containsInterface("StorageFormat", genType);
-
-        genType = checkGeneratedType(genTypes, "Yang", pcgPref + ".netconf.state.datastores.datastore.storage.format"); // case
-        containsSignatures(genType, new MethodSignaturePattern("getYangFileName", "String"));
-        containsInterface("StorageFormat", genType);
-
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/ControllerTest.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/ControllerTest.java
deleted file mode 100644 (file)
index 8731d7d..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.generator.impl;
-
-
-import static org.junit.Assert.*;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.opendaylight.controller.sal.binding.generator.api.BindingGenerator;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang.model.parser.api.YangModelParser;
-import org.opendaylight.yangtools.yang.parser.impl.YangParserImpl;
-
-public class ControllerTest {
-
-    private final static List<File> controllerModels = new ArrayList<>();
-    private final static String controllerModelsFolderPath = ControllerTest.class
-            .getResource("/controller-models").getPath();
-
-    @BeforeClass
-    public static void loadTestResources() {
-        final File ctrlFolder = new File(controllerModelsFolderPath);
-
-        for (final File fileEntry : ctrlFolder.listFiles()) {
-            if (fileEntry.isFile()) {
-                controllerModels.add(fileEntry);
-            }
-        }
-    }
-
-    @Test
-    public void controllerAugmentationTest() {
-        final YangModelParser parser = new YangParserImpl();
-        final Set<Module> modules = parser.parseYangModels(controllerModels);
-        final SchemaContext context = parser.resolveSchemaContext(modules);
-
-        assertNotNull(context);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        assertNotNull(genTypes);
-        assertTrue(!genTypes.isEmpty());
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/DefinedTypesProviderTest.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/DefinedTypesProviderTest.java
deleted file mode 100644 (file)
index 19972c9..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.generator.impl;
-
-public class DefinedTypesProviderTest {
-
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/ExtendedTypedefTest.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/ExtendedTypedefTest.java
deleted file mode 100644 (file)
index f1bcdc5..0000000
+++ /dev/null
@@ -1,130 +0,0 @@
-package org.opendaylight.controller.sal.binding.generator.impl;
-
-import static org.junit.Assert.*;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.opendaylight.controller.sal.binding.generator.api.BindingGenerator;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedProperty;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.controller.sal.binding.yang.types.BaseYangTypes;
-import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang.model.parser.api.YangModelParser;
-import org.opendaylight.yangtools.yang.parser.impl.YangParserImpl;
-
-public class ExtendedTypedefTest {
-
-    private final static List<File> testModels = new ArrayList<File>();
-
-    @BeforeClass
-    public static void loadTestResources() {
-        final File listModelFile = new File(ExtendedTypedefTest.class.getResource("/typedef_of_typedef.yang").getPath());
-        testModels.add(listModelFile);
-    }
-
-    @Test
-    public void constantGenerationTest() {
-        final YangModelParser parser = new YangParserImpl();
-        final Set<Module> modules = parser.parseYangModels(testModels);
-        final SchemaContext context = parser.resolveSchemaContext(modules);
-
-        assertNotNull(context);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        GeneratedTransferObject simpleTypedef4 = null;
-        GeneratedTransferObject extendedTypedefUnion = null;
-        GeneratedTransferObject unionTypedef = null;
-        for (final Type type : genTypes) {
-            if (type instanceof GeneratedTransferObject) {
-                if (type.getName().equals("SimpleTypedef4")) {
-                    simpleTypedef4 = (GeneratedTransferObject) type;
-                } else if (type.getName().equals("ExtendedTypedefUnion")) {
-                    extendedTypedefUnion = (GeneratedTransferObject) type;
-                } else if (type.getName().equals("UnionTypedef")) {
-                    unionTypedef = (GeneratedTransferObject) type;
-                }
-            }
-        }
-
-        // simple-typedef4
-        assertNotNull("SimpleTypedef4 not found", simpleTypedef4);
-        assertNotNull("ExtendedTypedefUnion not found", extendedTypedefUnion);
-        assertNotNull("UnionTypedef", unionTypedef);
-
-        List<GeneratedProperty> properties = simpleTypedef4.getProperties();
-        assertTrue("SimpleTypedef4 shouldn't have properties.", properties.isEmpty());
-
-        GeneratedTransferObject extendTO = simpleTypedef4.getExtends();
-        assertNotNull("SimpleTypedef4 should have extend.", extendTO);
-        assertEquals("Incorrect extension for SimpleTypedef4.", "SimpleTypedef3", extendTO.getName());
-        properties = extendTO.getProperties();
-        assertTrue("SimpleTypedef3 shouldn't have properties.", properties.isEmpty());
-
-        extendTO = extendTO.getExtends();
-        assertNotNull("SimpleTypedef3 should have extend.", extendTO);
-        assertEquals("Incorrect extension for SimpleTypedef3.", "SimpleTypedef2", extendTO.getName());
-        properties = extendTO.getProperties();
-        assertTrue("SimpleTypedef2 shouldn't have properties.", properties.isEmpty());
-
-        extendTO = extendTO.getExtends();
-        assertNotNull("SimpleTypedef2 should have extend.", extendTO);
-        assertEquals("SimpleTypedef2 should be extended with SimpleTypedef1.", "SimpleTypedef1", extendTO.getName());
-        properties = extendTO.getProperties();
-        assertEquals("Incorrect number of properties in class SimpleTypedef1.", 1, properties.size());
-
-        assertEquals("Incorrect property's name", "simpleTypedef1", properties.get(0).getName());
-        assertEquals("Property's incorrect type", BaseYangTypes.UINT8_TYPE, properties.get(0).getReturnType());
-
-        extendTO = extendTO.getExtends();
-        assertNull("SimpleTypedef1 shouldn't have extend.", extendTO);
-
-        // extended-typedef-union
-        assertNotNull("ExtendedTypedefUnion object not found", extendedTypedefUnion);
-        properties = extendedTypedefUnion.getProperties();
-        assertTrue("ExtendedTypedefUnion shouldn't have any property", properties.isEmpty());
-
-        extendTO = extendedTypedefUnion.getExtends();
-        assertEquals("Incorrect extension fo ExtendedTypedefUnion.", "UnionTypedef", extendTO.getName());
-        assertNull("UnionTypedef shouldn't be extended", extendTO.getExtends());
-        assertEquals("Incorrect number of properties for UnionTypedef.", 4, extendTO.getProperties().size());
-
-        GeneratedProperty simpleTypedef4Property = null;
-        GeneratedProperty simpleTypedef1Property = null;
-        GeneratedProperty byteTypeProperty = null;
-        GeneratedProperty typedefEnumFruitProperty = null;
-        for (GeneratedProperty genProperty : extendTO.getProperties()) {
-            if (genProperty.getName().equals("simpleTypedef1")) {
-                simpleTypedef1Property = genProperty;
-            } else if (genProperty.getName().equals("simpleTypedef4")) {
-                simpleTypedef4Property = genProperty;
-            } else if (genProperty.getName().equals("byteType")) {
-                byteTypeProperty = genProperty;
-            } else if (genProperty.getName().equals("typedefEnumFruit")) {
-                typedefEnumFruitProperty = genProperty;
-            }
-        }
-
-        assertNotNull("simpleTypedef4 property not found in UnionTypedef", simpleTypedef4Property);
-        assertNotNull("simpleTypedef1 property not found in UnionTypedef", simpleTypedef1Property);
-        assertNotNull("byteType property not found in UnionTypedef", byteTypeProperty);
-        assertNotNull("typedefEnumFruit property not found in UnionTypedef", typedefEnumFruitProperty);
-
-        assertEquals("Incorrect type for property simpleTypedef4.", "SimpleTypedef4", simpleTypedef4Property
-                .getReturnType().getName());
-        assertEquals("Incorrect type for property simpleTypedef1.", "SimpleTypedef1", simpleTypedef1Property
-                .getReturnType().getName());
-        assertEquals("Incorrect type for property byteType.", "ByteType", byteTypeProperty
-                .getReturnType().getName());
-        assertEquals("Incorrect type for property typedefEnumFruit.", "TypedefEnumFruit", typedefEnumFruitProperty
-                .getReturnType().getName());
-    }
-
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/GenEnumResolvingTest.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/GenEnumResolvingTest.java
deleted file mode 100644 (file)
index 42b68c5..0000000
+++ /dev/null
@@ -1,211 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.generator.impl;
-
-import static org.junit.Assert.*;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-
-import org.junit.Test;
-import org.opendaylight.controller.binding.generator.util.ReferencedTypeImpl;
-import org.opendaylight.controller.sal.binding.generator.api.BindingGenerator;
-import org.opendaylight.controller.sal.binding.model.api.Enumeration;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType;
-import org.opendaylight.controller.sal.binding.model.api.MethodSignature;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang.model.parser.api.YangModelParser;
-import org.opendaylight.yangtools.yang.parser.impl.YangParserImpl;
-
-public class GenEnumResolvingTest {
-
-    private SchemaContext resolveSchemaContextFromFiles(
-            final String... yangFiles) {
-        final YangModelParser parser = new YangParserImpl();
-
-        final List<File> inputFiles = new ArrayList<File>();
-        for (int i = 0; i < yangFiles.length; ++i) {
-            inputFiles.add(new File(yangFiles[i]));
-        }
-
-        final Set<Module> modules = parser.parseYangModels(inputFiles);
-        return parser.resolveSchemaContext(modules);
-    }
-
-    @Test
-    public void testLeafEnumResolving() {
-        final String ietfInterfacesPath = getClass().getResource(
-                "/enum-test-models/ietf-interfaces@2012-11-15.yang").getPath();
-        final String ifTypePath = getClass().getResource(
-                "/enum-test-models/iana-if-type@2012-06-05.yang").getPath();
-        final String yangTypesPath = getClass().getResource(
-                "/enum-test-models/ietf-yang-types@2010-09-24.yang").getPath();
-
-        final SchemaContext context = resolveSchemaContextFromFiles(
-                ietfInterfacesPath, ifTypePath, yangTypesPath);
-        assertTrue(context != null);
-
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-        assertTrue(genTypes != null);
-
-        assertEquals("Expected count of all Generated Types from yang models " +
-                "is 22", 25, genTypes.size());
-
-        GeneratedType genInterface = null;
-        for (final Type type : genTypes) {
-            if (type instanceof GeneratedType) {
-                if (type.getName().equals("Interface")) {
-                    genInterface = (GeneratedType) type;
-                }
-            }
-        }
-        assertNotNull("Generated Type Interface is not present in list of " +
-                "Generated Types", genInterface);
-
-        Enumeration linkUpDownTrapEnable = null;
-        Enumeration operStatus = null;
-        final List<Enumeration> enums = genInterface.getEnumerations();
-        assertNotNull("Generated Type Interface cannot contain NULL reference" +
-                " to Enumeration types!", enums);
-        assertEquals("Generated Type Interface MUST contain 2 Enumeration " +
-                "Types", 2, enums.size());
-        for (final Enumeration e : enums) {
-            if (e.getName().equals("LinkUpDownTrapEnable")) {
-                linkUpDownTrapEnable = e;
-            } else if (e.getName().equals("OperStatus")) {
-                operStatus = e;
-            }
-        }
-
-        assertNotNull("Expected Enum LinkUpDownTrapEnable, but was NULL!",
-                linkUpDownTrapEnable);
-        assertNotNull("Expected Enum OperStatus, but was NULL!", operStatus);
-
-        assertNotNull("Enum LinkUpDownTrapEnable MUST contain Values definition " +
-                "not NULL reference!", linkUpDownTrapEnable.getValues());
-        assertNotNull("Enum OperStatus MUST contain Values definition not " +
-                "NULL reference!", operStatus.getValues());
-        assertEquals("Enum LinkUpDownTrapEnable MUST contain 2 values!", 2,
-                linkUpDownTrapEnable.getValues().size());
-        assertEquals("Enum OperStatus MUST contain 7 values!", 7,
-                operStatus.getValues().size());
-
-        final List<MethodSignature> methods = genInterface
-                .getMethodDefinitions();
-
-        assertNotNull("Generated Interface cannot contain NULL reference for " +
-                "Method Signature Definitions!", methods);
-
-        assertEquals("Expected count of method signature definitions is 14",
-                14, methods.size());
-        Enumeration ianaIfType = null;
-        for (final MethodSignature method : methods) {
-            if (method.getName().equals("getType")) {
-                if (method.getReturnType() instanceof Enumeration) {
-                    ianaIfType = (Enumeration)method.getReturnType();
-                }
-            }
-        }
-
-        assertNotNull("Method getType MUST return Enumeration Type, " +
-                "not NULL reference!", ianaIfType);
-        assertEquals("Enumeration getType MUST contain 272 values!", 272,
-                ianaIfType.getValues().size());
-    }
-
-    @Test
-    public void testTypedefEnumResolving() {
-        final String ianaIfTypePath = getClass().getResource(
-                "/leafref-test-models/iana-if-type@2012-06-05.yang").getPath();
-
-        final SchemaContext context = resolveSchemaContextFromFiles(ianaIfTypePath);
-        assertTrue(context != null);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-        assertTrue(genTypes != null);
-        assertEquals(3, genTypes.size());
-
-        final Type type = genTypes.get(1);
-        assertTrue(type instanceof Enumeration);
-
-        final Enumeration enumer = (Enumeration) type;
-        assertEquals("Enumeration type MUST contain 272 values!", 272,
-                enumer.getValues().size());
-    }
-
-    @Test
-    public void testLeafrefEnumResolving() {
-        final String ietfInterfacesPath = getClass().getResource(
-                "/enum-test-models/ietf-interfaces@2012-11-15.yang").getPath();
-        final String ifTypePath = getClass().getResource(
-                "/enum-test-models/iana-if-type@2012-06-05.yang").getPath();
-        final String yangTypesPath = getClass().getResource(
-                "/enum-test-models/ietf-yang-types@2010-09-24.yang").getPath();
-        final String topologyPath = getClass().getResource(
-                "/enum-test-models/abstract-topology@2013-02-08.yang")
-                .getPath();
-        final String inetTypesPath = getClass().getResource(
-                "/enum-test-models/ietf-inet-types@2010-09-24.yang")
-                .getPath();
-        final SchemaContext context = resolveSchemaContextFromFiles(
-                ietfInterfacesPath, ifTypePath, yangTypesPath, topologyPath,
-                inetTypesPath);
-
-        assertNotNull(context);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-        assertNotNull(genTypes);
-        assertTrue(!genTypes.isEmpty());
-
-        GeneratedType genInterface = null;
-        for (final Type type : genTypes) {
-            if (type instanceof GeneratedType) {
-                if (type.getPackageName().equals("org.opendaylight.yang.gen.v1.urn.model._abstract.topology.rev201328.topology.interfaces")
-                        && type.getName().equals("Interface")) {
-                    genInterface = (GeneratedType) type;
-                }
-            }
-        }
-        assertNotNull("Generated Type Interface is not present in list of " +
-                "Generated Types", genInterface);
-
-        Type linkUpDownTrapEnable = null;
-        Type operStatus = null;
-        final List<MethodSignature> methods = genInterface.getMethodDefinitions();
-        assertNotNull("Generated Type Interface cannot contain NULL reference" +
-                " to Enumeration types!", methods);
-        assertEquals("Generated Type Interface MUST contain 4 Methods ",
-                4, methods.size());
-        for (final MethodSignature method : methods) {
-            if (method.getName().equals("getLinkUpDownTrapEnable")) {
-                linkUpDownTrapEnable = method.getReturnType();
-            } else if (method.getName().equals("getOperStatus")) {
-                operStatus = method.getReturnType();
-            }
-        }
-
-        assertNotNull("Expected Referenced Enum LinkUpDownTrapEnable, but was NULL!",
-                linkUpDownTrapEnable);
-        assertTrue("Expected LinkUpDownTrapEnable of type ReferencedTypeImpl",
-                linkUpDownTrapEnable instanceof ReferencedTypeImpl);
-        assertEquals(linkUpDownTrapEnable.getPackageName(),
-                "org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev20121115.interfaces.Interface");
-
-        assertNotNull("Expected Referenced Enum OperStatus, but was NULL!",
-                operStatus);
-        assertTrue("Expected OperStatus of type ReferencedTypeImpl",
-                operStatus instanceof  ReferencedTypeImpl);
-        assertEquals(operStatus.getPackageName(),
-                "org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev20121115.interfaces.Interface");
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/GenTypesSubSetTest.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/GenTypesSubSetTest.java
deleted file mode 100644 (file)
index 1ac5413..0000000
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.generator.impl;
-
-import static org.junit.Assert.*;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.opendaylight.controller.sal.binding.generator.api.BindingGenerator;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang.model.parser.api.YangModelParser;
-import org.opendaylight.yangtools.yang.parser.impl.YangParserImpl;
-
-public class GenTypesSubSetTest {
-
-    private final static List<File> yangModels = new ArrayList<>();
-    private final static String yangModelsFolder = AugmentedTypeTest.class
-            .getResource("/leafref-test-models").getPath();
-
-    @BeforeClass
-    public static void loadTestResources() {
-        final File augFolder = new File(yangModelsFolder);
-
-        for (final File fileEntry : augFolder.listFiles()) {
-            if (fileEntry.isFile()) {
-                yangModels.add(fileEntry);
-            }
-        }
-    }
-
-    @Test
-    public void genTypesFromSubsetOfTwoModulesTest() {
-        final YangModelParser parser = new YangParserImpl();
-        final Set<Module> modules = parser.parseYangModels(yangModels);
-        final SchemaContext context = parser.resolveSchemaContext(modules);
-
-        final Set<Module> toGenModules = new HashSet<>();
-        for (final Module module : modules) {
-            if (module.getName().equals("abstract-topology")) {
-                toGenModules.add(module);
-            } else if (module.getName().equals("ietf-interfaces")) {
-                toGenModules.add(module);
-            }
-        }
-
-        assertEquals("Set of to Generate Modules must contain 2 modules", 2,
-                toGenModules.size());
-        assertNotNull("Schema Context is null", context);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context, toGenModules);
-        assertNotNull("genTypes is null", genTypes);
-        assertFalse("genTypes is empty", genTypes.isEmpty());
-        assertEquals("Expected Generated Types from provided sub set of " +
-                "modules should be 23!", 25,
-                genTypes.size());
-    }
-
-    @Test
-    public void genTypesFromSubsetOfThreeModulesTest() {
-        final YangModelParser parser = new YangParserImpl();
-        final Set<Module> modules = parser.parseYangModels(yangModels);
-        final SchemaContext context = parser.resolveSchemaContext(modules);
-
-        final Set<Module> toGenModules = new HashSet<>();
-        for (final Module module : modules) {
-            if (module.getName().equals("abstract-topology")) {
-                toGenModules.add(module);
-            } else if (module.getName().equals("ietf-interfaces")) {
-                toGenModules.add(module);
-            } else if (module.getName().equals("iana-if-type")) {
-                toGenModules.add(module);
-            }
-        }
-
-        assertEquals("Set of to Generate Modules must contain 3 modules", 3,
-                toGenModules.size());
-
-        assertNotNull("Schema Context is null", context);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context, toGenModules);
-        assertNotNull("genTypes is null", genTypes);
-        assertFalse("genTypes is empty", genTypes.isEmpty());
-        assertEquals("Expected Generated Types from provided sub set of "  +
-                "modules should be 25!", 28, genTypes.size());
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/GeneratedTypesBitsTest.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/GeneratedTypesBitsTest.java
deleted file mode 100644 (file)
index 009fc9f..0000000
+++ /dev/null
@@ -1,139 +0,0 @@
-package org.opendaylight.controller.sal.binding.generator.impl;
-
-import static org.junit.Assert.*;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-
-import org.junit.Test;
-import org.opendaylight.controller.sal.binding.generator.api.BindingGenerator;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedProperty;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType;
-import org.opendaylight.controller.sal.binding.model.api.MethodSignature;
-import org.opendaylight.controller.sal.binding.model.api.MethodSignature.Parameter;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang.model.parser.api.YangModelParser;
-import org.opendaylight.yangtools.yang.parser.impl.YangParserImpl;
-
-public class GeneratedTypesBitsTest {
-
-    private SchemaContext resolveSchemaContextFromFiles(final String... yangFiles) {
-        final YangModelParser parser = new YangParserImpl();
-
-        final List<File> inputFiles = new ArrayList<File>();
-        for (int i = 0; i < yangFiles.length; ++i) {
-            inputFiles.add(new File(yangFiles[i]));
-        }
-
-        final Set<Module> modules = parser.parseYangModels(inputFiles);
-        return parser.resolveSchemaContext(modules);
-    }
-
-    @Test
-    public void testGeneretedTypesBitsTest() {
-        final String yangTypesPath = getClass().getResource("/simple-bits-demo.yang").getPath();
-
-        final SchemaContext context = resolveSchemaContextFromFiles(yangTypesPath);
-        assertTrue(context != null);
-
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-        assertTrue(genTypes != null);
-
-        List<MethodSignature> methodSignaturesList = null;
-
-        boolean leafParentFound = false;
-
-        boolean byteTypeFound = false;
-        int classPropertiesNumb = 0;
-        int toStringPropertiesNum = 0;
-        int equalPropertiesNum = 0;
-        int hashPropertiesNum = 0;
-
-        String nameReturnParamType = "";
-        String nameMethodeParamType = "";
-        boolean getByteLeafMethodFound = false;
-        boolean setByteLeafMethodFound = false;
-        int setByteLeafMethodParamNum = 0;
-
-        for (final Type type : genTypes) {
-            if (type instanceof GeneratedTransferObject) { // searching for
-                                                           // ByteType
-                final GeneratedTransferObject genTO = (GeneratedTransferObject) type;
-                if (genTO.getName().equals("ByteType")) {
-                    byteTypeFound = true;
-                    List<GeneratedProperty> genProperties = genTO.getProperties();
-                    classPropertiesNumb = genProperties.size();
-
-                    genProperties = null;
-                    genProperties = genTO.getToStringIdentifiers();
-                    toStringPropertiesNum = genProperties.size();
-
-                    genProperties = null;
-                    genProperties = genTO.getEqualsIdentifiers();
-                    equalPropertiesNum = genProperties.size();
-
-                    genProperties = null;
-                    genProperties = genTO.getHashCodeIdentifiers();
-                    hashPropertiesNum = genProperties.size();
-
-                }
-            } else if (type instanceof GeneratedType) { // searching for
-                                                        // interface
-                                                        // LeafParameterContainer
-                final GeneratedType genType = (GeneratedType) type;
-                if (genType.getName().equals("LeafParentContainer")) {
-                    leafParentFound = true;
-                    // check of methods
-                    methodSignaturesList = genType.getMethodDefinitions();
-                    if (methodSignaturesList != null) {
-                        for (MethodSignature methodSignature : methodSignaturesList) { // loop
-                                                                                       // through
-                                                                                       // all
-                                                                                       // methods
-                            if (methodSignature.getName().equals("getByteLeaf")) {
-                                getByteLeafMethodFound = true;
-
-                                nameReturnParamType = methodSignature.getReturnType().getName();
-                            } else if (methodSignature.getName().equals("setByteLeaf")) {
-                                setByteLeafMethodFound = true;
-
-                                List<Parameter> parameters = methodSignature.getParameters();
-                                setByteLeafMethodParamNum = parameters.size();
-                                for (Parameter parameter : parameters) {
-                                    nameMethodeParamType = parameter.getType().getName();
-                                }
-
-                            }
-
-                        }
-                    }
-                }
-            }
-
-        }
-
-        assertTrue(byteTypeFound);
-
-        assertEquals(classPropertiesNumb,8);
-
-        assertEquals(toStringPropertiesNum,8);
-        assertEquals(equalPropertiesNum,8);
-        assertEquals(hashPropertiesNum,8);
-        assertTrue(leafParentFound);
-
-        assertNotNull(methodSignaturesList);
-
-        assertTrue(getByteLeafMethodFound);
-        assertEquals(nameReturnParamType,"ByteType");
-
-        assertFalse(setByteLeafMethodFound);
-        assertEquals(0, setByteLeafMethodParamNum);
-    }
-
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/GeneratedTypesStringTest.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/GeneratedTypesStringTest.java
deleted file mode 100644 (file)
index 361fd56..0000000
+++ /dev/null
@@ -1,114 +0,0 @@
-package org.opendaylight.controller.sal.binding.generator.impl;
-
-import static org.junit.Assert.*;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.opendaylight.controller.sal.binding.generator.api.BindingGenerator;
-import org.opendaylight.controller.sal.binding.model.api.Constant;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;
-import org.opendaylight.controller.sal.binding.model.api.ParameterizedType;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang.model.parser.api.YangModelParser;
-import org.opendaylight.yangtools.yang.parser.impl.YangParserImpl;
-
-public class GeneratedTypesStringTest {
-
-    private final static List<File> testModels = new ArrayList<File>();
-
-    @BeforeClass
-    public static void loadTestResources() {
-        final File listModelFile = new File(GeneratedTypesStringTest.class.getResource("/simple-string-demo.yang")
-                .getPath());
-        testModels.add(listModelFile);
-    }
-
-    @Test
-    public void constantGenerationTest() {
-        final YangModelParser parser = new YangParserImpl();
-        final Set<Module> modules = parser.parseYangModels(testModels);
-        final SchemaContext context = parser.resolveSchemaContext(modules);
-
-        assertNotNull(context);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        boolean typedefStringFound = false;
-        boolean constantRegExListFound = false;
-        boolean constantRegExListTypeGeneric = false;
-        boolean constantRegExListTypeContainer = false;
-        boolean noStringInReqExListFound = false;
-        boolean constantRegExListValueOK = false;
-        boolean constantRegExListTypeOneGeneric = false;
-        for (final Type type : genTypes) {
-            if (type instanceof GeneratedTransferObject) {
-                final GeneratedTransferObject genTO = (GeneratedTransferObject) type;
-
-                if (genTO.getName().equals("TypedefString")) {
-                    typedefStringFound = true;
-
-                    List<Constant> constants = genTO.getConstantDefinitions();
-                    for (Constant con : constants) {
-                        if (con.getName().equals("PATTERN_CONSTANTS")) {
-                            constantRegExListFound = true;
-                        } else
-                            break;
-                        ParameterizedType pType;
-                        if (con.getType() instanceof ParameterizedType) {
-                            pType = (ParameterizedType) con.getType();
-                        } else
-                            break;
-
-                        Type[] types;
-                        if (pType.getName().equals("List")) {
-                            constantRegExListTypeContainer = true;
-                            types = pType.getActualTypeArguments();
-                        } else
-                            break;
-
-                        if (types.length == 1) {
-                            constantRegExListTypeOneGeneric = true;
-                        } else
-                            break;
-
-                        if (types[0].getName().equals("String")) {
-                            constantRegExListTypeGeneric = true;
-                        } else
-                            break;
-
-                        if (con.getValue() instanceof List) {
-                            constantRegExListValueOK = true;
-                        } else
-                            break;
-
-                        for (Object obj : (List<?>) con.getValue()) {
-                            if (!(obj instanceof String)) {
-                                noStringInReqExListFound = true;
-                                break;
-                            }
-                        }
-
-                    }
-                }
-            }
-
-        }
-
-        assertTrue("Typedef >>TypedefString<< wasn't found", typedefStringFound);
-        assertTrue("Constant PATTERN_CONSTANTS is missing in TO", constantRegExListFound);
-        assertTrue("Constant PATTERN_CONSTANTS doesn't have correct container type", constantRegExListTypeContainer);
-        assertTrue("Constant PATTERN_CONSTANTS has more than one generic type", constantRegExListTypeOneGeneric);
-        assertTrue("Constant PATTERN_CONSTANTS doesn't have correct generic type", constantRegExListTypeGeneric);
-        assertTrue("Constant PATTERN_CONSTANTS doesn't contain List object", constantRegExListValueOK);
-        assertTrue("In list found other type than String", !noStringInReqExListFound);
-
-    }
-
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/GeneratedTypesTest.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/GeneratedTypesTest.java
deleted file mode 100644 (file)
index 88c4ae1..0000000
+++ /dev/null
@@ -1,613 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.generator.impl;
-
-import static org.junit.Assert.*;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-
-import org.junit.Test;
-import org.opendaylight.controller.sal.binding.generator.api.BindingGenerator;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedProperty;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType;
-import org.opendaylight.controller.sal.binding.model.api.MethodSignature;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang.model.parser.api.YangModelParser;
-import org.opendaylight.yangtools.yang.parser.impl.YangParserImpl;
-
-public class GeneratedTypesTest {
-
-    private SchemaContext resolveSchemaContextFromFiles(final String... yangFiles) {
-        final YangModelParser parser = new YangParserImpl();
-
-        final List<File> inputFiles = new ArrayList<File>();
-        for (int i = 0; i < yangFiles.length; ++i) {
-            inputFiles.add(new File(yangFiles[i]));
-        }
-
-        final Set<Module> modules = parser.parseYangModels(inputFiles);
-        return parser.resolveSchemaContext(modules);
-    }
-
-    @Test
-    public void testMultipleModulesResolving() {
-        final String topologyPath = getClass().getResource("/abstract-topology.yang").getPath();
-        final String typesPath = getClass().getResource("/ietf-inet-types@2010-09-24.yang").getPath();
-        final SchemaContext context = resolveSchemaContextFromFiles(topologyPath, typesPath);
-        assertNotNull(context);
-
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        assertNotNull(genTypes);
-        assertEquals(29, genTypes.size());
-    }
-
-    @Test
-    public void testLeafrefResolving() {
-        final String topologyPath = getClass().getResource("/leafref-test-models/abstract-topology@2013-02-08.yang")
-                .getPath();
-        final String interfacesPath = getClass().getResource("/leafref-test-models/ietf-interfaces@2012-11-15.yang")
-                .getPath();
-        // final String ifTypePath = getClass().getResource(
-        // "/leafref-test-models/iana-if-type@2012-06-05.yang").getPath();
-        final String inetTypesPath = getClass().getResource("/leafref-test-models/ietf-inet-types@2010-09-24.yang")
-                .getPath();
-        final String yangTypesPath = getClass().getResource("/leafref-test-models/ietf-yang-types@2010-09-24.yang")
-                .getPath();
-
-        assertNotNull(topologyPath);
-        assertNotNull(interfacesPath);
-        // assertTrue(ifTypePath != null);
-        assertNotNull(inetTypesPath);
-        assertNotNull(yangTypesPath);
-
-        // final SchemaContext context = resolveSchemaContextFromFiles(topologyPath, interfacesPath, ifTypePath,
-        // inetTypesPath, yangTypesPath);
-        final SchemaContext context = resolveSchemaContextFromFiles(topologyPath, interfacesPath, inetTypesPath,
-                yangTypesPath);
-        assertNotNull(context);
-        assertEquals(4, context.getModules().size());
-
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        assertEquals(57, genTypes.size());
-        assertNotNull(genTypes);
-
-        GeneratedTransferObject gtIfcKey = null;
-        GeneratedType gtIfc = null;
-        GeneratedType gtNetworkLink = null;
-        GeneratedType gtSource = null;
-        GeneratedType gtDest = null;
-        GeneratedType gtTunnel = null;
-        GeneratedTransferObject gtTunnelKey = null;
-        GeneratedType gtTopology = null;
-        for (final Type type : genTypes) {
-            String name = type.getName();
-            if ("InterfaceKey".equals(name)) {
-                gtIfcKey = (GeneratedTransferObject) type;
-            } else if ("Interface".equals(name)) {
-                gtIfc = (GeneratedType) type;
-            } else if ("NetworkLink".equals(name)) {
-                gtNetworkLink = (GeneratedType) type;
-            } else if ("SourceNode".equals(name)) {
-                gtSource = (GeneratedType) type;
-            } else if ("DestinationNode".equals(name)) {
-                gtDest = (GeneratedType) type;
-            } else if ("Tunnel".equals(name)) {
-                gtTunnel = (GeneratedType) type;
-            } else if ("TunnelKey".equals(name)) {
-                gtTunnelKey = (GeneratedTransferObject) type;
-            } else if ("Topology".equals(name)) {
-                gtTopology = (GeneratedType) type;
-            }
-        }
-
-        assertNotNull(gtIfcKey);
-        assertNotNull(gtIfc);
-        assertNotNull(gtNetworkLink);
-        assertNotNull(gtSource);
-        assertNotNull(gtDest);
-        assertNotNull(gtTunnel);
-        assertNotNull(gtTunnelKey);
-        assertNotNull(gtTopology);
-
-        // Topology
-        final List<MethodSignature> gtTopoMethods = gtTopology.getMethodDefinitions();
-        assertNotNull(gtTopoMethods);
-        MethodSignature condLeafref = null;
-        for (final MethodSignature method : gtTopoMethods) {
-            if (method.getName().equals("getCondLeafref")) {
-                condLeafref = method;
-            }
-        }
-        assertNotNull(condLeafref);
-        Type condLeafRT = condLeafref.getReturnType();
-        assertNotNull(condLeafRT);
-        assertEquals("java.lang.Object", condLeafRT.getFullyQualifiedName());
-
-        // InterfaceId
-        final List<GeneratedProperty> gtIfcKeyProps = gtIfcKey.getProperties();
-        assertNotNull(gtIfcKeyProps);
-        GeneratedProperty ifcIdProp = null;
-        for (final GeneratedProperty property : gtIfcKeyProps) {
-            if (property.getName().equals("InterfaceId")) {
-                ifcIdProp = property;
-            }
-        }
-        assertNotNull(ifcIdProp);
-        Type ifcIdPropType = ifcIdProp.getReturnType();
-        assertNotNull(ifcIdPropType);
-        assertEquals("java.lang.String", ifcIdPropType.getFullyQualifiedName());
-
-        // Interface
-        final List<MethodSignature> gtIfcMethods = gtIfc.getMethodDefinitions();
-        assertNotNull(gtIfcMethods);
-        MethodSignature getIfcKey = null;
-        MethodSignature getHigherLayerIf = null;
-        for (final MethodSignature method : gtIfcMethods) {
-            if (method.getName().equals("getInterfaceKey")) {
-                getIfcKey = method;
-            } else if (method.getName().equals("getHigherLayerIf")) {
-                getHigherLayerIf = method;
-            }
-        }
-        assertNotNull(getIfcKey);
-        Type getIfcKeyType = getIfcKey.getReturnType();
-        assertNotNull(getIfcKeyType);
-        assertNotSame("java.lang.Void", getIfcKeyType);
-        assertEquals("InterfaceKey", getIfcKeyType.getName());
-
-        assertNotNull(getHigherLayerIf);
-        Type getHigherLayerIfType = getHigherLayerIf.getReturnType();
-        assertNotNull(getHigherLayerIfType);
-        assertNotSame("java.lang.Void", getHigherLayerIfType);
-        assertEquals("List", getHigherLayerIfType.getName());
-
-        // NetworkLink
-        final List<MethodSignature> gtNetworkLinkMethods = gtNetworkLink.getMethodDefinitions();
-        assertNotNull(gtNetworkLinkMethods);
-        MethodSignature getIfc = null;
-        for (MethodSignature method : gtNetworkLinkMethods) {
-            if (method.getName().equals("getInterface")) {
-                getIfc = method;
-            }
-        }
-        assertNotNull(getIfc);
-        Type getIfcType = getIfc.getReturnType();
-        assertNotNull(getIfcType);
-        assertNotSame("java.lang.Void", getIfcType);
-        assertEquals("String", getIfcType.getName());
-
-        // SourceNode
-        final List<MethodSignature> gtSourceMethods = gtSource.getMethodDefinitions();
-        assertNotNull(gtSourceMethods);
-        MethodSignature getIdSource = null;
-        for (MethodSignature method : gtSourceMethods) {
-            if (method.getName().equals("getId")) {
-                getIdSource = method;
-            }
-        }
-        assertNotNull(getIdSource);
-        Type getIdType = getIdSource.getReturnType();
-        assertNotNull(getIdType);
-        assertNotSame("java.lang.Void", getIdType);
-        assertEquals("Uri", getIdType.getName());
-
-        // DestinationNode
-        final List<MethodSignature> gtDestMethods = gtDest.getMethodDefinitions();
-        assertNotNull(gtDestMethods);
-        MethodSignature getIdDest = null;
-        for (MethodSignature method : gtDestMethods) {
-            if (method.getName().equals("getId")) {
-                getIdDest = method;
-            }
-        }
-        assertNotNull(getIdDest);
-        Type getIdDestType = getIdDest.getReturnType();
-        assertNotNull(getIdDestType);
-        assertNotSame("java.lang.Void", getIdDestType);
-        assertEquals("Uri", getIdDestType.getName());
-
-        // Tunnel
-        final List<MethodSignature> gtTunnelMethods = gtTunnel.getMethodDefinitions();
-        assertNotNull(gtTunnelMethods);
-        MethodSignature getTunnelKey = null;
-        for (MethodSignature method : gtTunnelMethods) {
-            if (method.getName().equals("getTunnelKey")) {
-                getTunnelKey = method;
-            }
-        }
-        assertNotNull(getTunnelKey);
-        Type getTunnelKeyType = getTunnelKey.getReturnType();
-        assertNotNull(getTunnelKeyType);
-        assertNotSame("java.lang.Void", getTunnelKeyType);
-        assertEquals("TunnelKey", getTunnelKeyType.getName());
-
-        // TunnelKey
-        final List<GeneratedProperty> gtTunnelKeyProps = gtTunnelKey.getProperties();
-        assertNotNull(gtTunnelKeyProps);
-        GeneratedProperty tunnelId = null;
-        for (final GeneratedProperty property : gtTunnelKeyProps) {
-            if (property.getName().equals("TunnelId")) {
-                tunnelId = property;
-            }
-        }
-        assertNotNull(tunnelId);
-        Type tunnelIdType = tunnelId.getReturnType();
-        assertNotNull(tunnelIdType);
-        assertNotSame("java.lang.Void", tunnelIdType);
-        assertEquals("Uri", tunnelIdType.getName());
-    }
-
-    @Test
-    public void testContainerResolving() {
-        final String filePath = getClass().getResource("/simple-container-demo.yang").getPath();
-        final SchemaContext context = resolveSchemaContextFromFiles(filePath);
-        assert (context != null);
-
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        assertNotNull(genTypes);
-        assertEquals(4, genTypes.size());
-
-        final GeneratedType simpleContainer = (GeneratedType) genTypes.get(1);
-        final GeneratedType nestedContainer = (GeneratedType) genTypes.get(2);
-
-        assertEquals("SimpleContainer", simpleContainer.getName());
-        assertEquals("NestedContainer", nestedContainer.getName());
-        assertEquals(3, simpleContainer.getMethodDefinitions().size());
-        assertEquals(2, nestedContainer.getMethodDefinitions().size());
-
-        int getFooMethodCounter = 0;
-        int getBarMethodCounter = 0;
-        int getNestedContainerCounter = 0;
-
-        String getFooMethodReturnTypeName = "";
-        String getBarMethodReturnTypeName = "";
-        String getNestedContainerReturnTypeName = "";
-        for (final MethodSignature method : simpleContainer.getMethodDefinitions()) {
-            if (method.getName().equals("getFoo")) {
-                getFooMethodCounter++;
-                getFooMethodReturnTypeName = method.getReturnType().getName();
-            }
-
-            if (method.getName().equals("getBar")) {
-                getBarMethodCounter++;
-                getBarMethodReturnTypeName = method.getReturnType().getName();
-            }
-
-            if (method.getName().equals("getNestedContainer")) {
-                getNestedContainerCounter++;
-                getNestedContainerReturnTypeName = method.getReturnType().getName();
-            }
-        }
-
-        assertEquals(1, getFooMethodCounter);
-        assertEquals("Integer", getFooMethodReturnTypeName);
-
-        assertEquals(1, getBarMethodCounter);
-        assertEquals("String", getBarMethodReturnTypeName);
-
-        assertEquals(1, getNestedContainerCounter);
-        assertEquals("NestedContainer", getNestedContainerReturnTypeName);
-
-        getFooMethodCounter = 0;
-        getBarMethodCounter = 0;
-
-        getFooMethodReturnTypeName = "";
-        getBarMethodReturnTypeName = "";
-
-        for (final MethodSignature method : nestedContainer.getMethodDefinitions()) {
-
-            if (method.getName().equals("getFoo")) {
-                getFooMethodCounter++;
-                getFooMethodReturnTypeName = method.getReturnType().getName();
-            }
-
-            if (method.getName().equals("getBar")) {
-                getBarMethodCounter++;
-                getBarMethodReturnTypeName = method.getReturnType().getName();
-            }
-        }
-
-        assertEquals(1, getFooMethodCounter);
-        assertEquals("Short", getFooMethodReturnTypeName);
-
-        assertEquals(1, getBarMethodCounter);
-        assertEquals("String", getBarMethodReturnTypeName);
-    }
-
-    @Test
-    public void testLeafListResolving() {
-        final String filePath = getClass().getResource("/simple-leaf-list-demo.yang").getPath();
-        final SchemaContext context = resolveSchemaContextFromFiles(filePath);
-        assertNotNull(context);
-
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        assertNotNull(genTypes);
-        assertEquals(4, genTypes.size());
-
-        final GeneratedType simpleContainer = (GeneratedType) genTypes.get(1);
-        final GeneratedType nestedContainer = (GeneratedType) genTypes.get(2);
-
-        assertEquals("SimpleContainer", simpleContainer.getName());
-        assertEquals("NestedContainer", nestedContainer.getName());
-        assertEquals(3, simpleContainer.getMethodDefinitions().size());
-        assertEquals(2, nestedContainer.getMethodDefinitions().size());
-
-        int getFooMethodCounter = 0;
-        int getBarMethodCounter = 0;
-        int getNestedContainerCounter = 0;
-
-        String getFooMethodReturnTypeName = "";
-        String getBarMethodReturnTypeName = "";
-        String getNestedContainerReturnTypeName = "";
-        for (final MethodSignature method : simpleContainer.getMethodDefinitions()) {
-            if (method.getName().equals("getFoo")) {
-                getFooMethodCounter++;
-                getFooMethodReturnTypeName = method.getReturnType().getName();
-            }
-
-            if (method.getName().equals("getBar")) {
-                getBarMethodCounter++;
-                getBarMethodReturnTypeName = method.getReturnType().getName();
-            }
-
-            if (method.getName().equals("getNestedContainer")) {
-                getNestedContainerCounter++;
-                getNestedContainerReturnTypeName = method.getReturnType().getName();
-            }
-        }
-
-        assertEquals(1, getFooMethodCounter);
-        assertEquals("List", getFooMethodReturnTypeName);
-
-        assertEquals(1, getBarMethodCounter);
-        assertEquals("String", getBarMethodReturnTypeName);
-
-        assertEquals(1, getNestedContainerCounter);
-        assertEquals("NestedContainer", getNestedContainerReturnTypeName);
-
-        getFooMethodCounter = 0;
-        getBarMethodCounter = 0;
-
-        getFooMethodReturnTypeName = "";
-        getBarMethodReturnTypeName = "";
-
-        for (final MethodSignature method : nestedContainer.getMethodDefinitions()) {
-            if (method.getName().equals("getFoo")) {
-                getFooMethodCounter++;
-                getFooMethodReturnTypeName = method.getReturnType().getName();
-            }
-
-            if (method.getName().equals("getBar")) {
-                getBarMethodCounter++;
-                getBarMethodReturnTypeName = method.getReturnType().getName();
-            }
-        }
-
-        assertEquals(1, getFooMethodCounter);
-        assertEquals("Short", getFooMethodReturnTypeName);
-
-        assertEquals(1, getBarMethodCounter);
-        assertEquals("List", getBarMethodReturnTypeName);
-    }
-
-    @Test
-    public void testListResolving() {
-        final String filePath = getClass().getResource("/simple-list-demo.yang").getPath();
-        final SchemaContext context = resolveSchemaContextFromFiles(filePath);
-        assertNotNull(context);
-
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        assertNotNull(genTypes);
-        assertEquals(6, genTypes.size());
-
-        int listParentContainerMethodsCount = 0;
-        int simpleListMethodsCount = 0;
-        int listChildContainerMethodsCount = 0;
-        int listKeyClassCount = 0;
-
-        int getSimpleListKeyMethodCount = 0;
-        int getListChildContainerMethodCount = 0;
-        int getFooMethodCount = 0;
-        int setFooMethodCount = 0;
-        int getSimpleLeafListMethodCount = 0;
-        int setSimpleLeafListMethodCount = 0;
-        int getBarMethodCount = 0;
-
-        String getSimpleListKeyMethodReturnTypeName = "";
-        String getListChildContainerMethodReturnTypeName = "";
-
-        int listKeyClassPropertyCount = 0;
-        String listKeyClassPropertyName = "";
-        String listKeyClassPropertyTypeName = "";
-        boolean listKeyClassPropertyReadOnly = false;
-
-        int hashMethodParameterCount = 0;
-        String hashMethodParameterName = "";
-        String hashMethodParameterReturnTypeName = "";
-
-        int equalMethodParameterCount = 0;
-        String equalMethodParameterName = "";
-        String equalMethodParameterReturnTypeName = "";
-
-        for (final Type type : genTypes) {
-            if (type instanceof GeneratedType && !(type instanceof GeneratedTransferObject)) {
-                final GeneratedType genType = (GeneratedType) type;
-                if (genType.getName().equals("ListParentContainer")) {
-                    listParentContainerMethodsCount = genType.getMethodDefinitions().size();
-                } else if (genType.getName().equals("SimpleList")) {
-                    simpleListMethodsCount = genType.getMethodDefinitions().size();
-                    final List<MethodSignature> methods = genType.getMethodDefinitions();
-                    for (final MethodSignature method : methods) {
-                        if (method.getName().equals("getSimpleListKey")) {
-                            getSimpleListKeyMethodCount++;
-                            getSimpleListKeyMethodReturnTypeName = method.getReturnType().getName();
-                        } else if (method.getName().equals("getListChildContainer")) {
-                            getListChildContainerMethodCount++;
-                            getListChildContainerMethodReturnTypeName = method.getReturnType().getName();
-                        } else if (method.getName().equals("getFoo")) {
-                            getFooMethodCount++;
-                        } else if (method.getName().equals("setFoo")) {
-                            setFooMethodCount++;
-                        } else if (method.getName().equals("getSimpleLeafList")) {
-                            getSimpleLeafListMethodCount++;
-                        } else if (method.getName().equals("setSimpleLeafList")) {
-                            setSimpleLeafListMethodCount++;
-                        } else if (method.getName().equals("getBar")) {
-                            getBarMethodCount++;
-                        }
-                    }
-                } else if (genType.getName().equals("ListChildContainer")) {
-                    listChildContainerMethodsCount = genType.getMethodDefinitions().size();
-                }
-            } else if (type instanceof GeneratedTransferObject) {
-                final GeneratedTransferObject genTO = (GeneratedTransferObject) type;
-                final List<GeneratedProperty> properties = genTO.getProperties();
-                final List<GeneratedProperty> hashProps = genTO.getHashCodeIdentifiers();
-                final List<GeneratedProperty> equalProps = genTO.getEqualsIdentifiers();
-
-                listKeyClassCount++;
-                listKeyClassPropertyCount = properties.size();
-                listKeyClassPropertyName = properties.get(0).getName();
-                listKeyClassPropertyTypeName = properties.get(0).getReturnType().getName();
-                listKeyClassPropertyReadOnly = properties.get(0).isReadOnly();
-
-                hashMethodParameterCount = hashProps.size();
-                hashMethodParameterName = hashProps.get(0).getName();
-                hashMethodParameterReturnTypeName = hashProps.get(0).getReturnType().getName();
-
-                equalMethodParameterCount = equalProps.size();
-                equalMethodParameterName = equalProps.get(0).getName();
-                equalMethodParameterReturnTypeName = equalProps.get(0).getReturnType().getName();
-
-            }
-        }
-
-        assertEquals(1, listParentContainerMethodsCount);
-        assertEquals(1, listChildContainerMethodsCount);
-        assertEquals(1, getSimpleListKeyMethodCount);
-        assertEquals(1, listKeyClassCount);
-
-        assertEquals(1, listKeyClassPropertyCount);
-        assertEquals("ListKey", listKeyClassPropertyName);
-        assertEquals("Byte", listKeyClassPropertyTypeName);
-        assertEquals(true, listKeyClassPropertyReadOnly);
-        assertEquals(1, hashMethodParameterCount);
-        assertEquals("ListKey", hashMethodParameterName);
-        assertEquals("Byte", hashMethodParameterReturnTypeName);
-        assertEquals(1, equalMethodParameterCount);
-        assertEquals("ListKey", equalMethodParameterName);
-        assertEquals("Byte", equalMethodParameterReturnTypeName);
-
-        assertEquals("SimpleListKey", getSimpleListKeyMethodReturnTypeName);
-
-        assertEquals(1, getListChildContainerMethodCount);
-        assertEquals("ListChildContainer", getListChildContainerMethodReturnTypeName);
-        assertEquals(1, getFooMethodCount);
-        assertEquals(0, setFooMethodCount);
-        assertEquals(1, getSimpleLeafListMethodCount);
-        assertEquals(0, setSimpleLeafListMethodCount);
-        assertEquals(1, getBarMethodCount);
-
-        assertEquals(5, simpleListMethodsCount);
-    }
-
-    @Test
-    public void testListCompositeKeyResolving() {
-        final String filePath = getClass().getResource("/list-composite-key.yang").getPath();
-        final SchemaContext context = resolveSchemaContextFromFiles(filePath);
-
-        assertNotNull(context);
-
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        assertNotNull(genTypes);
-        assertEquals(8, genTypes.size());
-
-        int genTypesCount = 0;
-        int genTOsCount = 0;
-
-        int compositeKeyListKeyPropertyCount = 0;
-        int compositeKeyListKeyCount = 0;
-        int innerListKeyPropertyCount = 0;
-
-        for (final Type type : genTypes) {
-            if (type instanceof GeneratedType && !(type instanceof GeneratedTransferObject)) {
-                genTypesCount++;
-            } else if (type instanceof GeneratedTransferObject) {
-                final GeneratedTransferObject genTO = (GeneratedTransferObject) type;
-
-                if (genTO.getName().equals("CompositeKeyListKey")) {
-                    compositeKeyListKeyCount++;
-                    final List<GeneratedProperty> properties = genTO.getProperties();
-                    for (final GeneratedProperty prop : properties) {
-                        if (prop.getName().equals("Key1")) {
-                            compositeKeyListKeyPropertyCount++;
-                        } else if (prop.getName().equals("Key2")) {
-                            compositeKeyListKeyPropertyCount++;
-                        }
-                    }
-                    genTOsCount++;
-                } else if (genTO.getName().equals("InnerListKey")) {
-                    final List<GeneratedProperty> properties = genTO.getProperties();
-                    innerListKeyPropertyCount = properties.size();
-                    genTOsCount++;
-                }
-            }
-        }
-        assertEquals(1, compositeKeyListKeyCount);
-        assertEquals(2, compositeKeyListKeyPropertyCount);
-
-        assertEquals(1, innerListKeyPropertyCount);
-
-        assertEquals(6, genTypesCount);
-        assertEquals(2, genTOsCount);
-    }
-
-    @Test
-    public void testGeneratedTypes() {
-        final String filePath = getClass().getResource("/demo-topology.yang").getPath();
-        final SchemaContext context = resolveSchemaContextFromFiles(filePath);
-        assertNotNull(context);
-
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        assertNotNull(genTypes);
-        assertEquals(15, genTypes.size());
-
-        int genTypesCount = 0;
-        int genTOsCount = 0;
-        for (final Type type : genTypes) {
-            if (type instanceof GeneratedType && !(type instanceof GeneratedTransferObject)) {
-                genTypesCount++;
-            } else if (type instanceof GeneratedTransferObject) {
-                genTOsCount++;
-            }
-        }
-
-        assertEquals(12, genTypesCount);
-        assertEquals(3, genTOsCount);
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/MethodSignaturePattern.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/MethodSignaturePattern.java
deleted file mode 100644 (file)
index 6e4d03a..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-package org.opendaylight.controller.sal.binding.generator.impl;
-
-public class MethodSignaturePattern {
-    final String name;
-    final String type;
-
-    public MethodSignaturePattern(String methodName, String methodType) {
-        this.name = methodName;
-        this.type = methodType;
-    }
-
-    public String getName() {
-        return this.name;
-    }
-
-    public String getType() {
-        return this.type;
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/SupportTestUtil.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/SupportTestUtil.java
deleted file mode 100644 (file)
index 101abdb..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-package org.opendaylight.controller.sal.binding.generator.impl;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-
-import java.util.List;
-
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType;
-import org.opendaylight.controller.sal.binding.model.api.MethodSignature;
-import org.opendaylight.controller.sal.binding.model.api.ParameterizedType;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-
-public class SupportTestUtil {
-
-    public static void containsSignatures(final GeneratedType genType,
-            final MethodSignaturePattern... searchedSignsWhat) {
-        final List<MethodSignature> searchedSignsIn = genType.getMethodDefinitions();
-        containsSignatures(searchedSignsIn, searchedSignsWhat);
-    }
-
-    public static void containsSignatures(final List<MethodSignature> searchedSignsIn,
-            final MethodSignaturePattern... searchedSignsWhat) {
-        if (searchedSignsIn == null) {
-            throw new IllegalArgumentException("List of method signatures in which should be searched can't be null");
-        }
-        if (searchedSignsWhat == null) {
-            throw new IllegalArgumentException("Array of method signatures which should be searched can't be null");
-        }
-
-        for (MethodSignaturePattern searchedSignWhat : searchedSignsWhat) {
-            boolean nameMatchFound = false;
-            String typeNameFound = "";
-            for (MethodSignature searchedSignIn : searchedSignsIn) {
-                if (searchedSignWhat.getName().equals(searchedSignIn.getName())) {
-                    nameMatchFound = true;
-                    typeNameFound = resolveFullNameOfReturnType(searchedSignIn.getReturnType());
-                    if (searchedSignWhat.getType().equals(typeNameFound)) {
-                        break;
-                    }
-                }
-            }
-            assertTrue("Method " + searchedSignWhat.getName() + " wasn't found.", nameMatchFound);
-            assertEquals("Return type in method " + searchedSignWhat.getName() + " doesn't match expected type ",
-                    searchedSignWhat.getType(), typeNameFound);
-
-        }
-    }
-
-    public static String resolveFullNameOfReturnType(final Type type) {
-        final StringBuilder nameBuilder = new StringBuilder();
-        if (type instanceof ParameterizedType) {
-            nameBuilder.append(type.getName() + "<");
-            ParameterizedType parametrizedTypes = (ParameterizedType) type;
-            for (Type parametrizedType : parametrizedTypes.getActualTypeArguments()) {
-                nameBuilder.append(parametrizedType.getName() + ",");
-            }
-            if (nameBuilder.charAt(nameBuilder.length() - 1) == ',') {
-                nameBuilder.deleteCharAt(nameBuilder.length() - 1);
-            }
-            nameBuilder.append(">");
-        } else {
-            nameBuilder.append(type.getName());
-        }
-        return nameBuilder.toString();
-    }
-
-    public static void containsInterface(String interfaceNameSearched, GeneratedType genType) {
-        List<Type> caseCImplements = genType.getImplements();
-        boolean interfaceFound = false;
-        for (Type caseCImplement : caseCImplements) {
-            String interfaceName = resolveFullNameOfReturnType(caseCImplement);
-            if (interfaceName.equals(interfaceNameSearched)) {
-                interfaceFound = true;
-                break;
-            }
-        }
-        assertTrue("Generated type " + genType.getName() + " doesn't implement inrerface " + interfaceNameSearched,
-                interfaceFound);
-    }
-
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/UnionTypeDefTest.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/UnionTypeDefTest.java
deleted file mode 100644 (file)
index 08ecff8..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.generator.impl;
-
-import static org.junit.Assert.*;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.opendaylight.controller.sal.binding.generator.api.BindingGenerator;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang.model.parser.api.YangModelParser;
-import org.opendaylight.yangtools.yang.parser.impl.YangParserImpl;
-
-public class UnionTypeDefTest {
-    private final static List<File> yangModels = new ArrayList<>();
-    private final static String yangModelsFolder = AugmentedTypeTest.class
-            .getResource("/union-test-models").getPath();
-
-    @BeforeClass
-    public static void loadTestResources() {
-        final File augFolder = new File(yangModelsFolder);
-
-        for (final File fileEntry : augFolder.listFiles()) {
-            if (fileEntry.isFile()) {
-                yangModels.add(fileEntry);
-            }
-        }
-    }
-
-    @Test
-    public void unionTypeResolvingTest() {
-        final YangModelParser parser = new YangParserImpl();
-        final Set<Module> modules = parser.parseYangModels(yangModels);
-        final SchemaContext context = parser.resolveSchemaContext(modules);
-
-        assertNotNull("context is null", context);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        assertNotNull("genTypes is null", genTypes);
-        assertFalse("genTypes is empty", genTypes.isEmpty());
-
-        //TODO: implement test
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/UsesTest.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/UsesTest.java
deleted file mode 100644 (file)
index 532d786..0000000
+++ /dev/null
@@ -1,609 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.generator.impl;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-import static org.opendaylight.controller.sal.binding.generator.impl.SupportTestUtil.containsInterface;
-import static org.opendaylight.controller.sal.binding.generator.impl.SupportTestUtil.containsSignatures;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-
-import org.junit.Test;
-import org.opendaylight.controller.sal.binding.generator.api.BindingGenerator;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang.model.parser.api.YangModelParser;
-import org.opendaylight.yangtools.yang.parser.impl.YangParserImpl;
-
-public class UsesTest {
-
-    private static List<File> loadTestResources(String testFile) {
-        final List<File> testModels = new ArrayList<File>();
-        final File listModelFile = new File(UsesTest.class.getResource(testFile).getPath());
-        testModels.add(listModelFile);
-        return testModels;
-    }
-
-    @Test
-    public void usesInGroupingDependenciesTest() {
-        List<File> testModels = loadTestResources("/uses-of-grouping/uses-of-grouping-dependencies.yang");
-        final YangModelParser parser = new YangParserImpl();
-        final Set<Module> modules = parser.parseYangModels(testModels);
-        final SchemaContext context = parser.resolveSchemaContext(modules);
-
-        assertNotNull(context);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-        GeneratedType groupingU = null;
-        GeneratedType groupingX = null;
-        GeneratedType groupingV = null;
-
-        int groupingUCounter = 0;
-        int groupingXCounter = 0;
-        int groupingVCounter = 0;
-
-        for (Type type : genTypes) {
-            if (type instanceof GeneratedType && !(type instanceof GeneratedTransferObject)) {
-                GeneratedType genType = (GeneratedType) type;
-                if (genType.getName().equals("GroupingU")) {
-                    groupingU = genType;
-                    groupingUCounter++;
-                } else if (genType.getName().equals("GroupingV")) {
-                    groupingV = genType;
-                    groupingVCounter++;
-                } else if (genType.getName().equals("GroupingX")) {
-                    groupingX = genType;
-                    groupingXCounter++;
-                }
-            }
-        }
-
-        assertNotNull("Generated type for grouping-U wasn't generated.", groupingU);
-        assertEquals("GroupingU interface generated more than one time.", 1, groupingUCounter);
-        assertEquals("GroupingU is in wrong package.",
-                "org.opendaylight.yang.gen.v1.urn.grouping.dependencies.rev2013718", groupingU.getPackageName());
-
-        assertNotNull("Generated type for grouping-V wasn't generated.", groupingV);
-        assertEquals("GroupingV interface generated more than one time.", 1, groupingVCounter);
-        assertEquals("GroupingV is in wrong package.",
-                "org.opendaylight.yang.gen.v1.urn.grouping.dependencies.rev2013718", groupingV.getPackageName());
-
-        assertNotNull("Generated type for grouping-X wasn't generated.", groupingX);
-        assertEquals("GroupingX interface generated more than one time.", 1, groupingXCounter);
-        assertEquals("GroupingX is in wrong package.",
-                "org.opendaylight.yang.gen.v1.urn.grouping.dependencies.rev2013718", groupingX.getPackageName());
-
-        containsInterface("GroupingV", groupingU);
-        containsInterface("GroupingX", groupingU);
-        containsInterface("GroupingZ", groupingV);
-        containsInterface("GroupingZZ", groupingV);
-        containsInterface("GroupingY", groupingX);
-    }
-
-    @Test
-    public void usesInCaseTest() {
-        List<File> testModels = loadTestResources("/uses-of-grouping/uses-of-grouping-case.yang");
-        final YangModelParser parser = new YangParserImpl();
-        final Set<Module> modules = parser.parseYangModels(testModels);
-        final SchemaContext context = parser.resolveSchemaContext(modules);
-
-        assertNotNull(context);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        GeneratedType groupingCaseTest = null;
-        int groupingCaseTestCounter = 0;
-        GeneratedType caseC = null;
-        int caseCCounter = 0;
-        for (Type type : genTypes) {
-            if (type instanceof GeneratedType && !(type instanceof GeneratedTransferObject)) {
-                GeneratedType genType = (GeneratedType) type;
-                if (genType.getName().equals("C")) {
-                    caseC = genType;
-                    caseCCounter++;
-                } else if (genType.getName().equals("GroupingCaseTest")) {
-                    groupingCaseTest = genType;
-                    groupingCaseTestCounter++;
-                }
-            }
-        }
-
-        assertNotNull("Generated type for case C wasn't generated.", caseC);
-        assertEquals("Case C interface generated more than one time.", 1, caseCCounter);
-        assertEquals(
-                "Case C is in wrong package.",
-                "org.opendaylight.yang.gen.v1.urn.grouping.uses._case.rev2013718.container.with.choicetest.choice.test",
-                caseC.getPackageName());
-
-        assertNotNull("Generated type for grouping-case-test wasn't generated.", groupingCaseTest);
-        assertEquals("GroupingCaseTest interface generated more than one time.", 1, groupingCaseTestCounter);
-        assertEquals("GroupingCaseTest is in wrong package.",
-                "org.opendaylight.yang.gen.v1.urn.grouping.uses._case.rev2013718", groupingCaseTest.getPackageName());
-
-        containsInterface("GroupingCaseTest", caseC);
-        assertTrue("Case C shouldn't contain any method.", caseC.getMethodDefinitions().isEmpty());
-
-        assertEquals("Number of method in GroupingCaseTest is incorrect", 1, groupingCaseTest.getMethodDefinitions()
-                .size());
-        containsSignatures(groupingCaseTest.getMethodDefinitions(), new MethodSignaturePattern(
-                "getLeafGroupingCaseTest1", "String"));
-    }
-
-    @Test
-    public void usesInContainerTest() {
-        List<File> testModels = loadTestResources("/uses-of-grouping/uses-of-grouping-container.yang");
-        final YangModelParser parser = new YangParserImpl();
-        final Set<Module> modules = parser.parseYangModels(testModels);
-        final SchemaContext context = parser.resolveSchemaContext(modules);
-
-        assertNotNull(context);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        int containerTestCount = 0;
-        int groupingContainerTestCounter = 0;
-        GeneratedType containerTest = null;
-        GeneratedType groupingContainerTest = null;
-
-        for (Type type : genTypes) {
-            if (type instanceof GeneratedType && !(type instanceof GeneratedTransferObject)) {
-                GeneratedType genType = (GeneratedType) type;
-                if (genType.getName().equals("GroupingContainerTest")) {
-                    groupingContainerTest = genType;
-                    groupingContainerTestCounter++;
-                } else if (genType.getName().equals("ContainerTest")) {
-                    containerTest = genType;
-                    containerTestCount++;
-                }
-            }
-        }
-
-        assertNotNull("Generated type for grouping-container-test wasn't generated", groupingContainerTest);
-        assertEquals("GroupingContainerTest interface - incorrect number of occurences", 1,
-                groupingContainerTestCounter);
-        assertEquals("GroupingContainerTest isn't in correct package",
-                "org.opendaylight.yang.gen.v1.urn.grouping.uses.container.rev2013718",
-                groupingContainerTest.getPackageName());
-
-        assertNotNull("Generated type for container-test wasn't generated", containerTest);
-        assertEquals("ContainerTest interface - incorrect number of occurences", 1, containerTestCount);
-        assertEquals("ContainerTest isn't in correct package",
-                "org.opendaylight.yang.gen.v1.urn.grouping.uses.container.rev2013718", containerTest.getPackageName());
-
-        containsInterface("GroupingContainerTest", containerTest);
-
-        assertEquals("Number of method in GroupingContainerTestis incorrect", 2, groupingContainerTest
-                .getMethodDefinitions().size());
-        assertEquals("Number of method in ContainerTest is incorrect", 1, containerTest.getMethodDefinitions().size());
-
-        containsSignatures(groupingContainerTest.getMethodDefinitions(), new MethodSignaturePattern(
-                "getLeafGroupingContainerTest1", "String"), new MethodSignaturePattern("getLeafGroupingContainerTest2",
-                "Short"));
-
-        containsSignatures(containerTest.getMethodDefinitions(), new MethodSignaturePattern("getContainerLeafTest",
-                "String"));
-    }
-
-    @Test
-    public void usesInGroupingTest() {
-        List<File> testModels = loadTestResources("/uses-of-grouping/uses-of-grouping-grouping.yang");
-        final YangModelParser parser = new YangParserImpl();
-        final Set<Module> modules = parser.parseYangModels(testModels);
-        final SchemaContext context = parser.resolveSchemaContext(modules);
-
-        assertNotNull(context);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        int groupingTestCount = 0;
-        int groupingGroupingTestCounter = 0;
-        GeneratedType groupingTest = null;
-        GeneratedType groupingGroupingTest = null;
-
-        for (Type type : genTypes) {
-            if (type instanceof GeneratedType && !(type instanceof GeneratedTransferObject)) {
-                GeneratedType genType = (GeneratedType) type;
-                if (genType.getName().equals("GroupingGroupingTest")) {
-                    groupingGroupingTest = genType;
-                    groupingGroupingTestCounter++;
-                } else if (genType.getName().equals("GroupingTest")) {
-                    groupingTest = genType;
-                    groupingTestCount++;
-                }
-            }
-        }
-
-        assertNotNull("Generated type for grouping-grouping-test wasn't generated", groupingGroupingTest);
-        assertEquals("GroupingGroupingTest interface - incorrect number of occurences", 1, groupingGroupingTestCounter);
-        assertEquals("GroupingGroupingTest isn't in correct package",
-                "org.opendaylight.yang.gen.v1.urn.grouping.uses.grouping.rev2013718",
-                groupingGroupingTest.getPackageName());
-
-        assertNotNull("Generated type for grouping-test wasn't generated", groupingTest);
-        assertEquals("GroupingTest interface - incorrect number of occurences", 1, groupingTestCount);
-        assertEquals("GroupingTest isn't in correct package",
-                "org.opendaylight.yang.gen.v1.urn.grouping.uses.grouping.rev2013718", groupingTest.getPackageName());
-
-        containsInterface("GroupingGroupingTest", groupingTest);
-
-        assertEquals("Number of method in GroupingGroupingTest is incorrect", 1, groupingGroupingTest
-                .getMethodDefinitions().size());
-        assertEquals("Number of method in GroupingTest is incorrect", 1, groupingTest.getMethodDefinitions().size());
-
-        containsSignatures(groupingGroupingTest.getMethodDefinitions(), new MethodSignaturePattern(
-                "getLeafGroupingGrouping", "String"));
-
-        containsSignatures(groupingTest.getMethodDefinitions(), new MethodSignaturePattern("getLeafGroupingTest",
-                "Byte"));
-    }
-
-    @Test
-    public void usesInListTest() {
-        List<File> testModels = loadTestResources("/uses-of-grouping/uses-of-grouping-list.yang");
-        final YangModelParser parser = new YangParserImpl();
-        final Set<Module> modules = parser.parseYangModels(testModels);
-        final SchemaContext context = parser.resolveSchemaContext(modules);
-
-        assertNotNull(context);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        int listTestCounter = 0;
-        int groupingListTestCounter = 0;
-        int containerGroupingListTestCounter = 0;
-        int listGroupingListTestCounter = 0;
-        GeneratedType listTest = null;
-        GeneratedType groupingListTest = null;
-        GeneratedType containerGroupingListTest = null;
-        GeneratedType listGroupingListTest = null;
-
-        for (Type type : genTypes) {
-            if (type instanceof GeneratedType && !(type instanceof GeneratedTransferObject)) {
-                GeneratedType genType = (GeneratedType) type;
-                if (genType.getName().equals("GroupingListTest")) {
-                    groupingListTest = genType;
-                    groupingListTestCounter++;
-                } else if (genType.getName().equals("ListTest")) {
-                    listTest = genType;
-                    listTestCounter++;
-                } else if (genType.getName().equals("ContainerGroupingListTest")) {
-                    containerGroupingListTest = genType;
-                    containerGroupingListTestCounter++;
-                } else if (genType.getName().equals("ListGroupingListTest")) {
-                    listGroupingListTest = genType;
-                    listGroupingListTestCounter++;
-                }
-            }
-        }
-
-        assertNotNull("Generated type for grouping-list-test wasn't generated", groupingListTest);
-        assertEquals("GroupingListTest interface - incorrect number of occurences", 1, groupingListTestCounter);
-        assertEquals("GroupingListTest isn't in correct package",
-                "org.opendaylight.yang.gen.v1.urn.grouping.uses.list.rev2013718", groupingListTest.getPackageName());
-
-        assertNotNull("Generated type for list-test wasn't generated", listTest);
-        assertEquals("ListTest interface - incorrect number of occurences", 1, listTestCounter);
-        assertEquals("ListTest isn't in correct package",
-                "org.opendaylight.yang.gen.v1.urn.grouping.uses.list.rev2013718", listTest.getPackageName());
-
-        assertNotNull("Generated type for container-grouping-list-test wasn't generated", containerGroupingListTest);
-        assertEquals("ContainerGroupingListTest interface - incorrect number of occurences", 1,
-                containerGroupingListTestCounter);
-        assertEquals("ContainerGroupingListTest isn't in correct package",
-                "org.opendaylight.yang.gen.v1.urn.grouping.uses.list.rev2013718.grouping.list.test",
-                containerGroupingListTest.getPackageName());
-
-        assertNotNull("Generated type for list-grouping-list-test wasn't generated", listGroupingListTest);
-        assertEquals("ListGroupingListTest interface - incorrect number of occurences", 1, listGroupingListTestCounter);
-        assertEquals("ListGroupingListTest isn't in correct package",
-                "org.opendaylight.yang.gen.v1.urn.grouping.uses.list.rev2013718.grouping.list.test",
-                listGroupingListTest.getPackageName());
-
-        containsInterface("GroupingListTest", listTest);
-
-        assertEquals("Number of method in GroupingListTest is incorrect", 4, groupingListTest.getMethodDefinitions()
-                .size());
-        assertEquals("Number of method in ListTest is incorrect", 1, listTest.getMethodDefinitions().size());
-        assertEquals("Number of method in ContainerGroupingListTest is incorrect", 1, containerGroupingListTest
-                .getMethodDefinitions().size());
-        assertEquals("Number of method in ListGroupingListTest is incorrect", 1, listGroupingListTest
-                .getMethodDefinitions().size());
-
-        containsSignatures(groupingListTest.getMethodDefinitions(), new MethodSignaturePattern(
-                "getContainerGroupingListTest", "ContainerGroupingListTest"), new MethodSignaturePattern(
-                "getLeafGroupingListTest", "String"), new MethodSignaturePattern("getLeaffllistGroupingListTest",
-                "List<String>"), new MethodSignaturePattern("getListGroupingListTest", "List<ListGroupingListTest>"));
-        containsSignatures(listTest.getMethodDefinitions(), new MethodSignaturePattern("getListLeafTest", "String"));
-        containsSignatures(containerGroupingListTest.getMethodDefinitions(), new MethodSignaturePattern(
-                "getLeafContainerGroupingListTest", "Short"));
-        containsSignatures(listGroupingListTest.getMethodDefinitions(), new MethodSignaturePattern(
-                "getLeafListGroupingListTest", "Integer"));
-    }
-
-    @Test
-    public void usesInModulTest() {
-        List<File> testModels = loadTestResources("/uses-of-grouping/uses-of-grouping-modul.yang");
-        final YangModelParser parser = new YangParserImpl();
-        final Set<Module> modules = parser.parseYangModels(testModels);
-        final SchemaContext context = parser.resolveSchemaContext(modules);
-
-        assertNotNull(context);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        int groupingModulTestCounter = 0;
-        int groupingUsesModulDataCounter = 0;
-        GeneratedType groupingModulTest = null;
-        GeneratedType groupingUsesModulData = null;
-
-        for (Type type : genTypes) {
-            if (type instanceof GeneratedType && !(type instanceof GeneratedTransferObject)) {
-                GeneratedType genType = (GeneratedType) type;
-                if (genType.getName().equals("GroupingModulTest")) {
-                    groupingModulTest = genType;
-                    groupingModulTestCounter++;
-                } else if (genType.getName().equals("GroupingUsesModulData")) {
-                    groupingUsesModulData = genType;
-                    groupingUsesModulDataCounter++;
-                }
-            }
-        }
-
-        assertNotNull("Generated type for grouping-list-test wasn't generated", groupingModulTest);
-        assertEquals("GroupingModulTest interface - incorrect number of occurences", 1, groupingModulTestCounter);
-        assertEquals("GroupingModulTest isn't in correct package",
-                "org.opendaylight.yang.gen.v1.urn.grouping.uses.modul.rev2013718", groupingModulTest.getPackageName());
-
-        assertNotNull("Generated type for modul wasn't generated", groupingUsesModulData);
-        assertEquals("GroupingUsesModulData interface - incorrect number of occurences", 1,
-                groupingUsesModulDataCounter);
-        assertEquals("GroupingUsesModulData isn't in correct package",
-                "org.opendaylight.yang.gen.v1.urn.grouping.uses.modul.rev2013718",
-                groupingUsesModulData.getPackageName());
-
-        containsInterface("GroupingModulTest", groupingUsesModulData);
-
-        assertEquals("Number of method in GroupingUsesModulData is incorrect", 0, groupingUsesModulData
-                .getMethodDefinitions().size());
-        assertEquals("Number of method in GroupingModulTest is incorrect", 2, groupingModulTest.getMethodDefinitions()
-                .size());
-
-        containsSignatures(groupingModulTest.getMethodDefinitions(), new MethodSignaturePattern(
-                "getLeafGroupingModulTest", "String"), new MethodSignaturePattern("getLeafGroupingModulTest2", "Short"));
-    }
-
-    @Test
-    public void usesInRpcTest() {
-        List<File> testModels = loadTestResources("/uses-of-grouping/uses-of-grouping-rpc.yang");
-        final YangModelParser parser = new YangParserImpl();
-        final Set<Module> modules = parser.parseYangModels(testModels);
-        final SchemaContext context = parser.resolveSchemaContext(modules);
-
-        assertNotNull(context);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        int rpcTestInputCounter = 0;
-        int rpcTestOutputCounter = 0;
-        int groupingRpcInputTestCounter = 0;
-        int groupingRpcOutputTestCounter = 0;
-        int containerGroupingRpcInputTestCounter = 0;
-        GeneratedType rpcTestInput = null;
-        GeneratedType rpcTestOutput = null;
-        GeneratedType groupingRpcInputTest = null;
-        GeneratedType groupingRpcOutputTest = null;
-        GeneratedType containerGroupingRpcInputTest = null;
-
-        for (Type type : genTypes) {
-            if (type instanceof GeneratedType && !(type instanceof GeneratedTransferObject)) {
-                GeneratedType genType = (GeneratedType) type;
-                if (genType.getName().equals("RpcTestInput")) {
-                    rpcTestInput = genType;
-                    rpcTestInputCounter++;
-                } else if (genType.getName().equals("RpcTestOutput")) {
-                    rpcTestOutput = genType;
-                    rpcTestOutputCounter++;
-                } else if (genType.getName().equals("GroupingRpcInputTest")) {
-                    groupingRpcInputTest = genType;
-                    groupingRpcInputTestCounter++;
-                } else if (genType.getName().equals("GroupingRpcOutputTest")) {
-                    groupingRpcOutputTest = genType;
-                    groupingRpcOutputTestCounter++;
-                } else if (genType.getName().equals("ContainerGroupingRpcInputTest")) {
-                    containerGroupingRpcInputTest = genType;
-                    containerGroupingRpcInputTestCounter++;
-                }
-
-            }
-        }
-
-        assertNotNull("Generated type for RPC test input wasn't generated", rpcTestInput);
-        assertEquals("RpcTestInput interface - incorrect number of occurences", 1, rpcTestInputCounter);
-        assertEquals("RpcTestInput isn't in correct package",
-                "org.opendaylight.yang.gen.v1.urn.grouping.uses.rpc.rev2013718", rpcTestInput.getPackageName());
-
-        assertNotNull("Generated type for RPC test output wasn't generated", rpcTestOutput);
-        assertEquals("RpcTestOutput interface - incorrect number of occurences", 1, rpcTestOutputCounter);
-        assertEquals("RpcTestOutput isn't in correct package",
-                "org.opendaylight.yang.gen.v1.urn.grouping.uses.rpc.rev2013718", rpcTestOutput.getPackageName());
-
-        assertNotNull("Generated type for grouping-rpc-input-test wasn't generated", groupingRpcInputTest);
-        assertEquals("RpcTestOutput interface - incorrect number of occurences", 1, groupingRpcInputTestCounter);
-        assertEquals("GroupingRpcInputTest isn't in correct package",
-                "org.opendaylight.yang.gen.v1.urn.grouping.uses.rpc.rev2013718", groupingRpcInputTest.getPackageName());
-
-        assertNotNull("Generated type for grouping-rpc-output-test wasn't generated", groupingRpcOutputTest);
-        assertEquals("RpcTestOutput interface - incorrect number of occurences", 1, groupingRpcOutputTestCounter);
-        assertEquals("GroupingRpcOutputTest isn't in correct package",
-                "org.opendaylight.yang.gen.v1.urn.grouping.uses.rpc.rev2013718", groupingRpcOutputTest.getPackageName());
-
-        assertNotNull("Generated type for container-grouping-rpc-input-test wasn't generated",
-                containerGroupingRpcInputTest);
-        assertEquals("ContainerGroupingRpcInputTest interface - incorrect number of occurences", 1,
-                containerGroupingRpcInputTestCounter);
-        assertEquals("ContainerGroupingRpcInputTest isn't in correct package",
-                "org.opendaylight.yang.gen.v1.urn.grouping.uses.rpc.rev2013718.grouping.rpc.input.test",
-                containerGroupingRpcInputTest.getPackageName());
-
-        containsInterface("GroupingRpcInputTest", rpcTestInput);
-        containsInterface("GroupingRpcOutputTest", rpcTestOutput);
-
-        assertEquals("Number of method in RpcTestInput is incorrect", 0, rpcTestInput.getMethodDefinitions().size());
-        assertEquals("Number of method in RpcTestOutput is incorrect", 0, rpcTestOutput.getMethodDefinitions().size());
-        assertEquals("Number of method in GroupingRpcInputTest is incorrect", 2, groupingRpcInputTest
-                .getMethodDefinitions().size());
-        assertEquals("Number of method in GroupingRpcOutputTest is incorrect", 1, groupingRpcOutputTest
-                .getMethodDefinitions().size());
-        assertEquals("Number of method in ContainerGroupingRpcInputTest is incorrect", 1, containerGroupingRpcInputTest
-                .getMethodDefinitions().size());
-
-        containsSignatures(groupingRpcInputTest.getMethodDefinitions(), new MethodSignaturePattern(
-                "getContainerGroupingRpcInputTest", "ContainerGroupingRpcInputTest"), new MethodSignaturePattern(
-                "getLeaflistGroupingRpcInputTest", "List<Short>"));
-        containsSignatures(groupingRpcOutputTest.getMethodDefinitions(), new MethodSignaturePattern(
-                "getLeafGroupingRpcOutputTest", "Byte"));
-        containsSignatures(containerGroupingRpcInputTest.getMethodDefinitions(), new MethodSignaturePattern(
-                "getLeafContainerGroupingRpcInputTest", "String"));
-    }
-
-    @Test
-    public void usesInAugmentTest() {
-        List<File> testModels = loadTestResources("/uses-of-grouping/uses-of-grouping-augment.yang");
-        final YangModelParser parser = new YangParserImpl();
-        final Set<Module> modules = parser.parseYangModels(testModels);
-        final SchemaContext context = parser.resolveSchemaContext(modules);
-
-        assertNotNull(context);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        GeneratedType containerAugment1 = null;
-        GeneratedType groupingAugmentTest = null;
-        int containerAugment1Counter = 0;
-        int groupingAugmentTestCounter = 0;
-
-        for (Type type : genTypes) {
-            if (type instanceof GeneratedType && !(type instanceof GeneratedTransferObject)) {
-                GeneratedType genType = (GeneratedType) type;
-                if (genType.getName().equals("ContainerAugment1")) {
-                    containerAugment1 = genType;
-                    containerAugment1Counter++;
-                } else if (genType.getName().equals("GroupingAugmentTest")) {
-                    groupingAugmentTest = genType;
-                    groupingAugmentTestCounter++;
-                }
-            }
-        }
-
-        assertNotNull("Generated type for augment /container-augment wasn't generated.", containerAugment1);
-        assertEquals("ContainerAugment1 interface generated more than one time.", 1, containerAugment1Counter);
-        assertEquals("ContainerAugment1 is in wrong package.",
-                "org.opendaylight.yang.gen.v1.urn.grouping.uses.augment.rev2013718", containerAugment1.getPackageName());
-
-        assertNotNull("Generated type for grouping-augment-test wasn't generated.", groupingAugmentTest);
-        assertEquals("GroupingAugmentTest interface generated more than one time.", 1, groupingAugmentTestCounter);
-        assertEquals("groupingAugmentTest is in wrong package.",
-                "org.opendaylight.yang.gen.v1.urn.grouping.uses.augment.rev2013718",
-                groupingAugmentTest.getPackageName());
-
-        containsInterface("GroupingAugmentTest", containerAugment1);
-
-        assertEquals("Number of method in GroupingCaseTest is incorrect", 0, containerAugment1.getMethodDefinitions()
-                .size());
-
-        assertEquals("Number of method in ContainerAugment1 is incorrect", 0, containerAugment1.getMethodDefinitions()
-                .size());
-        assertEquals("Number of method in GroupingCaseTest is incorrect", 1, groupingAugmentTest.getMethodDefinitions()
-                .size());
-
-        containsSignatures(groupingAugmentTest.getMethodDefinitions(), new MethodSignaturePattern(
-                "getLeafGroupingAugmentTest", "String"));
-    }
-
-    @Test
-    public void usesInNotification() {
-        List<File> testModels = loadTestResources("/uses-of-grouping/uses-of-grouping-notification.yang");
-        final YangModelParser parser = new YangParserImpl();
-        final Set<Module> modules = parser.parseYangModels(testModels);
-        final SchemaContext context = parser.resolveSchemaContext(modules);
-
-        assertNotNull(context);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        GeneratedType notificationTest = null;
-        GeneratedType groupingNotificationTest = null;
-        GeneratedType containerGroupingNotificationTest = null;
-        int notificationTestCounter = 0;
-        int groupingNotificationTestCounter = 0;
-        int containerGroupingNotificationTestCounter = 0;
-
-        for (Type type : genTypes) {
-            if (type instanceof GeneratedType && !(type instanceof GeneratedTransferObject)) {
-                GeneratedType genType = (GeneratedType) type;
-                if (genType.getName().equals("NotificationTest")) {
-                    notificationTest = genType;
-                    notificationTestCounter++;
-                } else if (genType.getName().equals("GroupingNotificationTest")) {
-                    groupingNotificationTest = genType;
-                    groupingNotificationTestCounter++;
-                } else if (genType.getName().equals("ContainerGroupingNotificationTest")) {
-                    containerGroupingNotificationTest = genType;
-                    containerGroupingNotificationTestCounter++;
-                }
-            }
-        }
-
-        assertNotNull("Generated type for notification-test wasn't generated.", notificationTest);
-        assertEquals("NotificationTest interface generated more than one time.", 1, notificationTestCounter);
-        assertEquals("NotificationTest is in wrong package.",
-                "org.opendaylight.yang.gen.v1.urn.grouping.uses.notification.rev2013718",
-                notificationTest.getPackageName());
-
-        assertNotNull("Generated type for grouping-notification-test wasn't generated.", groupingNotificationTest);
-        assertEquals("GroupingNotificationTest interface generated more than one time.", 1,
-                groupingNotificationTestCounter);
-        assertEquals("groupingNotificationTest is in wrong package.",
-                "org.opendaylight.yang.gen.v1.urn.grouping.uses.notification.rev2013718",
-                groupingNotificationTest.getPackageName());
-
-        assertNotNull("Generated type for container-grouping-notification-test wasn't generated.",
-                containerGroupingNotificationTest);
-        assertEquals("ContainerGroupingNotificationTest interface generated more than one time.", 1,
-                containerGroupingNotificationTestCounter);
-        assertEquals("ContainerGroupingNotificationTest is in wrong package.",
-                "org.opendaylight.yang.gen.v1.urn.grouping.uses.notification.rev2013718.grouping.notification.test",
-                containerGroupingNotificationTest.getPackageName());
-
-        containsInterface("GroupingNotificationTest", notificationTest);
-
-        assertEquals("Number of method in NotificationTest is incorrect", 1, notificationTest.getMethodDefinitions()
-                .size());
-        assertEquals("Number of method in GroupingNotificationTest is incorrect", 2, groupingNotificationTest
-                .getMethodDefinitions().size());
-        assertEquals("Number of method in ContainerGroupingNotificationTest is incorrect", 1,
-                containerGroupingNotificationTest.getMethodDefinitions().size());
-
-        containsSignatures(notificationTest.getMethodDefinitions(), new MethodSignaturePattern(
-                "getLeafNotificationTest", "String"));
-        containsSignatures(groupingNotificationTest.getMethodDefinitions(), new MethodSignaturePattern(
-                "getContainerGroupingNotificationTest", "ContainerGroupingNotificationTest"),
-                new MethodSignaturePattern("getLeaffllistGroupingNotificationTest", "List<String>"));
-        containsSignatures(containerGroupingNotificationTest.getMethodDefinitions(), new MethodSignaturePattern(
-                "getLeafContainerGroupingNotificationTest", "Long"));
-    }
-
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/abstract-topology.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/abstract-topology.yang
deleted file mode 100644 (file)
index 863b223..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-module abstract-topology {
-    yang-version 1;
-    namespace "urn:model:abstract:topology";
-    prefix "tp";
-
-    import ietf-inet-types { 
-        prefix "inet"; 
-        revision-date 2010-09-24;
-    }
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    description
-        "This module contains the definitions of elements that creates network 
-    topology i.e. definition of network nodes and links. This module is not designed to be used solely for network representation. This module SHOULD be used as base module in defining the network topology.";
-
-    revision "2013-02-08" {
-        reference "~~~ WILL BE DEFINED LATER";
-    }
-    
-    revision "2013-01-01" {
-        reference "~~~ WILL BE DEFINED LATER";
-    }
-    
-    typedef node-id-ref {
-        type leafref {
-            path "/tp:topology/tp:network-nodes/tp:network-node/tp:node-id";
-        }
-        description "This type is used for leafs that reference network node instance.";
-    }
-
-    typedef link-id-ref {
-        type leafref {
-            path "/tp:topology/tp:network-links/tp:network-link/tp:link-id";
-        }
-        description "This type is used for leafs that reference network link instance.";
-    }
-
-    container topology {
-        description "This is the model of abstract topology which contains only Network Nodes and Network Links. Each topology MUST be identified by unique topology-id for reason that the store could contain many topologies.";
-
-        leaf topology-id {
-            type inet:uri;
-            description "It is presumed that datastore will contain many topologies. To distinguish between topologies it is vital to have
-            UNIQUE topology identifier.";
-        }
-
-        container network-nodes {
-            list network-node {
-                key "node-id";
-
-                leaf node-id {
-                    type inet:uri;
-                    description "The Topology identifier of network-node.";
-                }
-
-                container attributes {
-                    description "Aditional attributes that can Network Node contains.";
-                }
-                description "The list of network nodes defined for topology.";
-            }
-        }
-        
-        container network-links {
-            list network-link {
-                key "link-id";
-
-                leaf link-id {
-                    type inet:uri;
-                    description "";
-                }
-
-                container source-node {
-                    leaf id {
-                        type node-id-ref;
-                        description "Source node identifier.";
-                    }
-                }
-
-                container destination-node {
-                    leaf id {
-                        type node-id-ref;
-                        description "Destination node identifier.";
-                    }
-                }
-
-                container attributes {
-                    description "Aditional attributes that can Network Link contains.";
-                }
-                description "The Network Link which is defined by Local (Source) and Remote (Destination) Network Nodes. Every link MUST be defined either by identifier and
-                his local and remote Network Nodes (In real applications it is common that many links are originated from one node and end up in same remote node). To ensure that we would always know to distinguish between links, every link SHOULD have identifier.";
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-relative-xpath-models/abstract-topology@2013-02-08.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-relative-xpath-models/abstract-topology@2013-02-08.yang
deleted file mode 100644 (file)
index d80a3e9..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-module abstract-topology {
-    yang-version 1;
-    namespace "urn:model:abstract:topology";
-    prefix "tp";
-
-    import ietf-inet-types { 
-        prefix "inet"; 
-        revision-date 2010-09-24;
-    }
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    description
-        "This module contains the definitions of elements that creates network 
-    topology i.e. definition of network nodes and links. This module is not designed 
-    to be used solely for network representation. This module SHOULD be used as base 
-    module in defining the network topology.";
-
-    revision "2013-02-08" {
-        reference "http://www.opendaylight.org/";
-    }
-    
-    typedef node-id-ref {
-        type leafref {
-            path "/tp:topology/tp:network-nodes/tp:network-node/tp:node-id";
-        }
-        description "This type is used for leafs that reference network node instance.";
-    }
-
-    typedef link-id-ref {
-        type leafref {
-            path "/tp:topology/tp:network-links/tp:network-link/tp:link-id";
-        }
-        description "This type is used for leafs that reference network link instance.";
-    }
-
-    container topology {
-        description "This is the model of abstract topology which contains 
-        only Network Nodes and Network Links. Each topology MUST be identified by unique 
-        topology-id for reason that the store could contain many topologies.";
-
-        leaf topology-id {
-            type inet:uri;
-            description "It is presumed that datastore will contain many topologies. 
-            To distinguish between topologies it is vital to have
-            UNIQUE topology identifier.";
-        }
-
-        container network-nodes {
-            list network-node {
-                key "node-id";
-
-                leaf node-id {
-                    type inet:uri;
-                    description "The Topology identifier of network-node.";
-                }
-
-                container attributes {
-                    description "Aditional attributes that can Network Node contains.";
-                }
-                description "The list of network nodes defined for topology.";
-            }
-        }
-        
-        container network-links {
-            list network-link {
-                key "link-id";
-
-                leaf link-id {
-                    type inet:uri;
-                    description "";
-                }
-
-                container source-node {
-                    leaf id {
-                        type node-id-ref;
-                        description "Source node identifier.";
-                    }
-                }
-
-                container destination-node {
-                    leaf id {
-                        type node-id-ref;
-                        description "Destination node identifier.";
-                    }
-                }
-
-                container attributes {
-                    description "Aditional attributes that can Network Link contains.";
-                }
-                description "The Network Link which is defined by Local (Source) and Remote (Destination) 
-                Network Nodes. Every link MUST be defined either by identifier and
-                his local and remote Network Nodes (In real applications it is common that 
-                many links are originated from one node and end up in same remote node). 
-                To ensure that we would always know to distinguish between links, every link 
-                SHOULD have identifier.";
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-relative-xpath-models/augment-abstract-topology@2013-05-03.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-relative-xpath-models/augment-abstract-topology@2013-05-03.yang
deleted file mode 100644 (file)
index 4ffe723..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-module augment-abstract-topology {
-    yang-version 1;
-    namespace "urn:model:augment:abstract:topology";
-    prefix "atp";
-
-    import ietf-inet-types { 
-        prefix "inet";
-        revision-date 2010-09-24;
-    }
-
-    import ietf-interfaces {
-        prefix "if";
-        revision-date 2012-11-15;
-    }
-
-    import abstract-topology {
-        prefix "at";
-        revision-date 2013-02-08;
-    }
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision "2013-05-03" {
-        reference "http://www.opendaylight.org/";
-    }
-
-    augment "at:topology" {
-        container interfaces {
-            list interface {
-                key "interface-id";
-
-                leaf interface-id {
-                    type leafref {
-                        path "/if:interfaces/if:interface/if:name";
-                    }
-                }
-
-                leaf-list higher-layer-if {
-                    type leafref {
-                        path "/if:interfaces/if:interface/if:higher-layer-if";
-                    }
-                }
-            }
-        }
-    }
-
-    augment "at:topology/at:network-links/at:network-link" {
-        container tunnels {
-            list tunnel {
-                key "tunnel-id";
-
-                leaf tunnel-id {
-                    type leafref {
-                        path "../../../link-id";
-                    }
-                }
-            }
-        }
-    }
-
-    augment "at:topology/at:network-links/at:network-link" {
-        leaf interface {
-            type leafref {
-                path "../atp:interfaces/atp:interface/atp:interface-id";
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-relative-xpath-models/iana-if-type@2012-06-05.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-relative-xpath-models/iana-if-type@2012-06-05.yang
deleted file mode 100644 (file)
index a7fa137..0000000
+++ /dev/null
@@ -1,1516 +0,0 @@
-module iana-if-type {
-  namespace "urn:ietf:params:xml:ns:yang:iana-if-type";
-  prefix ianaift;
-
-  organization "IANA";
-  contact
-    "        Internet Assigned Numbers Authority
-
-     Postal: ICANN
-             4676 Admiralty Way, Suite 330
-             Marina del Rey, CA 90292
-
-     Tel:    +1 310 823 9358
-     E-Mail: iana&iana.org";
-  description
-    "This YANG module defines the iana-if-type typedef, which
-     contains YANG definitions for IANA-registered interface types.
-
-     This YANG module is maintained by IANA, and reflects the
-     'ifType definitions' registry.
-
-     The latest revision of this YANG module can be obtained from
-     the IANA web site.
-
-     Copyright (c) 2011 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or
-     without modification, is permitted pursuant to, and subject
-     to the license terms contained in, the Simplified BSD License
-     set forth in Section 4.c of the IETF Trust's Legal Provisions
-     Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC XXXX; see
-     the RFC itself for full legal notices.";
-  // RFC Ed.: replace XXXX with actual RFC number and remove this
-  // note.
-
-  // RFC Ed.: update the date below with the date of RFC publication
-  // and remove this note.
-  revision 2012-06-05 {
-    description
-      "Initial revision.";
-    reference
-      "RFC XXXX: TITLE";
-  }
-
-  typedef iana-if-type {
-    type enumeration {
-      enum "other" {
-        value 1;
-        description
-          "None of the following";
-      }
-      enum "regular1822" {
-        value 2;
-      }
-      enum "hdh1822" {
-        value 3;
-      }
-      enum "ddnX25" {
-        value 4;
-      }
-      enum "rfc877x25" {
-        value 5;
-        reference
-          "RFC 1382 - SNMP MIB Extension for the X.25 Packet Layer";
-      }
-      enum "ethernetCsmacd" {
-        value 6;
-        description
-          "For all ethernet-like interfaces, regardless of speed,
-           as per RFC3635.";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "iso88023Csmacd" {
-        value 7;
-        status deprecated;
-        description
-          "Deprecated via RFC3635.
-           Use ethernetCsmacd(6) instead.";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "iso88024TokenBus" {
-        value 8;
-      }
-      enum "iso88025TokenRing" {
-        value 9;
-      }
-      enum "iso88026Man" {
-        value 10;
-      }
-      enum "starLan" {
-        value 11;
-        status deprecated;
-        description
-          "Deprecated via RFC3635.
-           Use ethernetCsmacd(6) instead.";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "proteon10Mbit" {
-        value 12;
-      }
-      enum "proteon80Mbit" {
-        value 13;
-      }
-      enum "hyperchannel" {
-        value 14;
-      }
-      enum "fddi" {
-        value 15;
-        reference
-          "RFC 1512 - FDDI Management Information Base";
-      }
-      enum "lapb" {
-        value 16;
-        reference
-          "RFC 1381 - SNMP MIB Extension for X.25 LAPB";
-      }
-      enum "sdlc" {
-        value 17;
-      }
-      enum "ds1" {
-        value 18;
-        description
-          "DS1-MIB";
-        reference
-          "RFC 4805 - Definitions of Managed Objects for the
-                      DS1, J1, E1, DS2, and E2 Interface Types";
-      }
-      enum "e1" {
-        value 19;
-        status obsolete;
-        description
-          "Obsolete see DS1-MIB";
-        reference
-          "RFC 4805 - Definitions of Managed Objects for the
-                      DS1, J1, E1, DS2, and E2 Interface Types";
-      }
-      enum "basicISDN" {
-        value 20;
-        description
-          "see also RFC2127";
-      }
-      enum "primaryISDN" {
-        value 21;
-      }
-      enum "propPointToPointSerial" {
-        value 22;
-        description
-          "proprietary serial";
-      }
-      enum "ppp" {
-        value 23;
-      }
-      enum "softwareLoopback" {
-        value 24;
-      }
-      enum "eon" {
-        value 25;
-        description
-          "CLNP over IP";
-      }
-      enum "ethernet3Mbit" {
-        value 26;
-      }
-      enum "nsip" {
-        value 27;
-        description
-          "XNS over IP";
-      }
-      enum "slip" {
-        value 28;
-        description
-          "generic SLIP";
-      }
-      enum "ultra" {
-        value 29;
-        description
-          "ULTRA technologies";
-      }
-      enum "ds3" {
-        value 30;
-        description
-          "DS3-MIB";
-        reference
-          "RFC 3896 - Definitions of Managed Objects for the
-                      DS3/E3 Interface Type";
-      }
-      enum "sip" {
-        value 31;
-        description
-          "SMDS, coffee";
-        reference
-          "RFC 1694 - Definitions of Managed Objects for SMDS
-                      Interfaces using SMIv2";
-      }
-      enum "frameRelay" {
-        value 32;
-        description
-          "DTE only.";
-        reference
-          "RFC 2115 - Management Information Base for Frame Relay
-                      DTEs Using SMIv2";
-      }
-      enum "rs232" {
-        value 33;
-        reference
-          "RFC 1659 - Definitions of Managed Objects for RS-232-like
-                      Hardware Devices using SMIv2";
-      }
-      enum "para" {
-        value 34;
-        description
-          "parallel-port";
-        reference
-          "RFC 1660 - Definitions of Managed Objects for
-                      Parallel-printer-like Hardware Devices using
-                      SMIv2";
-      }
-      enum "arcnet" {
-        value 35;
-        description
-          "arcnet";
-      }
-      enum "arcnetPlus" {
-        value 36;
-        description
-          "arcnet plus";
-      }
-      enum "atm" {
-        value 37;
-        description
-          "ATM cells";
-      }
-      enum "miox25" {
-        value 38;
-        reference
-          "RFC 1461 - SNMP MIB extension for Multiprotocol
-                      Interconnect over X.25";
-      }
-      enum "sonet" {
-        value 39;
-        description
-          "SONET or SDH";
-      }
-      enum "x25ple" {
-        value 40;
-        reference
-          "RFC 2127 - ISDN Management Information Base using SMIv2";
-      }
-      enum "iso88022llc" {
-        value 41;
-      }
-      enum "localTalk" {
-        value 42;
-      }
-      enum "smdsDxi" {
-        value 43;
-      }
-      enum "frameRelayService" {
-        value 44;
-        description
-          "FRNETSERV-MIB";
-        reference
-          "RFC 2954 - Definitions of Managed Objects for Frame
-                      Relay Service";
-      }
-      enum "v35" {
-        value 45;
-      }
-      enum "hssi" {
-        value 46;
-      }
-      enum "hippi" {
-        value 47;
-      }
-      enum "modem" {
-        value 48;
-        description
-          "Generic modem";
-      }
-      enum "aal5" {
-        value 49;
-        description
-          "AAL5 over ATM";
-      }
-      enum "sonetPath" {
-        value 50;
-      }
-      enum "sonetVT" {
-        value 51;
-      }
-      enum "smdsIcip" {
-        value 52;
-        description
-          "SMDS InterCarrier Interface";
-      }
-      enum "propVirtual" {
-        value 53;
-        description
-          "proprietary virtual/internal";
-        reference
-          "RFC 2863 - The Interfaces Group MIB";
-      }
-      enum "propMultiplexor" {
-        value 54;
-        description
-          "proprietary multiplexing";
-        reference
-          "RFC 2863 - The Interfaces Group MIB";
-      }
-      enum "ieee80212" {
-        value 55;
-        description
-          "100BaseVG";
-      }
-      enum "fibreChannel" {
-        value 56;
-        description
-          "Fibre Channel";
-      }
-      enum "hippiInterface" {
-        value 57;
-        description
-          "HIPPI interfaces";
-      }
-      enum "frameRelayInterconnect" {
-        value 58;
-        status obsolete;
-        description
-          "Obsolete use either
-           frameRelay(32) or frameRelayService(44).";
-      }
-      enum "aflane8023" {
-        value 59;
-        description
-          "ATM Emulated LAN for 802.3";
-      }
-      enum "aflane8025" {
-        value 60;
-        description
-          "ATM Emulated LAN for 802.5";
-      }
-      enum "cctEmul" {
-        value 61;
-        description
-         "ATM Emulated circuit";
-      }
-      enum "fastEther" {
-        value 62;
-        status deprecated;
-        description
-          "Obsoleted via RFC3635.
-          ethernetCsmacd(6) should be used instead";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "isdn" {
-        value 63;
-        description
-          "ISDN and X.25";
-        reference
-          "RFC 1356 - Multiprotocol Interconnect on X.25 and ISDN
-                      in the Packet Mode";
-      }
-      enum "v11" {
-        value 64;
-        description
-         "CCITT V.11/X.21";
-      }
-      enum "v36" {
-        value 65;
-        description
-          "CCITT V.36";
-      }
-      enum "g703at64k" {
-        value 66;
-        description
-          "CCITT G703 at 64Kbps";
-      }
-      enum "g703at2mb" {
-        value 67;
-        status obsolete;
-        description
-          "Obsolete see DS1-MIB";
-      }
-      enum "qllc" {
-        value 68;
-        description
-          "SNA QLLC";
-      }
-      enum "fastEtherFX" {
-        value 69;
-        status deprecated;
-        description
-          "Obsoleted via RFC3635
-          ethernetCsmacd(6) should be used instead";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "channel" {
-        value 70;
-        description
-          "channel";
-      }
-      enum "ieee80211" {
-        value 71;
-        description
-          "radio spread spectrum";
-      }
-      enum "ibm370parChan" {
-        value 72;
-        description
-          "IBM System 360/370 OEMI Channel";
-      }
-      enum "escon" {
-        value 73;
-        description
-          "IBM Enterprise Systems Connection";
-      }
-      enum "dlsw" {
-        value 74;
-        description
-          "Data Link Switching";
-      }
-      enum "isdns" {
-        value 75;
-        description
-          "ISDN S/T interface";
-      }
-      enum "isdnu" {
-        value 76;
-        description
-          "ISDN U interface";
-      }
-      enum "lapd" {
-        value 77;
-        description
-          "Link Access Protocol D";
-      }
-      enum "ipSwitch" {
-        value 78;
-        description
-          "IP Switching Objects";
-      }
-      enum "rsrb" {
-        value 79;
-        description
-          "Remote Source Route Bridging";
-      }
-      enum "atmLogical" {
-        value 80;
-        description
-          "ATM Logical Port";
-        reference
-          "RFC 3606 - Definitions of Supplemental Managed Objects
-                      for ATM Interface";
-      }
-      enum "ds0" {
-        value 81;
-        description
-          "Digital Signal Level 0";
-        reference
-          "RFC 2494 - Definitions of Managed Objects for the DS0
-                      and DS0 Bundle Interface Type";
-      }
-      enum "ds0Bundle" {
-        value 82;
-        description
-          "group of ds0s on the same ds1";
-        reference
-          "RFC 2494 - Definitions of Managed Objects for the DS0
-                      and DS0 Bundle Interface Type";
-      }
-      enum "bsc" {
-        value 83;
-        description
-          "Bisynchronous Protocol";
-      }
-      enum "async" {
-        value 84;
-        description
-          "Asynchronous Protocol";
-      }
-      enum "cnr" {
-        value 85;
-        description
-          "Combat Net Radio";
-      }
-      enum "iso88025Dtr" {
-        value 86;
-        description
-          "ISO 802.5r DTR";
-      }
-      enum "eplrs" {
-        value 87;
-        description
-          "Ext Pos Loc Report Sys";
-      }
-      enum "arap" {
-        value 88;
-        description
-          "Appletalk Remote Access Protocol";
-      }
-      enum "propCnls" {
-        value 89;
-        description
-          "Proprietary Connectionless Protocol";
-      }
-      enum "hostPad" {
-        value 90;
-        description
-          "CCITT-ITU X.29 PAD Protocol";
-      }
-      enum "termPad" {
-        value 91;
-        description
-          "CCITT-ITU X.3 PAD Facility";
-      }
-      enum "frameRelayMPI" {
-        value 92;
-        description
-          "Multiproto Interconnect over FR";
-      }
-      enum "x213" {
-        value 93;
-        description
-          "CCITT-ITU X213";
-      }
-      enum "adsl" {
-        value 94;
-        description
-          "Asymmetric Digital Subscriber Loop";
-      }
-      enum "radsl" {
-        value 95;
-        description
-          "Rate-Adapt. Digital Subscriber Loop";
-      }
-      enum "sdsl" {
-        value 96;
-        description
-          "Symmetric Digital Subscriber Loop";
-      }
-      enum "vdsl" {
-        value 97;
-        description
-          "Very H-Speed Digital Subscrib. Loop";
-      }
-      enum "iso88025CRFPInt" {
-        value 98;
-        description
-          "ISO 802.5 CRFP";
-      }
-      enum "myrinet" {
-        value 99;
-        description
-          "Myricom Myrinet";
-      }
-      enum "voiceEM" {
-        value 100;
-        description
-          "voice recEive and transMit";
-      }
-      enum "voiceFXO" {
-        value 101;
-        description
-          "voice Foreign Exchange Office";
-      }
-      enum "voiceFXS" {
-        value 102;
-        description
-          "voice Foreign Exchange Station";
-      }
-      enum "voiceEncap" {
-        value 103;
-        description
-          "voice encapsulation";
-      }
-      enum "voiceOverIp" {
-        value 104;
-        description
-          "voice over IP encapsulation";
-      }
-      enum "atmDxi" {
-        value 105;
-        description
-          "ATM DXI";
-      }
-      enum "atmFuni" {
-        value 106;
-        description
-          "ATM FUNI";
-      }
-      enum "atmIma" {
-        value 107;
-        description
-          "ATM IMA";
-      }
-      enum "pppMultilinkBundle" {
-        value 108;
-        description
-          "PPP Multilink Bundle";
-      }
-      enum "ipOverCdlc" {
-        value 109;
-        description
-          "IBM ipOverCdlc";
-      }
-      enum "ipOverClaw" {
-        value 110;
-        description
-          "IBM Common Link Access to Workstn";
-      }
-      enum "stackToStack" {
-        value 111;
-        description
-          "IBM stackToStack";
-      }
-      enum "virtualIpAddress" {
-        value 112;
-        description
-          "IBM VIPA";
-      }
-      enum "mpc" {
-        value 113;
-        description
-          "IBM multi-protocol channel support";
-      }
-      enum "ipOverAtm" {
-        value 114;
-        description
-          "IBM ipOverAtm";
-        reference
-          "RFC 2320 - Definitions of Managed Objects for Classical IP
-                      and ARP Over ATM Using SMIv2 (IPOA-MIB)";
-      }
-      enum "iso88025Fiber" {
-        value 115;
-        description
-          "ISO 802.5j Fiber Token Ring";
-      }
-      enum "tdlc" {
-        value 116;
-        description
-          "IBM twinaxial data link control";
-      }
-      enum "gigabitEthernet" {
-        value 117;
-        status deprecated;
-        description
-          "Obsoleted via RFC3635
-           ethernetCsmacd(6) should be used instead";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "hdlc" {
-        value 118;
-        description
-          "HDLC";
-      }
-      enum "lapf" {
-        value 119;
-        description
-          "LAP F";
-      }
-      enum "v37" {
-        value 120;
-        description
-          "V.37";
-      }
-      enum "x25mlp" {
-        value 121;
-        description
-          "Multi-Link Protocol";
-      }
-      enum "x25huntGroup" {
-        value 122;
-        description
-          "X25 Hunt Group";
-      }
-      enum "transpHdlc" {
-        value 123;
-        description
-          "Transp HDLC";
-      }
-      enum "interleave" {
-        value 124;
-        description
-          "Interleave channel";
-      }
-      enum "fast" {
-        value 125;
-        description
-          "Fast channel";
-      }
-      enum "ip" {
-        value 126;
-        description
-          "IP (for APPN HPR in IP networks)";
-      }
-      enum "docsCableMaclayer" {
-        value 127;
-        description
-          "CATV Mac Layer";
-      }
-      enum "docsCableDownstream" {
-        value 128;
-        description
-          "CATV Downstream interface";
-      }
-      enum "docsCableUpstream" {
-        value 129;
-        description
-          "CATV Upstream interface";
-      }
-      enum "a12MppSwitch" {
-        value 130;
-        description
-          "Avalon Parallel Processor";
-      }
-      enum "tunnel" {
-        value 131;
-        description
-          "Encapsulation interface";
-      }
-      enum "coffee" {
-        value 132;
-        description
-          "coffee pot";
-        reference
-          "RFC 2325 - Coffee MIB";
-      }
-      enum "ces" {
-        value 133;
-        description
-          "Circuit Emulation Service";
-      }
-      enum "atmSubInterface" {
-        value 134;
-        description
-          "ATM Sub Interface";
-      }
-      enum "l2vlan" {
-        value 135;
-        description
-          "Layer 2 Virtual LAN using 802.1Q";
-      }
-      enum "l3ipvlan" {
-        value 136;
-        description
-          "Layer 3 Virtual LAN using IP";
-      }
-      enum "l3ipxvlan" {
-        value 137;
-        description
-          "Layer 3 Virtual LAN using IPX";
-      }
-      enum "digitalPowerline" {
-        value 138;
-        description
-          "IP over Power Lines";
-      }
-      enum "mediaMailOverIp" {
-        value 139;
-        description
-          "Multimedia Mail over IP";
-      }
-      enum "dtm" {
-        value 140;
-        description
-          "Dynamic syncronous Transfer Mode";
-      }
-      enum "dcn" {
-        value 141;
-        description
-          "Data Communications Network";
-      }
-      enum "ipForward" {
-        value 142;
-        description
-          "IP Forwarding Interface";
-      }
-      enum "msdsl" {
-        value 143;
-        description
-          "Multi-rate Symmetric DSL";
-      }
-      enum "ieee1394" {
-        value 144;
-        description
-          "IEEE1394 High Performance Serial Bus";
-      }
-      enum "if-gsn" {
-        value 145;
-        description
-          "HIPPI-6400";
-      }
-      enum "dvbRccMacLayer" {
-        value 146;
-        description
-          "DVB-RCC MAC Layer";
-      }
-      enum "dvbRccDownstream" {
-        value 147;
-        description
-          "DVB-RCC Downstream Channel";
-      }
-      enum "dvbRccUpstream" {
-        value 148;
-        description
-          "DVB-RCC Upstream Channel";
-      }
-      enum "atmVirtual" {
-        value 149;
-        description
-          "ATM Virtual Interface";
-      }
-      enum "mplsTunnel" {
-        value 150;
-        description
-          "MPLS Tunnel Virtual Interface";
-      }
-      enum "srp" {
-        value 151;
-        description
-          "Spatial Reuse Protocol       ";
-      }
-      enum "voiceOverAtm" {
-        value 152;
-        description
-          "Voice Over ATM";
-      }
-      enum "voiceOverFrameRelay" {
-        value 153;
-        description
-          "Voice Over Frame Relay";
-      }
-      enum "idsl" {
-        value 154;
-        description
-          "Digital Subscriber Loop over ISDN";
-      }
-      enum "compositeLink" {
-        value 155;
-        description
-          "Avici Composite Link Interface";
-      }
-      enum "ss7SigLink" {
-        value 156;
-        description
-          "SS7 Signaling Link";
-      }
-      enum "propWirelessP2P" {
-        value 157;
-        description
-          "Prop. P2P wireless interface";
-      }
-      enum "frForward" {
-        value 158;
-        description
-          "Frame Forward Interface";
-      }
-      enum "rfc1483" {
-        value 159;
-        description
-          "Multiprotocol over ATM AAL5";
-        reference
-          "RFC 1483 - Multiprotocol Encapsulation over ATM
-                      Adaptation Layer 5";
-      }
-      enum "usb" {
-        value 160;
-        description
-          "USB Interface";
-      }
-      enum "ieee8023adLag" {
-        value 161;
-        description
-          "IEEE 802.3ad Link Aggregate";
-      }
-      enum "bgppolicyaccounting" {
-        value 162;
-        description
-          "BGP Policy Accounting";
-      }
-      enum "frf16MfrBundle" {
-        value 163;
-        description
-          "FRF .16 Multilink Frame Relay";
-      }
-      enum "h323Gatekeeper" {
-        value 164;
-        description
-          "H323 Gatekeeper";
-      }
-      enum "h323Proxy" {
-        value 165;
-        description
-          "H323 Voice and Video Proxy";
-      }
-      enum "mpls" {
-        value 166;
-        description
-          "MPLS";
-      }
-      enum "mfSigLink" {
-        value 167;
-        description
-          "Multi-frequency signaling link";
-      }
-      enum "hdsl2" {
-        value 168;
-        description
-          "High Bit-Rate DSL - 2nd generation";
-      }
-      enum "shdsl" {
-        value 169;
-        description
-          "Multirate HDSL2";
-      }
-      enum "ds1FDL" {
-        value 170;
-        description
-          "Facility Data Link 4Kbps on a DS1";
-      }
-      enum "pos" {
-        value 171;
-        description
-          "Packet over SONET/SDH Interface";
-      }
-      enum "dvbAsiIn" {
-        value 172;
-        description
-          "DVB-ASI Input";
-      }
-      enum "dvbAsiOut" {
-        value 173;
-        description
-          "DVB-ASI Output";
-      }
-      enum "plc" {
-        value 174;
-        description
-          "Power Line Communtications";
-      }
-      enum "nfas" {
-        value 175;
-        description
-          "Non Facility Associated Signaling";
-      }
-      enum "tr008" {
-        value 176;
-        description
-          "TR008";
-      }
-      enum "gr303RDT" {
-        value 177;
-        description
-          "Remote Digital Terminal";
-      }
-      enum "gr303IDT" {
-        value 178;
-        description
-          "Integrated Digital Terminal";
-      }
-      enum "isup" {
-        value 179;
-        description
-          "ISUP";
-      }
-      enum "propDocsWirelessMaclayer" {
-        value 180;
-        description
-          "Cisco proprietary Maclayer";
-      }
-      enum "propDocsWirelessDownstream" {
-        value 181;
-        description
-          "Cisco proprietary Downstream";
-      }
-      enum "propDocsWirelessUpstream" {
-        value 182;
-        description
-          "Cisco proprietary Upstream";
-      }
-      enum "hiperlan2" {
-        value 183;
-        description
-          "HIPERLAN Type 2 Radio Interface";
-      }
-      enum "propBWAp2Mp" {
-        value 184;
-        description
-          "PropBroadbandWirelessAccesspt2multipt use of this value
-           for IEEE 802.16 WMAN interfaces as per IEEE Std 802.16f
-           is deprecated and ieee80216WMAN(237) should be used
-           instead.";
-      }
-      enum "sonetOverheadChannel" {
-        value 185;
-        description
-          "SONET Overhead Channel";
-      }
-      enum "digitalWrapperOverheadChannel" {
-        value 186;
-        description
-          "Digital Wrapper";
-      }
-      enum "aal2" {
-        value 187;
-        description
-          "ATM adaptation layer 2";
-      }
-      enum "radioMAC" {
-        value 188;
-        description
-          "MAC layer over radio links";
-      }
-      enum "atmRadio" {
-        value 189;
-        description
-          "ATM over radio links";
-      }
-      enum "imt" {
-        value 190;
-        description
-          "Inter Machine Trunks";
-      }
-      enum "mvl" {
-        value 191;
-        description
-          "Multiple Virtual Lines DSL";
-      }
-      enum "reachDSL" {
-        value 192;
-        description
-          "Long Reach DSL";
-      }
-      enum "frDlciEndPt" {
-        value 193;
-        description
-          "Frame Relay DLCI End Point";
-      }
-      enum "atmVciEndPt" {
-        value 194;
-        description
-          "ATM VCI End Point";
-      }
-      enum "opticalChannel" {
-        value 195;
-        description
-          "Optical Channel";
-      }
-      enum "opticalTransport" {
-        value 196;
-        description
-          "Optical Transport";
-      }
-      enum "propAtm" {
-        value 197;
-        description
-          "Proprietary ATM";
-      }
-      enum "voiceOverCable" {
-        value 198;
-        description
-          "Voice Over Cable Interface";
-      }
-      enum "infiniband" {
-        value 199;
-        description
-          "Infiniband";
-      }
-      enum "teLink" {
-        value 200;
-        description
-          "TE Link";
-      }
-      enum "q2931" {
-        value 201;
-        description
-          "Q.2931";
-      }
-      enum "virtualTg" {
-        value 202;
-        description
-          "Virtual Trunk Group";
-      }
-      enum "sipTg" {
-        value 203;
-        description
-          "SIP Trunk Group";
-      }
-      enum "sipSig" {
-        value 204;
-        description
-          "SIP Signaling";
-      }
-      enum "docsCableUpstreamChannel" {
-        value 205;
-        description
-          "CATV Upstream Channel";
-      }
-      enum "econet" {
-        value 206;
-        description
-          "Acorn Econet";
-      }
-      enum "pon155" {
-        value 207;
-        description
-          "FSAN 155Mb Symetrical PON interface";
-      }
-      enum "pon622" {
-        value 208;
-        description
-          "FSAN622Mb Symetrical PON interface";
-      }
-      enum "bridge" {
-        value 209;
-        description
-          "Transparent bridge interface";
-      }
-      enum "linegroup" {
-        value 210;
-        description
-          "Interface common to multiple lines";
-      }
-      enum "voiceEMFGD" {
-        value 211;
-        description
-          "voice E&M Feature Group D";
-      }
-      enum "voiceFGDEANA" {
-        value 212;
-        description
-          "voice FGD Exchange Access North American";
-      }
-      enum "voiceDID" {
-        value 213;
-        description
-          "voice Direct Inward Dialing";
-      }
-      enum "mpegTransport" {
-        value 214;
-        description
-          "MPEG transport interface";
-      }
-      enum "sixToFour" {
-        value 215;
-        status deprecated;
-        description
-          "6to4 interface (DEPRECATED)";
-        reference
-          "RFC 4087 - IP Tunnel MIB";
-      }
-      enum "gtp" {
-        value 216;
-        description
-          "GTP (GPRS Tunneling Protocol)";
-      }
-      enum "pdnEtherLoop1" {
-        value 217;
-        description
-          "Paradyne EtherLoop 1";
-      }
-      enum "pdnEtherLoop2" {
-        value 218;
-        description
-          "Paradyne EtherLoop 2";
-      }
-      enum "opticalChannelGroup" {
-        value 219;
-        description
-          "Optical Channel Group";
-      }
-      enum "homepna" {
-        value 220;
-        description
-          "HomePNA ITU-T G.989";
-      }
-      enum "gfp" {
-        value 221;
-        description
-          "Generic Framing Procedure (GFP)";
-      }
-      enum "ciscoISLvlan" {
-        value 222;
-        description
-          "Layer 2 Virtual LAN using Cisco ISL";
-      }
-      enum "actelisMetaLOOP" {
-        value 223;
-        description
-          "Acteleis proprietary MetaLOOP High Speed Link";
-      }
-      enum "fcipLink" {
-        value 224;
-        description
-          "FCIP Link";
-      }
-      enum "rpr" {
-        value 225;
-        description
-          "Resilient Packet Ring Interface Type";
-      }
-      enum "qam" {
-        value 226;
-        description
-          "RF Qam Interface";
-      }
-      enum "lmp" {
-        value 227;
-        description
-          "Link Management Protocol";
-        reference
-          "RFC 4327 - Link Management Protocol (LMP) Management
-                      Information Base (MIB)";
-      }
-      enum "cblVectaStar" {
-        value 228;
-        description
-          "Cambridge Broadband Networks Limited VectaStar";
-      }
-      enum "docsCableMCmtsDownstream" {
-        value 229;
-        description
-          "CATV Modular CMTS Downstream Interface";
-      }
-      enum "adsl2" {
-        value 230;
-        status deprecated;
-        description
-          "Asymmetric Digital Subscriber Loop Version 2
-           (DEPRECATED/OBSOLETED - please use adsl2plus(238)
-           instead)";
-        reference
-          "RFC 4706 - Definitions of Managed Objects for Asymmetric
-                      Digital Subscriber Line 2 (ADSL2)";
-      }
-      enum "macSecControlledIF" {
-        value 231;
-        description
-          "MACSecControlled";
-      }
-      enum "macSecUncontrolledIF" {
-        value 232;
-        description
-          "MACSecUncontrolled";
-      }
-      enum "aviciOpticalEther" {
-        value 233;
-        description
-         "Avici Optical Ethernet Aggregate";
-      }
-      enum "atmbond" {
-        value 234;
-        description
-          "atmbond";
-      }
-      enum "voiceFGDOS" {
-        value 235;
-        description
-          "voice FGD Operator Services";
-      }
-      enum "mocaVersion1" {
-        value 236;
-        description
-          "MultiMedia over Coax Alliance (MoCA) Interface
-           as documented in information provided privately to IANA";
-      }
-      enum "ieee80216WMAN" {
-        value 237;
-        description
-          "IEEE 802.16 WMAN interface";
-      }
-      enum "adsl2plus" {
-        value 238;
-        description
-          "Asymmetric Digital Subscriber Loop Version 2,
-           Version 2 Plus and all variants";
-      }
-      enum "dvbRcsMacLayer" {
-        value 239;
-        description
-          "DVB-RCS MAC Layer";
-        reference
-          "RFC 5728 - The SatLabs Group DVB-RCS MIB";
-      }
-      enum "dvbTdm" {
-        value 240;
-        description
-          "DVB Satellite TDM";
-        reference
-          "RFC 5728 - The SatLabs Group DVB-RCS MIB";
-      }
-      enum "dvbRcsTdma" {
-        value 241;
-        description
-          "DVB-RCS TDMA";
-        reference
-          "RFC 5728 - The SatLabs Group DVB-RCS MIB";
-      }
-      enum "x86Laps" {
-        value 242;
-        description
-          "LAPS based on ITU-T X.86/Y.1323";
-      }
-      enum "wwanPP" {
-        value 243;
-        description
-          "3GPP WWAN";
-      }
-      enum "wwanPP2" {
-        value 244;
-        description
-          "3GPP2 WWAN";
-      }
-      enum "voiceEBS" {
-        value 245;
-        description
-          "voice P-phone EBS physical interface";
-      }
-      enum "ifPwType" {
-        value 246;
-        description
-          "Pseudowire interface type";
-        reference
-          "RFC 5601 - Pseudowire (PW) Management Information Base";
-      }
-      enum "ilan" {
-        value 247;
-        description
-          "Internal LAN on a bridge per IEEE 802.1ap";
-      }
-      enum "pip" {
-        value 248;
-        description
-          "Provider Instance Port on a bridge per IEEE 802.1ah PBB";
-      }
-      enum "aluELP" {
-        value 249;
-        description
-          "Alcatel-Lucent Ethernet Link Protection";
-      }
-      enum "gpon" {
-        value 250;
-        description
-          "Gigabit-capable passive optical networks (G-PON) as per
-           ITU-T G.948";
-      }
-      enum "vdsl2" {
-        value 251;
-        description
-          "Very high speed digital subscriber line Version 2
-           (as per ITU-T Recommendation G.993.2)";
-        reference
-          "RFC 5650 - Definitions of Managed Objects for Very High
-                      Speed Digital Subscriber Line 2 (VDSL2)";
-      }
-      enum "capwapDot11Profile" {
-        value 252;
-        description
-          "WLAN Profile Interface";
-        reference
-          "RFC 5834 - Control and Provisioning of Wireless Access
-                      Points (CAPWAP) Protocol Binding MIB for
-                      IEEE 802.11";
-      }
-      enum "capwapDot11Bss" {
-        value 253;
-        description
-          "WLAN BSS Interface";
-        reference
-          "RFC 5834 - Control and Provisioning of Wireless Access
-                      Points (CAPWAP) Protocol Binding MIB for
-                      IEEE 802.11";
-      }
-      enum "capwapWtpVirtualRadio" {
-        value 254;
-        description
-          "WTP Virtual Radio Interface";
-        reference
-          "RFC 5833 - Control and Provisioning of Wireless Access
-                      Points (CAPWAP) Protocol Base MIB";
-      }
-      enum "bits" {
-        value 255;
-        description
-          "bitsport";
-      }
-      enum "docsCableUpstreamRfPort" {
-        value 256;
-        description
-          "DOCSIS CATV Upstream RF Port";
-      }
-      enum "cableDownstreamRfPort" {
-        value 257;
-        description
-          "CATV downstream RF port";
-      }
-      enum "vmwareVirtualNic" {
-        value 258;
-        description
-          "VMware Virtual Network Interface";
-      }
-      enum "ieee802154" {
-        value 259;
-        description
-          "IEEE 802.15.4 WPAN interface";
-        reference
-          "IEEE 802.15.4-2006";
-      }
-      enum "otnOdu" {
-        value 260;
-        description
-          "OTN Optical Data Unit";
-      }
-      enum "otnOtu" {
-        value 261;
-        description
-          "OTN Optical channel Transport Unit";
-      }
-      enum "ifVfiType" {
-        value 262;
-        description
-          "VPLS Forwarding Instance Interface Type";
-      }
-      enum "g9981" {
-        value 263;
-        description
-          "G.998.1 bonded interface";
-      }
-      enum "g9982" {
-        value 264;
-        description
-          "G.998.2 bonded interface";
-      }
-      enum "g9983" {
-        value 265;
-        description
-          "G.998.3 bonded interface";
-      }
-      enum "aluEpon" {
-        value 266;
-        description
-          "Ethernet Passive Optical Networks (E-PON)";
-      }
-      enum "aluEponOnu" {
-        value 267;
-        description
-          "EPON Optical Network Unit";
-      }
-      enum "aluEponPhysicalUni" {
-        value 268;
-        description
-          "EPON physical User to Network interface";
-      }
-      enum "aluEponLogicalLink" {
-        value 269;
-        description
-          "The emulation of a point-to-point link over the EPON
-           layer";
-      }
-      enum "aluGponOnu" {
-        value 270;
-        description
-          "GPON Optical Network Unit";
-        reference
-          "ITU-T G.984.2";
-      }
-      enum "aluGponPhysicalUni" {
-        value 271;
-        description
-          "GPON physical User to Network interface";
-        reference
-          "ITU-T G.984.2";
-      }
-      enum "vmwareNicTeam" {
-        value 272;
-        description
-          "VMware NIC Team";
-      }
-    }
-    description
-      "This data type is used as the syntax of the 'type'
-       leaf in the 'interface' list in the YANG module
-       ietf-interface.
-
-       The definition of this typedef with the
-       addition of newly assigned values is published
-       periodically by the IANA, in either the Assigned
-       Numbers RFC, or some derivative of it specific to
-       Internet Network Management number assignments.  (The
-       latest arrangements can be obtained by contacting the
-       IANA.)
-
-       Requests for new values should be made to IANA via
-       email (iana&iana.org).";
-    reference
-      "ifType definitions registry.
-       <http://www.iana.org/assignments/smi-numbers>";
-  }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-relative-xpath-models/ietf-inet-types@2010-09-24.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-relative-xpath-models/ietf-inet-types@2010-09-24.yang
deleted file mode 100644 (file)
index de20feb..0000000
+++ /dev/null
@@ -1,418 +0,0 @@
- module ietf-inet-types {
-
-   namespace "urn:ietf:params:xml:ns:yang:ietf-inet-types";
-   prefix "inet";
-
-   organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-   contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Partain
-               <mailto:david.partain@ericsson.com>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     Editor:   Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>";
-
-   description
-    "This module contains a collection of generally useful derived
-     YANG data types for Internet addresses and related things.
-
-     Copyright (c) 2010 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or without
-     modification, is permitted pursuant to, and subject to the license
-     terms contained in, the Simplified BSD License set forth in Section
-     4.c of the IETF Trust's Legal Provisions Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC 6021; see
-     the RFC itself for full legal notices.";
-
-   revision 2010-09-24 {
-     description
-      "Initial revision.";
-     reference
-      "RFC 6021: Common YANG Data Types";
-   }
-
-   /*** collection of protocol field related types ***/
-
-   typedef ip-version {
-     type enumeration {
-       enum unknown {
-         value "0";
-         description
-          "An unknown or unspecified version of the Internet protocol.";
-       }
-       enum ipv4 {
-         value "1";
-         description
-          "The IPv4 protocol as defined in RFC 791.";
-       }
-       enum ipv6 {
-         value "2";
-         description
-          "The IPv6 protocol as defined in RFC 2460.";
-       }
-     }
-     description
-      "This value represents the version of the IP protocol.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetVersion textual convention of the SMIv2.";
-     reference
-      "RFC  791: Internet Protocol
-       RFC 2460: Internet Protocol, Version 6 (IPv6) Specification
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   typedef dscp {
-     type uint8 {
-       range "0..63";
-     }
-     description
-      "The dscp type represents a Differentiated Services Code-Point
-       that may be used for marking packets in a traffic stream.
-
-       In the value set and its semantics, this type is equivalent
-       to the Dscp textual convention of the SMIv2.";
-     reference
-      "RFC 3289: Management Information Base for the Differentiated
-                 Services Architecture
-       RFC 2474: Definition of the Differentiated Services Field
-                 (DS Field) in the IPv4 and IPv6 Headers
-       RFC 2780: IANA Allocation Guidelines For Values In
-                 the Internet Protocol and Related Headers";
-   }
-
-   typedef ipv6-flow-label {
-     type uint32 {
-       range "0..1048575";
-     }
-     description
-      "The flow-label type represents flow identifier or Flow Label
-       in an IPv6 packet header that may be used to discriminate
-       traffic flows.
-
-       In the value set and its semantics, this type is equivalent
-       to the IPv6FlowLabel textual convention of the SMIv2.";
-     reference
-      "RFC 3595: Textual Conventions for IPv6 Flow Label
-       RFC 2460: Internet Protocol, Version 6 (IPv6) Specification";
-   }
-
-   typedef port-number {
-     type uint16 {
-       range "0..65535";
-     }
-     description
-      "The port-number type represents a 16-bit port number of an
-       Internet transport layer protocol such as UDP, TCP, DCCP, or
-       SCTP.  Port numbers are assigned by IANA.  A current list of
-       all assignments is available from <http://www.iana.org/>.
-
-       Note that the port number value zero is reserved by IANA.  In
-       situations where the value zero does not make sense, it can
-       be excluded by subtyping the port-number type.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetPortNumber textual convention of the SMIv2.";
-     reference
-      "RFC  768: User Datagram Protocol
-       RFC  793: Transmission Control Protocol
-       RFC 4960: Stream Control Transmission Protocol
-       RFC 4340: Datagram Congestion Control Protocol (DCCP)
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   /*** collection of autonomous system related types ***/
-
-   typedef as-number {
-     type uint32;
-     description
-      "The as-number type represents autonomous system numbers
-       which identify an Autonomous System (AS).  An AS is a set
-       of routers under a single technical administration, using
-       an interior gateway protocol and common metrics to route
-       packets within the AS, and using an exterior gateway
-       protocol to route packets to other ASs'.  IANA maintains
-       the AS number space and has delegated large parts to the
-       regional registries.
-
-       Autonomous system numbers were originally limited to 16
-       bits.  BGP extensions have enlarged the autonomous system
-       number space to 32 bits.  This type therefore uses an uint32
-       base type without a range restriction in order to support
-       a larger autonomous system number space.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetAutonomousSystemNumber textual convention of
-       the SMIv2.";
-     reference
-      "RFC 1930: Guidelines for creation, selection, and registration
-                 of an Autonomous System (AS)
-       RFC 4271: A Border Gateway Protocol 4 (BGP-4)
-       RFC 4893: BGP Support for Four-octet AS Number Space
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   /*** collection of IP address and hostname related types ***/
-
-   typedef ip-address {
-     type union {
-       type inet:ipv4-address;
-       type inet:ipv6-address;
-     }
-     description
-      "The ip-address type represents an IP address and is IP
-       version neutral.  The format of the textual representations
-       implies the IP version.";
-   }
-
-   typedef ipv4-address {
-     type string {
-       pattern
-         '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
-       +  '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
-       + '(%[\p{N}\p{L}]+)?';
-     }
-     description
-       "The ipv4-address type represents an IPv4 address in
-        dotted-quad notation.  The IPv4 address may include a zone
-        index, separated by a % sign.
-
-        The zone index is used to disambiguate identical address
-        values.  For link-local addresses, the zone index will
-        typically be the interface index number or the name of an
-        interface.  If the zone index is not present, the default
-        zone of the device will be used.
-
-        The canonical format for the zone index is the numerical
-        format";
-   }
-
-   typedef ipv6-address {
-     type string {
-       pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
-             + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
-             + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
-             + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
-             + '(%[\p{N}\p{L}]+)?';
-       pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
-             + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
-             + '(%.+)?';
-     }
-     description
-      "The ipv6-address type represents an IPv6 address in full,
-       mixed, shortened, and shortened-mixed notation.  The IPv6
-       address may include a zone index, separated by a % sign.
-
-       The zone index is used to disambiguate identical address
-       values.  For link-local addresses, the zone index will
-       typically be the interface index number or the name of an
-       interface.  If the zone index is not present, the default
-       zone of the device will be used.
-
-       The canonical format of IPv6 addresses uses the compressed
-       format described in RFC 4291, Section 2.2, item 2 with the
-       following additional rules: the :: substitution must be
-       applied to the longest sequence of all-zero 16-bit chunks
-       in an IPv6 address.  If there is a tie, the first sequence
-       of all-zero 16-bit chunks is replaced by ::.  Single
-       all-zero 16-bit chunks are not compressed.  The canonical
-       format uses lowercase characters and leading zeros are
-       not allowed.  The canonical format for the zone index is
-       the numerical format as described in RFC 4007, Section
-       11.2.";
-     reference
-      "RFC 4291: IP Version 6 Addressing Architecture
-       RFC 4007: IPv6 Scoped Address Architecture
-       RFC 5952: A Recommendation for IPv6 Address Text Representation";
-   }
-
-   typedef ip-prefix {
-     type union {
-       type inet:ipv4-prefix;
-       type inet:ipv6-prefix;
-     }
-     description
-      "The ip-prefix type represents an IP prefix and is IP
-       version neutral.  The format of the textual representations
-       implies the IP version.";
-   }
-
-   typedef ipv4-prefix {
-     type string {
-       pattern
-          '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
-        +  '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
-        + '/(([0-9])|([1-2][0-9])|(3[0-2]))';
-     }
-     description
-      "The ipv4-prefix type represents an IPv4 address prefix.
-       The prefix length is given by the number following the
-       slash character and must be less than or equal to 32.
-
-       A prefix length value of n corresponds to an IP address
-       mask that has n contiguous 1-bits from the most
-       significant bit (MSB) and all other bits set to 0.
-
-       The canonical format of an IPv4 prefix has all bits of
-       the IPv4 address set to zero that are not part of the
-       IPv4 prefix.";
-   }
-
-   typedef ipv6-prefix {
-     type string {
-       pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
-             + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
-             + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
-             + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
-             + '(/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))';
-       pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
-             + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
-             + '(/.+)';
-     }
-     description
-      "The ipv6-prefix type represents an IPv6 address prefix.
-       The prefix length is given by the number following the
-       slash character and must be less than or equal 128.
-
-       A prefix length value of n corresponds to an IP address
-       mask that has n contiguous 1-bits from the most
-       significant bit (MSB) and all other bits set to 0.
-
-       The IPv6 address should have all bits that do not belong
-       to the prefix set to zero.
-
-       The canonical format of an IPv6 prefix has all bits of
-       the IPv6 address set to zero that are not part of the
-       IPv6 prefix.  Furthermore, IPv6 address is represented
-       in the compressed format described in RFC 4291, Section
-       2.2, item 2 with the following additional rules: the ::
-       substitution must be applied to the longest sequence of
-       all-zero 16-bit chunks in an IPv6 address.  If there is
-       a tie, the first sequence of all-zero 16-bit chunks is
-       replaced by ::.  Single all-zero 16-bit chunks are not
-       compressed.  The canonical format uses lowercase
-       characters and leading zeros are not allowed.";
-     reference
-      "RFC 4291: IP Version 6 Addressing Architecture";
-   }
-
-   /*** collection of domain name and URI types ***/
-
-   typedef domain-name {
-     type string {
-       pattern '((([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.)*'
-            +  '([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.?)'
-            +  '|\.';
-       length "1..253";
-     }
-     description
-      "The domain-name type represents a DNS domain name.  The
-       name SHOULD be fully qualified whenever possible.
-
-       Internet domain names are only loosely specified.  Section
-       3.5 of RFC 1034 recommends a syntax (modified in Section
-       2.1 of RFC 1123).  The pattern above is intended to allow
-       for current practice in domain name use, and some possible
-       future expansion.  It is designed to hold various types of
-       domain names, including names used for A or AAAA records
-       (host names) and other records, such as SRV records.  Note
-       that Internet host names have a stricter syntax (described
-       in RFC 952) than the DNS recommendations in RFCs 1034 and
-       1123, and that systems that want to store host names in
-       schema nodes using the domain-name type are recommended to
-       adhere to this stricter standard to ensure interoperability.
-
-       The encoding of DNS names in the DNS protocol is limited
-       to 255 characters.  Since the encoding consists of labels
-       prefixed by a length bytes and there is a trailing NULL
-       byte, only 253 characters can appear in the textual dotted
-       notation.
-
-       The description clause of schema nodes using the domain-name
-       type MUST describe when and how these names are resolved to
-       IP addresses.  Note that the resolution of a domain-name value
-       may require to query multiple DNS records (e.g., A for IPv4
-       and AAAA for IPv6).  The order of the resolution process and
-       which DNS record takes precedence can either be defined
-       explicitely or it may depend on the configuration of the
-       resolver.
-
-       Domain-name values use the US-ASCII encoding.  Their canonical
-       format uses lowercase US-ASCII characters.  Internationalized
-       domain names MUST be encoded in punycode as described in RFC
-       3492";
-     reference
-      "RFC  952: DoD Internet Host Table Specification
-       RFC 1034: Domain Names - Concepts and Facilities
-       RFC 1123: Requirements for Internet Hosts -- Application
-                 and Support
-       RFC 2782: A DNS RR for specifying the location of services
-                 (DNS SRV)
-       RFC 3492: Punycode: A Bootstring encoding of Unicode for
-                 Internationalized Domain Names in Applications
-                 (IDNA)
-       RFC 5891: Internationalizing Domain Names in Applications
-                 (IDNA): Protocol";
-   }
-
-   typedef host {
-     type union {
-       type inet:ip-address;
-       type inet:domain-name;
-     }
-     description
-      "The host type represents either an IP address or a DNS
-       domain name.";
-   }
-
-   typedef uri {
-     type string;
-     description
-      "The uri type represents a Uniform Resource Identifier
-       (URI) as defined by STD 66.
-
-       Objects using the uri type MUST be in US-ASCII encoding,
-       and MUST be normalized as described by RFC 3986 Sections
-       6.2.1, 6.2.2.1, and 6.2.2.2.  All unnecessary
-       percent-encoding is removed, and all case-insensitive
-       characters are set to lowercase except for hexadecimal
-       digits, which are normalized to uppercase as described in
-       Section 6.2.2.1.
-
-       The purpose of this normalization is to help provide
-       unique URIs.  Note that this normalization is not
-       sufficient to provide uniqueness.  Two URIs that are
-       textually distinct after this normalization may still be
-       equivalent.
-
-       Objects using the uri type may restrict the schemes that
-       they permit.  For example, 'data:' and 'urn:' schemes
-       might not be appropriate.
-
-       A zero-length URI is not a valid URI.  This can be used to
-       express 'URI absent' where required.
-
-       In the value set and its semantics, this type is equivalent
-       to the Uri SMIv2 textual convention defined in RFC 5017.";
-     reference
-      "RFC 3986: Uniform Resource Identifier (URI): Generic Syntax
-       RFC 3305: Report from the Joint W3C/IETF URI Planning Interest
-                 Group: Uniform Resource Identifiers (URIs), URLs,
-                 and Uniform Resource Names (URNs): Clarifications
-                 and Recommendations
-       RFC 5017: MIB Textual Conventions for Uniform Resource
-                 Identifiers (URIs)";
-   }
-
- }
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-relative-xpath-models/ietf-interfaces@2012-11-15.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-relative-xpath-models/ietf-interfaces@2012-11-15.yang
deleted file mode 100644 (file)
index b9117d0..0000000
+++ /dev/null
@@ -1,565 +0,0 @@
-module ietf-interfaces {
-
-  namespace "urn:ietf:params:xml:ns:yang:ietf-interfaces";
-  prefix if;
-
-  import ietf-yang-types {
-    prefix yang;
-  }
-  import iana-if-type {
-    prefix ianaift;
-  }
-
-  organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-  contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     WG Chair: Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>
-
-     Editor:   Martin Bjorklund
-               <mailto:mbj@tail-f.com>";
-
-  description
-    "This module contains a collection of YANG definitions for
-     managing network interfaces.
-
-     Copyright (c) 2012 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or
-     without modification, is permitted pursuant to, and subject
-     to the license terms contained in, the Simplified BSD License
-     set forth in Section 4.c of the IETF Trust's Legal Provisions
-     Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC XXXX; see
-     the RFC itself for full legal notices.";
-
-  // RFC Ed.: replace XXXX with actual RFC number and remove this
-  // note.
-
-  // RFC Ed.: update the date below with the date of RFC publication
-  // and remove this note.
-  revision 2012-11-15 {
-    description
-      "Initial revision.";
-    reference
-      "RFC XXXX: A YANG Data Model for Interface Management";
-  }
-
-  /* Typedefs */
-
-  typedef interface-ref {
-    type leafref {
-      path "/if:interfaces/if:interface/if:name";
-    }
-    description
-      "This type is used by data models that need to reference
-       interfaces.";
-  }
-
-  /* Features */
-
-  feature arbitrary-names {
-    description
-      "This feature indicates that the server allows interfaces to
-       be named arbitrarily.";
-  }
-
-  feature if-mib {
-    description
-      "This feature indicates that the server implements IF-MIB.";
-    reference
-      "RFC 2863: The Interfaces Group MIB";
-  }
-
-  /* Data nodes */
-
-  container interfaces {
-    description
-      "Interface parameters.";
-
-    list interface {
-      key "name";
-      unique "type location";
-
-      description
-        "The list of interfaces on the device.";
-
-      leaf name {
-        type string;
-        description
-          "The name of the interface.
-
-           A device MAY restrict the allowed values for this leaf,
-           possibly depending on the type and location.
-
-           If the device allows arbitrarily named interfaces, the
-           feature 'arbitrary-names' is advertised.
-
-           This leaf MAY be mapped to ifName by an implementation.
-           Such an implementation MAY restrict the allowed values for
-           this leaf so that it matches the restrictions of ifName.
-           If a NETCONF server that implements this restriction is
-           sent a value that doesn't match the restriction, it MUST
-           reply with an rpc-error with the error-tag
-           'invalid-value'.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifName";
-      }
-
-      leaf description {
-        type string;
-        description
-          "A textual description of the interface.
-
-           This leaf MAY be mapped to ifAlias by an implementation.
-           Such an implementation MAY restrict the allowed values for
-           this leaf so that it matches the restrictions of ifAlias.
-           If a NETCONF server that implements this restriction is
-           sent a value that doesn't match the restriction, it MUST
-           reply with an rpc-error with the error-tag
-           'invalid-value'.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifAlias";
-      }
-
-      leaf type {
-        type ianaift:iana-if-type;
-        mandatory true;
-        description
-          "The type of the interface.
-
-           When an interface entry is created, a server MAY
-           initialize the type leaf with a valid value, e.g., if it
-           is possible to derive the type from the name of the
-           interface.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifType";
-      }
-
-      leaf location {
-        type string;
-        description
-          "The device-specific location of the interface of a
-           particular type.  The format of the location string
-           depends on the interface type and the device.
-
-           If the interface's type represents a physical interface,
-           this leaf MUST be set.
-
-           When an interface entry is created, a server MAY
-           initialize the location leaf with a valid value, e.g., if
-           it is possible to derive the location from the name of
-           the interface.";
-      }
-
-      leaf enabled {
-        type boolean;
-        default "true";
-        description
-          "The desired state of the interface.
-
-           This leaf contains the configured, desired state of the
-           interface.  Systems that implement the IF-MIB use the
-           value of this leaf to set IF-MIB.ifAdminStatus to 'up' or
-           'down' after an ifEntry has been initialized, as described
-           in RFC 2863.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifAdminStatus";
-      }
-
-      leaf oper-status {
-        type enumeration {
-          enum up {
-            value 1;
-            description
-              "Ready to pass packets.";
-          }
-          enum down {
-            value 2;
-            description
-              "The interface does not pass any packets.";
-          }
-          enum testing {
-            value 3;
-            description
-              "In some test mode.  No operational packets can
-               be passed.";
-          }
-          enum unknown {
-            value 4;
-            description
-              "Status cannot be determined for some reason.";
-          }
-          enum dormant {
-            value 5;
-            description
-              "Waiting for some external event.";
-          }
-          enum not-present {
-            value 6;
-            description
-              "Some component is missing.";
-          }
-          enum lower-layer-down {
-            value 7;
-            description
-              "Down due to state of lower-layer interface(s).";
-          }
-        }
-        config false;
-        description
-          "The current operational state of the interface.
-
-           If 'enabled' is 'false' then 'oper-status'
-           should be 'down'.  If 'enabled' is changed to 'true'
-           then 'oper-status' should change to 'up' if the interface
-           is ready to transmit and receive network traffic; it
-           should change to 'dormant' if the interface is waiting for
-           external actions (such as a serial line waiting for an
-           incoming connection); it should remain in the 'down' state
-           if and only if there is a fault that prevents it from
-           going to the 'up' state; it should remain in the
-           'not-present' state if the interface has missing
-           (typically, hardware) components.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifOperStatus";
-      }
-
-      leaf last-change {
-        type yang:date-and-time;
-        config false;
-        description
-          "The time the interface entered its current operational
-           state.  If the current state was entered prior to the
-           last re-initialization of the local network management
-           subsystem, then this node is not present.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifLastChange";
-      }
-
-      leaf if-index {
-        if-feature if-mib;
-        type int32 {
-          range "1..2147483647";
-        }
-        config false;
-        description
-          "The ifIndex value for the ifEntry represented by this
-           interface.
-
-           Media-specific modules must specify how the type is
-           mapped to entries in the ifTable.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifIndex";
-      }
-
-      leaf link-up-down-trap-enable {
-        if-feature if-mib;
-        type enumeration {
-          enum enabled {
-            value 1;
-          }
-          enum disabled {
-            value 2;
-          }
-        }
-        description
-          "Indicates whether linkUp/linkDown SNMP notifications
-           should be generated for this interface.
-           If this node is not configured, the value 'enabled' is
-           operationally used by the server for interfaces which do
-           not operate on top of any other interface (i.e., there are
-           no 'lower-layer-if' entries), and 'disabled' otherwise.";
-        reference
-          "RFC 2863: The Interfaces Group MIB -
-                     ifLinkUpDownTrapEnable";
-      }
-
-      leaf phys-address {
-        type yang:phys-address;
-        config false;
-        description
-          "The interface's address at its protocol sub-layer.  For
-          example, for an 802.x interface, this object normally
-          contains a MAC address.  The interface's media-specific
-          modules must define the bit and byte ordering and the
-          format of the value of this object.  For interfaces that do
-          not have such an address (e.g., a serial line), this node
-          is not present.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifPhysAddress";
-      }
-
-      leaf-list higher-layer-if {
-        type interface-ref;
-        config false;
-        description
-          "A list of references to interfaces layered on top of this
-           interface.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifStackTable";
-      }
-
-      leaf-list lower-layer-if {
-        type interface-ref;
-        config false;
-        description
-          "A list of references to interfaces layered underneath this
-           interface.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifStackTable";
-      }
-
-      leaf speed {
-        type yang:gauge64;
-        units "bits / second";
-        config false;
-        description
-            "An estimate of the interface's current bandwidth in bits
-             per second.  For interfaces which do not vary in
-             bandwidth or for those where no accurate estimation can
-             be made, this node should contain the nominal bandwidth.
-             For interfaces that has no concept of bandwidth, this
-             node is not present.";
-        reference
-          "RFC 2863: The Interfaces Group MIB -
-                     ifSpeed, ifHighSpeed";
-      }
-
-      container statistics {
-        config false;
-        description
-          "A collection of interface-related statistics objects.";
-
-        leaf discontinuity-time {
-          type yang:date-and-time;
-          description
-            "The time on the most recent occasion at which any one or
-             more of this interface's counters suffered a
-             discontinuity.  If no such discontinuities have occurred
-             since the last re-initialization of the local management
-             subsystem, then this node contains the time the local
-             management subsystem re-initialized itself.";
-        }
-
-        leaf in-octets {
-          type yang:counter64;
-          description
-            "The total number of octets received on the interface,
-             including framing characters.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifHCInOctets";
-        }
-        leaf in-unicast-pkts {
-          type yang:counter64;
-          description
-            "The number of packets, delivered by this sub-layer to a
-             higher (sub-)layer, which were not addressed to a
-             multicast or broadcast address at this sub-layer.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifHCInUcastPkts";
-        }
-        leaf in-broadcast-pkts {
-          type yang:counter64;
-          description
-            "The number of packets, delivered by this sub-layer to a
-             higher (sub-)layer, which were addressed to a broadcast
-             address at this sub-layer.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB -
-                       ifHCInBroadcastPkts";
-        }
-        leaf in-multicast-pkts {
-          type yang:counter64;
-          description
-            "The number of packets, delivered by this sub-layer to a
-             higher (sub-)layer, which were addressed to a multicast
-             address at this sub-layer.  For a MAC layer protocol,
-             this includes both Group and Functional addresses.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB -
-                       ifHCInMulticastPkts";
-        }
-        leaf in-discards {
-          type yang:counter32;
-          description
-            "The number of inbound packets which were chosen to be
-             discarded even though no errors had been detected to
-             prevent their being deliverable to a higher-layer
-             protocol.  One possible reason for discarding such a
-             packet could be to free up buffer space.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifInDiscards";
-        }
-        leaf in-errors {
-          type yang:counter32;
-          description
-            "For packet-oriented interfaces, the number of inbound
-             packets that contained errors preventing them from being
-             deliverable to a higher-layer protocol.  For character-
-             oriented or fixed-length interfaces, the number of
-             inbound transmission units that contained errors
-             preventing them from being deliverable to a higher-layer
-             protocol.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifInErrors";
-        }
-        leaf in-unknown-protos {
-          type yang:counter32;
-          description
-            "For packet-oriented interfaces, the number of packets
-             received via the interface which were discarded because
-             of an unknown or unsupported protocol.  For
-             character-oriented or fixed-length interfaces that
-             support protocol multiplexing the number of transmission
-             units received via the interface which were discarded
-             because of an unknown or unsupported protocol.  For any
-             interface that does not support protocol multiplexing,
-             this counter is not present.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifInUnknownProtos";
-        }
-
-        leaf out-octets {
-          type yang:counter64;
-          description
-            "The total number of octets transmitted out of the
-             interface, including framing characters.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifHCOutOctets";
-        }
-        leaf out-unicast-pkts {
-          type yang:counter64;
-          description
-            "The total number of packets that higher-level protocols
-             requested be transmitted, and which were not addressed
-             to a multicast or broadcast address at this sub-layer,
-             including those that were discarded or not sent.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifHCOutUcastPkts";
-        }
-        leaf out-broadcast-pkts {
-          type yang:counter64;
-          description
-            "The total number of packets that higher-level protocols
-             requested be transmitted, and which were addressed to a
-             broadcast address at this sub-layer, including those
-             that were discarded or not sent.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB -
-                       ifHCOutBroadcastPkts";
-        }
-        leaf out-multicast-pkts {
-          type yang:counter64;
-          description
-            "The total number of packets that higher-level protocols
-             requested be transmitted, and which were addressed to a
-             multicast address at this sub-layer, including those
-             that were discarded or not sent.  For a MAC layer
-             protocol, this includes both Group and Functional
-             addresses.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB -
-                       ifHCOutMulticastPkts";
-        }
-        leaf out-discards {
-          type yang:counter32;
-          description
-            "The number of outbound packets which were chosen to be
-             discarded even though no errors had been detected to
-             prevent their being transmitted.  One possible reason
-             for discarding such a packet could be to free up buffer
-             space.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifOutDiscards";
-        }
-        leaf out-errors {
-          type yang:counter32;
-          description
-            "For packet-oriented interfaces, the number of outbound
-             packets that could not be transmitted because of errors.
-             For character-oriented or fixed-length interfaces, the
-             number of outbound transmission units that could not be
-             transmitted because of errors.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifOutErrors";
-        }
-      }
-    }
-  }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-relative-xpath-models/ietf-yang-types@2010-09-24.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-relative-xpath-models/ietf-yang-types@2010-09-24.yang
deleted file mode 100644 (file)
index e9d88ab..0000000
+++ /dev/null
@@ -1,396 +0,0 @@
- module ietf-yang-types {
-
-   namespace "urn:ietf:params:xml:ns:yang:ietf-yang-types";
-   prefix "yang";
-
-   organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-   contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Partain
-               <mailto:david.partain@ericsson.com>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     Editor:   Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>";
-
-   description
-    "This module contains a collection of generally useful derived
-     YANG data types.
-
-     Copyright (c) 2010 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or without
-     modification, is permitted pursuant to, and subject to the license
-     terms contained in, the Simplified BSD License set forth in Section
-     4.c of the IETF Trust's Legal Provisions Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC 6021; see
-     the RFC itself for full legal notices.";
-
-   revision 2010-09-24 {
-     description
-      "Initial revision.";
-     reference
-      "RFC 6021: Common YANG Data Types";
-   }
-
-   /*** collection of counter and gauge types ***/
-
-   typedef counter32 {
-     type uint32;
-     description
-      "The counter32 type represents a non-negative integer
-       that monotonically increases until it reaches a
-       maximum value of 2^32-1 (4294967295 decimal), when it
-       wraps around and starts increasing again from zero.
-
-       Counters have no defined 'initial' value, and thus, a
-       single value of a counter has (in general) no information
-       content.  Discontinuities in the monotonically increasing
-       value normally occur at re-initialization of the
-       management system, and at other times as specified in the
-       description of a schema node using this type.  If such
-       other times can occur, for example, the creation of
-       a schema node of type counter32 at times other than
-       re-initialization, then a corresponding schema node
-       should be defined, with an appropriate type, to indicate
-       the last discontinuity.
-
-       The counter32 type should not be used for configuration
-       schema nodes.  A default statement SHOULD NOT be used in
-       combination with the type counter32.
-
-       In the value set and its semantics, this type is equivalent
-       to the Counter32 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef zero-based-counter32 {
-     type yang:counter32;
-     default "0";
-     description
-      "The zero-based-counter32 type represents a counter32
-       that has the defined 'initial' value zero.
-
-       A schema node of this type will be set to zero (0) on creation
-       and will thereafter increase monotonically until it reaches
-       a maximum value of 2^32-1 (4294967295 decimal), when it
-       wraps around and starts increasing again from zero.
-
-       Provided that an application discovers a new schema node
-       of this type within the minimum time to wrap, it can use the
-       'initial' value as a delta.  It is important for a management
-       station to be aware of this minimum time and the actual time
-       between polls, and to discard data if the actual time is too
-       long or there is no defined minimum time.
-
-       In the value set and its semantics, this type is equivalent
-       to the ZeroBasedCounter32 textual convention of the SMIv2.";
-     reference
-       "RFC 4502: Remote Network Monitoring Management Information
-                  Base Version 2";
-   }
-
-   typedef counter64 {
-     type uint64;
-     description
-      "The counter64 type represents a non-negative integer
-       that monotonically increases until it reaches a
-       maximum value of 2^64-1 (18446744073709551615 decimal),
-       when it wraps around and starts increasing again from zero.
-
-       Counters have no defined 'initial' value, and thus, a
-       single value of a counter has (in general) no information
-       content.  Discontinuities in the monotonically increasing
-       value normally occur at re-initialization of the
-       management system, and at other times as specified in the
-       description of a schema node using this type.  If such
-       other times can occur, for example, the creation of
-       a schema node of type counter64 at times other than
-       re-initialization, then a corresponding schema node
-       should be defined, with an appropriate type, to indicate
-       the last discontinuity.
-
-       The counter64 type should not be used for configuration
-       schema nodes.  A default statement SHOULD NOT be used in
-       combination with the type counter64.
-
-       In the value set and its semantics, this type is equivalent
-       to the Counter64 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef zero-based-counter64 {
-     type yang:counter64;
-     default "0";
-     description
-      "The zero-based-counter64 type represents a counter64 that
-       has the defined 'initial' value zero.
-
-       A schema node of this type will be set to zero (0) on creation
-       and will thereafter increase monotonically until it reaches
-       a maximum value of 2^64-1 (18446744073709551615 decimal),
-       when it wraps around and starts increasing again from zero.
-
-       Provided that an application discovers a new schema node
-       of this type within the minimum time to wrap, it can use the
-       'initial' value as a delta.  It is important for a management
-       station to be aware of this minimum time and the actual time
-       between polls, and to discard data if the actual time is too
-       long or there is no defined minimum time.
-
-       In the value set and its semantics, this type is equivalent
-       to the ZeroBasedCounter64 textual convention of the SMIv2.";
-     reference
-      "RFC 2856: Textual Conventions for Additional High Capacity
-                 Data Types";
-   }
-
-   typedef gauge32 {
-     type uint32;
-     description
-      "The gauge32 type represents a non-negative integer, which
-       may increase or decrease, but shall never exceed a maximum
-       value, nor fall below a minimum value.  The maximum value
-       cannot be greater than 2^32-1 (4294967295 decimal), and
-       the minimum value cannot be smaller than 0.  The value of
-       a gauge32 has its maximum value whenever the information
-       being modeled is greater than or equal to its maximum
-       value, and has its minimum value whenever the information
-       being modeled is smaller than or equal to its minimum value.
-       If the information being modeled subsequently decreases
-       below (increases above) the maximum (minimum) value, the
-       gauge32 also decreases (increases).
-
-       In the value set and its semantics, this type is equivalent
-       to the Gauge32 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef gauge64 {
-     type uint64;
-     description
-      "The gauge64 type represents a non-negative integer, which
-       may increase or decrease, but shall never exceed a maximum
-       value, nor fall below a minimum value.  The maximum value
-       cannot be greater than 2^64-1 (18446744073709551615), and
-       the minimum value cannot be smaller than 0.  The value of
-       a gauge64 has its maximum value whenever the information
-       being modeled is greater than or equal to its maximum
-       value, and has its minimum value whenever the information
-       being modeled is smaller than or equal to its minimum value.
-       If the information being modeled subsequently decreases
-       below (increases above) the maximum (minimum) value, the
-       gauge64 also decreases (increases).
-
-       In the value set and its semantics, this type is equivalent
-       to the CounterBasedGauge64 SMIv2 textual convention defined
-       in RFC 2856";
-     reference
-      "RFC 2856: Textual Conventions for Additional High Capacity
-                 Data Types";
-   }
-
-   /*** collection of identifier related types ***/
-
-   typedef object-identifier {
-     type string {
-       pattern '(([0-1](\.[1-3]?[0-9]))|(2\.(0|([1-9]\d*))))'
-             + '(\.(0|([1-9]\d*)))*';
-     }
-     description
-      "The object-identifier type represents administratively
-       assigned names in a registration-hierarchical-name tree.
-
-       Values of this type are denoted as a sequence of numerical
-       non-negative sub-identifier values.  Each sub-identifier
-       value MUST NOT exceed 2^32-1 (4294967295).  Sub-identifiers
-       are separated by single dots and without any intermediate
-       whitespace.
-
-       The ASN.1 standard restricts the value space of the first
-       sub-identifier to 0, 1, or 2.  Furthermore, the value space
-       of the second sub-identifier is restricted to the range
-       0 to 39 if the first sub-identifier is 0 or 1.  Finally,
-       the ASN.1 standard requires that an object identifier
-       has always at least two sub-identifier.  The pattern
-       captures these restrictions.
-
-       Although the number of sub-identifiers is not limited,
-       module designers should realize that there may be
-       implementations that stick with the SMIv2 limit of 128
-       sub-identifiers.
-
-       This type is a superset of the SMIv2 OBJECT IDENTIFIER type
-       since it is not restricted to 128 sub-identifiers.  Hence,
-       this type SHOULD NOT be used to represent the SMIv2 OBJECT
-       IDENTIFIER type, the object-identifier-128 type SHOULD be
-       used instead.";
-     reference
-      "ISO9834-1: Information technology -- Open Systems
-       Interconnection -- Procedures for the operation of OSI
-       Registration Authorities: General procedures and top
-       arcs of the ASN.1 Object Identifier tree";
-   }
-
-
-
-
-   typedef object-identifier-128 {
-     type object-identifier {
-       pattern '\d*(\.\d*){1,127}';
-     }
-     description
-      "This type represents object-identifiers restricted to 128
-       sub-identifiers.
-
-       In the value set and its semantics, this type is equivalent
-       to the OBJECT IDENTIFIER type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   /*** collection of date and time related types ***/
-
-   typedef date-and-time {
-     type string {
-       pattern '\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?'
-             + '(Z|[\+\-]\d{2}:\d{2})';
-     }
-     description
-      "The date-and-time type is a profile of the ISO 8601
-       standard for representation of dates and times using the
-       Gregorian calendar.  The profile is defined by the
-       date-time production in Section 5.6 of RFC 3339.
-
-       The date-and-time type is compatible with the dateTime XML
-       schema type with the following notable exceptions:
-
-       (a) The date-and-time type does not allow negative years.
-
-       (b) The date-and-time time-offset -00:00 indicates an unknown
-           time zone (see RFC 3339) while -00:00 and +00:00 and Z all
-           represent the same time zone in dateTime.
-
-       (c) The canonical format (see below) of data-and-time values
-           differs from the canonical format used by the dateTime XML
-           schema type, which requires all times to be in UTC using the
-           time-offset 'Z'.
-
-       This type is not equivalent to the DateAndTime textual
-       convention of the SMIv2 since RFC 3339 uses a different
-       separator between full-date and full-time and provides
-       higher resolution of time-secfrac.
-
-       The canonical format for date-and-time values with a known time
-       zone uses a numeric time zone offset that is calculated using
-       the device's configured known offset to UTC time.  A change of
-       the device's offset to UTC time will cause date-and-time values
-       to change accordingly.  Such changes might happen periodically
-       in case a server follows automatically daylight saving time
-       (DST) time zone offset changes.  The canonical format for
-       date-and-time values with an unknown time zone (usually referring
-       to the notion of local time) uses the time-offset -00:00.";
-     reference
-      "RFC 3339: Date and Time on the Internet: Timestamps
-       RFC 2579: Textual Conventions for SMIv2
-       XSD-TYPES: XML Schema Part 2: Datatypes Second Edition";
-   }
-
-   typedef timeticks {
-     type uint32;
-     description
-      "The timeticks type represents a non-negative integer that
-       represents the time, modulo 2^32 (4294967296 decimal), in
-       hundredths of a second between two epochs.  When a schema
-       node is defined that uses this type, the description of
-       the schema node identifies both of the reference epochs.
-
-       In the value set and its semantics, this type is equivalent
-       to the TimeTicks type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef timestamp {
-     type yang:timeticks;
-     description
-      "The timestamp type represents the value of an associated
-       timeticks schema node at which a specific occurrence happened.
-       The specific occurrence must be defined in the description
-       of any schema node defined using this type.  When the specific
-       occurrence occurred prior to the last time the associated
-       timeticks attribute was zero, then the timestamp value is
-       zero.  Note that this requires all timestamp values to be
-       reset to zero when the value of the associated timeticks
-       attribute reaches 497+ days and wraps around to zero.
-
-       The associated timeticks schema node must be specified
-       in the description of any schema node using this type.
-
-       In the value set and its semantics, this type is equivalent
-       to the TimeStamp textual convention of the SMIv2.";
-     reference
-      "RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   /*** collection of generic address types ***/
-
-   typedef phys-address {
-     type string {
-       pattern '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?';
-     }
-     description
-      "Represents media- or physical-level addresses represented
-       as a sequence octets, each octet represented by two hexadecimal
-       numbers.  Octets are separated by colons.  The canonical
-       representation uses lowercase characters.
-
-       In the value set and its semantics, this type is equivalent
-       to the PhysAddress textual convention of the SMIv2.";
-     reference
-      "RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   typedef mac-address {
-     type string {
-       pattern '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}';
-     }
-     description
-      "The mac-address type represents an IEEE 802 MAC address.
-       The canonical representation uses lowercase characters.
-
-       In the value set and its semantics, this type is equivalent
-       to the MacAddress textual convention of the SMIv2.";
-     reference
-      "IEEE 802: IEEE Standard for Local and Metropolitan Area
-                 Networks: Overview and Architecture
-       RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   /*** collection of XML specific types ***/
-
-   typedef xpath1.0 {
-     type string;
-     description
-      "This type represents an XPATH 1.0 expression.
-
-       When a schema node is defined that uses this type, the
-       description of the schema node MUST specify the XPath
-       context in which the XPath expression is evaluated.";
-     reference
-      "XPATH: XML Path Language (XPath) Version 1.0";
-   }
-
- }
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/abstract-topology@2013-02-08.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/abstract-topology@2013-02-08.yang
deleted file mode 100644 (file)
index d80a3e9..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-module abstract-topology {
-    yang-version 1;
-    namespace "urn:model:abstract:topology";
-    prefix "tp";
-
-    import ietf-inet-types { 
-        prefix "inet"; 
-        revision-date 2010-09-24;
-    }
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    description
-        "This module contains the definitions of elements that creates network 
-    topology i.e. definition of network nodes and links. This module is not designed 
-    to be used solely for network representation. This module SHOULD be used as base 
-    module in defining the network topology.";
-
-    revision "2013-02-08" {
-        reference "http://www.opendaylight.org/";
-    }
-    
-    typedef node-id-ref {
-        type leafref {
-            path "/tp:topology/tp:network-nodes/tp:network-node/tp:node-id";
-        }
-        description "This type is used for leafs that reference network node instance.";
-    }
-
-    typedef link-id-ref {
-        type leafref {
-            path "/tp:topology/tp:network-links/tp:network-link/tp:link-id";
-        }
-        description "This type is used for leafs that reference network link instance.";
-    }
-
-    container topology {
-        description "This is the model of abstract topology which contains 
-        only Network Nodes and Network Links. Each topology MUST be identified by unique 
-        topology-id for reason that the store could contain many topologies.";
-
-        leaf topology-id {
-            type inet:uri;
-            description "It is presumed that datastore will contain many topologies. 
-            To distinguish between topologies it is vital to have
-            UNIQUE topology identifier.";
-        }
-
-        container network-nodes {
-            list network-node {
-                key "node-id";
-
-                leaf node-id {
-                    type inet:uri;
-                    description "The Topology identifier of network-node.";
-                }
-
-                container attributes {
-                    description "Aditional attributes that can Network Node contains.";
-                }
-                description "The list of network nodes defined for topology.";
-            }
-        }
-        
-        container network-links {
-            list network-link {
-                key "link-id";
-
-                leaf link-id {
-                    type inet:uri;
-                    description "";
-                }
-
-                container source-node {
-                    leaf id {
-                        type node-id-ref;
-                        description "Source node identifier.";
-                    }
-                }
-
-                container destination-node {
-                    leaf id {
-                        type node-id-ref;
-                        description "Destination node identifier.";
-                    }
-                }
-
-                container attributes {
-                    description "Aditional attributes that can Network Link contains.";
-                }
-                description "The Network Link which is defined by Local (Source) and Remote (Destination) 
-                Network Nodes. Every link MUST be defined either by identifier and
-                his local and remote Network Nodes (In real applications it is common that 
-                many links are originated from one node and end up in same remote node). 
-                To ensure that we would always know to distinguish between links, every link 
-                SHOULD have identifier.";
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/augment-abstract-topology@2013-05-03.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/augment-abstract-topology@2013-05-03.yang
deleted file mode 100644 (file)
index 21d5179..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-module augment-abstract-topology {
-    yang-version 1;
-    namespace "urn:model:augment:abstract:topology";
-    prefix "atp";
-
-    import ietf-inet-types { 
-        prefix "inet";
-        revision-date 2010-09-24;
-    }
-
-    import ietf-interfaces {
-        prefix "if";
-        revision-date 2012-11-15;
-    }
-
-    import abstract-topology {
-        prefix "at";
-        revision-date 2013-02-08;
-    }
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision "2013-05-03" {
-        reference "http://www.opendaylight.org/";
-    }
-
-    augment "at:topology" {
-        container interfaces {
-            list interface {
-                key "interface-id";
-
-                leaf interface-id {
-                    type leafref {
-                        path "/if:interfaces/if:interface/if:name";
-                    }
-                }
-
-                leaf-list higher-layer-if {
-                    type leafref {
-                        path "/if:interfaces/if:interface/if:higher-layer-if";
-                    }
-                }
-            }
-        }
-    }
-
-    augment "at:topology/at:network-links/at:network-link" {
-        container tunnels {
-            list tunnel {
-                key "tunnel-id";
-
-                leaf tunnel-id {
-                    type int32;
-                }
-                
-                container foo {
-                    leaf bar {
-                        type string;
-                    }
-                }
-            }
-        }
-    }
-
-    augment "at:topology/at:network-links/at:network-link" {
-        leaf interface {
-            type leafref {
-                path "/at:topology/atp:interfaces/atp:interface/atp:interface-id";
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/augment-network-link-attributes@2013-05-03.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/augment-network-link-attributes@2013-05-03.yang
deleted file mode 100644 (file)
index 459a359..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-module augment-network-link-attributes {
-    yang-version 1;
-    namespace "urn:model:augment:network:link:attributes";
-    prefix "tp";
-
-    import abstract-topology {
-        prefix "at";
-        revision-date 2013-02-08;
-    }
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision "2013-05-03" {
-        reference "http://www.opendaylight.org/";
-    }
-
-    augment "at:topology/at:network-links/at:network-link/at:attributes" {
-        leaf longitude {
-            type decimal64 {    
-                fraction-digits 2;
-            }
-        }
-
-        leaf latitude {
-            type decimal64 {    
-                fraction-digits 2;
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/augment-topology-tunnels@2013-05-03.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/augment-topology-tunnels@2013-05-03.yang
deleted file mode 100644 (file)
index 2d3c92c..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-module augment-topology-tunnels {
-    yang-version 1;
-    namespace "urn:model:augment:topology:tunnels";
-    prefix "tp";
-
-    import abstract-topology {
-        prefix "at";
-        revision-date 2013-02-08;
-    }
-
-    import augment-abstract-topology {
-        prefix "aug-at";
-        revision-date 2013-05-03;
-    }
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision "2013-05-03" {
-        reference "http://www.opendaylight.org/";
-    }
-
-    augment "at:topology/at:network-links/at:network-link/aug-at:tunnels/aug-at:tunnel" {
-        leaf tunnel-name {
-            type string;
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/iana-if-type@2012-06-05.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/iana-if-type@2012-06-05.yang
deleted file mode 100644 (file)
index a7fa137..0000000
+++ /dev/null
@@ -1,1516 +0,0 @@
-module iana-if-type {
-  namespace "urn:ietf:params:xml:ns:yang:iana-if-type";
-  prefix ianaift;
-
-  organization "IANA";
-  contact
-    "        Internet Assigned Numbers Authority
-
-     Postal: ICANN
-             4676 Admiralty Way, Suite 330
-             Marina del Rey, CA 90292
-
-     Tel:    +1 310 823 9358
-     E-Mail: iana&iana.org";
-  description
-    "This YANG module defines the iana-if-type typedef, which
-     contains YANG definitions for IANA-registered interface types.
-
-     This YANG module is maintained by IANA, and reflects the
-     'ifType definitions' registry.
-
-     The latest revision of this YANG module can be obtained from
-     the IANA web site.
-
-     Copyright (c) 2011 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or
-     without modification, is permitted pursuant to, and subject
-     to the license terms contained in, the Simplified BSD License
-     set forth in Section 4.c of the IETF Trust's Legal Provisions
-     Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC XXXX; see
-     the RFC itself for full legal notices.";
-  // RFC Ed.: replace XXXX with actual RFC number and remove this
-  // note.
-
-  // RFC Ed.: update the date below with the date of RFC publication
-  // and remove this note.
-  revision 2012-06-05 {
-    description
-      "Initial revision.";
-    reference
-      "RFC XXXX: TITLE";
-  }
-
-  typedef iana-if-type {
-    type enumeration {
-      enum "other" {
-        value 1;
-        description
-          "None of the following";
-      }
-      enum "regular1822" {
-        value 2;
-      }
-      enum "hdh1822" {
-        value 3;
-      }
-      enum "ddnX25" {
-        value 4;
-      }
-      enum "rfc877x25" {
-        value 5;
-        reference
-          "RFC 1382 - SNMP MIB Extension for the X.25 Packet Layer";
-      }
-      enum "ethernetCsmacd" {
-        value 6;
-        description
-          "For all ethernet-like interfaces, regardless of speed,
-           as per RFC3635.";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "iso88023Csmacd" {
-        value 7;
-        status deprecated;
-        description
-          "Deprecated via RFC3635.
-           Use ethernetCsmacd(6) instead.";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "iso88024TokenBus" {
-        value 8;
-      }
-      enum "iso88025TokenRing" {
-        value 9;
-      }
-      enum "iso88026Man" {
-        value 10;
-      }
-      enum "starLan" {
-        value 11;
-        status deprecated;
-        description
-          "Deprecated via RFC3635.
-           Use ethernetCsmacd(6) instead.";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "proteon10Mbit" {
-        value 12;
-      }
-      enum "proteon80Mbit" {
-        value 13;
-      }
-      enum "hyperchannel" {
-        value 14;
-      }
-      enum "fddi" {
-        value 15;
-        reference
-          "RFC 1512 - FDDI Management Information Base";
-      }
-      enum "lapb" {
-        value 16;
-        reference
-          "RFC 1381 - SNMP MIB Extension for X.25 LAPB";
-      }
-      enum "sdlc" {
-        value 17;
-      }
-      enum "ds1" {
-        value 18;
-        description
-          "DS1-MIB";
-        reference
-          "RFC 4805 - Definitions of Managed Objects for the
-                      DS1, J1, E1, DS2, and E2 Interface Types";
-      }
-      enum "e1" {
-        value 19;
-        status obsolete;
-        description
-          "Obsolete see DS1-MIB";
-        reference
-          "RFC 4805 - Definitions of Managed Objects for the
-                      DS1, J1, E1, DS2, and E2 Interface Types";
-      }
-      enum "basicISDN" {
-        value 20;
-        description
-          "see also RFC2127";
-      }
-      enum "primaryISDN" {
-        value 21;
-      }
-      enum "propPointToPointSerial" {
-        value 22;
-        description
-          "proprietary serial";
-      }
-      enum "ppp" {
-        value 23;
-      }
-      enum "softwareLoopback" {
-        value 24;
-      }
-      enum "eon" {
-        value 25;
-        description
-          "CLNP over IP";
-      }
-      enum "ethernet3Mbit" {
-        value 26;
-      }
-      enum "nsip" {
-        value 27;
-        description
-          "XNS over IP";
-      }
-      enum "slip" {
-        value 28;
-        description
-          "generic SLIP";
-      }
-      enum "ultra" {
-        value 29;
-        description
-          "ULTRA technologies";
-      }
-      enum "ds3" {
-        value 30;
-        description
-          "DS3-MIB";
-        reference
-          "RFC 3896 - Definitions of Managed Objects for the
-                      DS3/E3 Interface Type";
-      }
-      enum "sip" {
-        value 31;
-        description
-          "SMDS, coffee";
-        reference
-          "RFC 1694 - Definitions of Managed Objects for SMDS
-                      Interfaces using SMIv2";
-      }
-      enum "frameRelay" {
-        value 32;
-        description
-          "DTE only.";
-        reference
-          "RFC 2115 - Management Information Base for Frame Relay
-                      DTEs Using SMIv2";
-      }
-      enum "rs232" {
-        value 33;
-        reference
-          "RFC 1659 - Definitions of Managed Objects for RS-232-like
-                      Hardware Devices using SMIv2";
-      }
-      enum "para" {
-        value 34;
-        description
-          "parallel-port";
-        reference
-          "RFC 1660 - Definitions of Managed Objects for
-                      Parallel-printer-like Hardware Devices using
-                      SMIv2";
-      }
-      enum "arcnet" {
-        value 35;
-        description
-          "arcnet";
-      }
-      enum "arcnetPlus" {
-        value 36;
-        description
-          "arcnet plus";
-      }
-      enum "atm" {
-        value 37;
-        description
-          "ATM cells";
-      }
-      enum "miox25" {
-        value 38;
-        reference
-          "RFC 1461 - SNMP MIB extension for Multiprotocol
-                      Interconnect over X.25";
-      }
-      enum "sonet" {
-        value 39;
-        description
-          "SONET or SDH";
-      }
-      enum "x25ple" {
-        value 40;
-        reference
-          "RFC 2127 - ISDN Management Information Base using SMIv2";
-      }
-      enum "iso88022llc" {
-        value 41;
-      }
-      enum "localTalk" {
-        value 42;
-      }
-      enum "smdsDxi" {
-        value 43;
-      }
-      enum "frameRelayService" {
-        value 44;
-        description
-          "FRNETSERV-MIB";
-        reference
-          "RFC 2954 - Definitions of Managed Objects for Frame
-                      Relay Service";
-      }
-      enum "v35" {
-        value 45;
-      }
-      enum "hssi" {
-        value 46;
-      }
-      enum "hippi" {
-        value 47;
-      }
-      enum "modem" {
-        value 48;
-        description
-          "Generic modem";
-      }
-      enum "aal5" {
-        value 49;
-        description
-          "AAL5 over ATM";
-      }
-      enum "sonetPath" {
-        value 50;
-      }
-      enum "sonetVT" {
-        value 51;
-      }
-      enum "smdsIcip" {
-        value 52;
-        description
-          "SMDS InterCarrier Interface";
-      }
-      enum "propVirtual" {
-        value 53;
-        description
-          "proprietary virtual/internal";
-        reference
-          "RFC 2863 - The Interfaces Group MIB";
-      }
-      enum "propMultiplexor" {
-        value 54;
-        description
-          "proprietary multiplexing";
-        reference
-          "RFC 2863 - The Interfaces Group MIB";
-      }
-      enum "ieee80212" {
-        value 55;
-        description
-          "100BaseVG";
-      }
-      enum "fibreChannel" {
-        value 56;
-        description
-          "Fibre Channel";
-      }
-      enum "hippiInterface" {
-        value 57;
-        description
-          "HIPPI interfaces";
-      }
-      enum "frameRelayInterconnect" {
-        value 58;
-        status obsolete;
-        description
-          "Obsolete use either
-           frameRelay(32) or frameRelayService(44).";
-      }
-      enum "aflane8023" {
-        value 59;
-        description
-          "ATM Emulated LAN for 802.3";
-      }
-      enum "aflane8025" {
-        value 60;
-        description
-          "ATM Emulated LAN for 802.5";
-      }
-      enum "cctEmul" {
-        value 61;
-        description
-         "ATM Emulated circuit";
-      }
-      enum "fastEther" {
-        value 62;
-        status deprecated;
-        description
-          "Obsoleted via RFC3635.
-          ethernetCsmacd(6) should be used instead";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "isdn" {
-        value 63;
-        description
-          "ISDN and X.25";
-        reference
-          "RFC 1356 - Multiprotocol Interconnect on X.25 and ISDN
-                      in the Packet Mode";
-      }
-      enum "v11" {
-        value 64;
-        description
-         "CCITT V.11/X.21";
-      }
-      enum "v36" {
-        value 65;
-        description
-          "CCITT V.36";
-      }
-      enum "g703at64k" {
-        value 66;
-        description
-          "CCITT G703 at 64Kbps";
-      }
-      enum "g703at2mb" {
-        value 67;
-        status obsolete;
-        description
-          "Obsolete see DS1-MIB";
-      }
-      enum "qllc" {
-        value 68;
-        description
-          "SNA QLLC";
-      }
-      enum "fastEtherFX" {
-        value 69;
-        status deprecated;
-        description
-          "Obsoleted via RFC3635
-          ethernetCsmacd(6) should be used instead";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "channel" {
-        value 70;
-        description
-          "channel";
-      }
-      enum "ieee80211" {
-        value 71;
-        description
-          "radio spread spectrum";
-      }
-      enum "ibm370parChan" {
-        value 72;
-        description
-          "IBM System 360/370 OEMI Channel";
-      }
-      enum "escon" {
-        value 73;
-        description
-          "IBM Enterprise Systems Connection";
-      }
-      enum "dlsw" {
-        value 74;
-        description
-          "Data Link Switching";
-      }
-      enum "isdns" {
-        value 75;
-        description
-          "ISDN S/T interface";
-      }
-      enum "isdnu" {
-        value 76;
-        description
-          "ISDN U interface";
-      }
-      enum "lapd" {
-        value 77;
-        description
-          "Link Access Protocol D";
-      }
-      enum "ipSwitch" {
-        value 78;
-        description
-          "IP Switching Objects";
-      }
-      enum "rsrb" {
-        value 79;
-        description
-          "Remote Source Route Bridging";
-      }
-      enum "atmLogical" {
-        value 80;
-        description
-          "ATM Logical Port";
-        reference
-          "RFC 3606 - Definitions of Supplemental Managed Objects
-                      for ATM Interface";
-      }
-      enum "ds0" {
-        value 81;
-        description
-          "Digital Signal Level 0";
-        reference
-          "RFC 2494 - Definitions of Managed Objects for the DS0
-                      and DS0 Bundle Interface Type";
-      }
-      enum "ds0Bundle" {
-        value 82;
-        description
-          "group of ds0s on the same ds1";
-        reference
-          "RFC 2494 - Definitions of Managed Objects for the DS0
-                      and DS0 Bundle Interface Type";
-      }
-      enum "bsc" {
-        value 83;
-        description
-          "Bisynchronous Protocol";
-      }
-      enum "async" {
-        value 84;
-        description
-          "Asynchronous Protocol";
-      }
-      enum "cnr" {
-        value 85;
-        description
-          "Combat Net Radio";
-      }
-      enum "iso88025Dtr" {
-        value 86;
-        description
-          "ISO 802.5r DTR";
-      }
-      enum "eplrs" {
-        value 87;
-        description
-          "Ext Pos Loc Report Sys";
-      }
-      enum "arap" {
-        value 88;
-        description
-          "Appletalk Remote Access Protocol";
-      }
-      enum "propCnls" {
-        value 89;
-        description
-          "Proprietary Connectionless Protocol";
-      }
-      enum "hostPad" {
-        value 90;
-        description
-          "CCITT-ITU X.29 PAD Protocol";
-      }
-      enum "termPad" {
-        value 91;
-        description
-          "CCITT-ITU X.3 PAD Facility";
-      }
-      enum "frameRelayMPI" {
-        value 92;
-        description
-          "Multiproto Interconnect over FR";
-      }
-      enum "x213" {
-        value 93;
-        description
-          "CCITT-ITU X213";
-      }
-      enum "adsl" {
-        value 94;
-        description
-          "Asymmetric Digital Subscriber Loop";
-      }
-      enum "radsl" {
-        value 95;
-        description
-          "Rate-Adapt. Digital Subscriber Loop";
-      }
-      enum "sdsl" {
-        value 96;
-        description
-          "Symmetric Digital Subscriber Loop";
-      }
-      enum "vdsl" {
-        value 97;
-        description
-          "Very H-Speed Digital Subscrib. Loop";
-      }
-      enum "iso88025CRFPInt" {
-        value 98;
-        description
-          "ISO 802.5 CRFP";
-      }
-      enum "myrinet" {
-        value 99;
-        description
-          "Myricom Myrinet";
-      }
-      enum "voiceEM" {
-        value 100;
-        description
-          "voice recEive and transMit";
-      }
-      enum "voiceFXO" {
-        value 101;
-        description
-          "voice Foreign Exchange Office";
-      }
-      enum "voiceFXS" {
-        value 102;
-        description
-          "voice Foreign Exchange Station";
-      }
-      enum "voiceEncap" {
-        value 103;
-        description
-          "voice encapsulation";
-      }
-      enum "voiceOverIp" {
-        value 104;
-        description
-          "voice over IP encapsulation";
-      }
-      enum "atmDxi" {
-        value 105;
-        description
-          "ATM DXI";
-      }
-      enum "atmFuni" {
-        value 106;
-        description
-          "ATM FUNI";
-      }
-      enum "atmIma" {
-        value 107;
-        description
-          "ATM IMA";
-      }
-      enum "pppMultilinkBundle" {
-        value 108;
-        description
-          "PPP Multilink Bundle";
-      }
-      enum "ipOverCdlc" {
-        value 109;
-        description
-          "IBM ipOverCdlc";
-      }
-      enum "ipOverClaw" {
-        value 110;
-        description
-          "IBM Common Link Access to Workstn";
-      }
-      enum "stackToStack" {
-        value 111;
-        description
-          "IBM stackToStack";
-      }
-      enum "virtualIpAddress" {
-        value 112;
-        description
-          "IBM VIPA";
-      }
-      enum "mpc" {
-        value 113;
-        description
-          "IBM multi-protocol channel support";
-      }
-      enum "ipOverAtm" {
-        value 114;
-        description
-          "IBM ipOverAtm";
-        reference
-          "RFC 2320 - Definitions of Managed Objects for Classical IP
-                      and ARP Over ATM Using SMIv2 (IPOA-MIB)";
-      }
-      enum "iso88025Fiber" {
-        value 115;
-        description
-          "ISO 802.5j Fiber Token Ring";
-      }
-      enum "tdlc" {
-        value 116;
-        description
-          "IBM twinaxial data link control";
-      }
-      enum "gigabitEthernet" {
-        value 117;
-        status deprecated;
-        description
-          "Obsoleted via RFC3635
-           ethernetCsmacd(6) should be used instead";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "hdlc" {
-        value 118;
-        description
-          "HDLC";
-      }
-      enum "lapf" {
-        value 119;
-        description
-          "LAP F";
-      }
-      enum "v37" {
-        value 120;
-        description
-          "V.37";
-      }
-      enum "x25mlp" {
-        value 121;
-        description
-          "Multi-Link Protocol";
-      }
-      enum "x25huntGroup" {
-        value 122;
-        description
-          "X25 Hunt Group";
-      }
-      enum "transpHdlc" {
-        value 123;
-        description
-          "Transp HDLC";
-      }
-      enum "interleave" {
-        value 124;
-        description
-          "Interleave channel";
-      }
-      enum "fast" {
-        value 125;
-        description
-          "Fast channel";
-      }
-      enum "ip" {
-        value 126;
-        description
-          "IP (for APPN HPR in IP networks)";
-      }
-      enum "docsCableMaclayer" {
-        value 127;
-        description
-          "CATV Mac Layer";
-      }
-      enum "docsCableDownstream" {
-        value 128;
-        description
-          "CATV Downstream interface";
-      }
-      enum "docsCableUpstream" {
-        value 129;
-        description
-          "CATV Upstream interface";
-      }
-      enum "a12MppSwitch" {
-        value 130;
-        description
-          "Avalon Parallel Processor";
-      }
-      enum "tunnel" {
-        value 131;
-        description
-          "Encapsulation interface";
-      }
-      enum "coffee" {
-        value 132;
-        description
-          "coffee pot";
-        reference
-          "RFC 2325 - Coffee MIB";
-      }
-      enum "ces" {
-        value 133;
-        description
-          "Circuit Emulation Service";
-      }
-      enum "atmSubInterface" {
-        value 134;
-        description
-          "ATM Sub Interface";
-      }
-      enum "l2vlan" {
-        value 135;
-        description
-          "Layer 2 Virtual LAN using 802.1Q";
-      }
-      enum "l3ipvlan" {
-        value 136;
-        description
-          "Layer 3 Virtual LAN using IP";
-      }
-      enum "l3ipxvlan" {
-        value 137;
-        description
-          "Layer 3 Virtual LAN using IPX";
-      }
-      enum "digitalPowerline" {
-        value 138;
-        description
-          "IP over Power Lines";
-      }
-      enum "mediaMailOverIp" {
-        value 139;
-        description
-          "Multimedia Mail over IP";
-      }
-      enum "dtm" {
-        value 140;
-        description
-          "Dynamic syncronous Transfer Mode";
-      }
-      enum "dcn" {
-        value 141;
-        description
-          "Data Communications Network";
-      }
-      enum "ipForward" {
-        value 142;
-        description
-          "IP Forwarding Interface";
-      }
-      enum "msdsl" {
-        value 143;
-        description
-          "Multi-rate Symmetric DSL";
-      }
-      enum "ieee1394" {
-        value 144;
-        description
-          "IEEE1394 High Performance Serial Bus";
-      }
-      enum "if-gsn" {
-        value 145;
-        description
-          "HIPPI-6400";
-      }
-      enum "dvbRccMacLayer" {
-        value 146;
-        description
-          "DVB-RCC MAC Layer";
-      }
-      enum "dvbRccDownstream" {
-        value 147;
-        description
-          "DVB-RCC Downstream Channel";
-      }
-      enum "dvbRccUpstream" {
-        value 148;
-        description
-          "DVB-RCC Upstream Channel";
-      }
-      enum "atmVirtual" {
-        value 149;
-        description
-          "ATM Virtual Interface";
-      }
-      enum "mplsTunnel" {
-        value 150;
-        description
-          "MPLS Tunnel Virtual Interface";
-      }
-      enum "srp" {
-        value 151;
-        description
-          "Spatial Reuse Protocol       ";
-      }
-      enum "voiceOverAtm" {
-        value 152;
-        description
-          "Voice Over ATM";
-      }
-      enum "voiceOverFrameRelay" {
-        value 153;
-        description
-          "Voice Over Frame Relay";
-      }
-      enum "idsl" {
-        value 154;
-        description
-          "Digital Subscriber Loop over ISDN";
-      }
-      enum "compositeLink" {
-        value 155;
-        description
-          "Avici Composite Link Interface";
-      }
-      enum "ss7SigLink" {
-        value 156;
-        description
-          "SS7 Signaling Link";
-      }
-      enum "propWirelessP2P" {
-        value 157;
-        description
-          "Prop. P2P wireless interface";
-      }
-      enum "frForward" {
-        value 158;
-        description
-          "Frame Forward Interface";
-      }
-      enum "rfc1483" {
-        value 159;
-        description
-          "Multiprotocol over ATM AAL5";
-        reference
-          "RFC 1483 - Multiprotocol Encapsulation over ATM
-                      Adaptation Layer 5";
-      }
-      enum "usb" {
-        value 160;
-        description
-          "USB Interface";
-      }
-      enum "ieee8023adLag" {
-        value 161;
-        description
-          "IEEE 802.3ad Link Aggregate";
-      }
-      enum "bgppolicyaccounting" {
-        value 162;
-        description
-          "BGP Policy Accounting";
-      }
-      enum "frf16MfrBundle" {
-        value 163;
-        description
-          "FRF .16 Multilink Frame Relay";
-      }
-      enum "h323Gatekeeper" {
-        value 164;
-        description
-          "H323 Gatekeeper";
-      }
-      enum "h323Proxy" {
-        value 165;
-        description
-          "H323 Voice and Video Proxy";
-      }
-      enum "mpls" {
-        value 166;
-        description
-          "MPLS";
-      }
-      enum "mfSigLink" {
-        value 167;
-        description
-          "Multi-frequency signaling link";
-      }
-      enum "hdsl2" {
-        value 168;
-        description
-          "High Bit-Rate DSL - 2nd generation";
-      }
-      enum "shdsl" {
-        value 169;
-        description
-          "Multirate HDSL2";
-      }
-      enum "ds1FDL" {
-        value 170;
-        description
-          "Facility Data Link 4Kbps on a DS1";
-      }
-      enum "pos" {
-        value 171;
-        description
-          "Packet over SONET/SDH Interface";
-      }
-      enum "dvbAsiIn" {
-        value 172;
-        description
-          "DVB-ASI Input";
-      }
-      enum "dvbAsiOut" {
-        value 173;
-        description
-          "DVB-ASI Output";
-      }
-      enum "plc" {
-        value 174;
-        description
-          "Power Line Communtications";
-      }
-      enum "nfas" {
-        value 175;
-        description
-          "Non Facility Associated Signaling";
-      }
-      enum "tr008" {
-        value 176;
-        description
-          "TR008";
-      }
-      enum "gr303RDT" {
-        value 177;
-        description
-          "Remote Digital Terminal";
-      }
-      enum "gr303IDT" {
-        value 178;
-        description
-          "Integrated Digital Terminal";
-      }
-      enum "isup" {
-        value 179;
-        description
-          "ISUP";
-      }
-      enum "propDocsWirelessMaclayer" {
-        value 180;
-        description
-          "Cisco proprietary Maclayer";
-      }
-      enum "propDocsWirelessDownstream" {
-        value 181;
-        description
-          "Cisco proprietary Downstream";
-      }
-      enum "propDocsWirelessUpstream" {
-        value 182;
-        description
-          "Cisco proprietary Upstream";
-      }
-      enum "hiperlan2" {
-        value 183;
-        description
-          "HIPERLAN Type 2 Radio Interface";
-      }
-      enum "propBWAp2Mp" {
-        value 184;
-        description
-          "PropBroadbandWirelessAccesspt2multipt use of this value
-           for IEEE 802.16 WMAN interfaces as per IEEE Std 802.16f
-           is deprecated and ieee80216WMAN(237) should be used
-           instead.";
-      }
-      enum "sonetOverheadChannel" {
-        value 185;
-        description
-          "SONET Overhead Channel";
-      }
-      enum "digitalWrapperOverheadChannel" {
-        value 186;
-        description
-          "Digital Wrapper";
-      }
-      enum "aal2" {
-        value 187;
-        description
-          "ATM adaptation layer 2";
-      }
-      enum "radioMAC" {
-        value 188;
-        description
-          "MAC layer over radio links";
-      }
-      enum "atmRadio" {
-        value 189;
-        description
-          "ATM over radio links";
-      }
-      enum "imt" {
-        value 190;
-        description
-          "Inter Machine Trunks";
-      }
-      enum "mvl" {
-        value 191;
-        description
-          "Multiple Virtual Lines DSL";
-      }
-      enum "reachDSL" {
-        value 192;
-        description
-          "Long Reach DSL";
-      }
-      enum "frDlciEndPt" {
-        value 193;
-        description
-          "Frame Relay DLCI End Point";
-      }
-      enum "atmVciEndPt" {
-        value 194;
-        description
-          "ATM VCI End Point";
-      }
-      enum "opticalChannel" {
-        value 195;
-        description
-          "Optical Channel";
-      }
-      enum "opticalTransport" {
-        value 196;
-        description
-          "Optical Transport";
-      }
-      enum "propAtm" {
-        value 197;
-        description
-          "Proprietary ATM";
-      }
-      enum "voiceOverCable" {
-        value 198;
-        description
-          "Voice Over Cable Interface";
-      }
-      enum "infiniband" {
-        value 199;
-        description
-          "Infiniband";
-      }
-      enum "teLink" {
-        value 200;
-        description
-          "TE Link";
-      }
-      enum "q2931" {
-        value 201;
-        description
-          "Q.2931";
-      }
-      enum "virtualTg" {
-        value 202;
-        description
-          "Virtual Trunk Group";
-      }
-      enum "sipTg" {
-        value 203;
-        description
-          "SIP Trunk Group";
-      }
-      enum "sipSig" {
-        value 204;
-        description
-          "SIP Signaling";
-      }
-      enum "docsCableUpstreamChannel" {
-        value 205;
-        description
-          "CATV Upstream Channel";
-      }
-      enum "econet" {
-        value 206;
-        description
-          "Acorn Econet";
-      }
-      enum "pon155" {
-        value 207;
-        description
-          "FSAN 155Mb Symetrical PON interface";
-      }
-      enum "pon622" {
-        value 208;
-        description
-          "FSAN622Mb Symetrical PON interface";
-      }
-      enum "bridge" {
-        value 209;
-        description
-          "Transparent bridge interface";
-      }
-      enum "linegroup" {
-        value 210;
-        description
-          "Interface common to multiple lines";
-      }
-      enum "voiceEMFGD" {
-        value 211;
-        description
-          "voice E&M Feature Group D";
-      }
-      enum "voiceFGDEANA" {
-        value 212;
-        description
-          "voice FGD Exchange Access North American";
-      }
-      enum "voiceDID" {
-        value 213;
-        description
-          "voice Direct Inward Dialing";
-      }
-      enum "mpegTransport" {
-        value 214;
-        description
-          "MPEG transport interface";
-      }
-      enum "sixToFour" {
-        value 215;
-        status deprecated;
-        description
-          "6to4 interface (DEPRECATED)";
-        reference
-          "RFC 4087 - IP Tunnel MIB";
-      }
-      enum "gtp" {
-        value 216;
-        description
-          "GTP (GPRS Tunneling Protocol)";
-      }
-      enum "pdnEtherLoop1" {
-        value 217;
-        description
-          "Paradyne EtherLoop 1";
-      }
-      enum "pdnEtherLoop2" {
-        value 218;
-        description
-          "Paradyne EtherLoop 2";
-      }
-      enum "opticalChannelGroup" {
-        value 219;
-        description
-          "Optical Channel Group";
-      }
-      enum "homepna" {
-        value 220;
-        description
-          "HomePNA ITU-T G.989";
-      }
-      enum "gfp" {
-        value 221;
-        description
-          "Generic Framing Procedure (GFP)";
-      }
-      enum "ciscoISLvlan" {
-        value 222;
-        description
-          "Layer 2 Virtual LAN using Cisco ISL";
-      }
-      enum "actelisMetaLOOP" {
-        value 223;
-        description
-          "Acteleis proprietary MetaLOOP High Speed Link";
-      }
-      enum "fcipLink" {
-        value 224;
-        description
-          "FCIP Link";
-      }
-      enum "rpr" {
-        value 225;
-        description
-          "Resilient Packet Ring Interface Type";
-      }
-      enum "qam" {
-        value 226;
-        description
-          "RF Qam Interface";
-      }
-      enum "lmp" {
-        value 227;
-        description
-          "Link Management Protocol";
-        reference
-          "RFC 4327 - Link Management Protocol (LMP) Management
-                      Information Base (MIB)";
-      }
-      enum "cblVectaStar" {
-        value 228;
-        description
-          "Cambridge Broadband Networks Limited VectaStar";
-      }
-      enum "docsCableMCmtsDownstream" {
-        value 229;
-        description
-          "CATV Modular CMTS Downstream Interface";
-      }
-      enum "adsl2" {
-        value 230;
-        status deprecated;
-        description
-          "Asymmetric Digital Subscriber Loop Version 2
-           (DEPRECATED/OBSOLETED - please use adsl2plus(238)
-           instead)";
-        reference
-          "RFC 4706 - Definitions of Managed Objects for Asymmetric
-                      Digital Subscriber Line 2 (ADSL2)";
-      }
-      enum "macSecControlledIF" {
-        value 231;
-        description
-          "MACSecControlled";
-      }
-      enum "macSecUncontrolledIF" {
-        value 232;
-        description
-          "MACSecUncontrolled";
-      }
-      enum "aviciOpticalEther" {
-        value 233;
-        description
-         "Avici Optical Ethernet Aggregate";
-      }
-      enum "atmbond" {
-        value 234;
-        description
-          "atmbond";
-      }
-      enum "voiceFGDOS" {
-        value 235;
-        description
-          "voice FGD Operator Services";
-      }
-      enum "mocaVersion1" {
-        value 236;
-        description
-          "MultiMedia over Coax Alliance (MoCA) Interface
-           as documented in information provided privately to IANA";
-      }
-      enum "ieee80216WMAN" {
-        value 237;
-        description
-          "IEEE 802.16 WMAN interface";
-      }
-      enum "adsl2plus" {
-        value 238;
-        description
-          "Asymmetric Digital Subscriber Loop Version 2,
-           Version 2 Plus and all variants";
-      }
-      enum "dvbRcsMacLayer" {
-        value 239;
-        description
-          "DVB-RCS MAC Layer";
-        reference
-          "RFC 5728 - The SatLabs Group DVB-RCS MIB";
-      }
-      enum "dvbTdm" {
-        value 240;
-        description
-          "DVB Satellite TDM";
-        reference
-          "RFC 5728 - The SatLabs Group DVB-RCS MIB";
-      }
-      enum "dvbRcsTdma" {
-        value 241;
-        description
-          "DVB-RCS TDMA";
-        reference
-          "RFC 5728 - The SatLabs Group DVB-RCS MIB";
-      }
-      enum "x86Laps" {
-        value 242;
-        description
-          "LAPS based on ITU-T X.86/Y.1323";
-      }
-      enum "wwanPP" {
-        value 243;
-        description
-          "3GPP WWAN";
-      }
-      enum "wwanPP2" {
-        value 244;
-        description
-          "3GPP2 WWAN";
-      }
-      enum "voiceEBS" {
-        value 245;
-        description
-          "voice P-phone EBS physical interface";
-      }
-      enum "ifPwType" {
-        value 246;
-        description
-          "Pseudowire interface type";
-        reference
-          "RFC 5601 - Pseudowire (PW) Management Information Base";
-      }
-      enum "ilan" {
-        value 247;
-        description
-          "Internal LAN on a bridge per IEEE 802.1ap";
-      }
-      enum "pip" {
-        value 248;
-        description
-          "Provider Instance Port on a bridge per IEEE 802.1ah PBB";
-      }
-      enum "aluELP" {
-        value 249;
-        description
-          "Alcatel-Lucent Ethernet Link Protection";
-      }
-      enum "gpon" {
-        value 250;
-        description
-          "Gigabit-capable passive optical networks (G-PON) as per
-           ITU-T G.948";
-      }
-      enum "vdsl2" {
-        value 251;
-        description
-          "Very high speed digital subscriber line Version 2
-           (as per ITU-T Recommendation G.993.2)";
-        reference
-          "RFC 5650 - Definitions of Managed Objects for Very High
-                      Speed Digital Subscriber Line 2 (VDSL2)";
-      }
-      enum "capwapDot11Profile" {
-        value 252;
-        description
-          "WLAN Profile Interface";
-        reference
-          "RFC 5834 - Control and Provisioning of Wireless Access
-                      Points (CAPWAP) Protocol Binding MIB for
-                      IEEE 802.11";
-      }
-      enum "capwapDot11Bss" {
-        value 253;
-        description
-          "WLAN BSS Interface";
-        reference
-          "RFC 5834 - Control and Provisioning of Wireless Access
-                      Points (CAPWAP) Protocol Binding MIB for
-                      IEEE 802.11";
-      }
-      enum "capwapWtpVirtualRadio" {
-        value 254;
-        description
-          "WTP Virtual Radio Interface";
-        reference
-          "RFC 5833 - Control and Provisioning of Wireless Access
-                      Points (CAPWAP) Protocol Base MIB";
-      }
-      enum "bits" {
-        value 255;
-        description
-          "bitsport";
-      }
-      enum "docsCableUpstreamRfPort" {
-        value 256;
-        description
-          "DOCSIS CATV Upstream RF Port";
-      }
-      enum "cableDownstreamRfPort" {
-        value 257;
-        description
-          "CATV downstream RF port";
-      }
-      enum "vmwareVirtualNic" {
-        value 258;
-        description
-          "VMware Virtual Network Interface";
-      }
-      enum "ieee802154" {
-        value 259;
-        description
-          "IEEE 802.15.4 WPAN interface";
-        reference
-          "IEEE 802.15.4-2006";
-      }
-      enum "otnOdu" {
-        value 260;
-        description
-          "OTN Optical Data Unit";
-      }
-      enum "otnOtu" {
-        value 261;
-        description
-          "OTN Optical channel Transport Unit";
-      }
-      enum "ifVfiType" {
-        value 262;
-        description
-          "VPLS Forwarding Instance Interface Type";
-      }
-      enum "g9981" {
-        value 263;
-        description
-          "G.998.1 bonded interface";
-      }
-      enum "g9982" {
-        value 264;
-        description
-          "G.998.2 bonded interface";
-      }
-      enum "g9983" {
-        value 265;
-        description
-          "G.998.3 bonded interface";
-      }
-      enum "aluEpon" {
-        value 266;
-        description
-          "Ethernet Passive Optical Networks (E-PON)";
-      }
-      enum "aluEponOnu" {
-        value 267;
-        description
-          "EPON Optical Network Unit";
-      }
-      enum "aluEponPhysicalUni" {
-        value 268;
-        description
-          "EPON physical User to Network interface";
-      }
-      enum "aluEponLogicalLink" {
-        value 269;
-        description
-          "The emulation of a point-to-point link over the EPON
-           layer";
-      }
-      enum "aluGponOnu" {
-        value 270;
-        description
-          "GPON Optical Network Unit";
-        reference
-          "ITU-T G.984.2";
-      }
-      enum "aluGponPhysicalUni" {
-        value 271;
-        description
-          "GPON physical User to Network interface";
-        reference
-          "ITU-T G.984.2";
-      }
-      enum "vmwareNicTeam" {
-        value 272;
-        description
-          "VMware NIC Team";
-      }
-    }
-    description
-      "This data type is used as the syntax of the 'type'
-       leaf in the 'interface' list in the YANG module
-       ietf-interface.
-
-       The definition of this typedef with the
-       addition of newly assigned values is published
-       periodically by the IANA, in either the Assigned
-       Numbers RFC, or some derivative of it specific to
-       Internet Network Management number assignments.  (The
-       latest arrangements can be obtained by contacting the
-       IANA.)
-
-       Requests for new values should be made to IANA via
-       email (iana&iana.org).";
-    reference
-      "ifType definitions registry.
-       <http://www.iana.org/assignments/smi-numbers>";
-  }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/ietf-inet-types@2010-09-24.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/ietf-inet-types@2010-09-24.yang
deleted file mode 100644 (file)
index 6a6c748..0000000
+++ /dev/null
@@ -1,418 +0,0 @@
- module ietf-inet-types {
-
-   namespace "urn:ietf:params:xml:ns:yang:ietf-inet-types";
-   prefix "inet";
-
-   organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-   contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Partain
-               <mailto:david.partain@ericsson.com>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     Editor:   Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>";
-
-   description
-    "This module contains a collection of generally useful derived
-     YANG data types for Internet addresses and related things.
-
-     Copyright (c) 2010 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or without
-     modification, is permitted pursuant to, and subject to the license
-     terms contained in, the Simplified BSD License set forth in Section
-     4.c of the IETF Trust's Legal Provisions Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC 6021; see
-     the RFC itself for full legal notices.";
-
-   revision 2010-09-24 {
-     description
-      "Initial revision.";
-     reference
-      "RFC 6021: Common YANG Data Types";
-   }
-
-   /*** collection of protocol field related types ***/
-
-   typedef ip-version {
-     type enumeration {
-       enum unknown {
-         value "0";
-         description
-          "An unknown or unspecified version of the Internet protocol.";
-       }
-       enum ipv4 {
-         value "1";
-         description
-          "The IPv4 protocol as defined in RFC 791.";
-       }
-       enum ipv6 {
-         value "2";
-         description
-          "The IPv6 protocol as defined in RFC 2460.";
-       }
-     }
-     description
-      "This value represents the version of the IP protocol.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetVersion textual convention of the SMIv2.";
-     reference
-      "RFC  791: Internet Protocol
-       RFC 2460: Internet Protocol, Version 6 (IPv6) Specification
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   typedef dscp {
-     type uint8 {
-       range "0..63";
-     }
-     description
-      "The dscp type represents a Differentiated Services Code-Point
-       that may be used for marking packets in a traffic stream.
-
-       In the value set and its semantics, this type is equivalent
-       to the Dscp textual convention of the SMIv2.";
-     reference
-      "RFC 3289: Management Information Base for the Differentiated
-                 Services Architecture
-       RFC 2474: Definition of the Differentiated Services Field
-                 (DS Field) in the IPv4 and IPv6 Headers
-       RFC 2780: IANA Allocation Guidelines For Values In
-                 the Internet Protocol and Related Headers";
-   }
-
-   typedef ipv6-flow-label {
-     type uint32 {
-       range "0..1048575";
-     }
-     description
-      "The flow-label type represents flow identifier or Flow Label
-       in an IPv6 packet header that may be used to discriminate
-       traffic flows.
-
-       In the value set and its semantics, this type is equivalent
-       to the IPv6FlowLabel textual convention of the SMIv2.";
-     reference
-      "RFC 3595: Textual Conventions for IPv6 Flow Label
-       RFC 2460: Internet Protocol, Version 6 (IPv6) Specification";
-   }
-
-   typedef port-number {
-     type uint16 {
-       range "0..65535";
-     }
-     description
-      "The port-number type represents a 16-bit port number of an
-       Internet transport layer protocol such as UDP, TCP, DCCP, or
-       SCTP.  Port numbers are assigned by IANA.  A current list of
-       all assignments is available from <http://www.iana.org/>.
-
-       Note that the port number value zero is reserved by IANA.  In
-       situations where the value zero does not make sense, it can
-       be excluded by subtyping the port-number type.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetPortNumber textual convention of the SMIv2.";
-     reference
-      "RFC  768: User Datagram Protocol
-       RFC  793: Transmission Control Protocol
-       RFC 4960: Stream Control Transmission Protocol
-       RFC 4340: Datagram Congestion Control Protocol (DCCP)
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   /*** collection of autonomous system related types ***/
-
-   typedef as-number {
-     type uint32;
-     description
-      "The as-number type represents autonomous system numbers
-       which identify an Autonomous System (AS).  An AS is a set
-       of routers under a single technical administration, using
-       an interior gateway protocol and common metrics to route
-       packets within the AS, and using an exterior gateway
-       protocol to route packets to other ASs'.  IANA maintains
-       the AS number space and has delegated large parts to the
-       regional registries.
-
-       Autonomous system numbers were originally limited to 16
-       bits.  BGP extensions have enlarged the autonomous system
-       number space to 32 bits.  This type therefore uses an uint32
-       base type without a range restriction in order to support
-       a larger autonomous system number space.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetAutonomousSystemNumber textual convention of
-       the SMIv2.";
-     reference
-      "RFC 1930: Guidelines for creation, selection, and registration
-                 of an Autonomous System (AS)
-       RFC 4271: A Border Gateway Protocol 4 (BGP-4)
-       RFC 4893: BGP Support for Four-octet AS Number Space
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   /*** collection of IP address and hostname related types ***/
-
-   typedef ip-address {
-     type union {
-       type inet:ipv4-address;
-       type inet:ipv6-address;
-     }
-     description
-      "The ip-address type represents an IP address and is IP
-       version neutral.  The format of the textual representations
-       implies the IP version.";
-   }
-
-   typedef ipv4-address {
-     type string {
-       pattern
-         '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
-       +  '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
-       + '(%[\p{N}\p{L}]+)?';
-     }
-     description
-       "The ipv4-address type represents an IPv4 address in
-        dotted-quad notation.  The IPv4 address may include a zone
-        index, separated by a % sign.
-
-        The zone index is used to disambiguate identical address
-        values.  For link-local addresses, the zone index will
-        typically be the interface index number or the name of an
-        interface.  If the zone index is not present, the default
-        zone of the device will be used.
-
-        The canonical format for the zone index is the numerical
-        format";
-   }
-
-   typedef ipv6-address {
-     type string {
-       pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
-             + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
-             + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
-             + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
-             + '(%[\p{N}\p{L}]+)?';
-       pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
-             + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
-             + '(%.+)?';
-     }
-     description
-      "The ipv6-address type represents an IPv6 address in full,
-       mixed, shortened, and shortened-mixed notation.  The IPv6
-       address may include a zone index, separated by a % sign.
-
-       The zone index is used to disambiguate identical address
-       values.  For link-local addresses, the zone index will
-       typically be the interface index number or the name of an
-       interface.  If the zone index is not present, the default
-       zone of the device will be used.
-
-       The canonical format of IPv6 addresses uses the compressed
-       format described in RFC 4291, Section 2.2, item 2 with the
-       following additional rules: the :: substitution must be
-       applied to the longest sequence of all-zero 16-bit chunks
-       in an IPv6 address.  If there is a tie, the first sequence
-       of all-zero 16-bit chunks is replaced by ::.  Single
-       all-zero 16-bit chunks are not compressed.  The canonical
-       format uses lowercase characters and leading zeros are
-       not allowed.  The canonical format for the zone index is
-       the numerical format as described in RFC 4007, Section
-       11.2.";
-     reference
-      "RFC 4291: IP Version 6 Addressing Architecture
-       RFC 4007: IPv6 Scoped Address Architecture
-       RFC 5952: A Recommendation for IPv6 Address Text Representation";
-   }
-
-   typedef ip-prefix {
-     type union {
-       type inet:ipv4-prefix;
-       type inet:ipv6-prefix;
-     }
-     description
-      "The ip-prefix type represents an IP prefix and is IP
-       version neutral.  The format of the textual representations
-       implies the IP version.";
-   }
-
-   typedef ipv4-prefix {
-     type string {
-       pattern
-          '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
-        +  '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
-        + '/(([0-9])|([1-2][0-9])|(3[0-2]))';
-     }
-     description
-      "The ipv4-prefix type represents an IPv4 address prefix.
-       The prefix length is given by the number following the
-       slash character and must be less than or equal to 32.
-
-       A prefix length value of n corresponds to an IP address
-       mask that has n contiguous 1-bits from the most
-       significant bit (MSB) and all other bits set to 0.
-
-       The canonical format of an IPv4 prefix has all bits of
-       the IPv4 address set to zero that are not part of the
-       IPv4 prefix.";
-   }
-
-   typedef ipv6-prefix {
-     type string {
-       pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
-             + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
-             + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
-             + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
-             + '(/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))';
-       pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
-             + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
-             + '(/.+)';
-     }
-     description
-      "The ipv6-prefix type represents an IPv6 address prefix.
-       The prefix length is given by the number following the
-       slash character and must be less than or equal 128.
-
-       A prefix length value of n corresponds to an IP address
-       mask that has n contiguous 1-bits from the most
-       significant bit (MSB) and all other bits set to 0.
-
-       The IPv6 address should have all bits that do not belong
-       to the prefix set to zero.
-
-       The canonical format of an IPv6 prefix has all bits of
-       the IPv6 address set to zero that are not part of the
-       IPv6 prefix.  Furthermore, IPv6 address is represented
-       in the compressed format described in RFC 4291, Section
-       2.2, item 2 with the following additional rules: the ::
-       substitution must be applied to the longest sequence of
-       all-zero 16-bit chunks in an IPv6 address.  If there is
-       a tie, the first sequence of all-zero 16-bit chunks is
-       replaced by ::.  Single all-zero 16-bit chunks are not
-       compressed.  The canonical format uses lowercase
-       characters and leading zeros are not allowed.";
-     reference
-      "RFC 4291: IP Version 6 Addressing Architecture";
-   }
-
-   /*** collection of domain name and URI types ***/
-
-   typedef domain-name {
-     type string {
-       pattern '((([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.)*'
-            +  '([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.?)'
-            +  '|\.';
-       length "1..253";
-     }
-     description
-      "The domain-name type represents a DNS domain name.  The
-       name SHOULD be fully qualified whenever possible.
-
-       Internet domain names are only loosely specified.  Section
-       3.5 of RFC 1034 recommends a syntax (modified in Section
-       2.1 of RFC 1123).  The pattern above is intended to allow
-       for current practice in domain name use, and some possible
-       future expansion.  It is designed to hold various types of
-       domain names, including names used for A or AAAA records
-       (host names) and other records, such as SRV records.  Note
-       that Internet host names have a stricter syntax (described
-       in RFC 952) than the DNS recommendations in RFCs 1034 and
-       1123, and that systems that want to store host names in
-       schema nodes using the domain-name type are recommended to
-       adhere to this stricter standard to ensure interoperability.
-
-       The encoding of DNS names in the DNS protocol is limited
-       to 255 characters.  Since the encoding consists of labels
-       prefixed by a length bytes and there is a trailing NULL
-       byte, only 253 characters can appear in the textual dotted
-       notation.
-
-       The description clause of schema nodes using the domain-name
-       type MUST describe when and how these names are resolved to
-       IP addresses.  Note that the resolution of a domain-name value
-       may require to query multiple DNS records (e.g., A for IPv4
-       and AAAA for IPv6).  The order of the resolution process and
-       which DNS record takes precedence can either be defined
-       explicitely or it may depend on the configuration of the
-       resolver.
-
-       Domain-name values use the US-ASCII encoding.  Their canonical
-       format uses lowercase US-ASCII characters.  Internationalized
-       domain names MUST be encoded in punycode as described in RFC
-       3492";
-     reference
-      "RFC  952: DoD Internet Host Table Specification
-       RFC 1034: Domain Names - Concepts and Facilities
-       RFC 1123: Requirements for Internet Hosts -- Application
-                 and Support
-       RFC 2782: A DNS RR for specifying the location of services
-                 (DNS SRV)
-       RFC 3492: Punycode: A Bootstring encoding of Unicode for
-                 Internationalized Domain Names in Applications
-                 (IDNA)
-       RFC 5891: Internationalizing Domain Names in Applications
-                 (IDNA): Protocol";
-   }
-
-   typedef host {
-     type union {
-       type inet:ip-address;
-       type inet:domain-name;
-     }
-     description
-      "The host type represents either an IP address or a DNS
-       domain name.";
-   }
-
-   typedef uri {
-     type string;
-     description
-      "The uri type represents a Uniform Resource Identifier
-       (URI) as defined by STD 66.
-
-       Objects using the uri type MUST be in US-ASCII encoding,
-       and MUST be normalized as described by RFC 3986 Sections
-       6.2.1, 6.2.2.1, and 6.2.2.2.  All unnecessary
-       percent-encoding is removed, and all case-insensitive
-       characters are set to lowercase except for hexadecimal
-       digits, which are normalized to uppercase as described in
-       Section 6.2.2.1.
-
-       The purpose of this normalization is to help provide
-       unique URIs.  Note that this normalization is not
-       sufficient to provide uniqueness.  Two URIs that are
-       textually distinct after this normalization may still be
-       equivalent.
-
-       Objects using the uri type may restrict the schemes that
-       they permit.  For example, 'data:' and 'urn:' schemes
-       might not be appropriate.
-
-       A zero-length URI is not a valid URI.  This can be used to
-       express 'URI absent' where required.
-
-       In the value set and its semantics, this type is equivalent
-       to the Uri SMIv2 textual convention defined in RFC 5017.";
-     reference
-      "RFC 3986: Uniform Resource Identifier (URI): Generic Syntax
-       RFC 3305: Report from the Joint W3C/IETF URI Planning Interest
-                 Group: Uniform Resource Identifiers (URIs), URLs,
-                 and Uniform Resource Names (URNs): Clarifications
-                 and Recommendations
-       RFC 5017: MIB Textual Conventions for Uniform Resource
-                 Identifiers (URIs)";
-   }
-
- }
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/ietf-interfaces@2012-11-15.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/ietf-interfaces@2012-11-15.yang
deleted file mode 100644 (file)
index b9117d0..0000000
+++ /dev/null
@@ -1,565 +0,0 @@
-module ietf-interfaces {
-
-  namespace "urn:ietf:params:xml:ns:yang:ietf-interfaces";
-  prefix if;
-
-  import ietf-yang-types {
-    prefix yang;
-  }
-  import iana-if-type {
-    prefix ianaift;
-  }
-
-  organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-  contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     WG Chair: Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>
-
-     Editor:   Martin Bjorklund
-               <mailto:mbj@tail-f.com>";
-
-  description
-    "This module contains a collection of YANG definitions for
-     managing network interfaces.
-
-     Copyright (c) 2012 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or
-     without modification, is permitted pursuant to, and subject
-     to the license terms contained in, the Simplified BSD License
-     set forth in Section 4.c of the IETF Trust's Legal Provisions
-     Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC XXXX; see
-     the RFC itself for full legal notices.";
-
-  // RFC Ed.: replace XXXX with actual RFC number and remove this
-  // note.
-
-  // RFC Ed.: update the date below with the date of RFC publication
-  // and remove this note.
-  revision 2012-11-15 {
-    description
-      "Initial revision.";
-    reference
-      "RFC XXXX: A YANG Data Model for Interface Management";
-  }
-
-  /* Typedefs */
-
-  typedef interface-ref {
-    type leafref {
-      path "/if:interfaces/if:interface/if:name";
-    }
-    description
-      "This type is used by data models that need to reference
-       interfaces.";
-  }
-
-  /* Features */
-
-  feature arbitrary-names {
-    description
-      "This feature indicates that the server allows interfaces to
-       be named arbitrarily.";
-  }
-
-  feature if-mib {
-    description
-      "This feature indicates that the server implements IF-MIB.";
-    reference
-      "RFC 2863: The Interfaces Group MIB";
-  }
-
-  /* Data nodes */
-
-  container interfaces {
-    description
-      "Interface parameters.";
-
-    list interface {
-      key "name";
-      unique "type location";
-
-      description
-        "The list of interfaces on the device.";
-
-      leaf name {
-        type string;
-        description
-          "The name of the interface.
-
-           A device MAY restrict the allowed values for this leaf,
-           possibly depending on the type and location.
-
-           If the device allows arbitrarily named interfaces, the
-           feature 'arbitrary-names' is advertised.
-
-           This leaf MAY be mapped to ifName by an implementation.
-           Such an implementation MAY restrict the allowed values for
-           this leaf so that it matches the restrictions of ifName.
-           If a NETCONF server that implements this restriction is
-           sent a value that doesn't match the restriction, it MUST
-           reply with an rpc-error with the error-tag
-           'invalid-value'.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifName";
-      }
-
-      leaf description {
-        type string;
-        description
-          "A textual description of the interface.
-
-           This leaf MAY be mapped to ifAlias by an implementation.
-           Such an implementation MAY restrict the allowed values for
-           this leaf so that it matches the restrictions of ifAlias.
-           If a NETCONF server that implements this restriction is
-           sent a value that doesn't match the restriction, it MUST
-           reply with an rpc-error with the error-tag
-           'invalid-value'.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifAlias";
-      }
-
-      leaf type {
-        type ianaift:iana-if-type;
-        mandatory true;
-        description
-          "The type of the interface.
-
-           When an interface entry is created, a server MAY
-           initialize the type leaf with a valid value, e.g., if it
-           is possible to derive the type from the name of the
-           interface.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifType";
-      }
-
-      leaf location {
-        type string;
-        description
-          "The device-specific location of the interface of a
-           particular type.  The format of the location string
-           depends on the interface type and the device.
-
-           If the interface's type represents a physical interface,
-           this leaf MUST be set.
-
-           When an interface entry is created, a server MAY
-           initialize the location leaf with a valid value, e.g., if
-           it is possible to derive the location from the name of
-           the interface.";
-      }
-
-      leaf enabled {
-        type boolean;
-        default "true";
-        description
-          "The desired state of the interface.
-
-           This leaf contains the configured, desired state of the
-           interface.  Systems that implement the IF-MIB use the
-           value of this leaf to set IF-MIB.ifAdminStatus to 'up' or
-           'down' after an ifEntry has been initialized, as described
-           in RFC 2863.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifAdminStatus";
-      }
-
-      leaf oper-status {
-        type enumeration {
-          enum up {
-            value 1;
-            description
-              "Ready to pass packets.";
-          }
-          enum down {
-            value 2;
-            description
-              "The interface does not pass any packets.";
-          }
-          enum testing {
-            value 3;
-            description
-              "In some test mode.  No operational packets can
-               be passed.";
-          }
-          enum unknown {
-            value 4;
-            description
-              "Status cannot be determined for some reason.";
-          }
-          enum dormant {
-            value 5;
-            description
-              "Waiting for some external event.";
-          }
-          enum not-present {
-            value 6;
-            description
-              "Some component is missing.";
-          }
-          enum lower-layer-down {
-            value 7;
-            description
-              "Down due to state of lower-layer interface(s).";
-          }
-        }
-        config false;
-        description
-          "The current operational state of the interface.
-
-           If 'enabled' is 'false' then 'oper-status'
-           should be 'down'.  If 'enabled' is changed to 'true'
-           then 'oper-status' should change to 'up' if the interface
-           is ready to transmit and receive network traffic; it
-           should change to 'dormant' if the interface is waiting for
-           external actions (such as a serial line waiting for an
-           incoming connection); it should remain in the 'down' state
-           if and only if there is a fault that prevents it from
-           going to the 'up' state; it should remain in the
-           'not-present' state if the interface has missing
-           (typically, hardware) components.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifOperStatus";
-      }
-
-      leaf last-change {
-        type yang:date-and-time;
-        config false;
-        description
-          "The time the interface entered its current operational
-           state.  If the current state was entered prior to the
-           last re-initialization of the local network management
-           subsystem, then this node is not present.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifLastChange";
-      }
-
-      leaf if-index {
-        if-feature if-mib;
-        type int32 {
-          range "1..2147483647";
-        }
-        config false;
-        description
-          "The ifIndex value for the ifEntry represented by this
-           interface.
-
-           Media-specific modules must specify how the type is
-           mapped to entries in the ifTable.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifIndex";
-      }
-
-      leaf link-up-down-trap-enable {
-        if-feature if-mib;
-        type enumeration {
-          enum enabled {
-            value 1;
-          }
-          enum disabled {
-            value 2;
-          }
-        }
-        description
-          "Indicates whether linkUp/linkDown SNMP notifications
-           should be generated for this interface.
-           If this node is not configured, the value 'enabled' is
-           operationally used by the server for interfaces which do
-           not operate on top of any other interface (i.e., there are
-           no 'lower-layer-if' entries), and 'disabled' otherwise.";
-        reference
-          "RFC 2863: The Interfaces Group MIB -
-                     ifLinkUpDownTrapEnable";
-      }
-
-      leaf phys-address {
-        type yang:phys-address;
-        config false;
-        description
-          "The interface's address at its protocol sub-layer.  For
-          example, for an 802.x interface, this object normally
-          contains a MAC address.  The interface's media-specific
-          modules must define the bit and byte ordering and the
-          format of the value of this object.  For interfaces that do
-          not have such an address (e.g., a serial line), this node
-          is not present.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifPhysAddress";
-      }
-
-      leaf-list higher-layer-if {
-        type interface-ref;
-        config false;
-        description
-          "A list of references to interfaces layered on top of this
-           interface.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifStackTable";
-      }
-
-      leaf-list lower-layer-if {
-        type interface-ref;
-        config false;
-        description
-          "A list of references to interfaces layered underneath this
-           interface.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifStackTable";
-      }
-
-      leaf speed {
-        type yang:gauge64;
-        units "bits / second";
-        config false;
-        description
-            "An estimate of the interface's current bandwidth in bits
-             per second.  For interfaces which do not vary in
-             bandwidth or for those where no accurate estimation can
-             be made, this node should contain the nominal bandwidth.
-             For interfaces that has no concept of bandwidth, this
-             node is not present.";
-        reference
-          "RFC 2863: The Interfaces Group MIB -
-                     ifSpeed, ifHighSpeed";
-      }
-
-      container statistics {
-        config false;
-        description
-          "A collection of interface-related statistics objects.";
-
-        leaf discontinuity-time {
-          type yang:date-and-time;
-          description
-            "The time on the most recent occasion at which any one or
-             more of this interface's counters suffered a
-             discontinuity.  If no such discontinuities have occurred
-             since the last re-initialization of the local management
-             subsystem, then this node contains the time the local
-             management subsystem re-initialized itself.";
-        }
-
-        leaf in-octets {
-          type yang:counter64;
-          description
-            "The total number of octets received on the interface,
-             including framing characters.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifHCInOctets";
-        }
-        leaf in-unicast-pkts {
-          type yang:counter64;
-          description
-            "The number of packets, delivered by this sub-layer to a
-             higher (sub-)layer, which were not addressed to a
-             multicast or broadcast address at this sub-layer.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifHCInUcastPkts";
-        }
-        leaf in-broadcast-pkts {
-          type yang:counter64;
-          description
-            "The number of packets, delivered by this sub-layer to a
-             higher (sub-)layer, which were addressed to a broadcast
-             address at this sub-layer.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB -
-                       ifHCInBroadcastPkts";
-        }
-        leaf in-multicast-pkts {
-          type yang:counter64;
-          description
-            "The number of packets, delivered by this sub-layer to a
-             higher (sub-)layer, which were addressed to a multicast
-             address at this sub-layer.  For a MAC layer protocol,
-             this includes both Group and Functional addresses.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB -
-                       ifHCInMulticastPkts";
-        }
-        leaf in-discards {
-          type yang:counter32;
-          description
-            "The number of inbound packets which were chosen to be
-             discarded even though no errors had been detected to
-             prevent their being deliverable to a higher-layer
-             protocol.  One possible reason for discarding such a
-             packet could be to free up buffer space.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifInDiscards";
-        }
-        leaf in-errors {
-          type yang:counter32;
-          description
-            "For packet-oriented interfaces, the number of inbound
-             packets that contained errors preventing them from being
-             deliverable to a higher-layer protocol.  For character-
-             oriented or fixed-length interfaces, the number of
-             inbound transmission units that contained errors
-             preventing them from being deliverable to a higher-layer
-             protocol.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifInErrors";
-        }
-        leaf in-unknown-protos {
-          type yang:counter32;
-          description
-            "For packet-oriented interfaces, the number of packets
-             received via the interface which were discarded because
-             of an unknown or unsupported protocol.  For
-             character-oriented or fixed-length interfaces that
-             support protocol multiplexing the number of transmission
-             units received via the interface which were discarded
-             because of an unknown or unsupported protocol.  For any
-             interface that does not support protocol multiplexing,
-             this counter is not present.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifInUnknownProtos";
-        }
-
-        leaf out-octets {
-          type yang:counter64;
-          description
-            "The total number of octets transmitted out of the
-             interface, including framing characters.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifHCOutOctets";
-        }
-        leaf out-unicast-pkts {
-          type yang:counter64;
-          description
-            "The total number of packets that higher-level protocols
-             requested be transmitted, and which were not addressed
-             to a multicast or broadcast address at this sub-layer,
-             including those that were discarded or not sent.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifHCOutUcastPkts";
-        }
-        leaf out-broadcast-pkts {
-          type yang:counter64;
-          description
-            "The total number of packets that higher-level protocols
-             requested be transmitted, and which were addressed to a
-             broadcast address at this sub-layer, including those
-             that were discarded or not sent.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB -
-                       ifHCOutBroadcastPkts";
-        }
-        leaf out-multicast-pkts {
-          type yang:counter64;
-          description
-            "The total number of packets that higher-level protocols
-             requested be transmitted, and which were addressed to a
-             multicast address at this sub-layer, including those
-             that were discarded or not sent.  For a MAC layer
-             protocol, this includes both Group and Functional
-             addresses.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB -
-                       ifHCOutMulticastPkts";
-        }
-        leaf out-discards {
-          type yang:counter32;
-          description
-            "The number of outbound packets which were chosen to be
-             discarded even though no errors had been detected to
-             prevent their being transmitted.  One possible reason
-             for discarding such a packet could be to free up buffer
-             space.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifOutDiscards";
-        }
-        leaf out-errors {
-          type yang:counter32;
-          description
-            "For packet-oriented interfaces, the number of outbound
-             packets that could not be transmitted because of errors.
-             For character-oriented or fixed-length interfaces, the
-             number of outbound transmission units that could not be
-             transmitted because of errors.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifOutErrors";
-        }
-      }
-    }
-  }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/ietf-yang-types@2010-09-24.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/augment-test-models/ietf-yang-types@2010-09-24.yang
deleted file mode 100644 (file)
index e9d88ab..0000000
+++ /dev/null
@@ -1,396 +0,0 @@
- module ietf-yang-types {
-
-   namespace "urn:ietf:params:xml:ns:yang:ietf-yang-types";
-   prefix "yang";
-
-   organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-   contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Partain
-               <mailto:david.partain@ericsson.com>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     Editor:   Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>";
-
-   description
-    "This module contains a collection of generally useful derived
-     YANG data types.
-
-     Copyright (c) 2010 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or without
-     modification, is permitted pursuant to, and subject to the license
-     terms contained in, the Simplified BSD License set forth in Section
-     4.c of the IETF Trust's Legal Provisions Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC 6021; see
-     the RFC itself for full legal notices.";
-
-   revision 2010-09-24 {
-     description
-      "Initial revision.";
-     reference
-      "RFC 6021: Common YANG Data Types";
-   }
-
-   /*** collection of counter and gauge types ***/
-
-   typedef counter32 {
-     type uint32;
-     description
-      "The counter32 type represents a non-negative integer
-       that monotonically increases until it reaches a
-       maximum value of 2^32-1 (4294967295 decimal), when it
-       wraps around and starts increasing again from zero.
-
-       Counters have no defined 'initial' value, and thus, a
-       single value of a counter has (in general) no information
-       content.  Discontinuities in the monotonically increasing
-       value normally occur at re-initialization of the
-       management system, and at other times as specified in the
-       description of a schema node using this type.  If such
-       other times can occur, for example, the creation of
-       a schema node of type counter32 at times other than
-       re-initialization, then a corresponding schema node
-       should be defined, with an appropriate type, to indicate
-       the last discontinuity.
-
-       The counter32 type should not be used for configuration
-       schema nodes.  A default statement SHOULD NOT be used in
-       combination with the type counter32.
-
-       In the value set and its semantics, this type is equivalent
-       to the Counter32 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef zero-based-counter32 {
-     type yang:counter32;
-     default "0";
-     description
-      "The zero-based-counter32 type represents a counter32
-       that has the defined 'initial' value zero.
-
-       A schema node of this type will be set to zero (0) on creation
-       and will thereafter increase monotonically until it reaches
-       a maximum value of 2^32-1 (4294967295 decimal), when it
-       wraps around and starts increasing again from zero.
-
-       Provided that an application discovers a new schema node
-       of this type within the minimum time to wrap, it can use the
-       'initial' value as a delta.  It is important for a management
-       station to be aware of this minimum time and the actual time
-       between polls, and to discard data if the actual time is too
-       long or there is no defined minimum time.
-
-       In the value set and its semantics, this type is equivalent
-       to the ZeroBasedCounter32 textual convention of the SMIv2.";
-     reference
-       "RFC 4502: Remote Network Monitoring Management Information
-                  Base Version 2";
-   }
-
-   typedef counter64 {
-     type uint64;
-     description
-      "The counter64 type represents a non-negative integer
-       that monotonically increases until it reaches a
-       maximum value of 2^64-1 (18446744073709551615 decimal),
-       when it wraps around and starts increasing again from zero.
-
-       Counters have no defined 'initial' value, and thus, a
-       single value of a counter has (in general) no information
-       content.  Discontinuities in the monotonically increasing
-       value normally occur at re-initialization of the
-       management system, and at other times as specified in the
-       description of a schema node using this type.  If such
-       other times can occur, for example, the creation of
-       a schema node of type counter64 at times other than
-       re-initialization, then a corresponding schema node
-       should be defined, with an appropriate type, to indicate
-       the last discontinuity.
-
-       The counter64 type should not be used for configuration
-       schema nodes.  A default statement SHOULD NOT be used in
-       combination with the type counter64.
-
-       In the value set and its semantics, this type is equivalent
-       to the Counter64 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef zero-based-counter64 {
-     type yang:counter64;
-     default "0";
-     description
-      "The zero-based-counter64 type represents a counter64 that
-       has the defined 'initial' value zero.
-
-       A schema node of this type will be set to zero (0) on creation
-       and will thereafter increase monotonically until it reaches
-       a maximum value of 2^64-1 (18446744073709551615 decimal),
-       when it wraps around and starts increasing again from zero.
-
-       Provided that an application discovers a new schema node
-       of this type within the minimum time to wrap, it can use the
-       'initial' value as a delta.  It is important for a management
-       station to be aware of this minimum time and the actual time
-       between polls, and to discard data if the actual time is too
-       long or there is no defined minimum time.
-
-       In the value set and its semantics, this type is equivalent
-       to the ZeroBasedCounter64 textual convention of the SMIv2.";
-     reference
-      "RFC 2856: Textual Conventions for Additional High Capacity
-                 Data Types";
-   }
-
-   typedef gauge32 {
-     type uint32;
-     description
-      "The gauge32 type represents a non-negative integer, which
-       may increase or decrease, but shall never exceed a maximum
-       value, nor fall below a minimum value.  The maximum value
-       cannot be greater than 2^32-1 (4294967295 decimal), and
-       the minimum value cannot be smaller than 0.  The value of
-       a gauge32 has its maximum value whenever the information
-       being modeled is greater than or equal to its maximum
-       value, and has its minimum value whenever the information
-       being modeled is smaller than or equal to its minimum value.
-       If the information being modeled subsequently decreases
-       below (increases above) the maximum (minimum) value, the
-       gauge32 also decreases (increases).
-
-       In the value set and its semantics, this type is equivalent
-       to the Gauge32 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef gauge64 {
-     type uint64;
-     description
-      "The gauge64 type represents a non-negative integer, which
-       may increase or decrease, but shall never exceed a maximum
-       value, nor fall below a minimum value.  The maximum value
-       cannot be greater than 2^64-1 (18446744073709551615), and
-       the minimum value cannot be smaller than 0.  The value of
-       a gauge64 has its maximum value whenever the information
-       being modeled is greater than or equal to its maximum
-       value, and has its minimum value whenever the information
-       being modeled is smaller than or equal to its minimum value.
-       If the information being modeled subsequently decreases
-       below (increases above) the maximum (minimum) value, the
-       gauge64 also decreases (increases).
-
-       In the value set and its semantics, this type is equivalent
-       to the CounterBasedGauge64 SMIv2 textual convention defined
-       in RFC 2856";
-     reference
-      "RFC 2856: Textual Conventions for Additional High Capacity
-                 Data Types";
-   }
-
-   /*** collection of identifier related types ***/
-
-   typedef object-identifier {
-     type string {
-       pattern '(([0-1](\.[1-3]?[0-9]))|(2\.(0|([1-9]\d*))))'
-             + '(\.(0|([1-9]\d*)))*';
-     }
-     description
-      "The object-identifier type represents administratively
-       assigned names in a registration-hierarchical-name tree.
-
-       Values of this type are denoted as a sequence of numerical
-       non-negative sub-identifier values.  Each sub-identifier
-       value MUST NOT exceed 2^32-1 (4294967295).  Sub-identifiers
-       are separated by single dots and without any intermediate
-       whitespace.
-
-       The ASN.1 standard restricts the value space of the first
-       sub-identifier to 0, 1, or 2.  Furthermore, the value space
-       of the second sub-identifier is restricted to the range
-       0 to 39 if the first sub-identifier is 0 or 1.  Finally,
-       the ASN.1 standard requires that an object identifier
-       has always at least two sub-identifier.  The pattern
-       captures these restrictions.
-
-       Although the number of sub-identifiers is not limited,
-       module designers should realize that there may be
-       implementations that stick with the SMIv2 limit of 128
-       sub-identifiers.
-
-       This type is a superset of the SMIv2 OBJECT IDENTIFIER type
-       since it is not restricted to 128 sub-identifiers.  Hence,
-       this type SHOULD NOT be used to represent the SMIv2 OBJECT
-       IDENTIFIER type, the object-identifier-128 type SHOULD be
-       used instead.";
-     reference
-      "ISO9834-1: Information technology -- Open Systems
-       Interconnection -- Procedures for the operation of OSI
-       Registration Authorities: General procedures and top
-       arcs of the ASN.1 Object Identifier tree";
-   }
-
-
-
-
-   typedef object-identifier-128 {
-     type object-identifier {
-       pattern '\d*(\.\d*){1,127}';
-     }
-     description
-      "This type represents object-identifiers restricted to 128
-       sub-identifiers.
-
-       In the value set and its semantics, this type is equivalent
-       to the OBJECT IDENTIFIER type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   /*** collection of date and time related types ***/
-
-   typedef date-and-time {
-     type string {
-       pattern '\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?'
-             + '(Z|[\+\-]\d{2}:\d{2})';
-     }
-     description
-      "The date-and-time type is a profile of the ISO 8601
-       standard for representation of dates and times using the
-       Gregorian calendar.  The profile is defined by the
-       date-time production in Section 5.6 of RFC 3339.
-
-       The date-and-time type is compatible with the dateTime XML
-       schema type with the following notable exceptions:
-
-       (a) The date-and-time type does not allow negative years.
-
-       (b) The date-and-time time-offset -00:00 indicates an unknown
-           time zone (see RFC 3339) while -00:00 and +00:00 and Z all
-           represent the same time zone in dateTime.
-
-       (c) The canonical format (see below) of data-and-time values
-           differs from the canonical format used by the dateTime XML
-           schema type, which requires all times to be in UTC using the
-           time-offset 'Z'.
-
-       This type is not equivalent to the DateAndTime textual
-       convention of the SMIv2 since RFC 3339 uses a different
-       separator between full-date and full-time and provides
-       higher resolution of time-secfrac.
-
-       The canonical format for date-and-time values with a known time
-       zone uses a numeric time zone offset that is calculated using
-       the device's configured known offset to UTC time.  A change of
-       the device's offset to UTC time will cause date-and-time values
-       to change accordingly.  Such changes might happen periodically
-       in case a server follows automatically daylight saving time
-       (DST) time zone offset changes.  The canonical format for
-       date-and-time values with an unknown time zone (usually referring
-       to the notion of local time) uses the time-offset -00:00.";
-     reference
-      "RFC 3339: Date and Time on the Internet: Timestamps
-       RFC 2579: Textual Conventions for SMIv2
-       XSD-TYPES: XML Schema Part 2: Datatypes Second Edition";
-   }
-
-   typedef timeticks {
-     type uint32;
-     description
-      "The timeticks type represents a non-negative integer that
-       represents the time, modulo 2^32 (4294967296 decimal), in
-       hundredths of a second between two epochs.  When a schema
-       node is defined that uses this type, the description of
-       the schema node identifies both of the reference epochs.
-
-       In the value set and its semantics, this type is equivalent
-       to the TimeTicks type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef timestamp {
-     type yang:timeticks;
-     description
-      "The timestamp type represents the value of an associated
-       timeticks schema node at which a specific occurrence happened.
-       The specific occurrence must be defined in the description
-       of any schema node defined using this type.  When the specific
-       occurrence occurred prior to the last time the associated
-       timeticks attribute was zero, then the timestamp value is
-       zero.  Note that this requires all timestamp values to be
-       reset to zero when the value of the associated timeticks
-       attribute reaches 497+ days and wraps around to zero.
-
-       The associated timeticks schema node must be specified
-       in the description of any schema node using this type.
-
-       In the value set and its semantics, this type is equivalent
-       to the TimeStamp textual convention of the SMIv2.";
-     reference
-      "RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   /*** collection of generic address types ***/
-
-   typedef phys-address {
-     type string {
-       pattern '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?';
-     }
-     description
-      "Represents media- or physical-level addresses represented
-       as a sequence octets, each octet represented by two hexadecimal
-       numbers.  Octets are separated by colons.  The canonical
-       representation uses lowercase characters.
-
-       In the value set and its semantics, this type is equivalent
-       to the PhysAddress textual convention of the SMIv2.";
-     reference
-      "RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   typedef mac-address {
-     type string {
-       pattern '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}';
-     }
-     description
-      "The mac-address type represents an IEEE 802 MAC address.
-       The canonical representation uses lowercase characters.
-
-       In the value set and its semantics, this type is equivalent
-       to the MacAddress textual convention of the SMIv2.";
-     reference
-      "IEEE 802: IEEE Standard for Local and Metropolitan Area
-                 Networks: Overview and Architecture
-       RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   /*** collection of XML specific types ***/
-
-   typedef xpath1.0 {
-     type string;
-     description
-      "This type represents an XPATH 1.0 expression.
-
-       When a schema node is defined that uses this type, the
-       description of the schema node MUST specify the XPath
-       context in which the XPath expression is evaluated.";
-     reference
-      "XPATH: XML Path Language (XPath) Version 1.0";
-   }
-
- }
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/binary-type-test-models/binary-type-test.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/binary-type-test-models/binary-type-test.yang
deleted file mode 100644 (file)
index 14735c3..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-module binary-type-test {
-    yang-version 1;
-    namespace "urn:binary:types:model";
-    prefix "btt";
-
-    import binary-types {
-        prefix "bin";
-        revision-date 2013-06-13;
-    }
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    description
-        "Simple test to test imported binary types and resolving of binary
-        type in leaf statement.";
-
-    revision "2013-06-13" {
-        reference "NO REF";
-    }
-
-    typedef binary-type {
-        type binary {
-            length 128;
-        }
-    }
-
-    container container-foo {
-        leaf binary-leaf {
-            type binary {
-                length 128;
-            }
-        }
-
-        list binary-list {
-            key "binary-key";
-
-            leaf binary-key {
-                type btt:binary-type;
-            }
-
-            leaf imported-simple-binary {
-                type bin:simple-binary;
-            }
-        }
-
-        leaf imported-restrict-binary {
-            type bin:restricted-binary;
-        }
-
-        leaf-list binary-leaf-list {
-            type binary {
-                length 256;
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/binary-type-test-models/binary-types@2013-06-13.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/binary-type-test-models/binary-types@2013-06-13.yang
deleted file mode 100644 (file)
index df55441..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
- module binary-types {
-
-   namespace "urn:binary:types";
-   prefix "bin";
-
-   organization "OPEN DAYLIGHT";
-
-   contact "http://www.opendaylight.org/";
-
-   description "Stand alone binary types declaration file for testing
-   purposes only.";
-
-   revision 2013-06-13 {
-     description
-      "Initial revision.";
-     reference
-      "NO REFERENCE";
-   }
-
-   /*** collection of protocol field related types ***/
-
-   typedef simple-binary {
-     type binary;
-   }
-
-   typedef restricted-binary {
-     type binary {
-        length 24;
-     }
-   }
-
-   typedef composite-binary {
-     type union {
-        type bin:simple-binary;
-        type bin:restricted-binary;
-     }
-   }
- }
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/bit_and_union_in_leaf.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/bit_and_union_in_leaf.yang
deleted file mode 100644 (file)
index b5279b0..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-module bit-and-union-in-leaf {
-
-    namespace "urn:bit:union:in:leaf";
-    prefix "sbd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision 2013-06-26 {
-
-    }
-
-    typedef union-typedef {
-        type union {
-            type string {
-                pattern "[a-g]";
-            }
-            type int16;
-        }
-    }
-
-    typedef union-typedef2 {
-        type union {
-            type string; 
-            type int16;
-        }
-    }    
-
-    container parent-container {
-        leaf bit-leaf {
-            type bits {
-                bit first-bit;
-                bit second-bit;
-                bit third-bit;
-            }
-        }
-
-        leaf union-leaf {
-            type union {
-                type int32;
-                type string {
-                    pattern "[a-z]";
-                }
-                type string {
-                    pattern "[0-9]*";
-                }
-                type string {
-                    pattern "[a-d]*";
-                    pattern "[0-5]*";
-                }
-                type uint8;
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/choice-case-type-test-models/augment-monitoring@2013-07-01.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/choice-case-type-test-models/augment-monitoring@2013-07-01.yang
deleted file mode 100644 (file)
index 4683598..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-module augment-monitoring {
-    yang-version 1;
-    namespace "urn:ietf:params:xml:ns:yang:augment-monitoring";
-    prefix "amon";
-
-    import choice-monitoring { prefix nm; }
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision "2013-07-01" {
-            reference "NO REF";
-    }
-
-    augment "/nm:netconf-state/nm:datastores/nm:datastore/nm:locks/nm:lock-type" {
-        case autonomous-lock {
-            container autonomous-def {
-                leaf lock-id {
-                    type int32;
-                }
-
-                leaf lock-time {
-                    type uint32;
-                }
-            }
-        }
-
-        case anonymous-lock {
-            leaf lock-time {
-                type uint32;
-            }
-        }
-
-        leaf leaf-aug-case {
-            type string;
-        }
-    }
-
-    augment "/nm:netconf-state/nm:datastores/nm:datastore/nm:locks/nm:lock-type/nm:partial-lock" {
-        choice aug-case-by-choice {
-            case foo {
-                leaf foo {
-                    type string;
-                }
-            }
-
-            case bar {
-                leaf bar {
-                    type boolean;
-                }
-            }
-        }
-    }
-
-    augment "/nm:netconf-state/nm:datastores/nm:datastore" {
-        choice storage-format {
-            case xml {
-                container xml-def {
-                    leaf file-name {
-                        type string;
-                    }
-                }
-            }
-
-            case yang {
-                leaf yang-file-name {
-                    type string;
-                }
-            }
-
-            case unknown-files {
-                list files {
-                    key "file-name";
-
-                    leaf file-name {
-                        type string;
-                    }
-
-                    container file-data {
-                        leaf utf8-data {
-                            type string;
-                        }
-                    }
-                }
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/choice-case-type-test-models/choice-monitoring@2013-07-01.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/choice-case-type-test-models/choice-monitoring@2013-07-01.yang
deleted file mode 100644 (file)
index 2362783..0000000
+++ /dev/null
@@ -1,129 +0,0 @@
-module choice-monitoring {
-  yang-version 1;
-  namespace "urn:ietf:params:xml:ns:yang:choice-monitoring";
-  prefix "ncm";
-
-  import ietf-yang-types { prefix yang; }
-  import ietf-inet-types { prefix inet; }
-
-  organization "OPEN DAYLIGHT";
-  contact "http://www.opendaylight.org/";
-
-  description
-    "Test model for testing of resolving choice, case nodes and generation types from them.";
-
-  revision 2013-07-01 {
-
-  }
-
-  typedef tls-fingerprint-type {
-    type string {
-      pattern '([0-9a-fA-F]){2}(:([0-9a-fA-F]){2})*';
-    }
-  }
-
-  typedef netconf-datastore-type {
-    type enumeration {
-      enum running;
-      enum candidate;
-      enum startup;
-    }
-  }
-
-  container netconf-state {
-    config false;
-
-    container datastores {
-      list datastore {
-        key name;
-
-        leaf name {
-          type netconf-datastore-type;
-        }
-        container locks {
-          choice lock-type {
-
-            case global-lock {
-                container global-lock {
-
-                leaf locked-by-session {
-                  type uint32;
-                  mandatory true;
-                }
-
-                leaf locked-time {
-                  type yang:date-and-time;
-                  mandatory true;
-                }
-
-                container capabilities {
-                  leaf-list capability {
-                      type inet:uri;
-                  }
-                }
-              }
-            }
-
-            case partial-lock {
-              list partial-lock {
-                  key lock-id;
-
-                  leaf lock-id {
-                    type uint32;
-                  }
-                  leaf-list select {
-                    type yang:xpath1.0;
-                    min-elements 1;
-                  }
-                  leaf-list locked-node {
-                    type string;
-                  }
-              }
-            }
-
-            case fingerprint {
-              choice algorithm-and-hash {
-                  mandatory true;
-                  case md5 {
-                    leaf md5 {
-                      type tls-fingerprint-type;
-                    }
-                  }
-
-                  case sha1 {
-                    leaf sha1 {
-                      type tls-fingerprint-type;
-                    }
-                  }
-                  
-                  case sha224 {
-                    leaf sha224 {
-                      type tls-fingerprint-type;
-                    }
-                  }
-                  
-                  case sha256 {
-                    leaf sha256 {
-                      type tls-fingerprint-type;
-                    }
-                  }
-                  
-                  case sha384 {
-                    leaf sha384 {
-                      type tls-fingerprint-type;
-                    }
-                  }                
-                  
-                  case sha512 {
-                    leaf sha512 {
-                      type tls-fingerprint-type;
-                    }
-                  }
-              }
-            }
-          }
-        }
-      }
-    }
-  }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/choice-case-type-test-models/ietf-inet-types@2010-09-24.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/choice-case-type-test-models/ietf-inet-types@2010-09-24.yang
deleted file mode 100644 (file)
index de20feb..0000000
+++ /dev/null
@@ -1,418 +0,0 @@
- module ietf-inet-types {
-
-   namespace "urn:ietf:params:xml:ns:yang:ietf-inet-types";
-   prefix "inet";
-
-   organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-   contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Partain
-               <mailto:david.partain@ericsson.com>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     Editor:   Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>";
-
-   description
-    "This module contains a collection of generally useful derived
-     YANG data types for Internet addresses and related things.
-
-     Copyright (c) 2010 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or without
-     modification, is permitted pursuant to, and subject to the license
-     terms contained in, the Simplified BSD License set forth in Section
-     4.c of the IETF Trust's Legal Provisions Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC 6021; see
-     the RFC itself for full legal notices.";
-
-   revision 2010-09-24 {
-     description
-      "Initial revision.";
-     reference
-      "RFC 6021: Common YANG Data Types";
-   }
-
-   /*** collection of protocol field related types ***/
-
-   typedef ip-version {
-     type enumeration {
-       enum unknown {
-         value "0";
-         description
-          "An unknown or unspecified version of the Internet protocol.";
-       }
-       enum ipv4 {
-         value "1";
-         description
-          "The IPv4 protocol as defined in RFC 791.";
-       }
-       enum ipv6 {
-         value "2";
-         description
-          "The IPv6 protocol as defined in RFC 2460.";
-       }
-     }
-     description
-      "This value represents the version of the IP protocol.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetVersion textual convention of the SMIv2.";
-     reference
-      "RFC  791: Internet Protocol
-       RFC 2460: Internet Protocol, Version 6 (IPv6) Specification
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   typedef dscp {
-     type uint8 {
-       range "0..63";
-     }
-     description
-      "The dscp type represents a Differentiated Services Code-Point
-       that may be used for marking packets in a traffic stream.
-
-       In the value set and its semantics, this type is equivalent
-       to the Dscp textual convention of the SMIv2.";
-     reference
-      "RFC 3289: Management Information Base for the Differentiated
-                 Services Architecture
-       RFC 2474: Definition of the Differentiated Services Field
-                 (DS Field) in the IPv4 and IPv6 Headers
-       RFC 2780: IANA Allocation Guidelines For Values In
-                 the Internet Protocol and Related Headers";
-   }
-
-   typedef ipv6-flow-label {
-     type uint32 {
-       range "0..1048575";
-     }
-     description
-      "The flow-label type represents flow identifier or Flow Label
-       in an IPv6 packet header that may be used to discriminate
-       traffic flows.
-
-       In the value set and its semantics, this type is equivalent
-       to the IPv6FlowLabel textual convention of the SMIv2.";
-     reference
-      "RFC 3595: Textual Conventions for IPv6 Flow Label
-       RFC 2460: Internet Protocol, Version 6 (IPv6) Specification";
-   }
-
-   typedef port-number {
-     type uint16 {
-       range "0..65535";
-     }
-     description
-      "The port-number type represents a 16-bit port number of an
-       Internet transport layer protocol such as UDP, TCP, DCCP, or
-       SCTP.  Port numbers are assigned by IANA.  A current list of
-       all assignments is available from <http://www.iana.org/>.
-
-       Note that the port number value zero is reserved by IANA.  In
-       situations where the value zero does not make sense, it can
-       be excluded by subtyping the port-number type.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetPortNumber textual convention of the SMIv2.";
-     reference
-      "RFC  768: User Datagram Protocol
-       RFC  793: Transmission Control Protocol
-       RFC 4960: Stream Control Transmission Protocol
-       RFC 4340: Datagram Congestion Control Protocol (DCCP)
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   /*** collection of autonomous system related types ***/
-
-   typedef as-number {
-     type uint32;
-     description
-      "The as-number type represents autonomous system numbers
-       which identify an Autonomous System (AS).  An AS is a set
-       of routers under a single technical administration, using
-       an interior gateway protocol and common metrics to route
-       packets within the AS, and using an exterior gateway
-       protocol to route packets to other ASs'.  IANA maintains
-       the AS number space and has delegated large parts to the
-       regional registries.
-
-       Autonomous system numbers were originally limited to 16
-       bits.  BGP extensions have enlarged the autonomous system
-       number space to 32 bits.  This type therefore uses an uint32
-       base type without a range restriction in order to support
-       a larger autonomous system number space.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetAutonomousSystemNumber textual convention of
-       the SMIv2.";
-     reference
-      "RFC 1930: Guidelines for creation, selection, and registration
-                 of an Autonomous System (AS)
-       RFC 4271: A Border Gateway Protocol 4 (BGP-4)
-       RFC 4893: BGP Support for Four-octet AS Number Space
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   /*** collection of IP address and hostname related types ***/
-
-   typedef ip-address {
-     type union {
-       type inet:ipv4-address;
-       type inet:ipv6-address;
-     }
-     description
-      "The ip-address type represents an IP address and is IP
-       version neutral.  The format of the textual representations
-       implies the IP version.";
-   }
-
-   typedef ipv4-address {
-     type string {
-       pattern
-         '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
-       +  '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
-       + '(%[\p{N}\p{L}]+)?';
-     }
-     description
-       "The ipv4-address type represents an IPv4 address in
-        dotted-quad notation.  The IPv4 address may include a zone
-        index, separated by a % sign.
-
-        The zone index is used to disambiguate identical address
-        values.  For link-local addresses, the zone index will
-        typically be the interface index number or the name of an
-        interface.  If the zone index is not present, the default
-        zone of the device will be used.
-
-        The canonical format for the zone index is the numerical
-        format";
-   }
-
-   typedef ipv6-address {
-     type string {
-       pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
-             + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
-             + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
-             + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
-             + '(%[\p{N}\p{L}]+)?';
-       pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
-             + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
-             + '(%.+)?';
-     }
-     description
-      "The ipv6-address type represents an IPv6 address in full,
-       mixed, shortened, and shortened-mixed notation.  The IPv6
-       address may include a zone index, separated by a % sign.
-
-       The zone index is used to disambiguate identical address
-       values.  For link-local addresses, the zone index will
-       typically be the interface index number or the name of an
-       interface.  If the zone index is not present, the default
-       zone of the device will be used.
-
-       The canonical format of IPv6 addresses uses the compressed
-       format described in RFC 4291, Section 2.2, item 2 with the
-       following additional rules: the :: substitution must be
-       applied to the longest sequence of all-zero 16-bit chunks
-       in an IPv6 address.  If there is a tie, the first sequence
-       of all-zero 16-bit chunks is replaced by ::.  Single
-       all-zero 16-bit chunks are not compressed.  The canonical
-       format uses lowercase characters and leading zeros are
-       not allowed.  The canonical format for the zone index is
-       the numerical format as described in RFC 4007, Section
-       11.2.";
-     reference
-      "RFC 4291: IP Version 6 Addressing Architecture
-       RFC 4007: IPv6 Scoped Address Architecture
-       RFC 5952: A Recommendation for IPv6 Address Text Representation";
-   }
-
-   typedef ip-prefix {
-     type union {
-       type inet:ipv4-prefix;
-       type inet:ipv6-prefix;
-     }
-     description
-      "The ip-prefix type represents an IP prefix and is IP
-       version neutral.  The format of the textual representations
-       implies the IP version.";
-   }
-
-   typedef ipv4-prefix {
-     type string {
-       pattern
-          '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
-        +  '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
-        + '/(([0-9])|([1-2][0-9])|(3[0-2]))';
-     }
-     description
-      "The ipv4-prefix type represents an IPv4 address prefix.
-       The prefix length is given by the number following the
-       slash character and must be less than or equal to 32.
-
-       A prefix length value of n corresponds to an IP address
-       mask that has n contiguous 1-bits from the most
-       significant bit (MSB) and all other bits set to 0.
-
-       The canonical format of an IPv4 prefix has all bits of
-       the IPv4 address set to zero that are not part of the
-       IPv4 prefix.";
-   }
-
-   typedef ipv6-prefix {
-     type string {
-       pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
-             + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
-             + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
-             + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
-             + '(/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))';
-       pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
-             + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
-             + '(/.+)';
-     }
-     description
-      "The ipv6-prefix type represents an IPv6 address prefix.
-       The prefix length is given by the number following the
-       slash character and must be less than or equal 128.
-
-       A prefix length value of n corresponds to an IP address
-       mask that has n contiguous 1-bits from the most
-       significant bit (MSB) and all other bits set to 0.
-
-       The IPv6 address should have all bits that do not belong
-       to the prefix set to zero.
-
-       The canonical format of an IPv6 prefix has all bits of
-       the IPv6 address set to zero that are not part of the
-       IPv6 prefix.  Furthermore, IPv6 address is represented
-       in the compressed format described in RFC 4291, Section
-       2.2, item 2 with the following additional rules: the ::
-       substitution must be applied to the longest sequence of
-       all-zero 16-bit chunks in an IPv6 address.  If there is
-       a tie, the first sequence of all-zero 16-bit chunks is
-       replaced by ::.  Single all-zero 16-bit chunks are not
-       compressed.  The canonical format uses lowercase
-       characters and leading zeros are not allowed.";
-     reference
-      "RFC 4291: IP Version 6 Addressing Architecture";
-   }
-
-   /*** collection of domain name and URI types ***/
-
-   typedef domain-name {
-     type string {
-       pattern '((([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.)*'
-            +  '([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.?)'
-            +  '|\.';
-       length "1..253";
-     }
-     description
-      "The domain-name type represents a DNS domain name.  The
-       name SHOULD be fully qualified whenever possible.
-
-       Internet domain names are only loosely specified.  Section
-       3.5 of RFC 1034 recommends a syntax (modified in Section
-       2.1 of RFC 1123).  The pattern above is intended to allow
-       for current practice in domain name use, and some possible
-       future expansion.  It is designed to hold various types of
-       domain names, including names used for A or AAAA records
-       (host names) and other records, such as SRV records.  Note
-       that Internet host names have a stricter syntax (described
-       in RFC 952) than the DNS recommendations in RFCs 1034 and
-       1123, and that systems that want to store host names in
-       schema nodes using the domain-name type are recommended to
-       adhere to this stricter standard to ensure interoperability.
-
-       The encoding of DNS names in the DNS protocol is limited
-       to 255 characters.  Since the encoding consists of labels
-       prefixed by a length bytes and there is a trailing NULL
-       byte, only 253 characters can appear in the textual dotted
-       notation.
-
-       The description clause of schema nodes using the domain-name
-       type MUST describe when and how these names are resolved to
-       IP addresses.  Note that the resolution of a domain-name value
-       may require to query multiple DNS records (e.g., A for IPv4
-       and AAAA for IPv6).  The order of the resolution process and
-       which DNS record takes precedence can either be defined
-       explicitely or it may depend on the configuration of the
-       resolver.
-
-       Domain-name values use the US-ASCII encoding.  Their canonical
-       format uses lowercase US-ASCII characters.  Internationalized
-       domain names MUST be encoded in punycode as described in RFC
-       3492";
-     reference
-      "RFC  952: DoD Internet Host Table Specification
-       RFC 1034: Domain Names - Concepts and Facilities
-       RFC 1123: Requirements for Internet Hosts -- Application
-                 and Support
-       RFC 2782: A DNS RR for specifying the location of services
-                 (DNS SRV)
-       RFC 3492: Punycode: A Bootstring encoding of Unicode for
-                 Internationalized Domain Names in Applications
-                 (IDNA)
-       RFC 5891: Internationalizing Domain Names in Applications
-                 (IDNA): Protocol";
-   }
-
-   typedef host {
-     type union {
-       type inet:ip-address;
-       type inet:domain-name;
-     }
-     description
-      "The host type represents either an IP address or a DNS
-       domain name.";
-   }
-
-   typedef uri {
-     type string;
-     description
-      "The uri type represents a Uniform Resource Identifier
-       (URI) as defined by STD 66.
-
-       Objects using the uri type MUST be in US-ASCII encoding,
-       and MUST be normalized as described by RFC 3986 Sections
-       6.2.1, 6.2.2.1, and 6.2.2.2.  All unnecessary
-       percent-encoding is removed, and all case-insensitive
-       characters are set to lowercase except for hexadecimal
-       digits, which are normalized to uppercase as described in
-       Section 6.2.2.1.
-
-       The purpose of this normalization is to help provide
-       unique URIs.  Note that this normalization is not
-       sufficient to provide uniqueness.  Two URIs that are
-       textually distinct after this normalization may still be
-       equivalent.
-
-       Objects using the uri type may restrict the schemes that
-       they permit.  For example, 'data:' and 'urn:' schemes
-       might not be appropriate.
-
-       A zero-length URI is not a valid URI.  This can be used to
-       express 'URI absent' where required.
-
-       In the value set and its semantics, this type is equivalent
-       to the Uri SMIv2 textual convention defined in RFC 5017.";
-     reference
-      "RFC 3986: Uniform Resource Identifier (URI): Generic Syntax
-       RFC 3305: Report from the Joint W3C/IETF URI Planning Interest
-                 Group: Uniform Resource Identifiers (URIs), URLs,
-                 and Uniform Resource Names (URNs): Clarifications
-                 and Recommendations
-       RFC 5017: MIB Textual Conventions for Uniform Resource
-                 Identifiers (URIs)";
-   }
-
- }
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/choice-case-type-test-models/ietf-yang-types@2010-09-24.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/choice-case-type-test-models/ietf-yang-types@2010-09-24.yang
deleted file mode 100644 (file)
index e9d88ab..0000000
+++ /dev/null
@@ -1,396 +0,0 @@
- module ietf-yang-types {
-
-   namespace "urn:ietf:params:xml:ns:yang:ietf-yang-types";
-   prefix "yang";
-
-   organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-   contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Partain
-               <mailto:david.partain@ericsson.com>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     Editor:   Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>";
-
-   description
-    "This module contains a collection of generally useful derived
-     YANG data types.
-
-     Copyright (c) 2010 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or without
-     modification, is permitted pursuant to, and subject to the license
-     terms contained in, the Simplified BSD License set forth in Section
-     4.c of the IETF Trust's Legal Provisions Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC 6021; see
-     the RFC itself for full legal notices.";
-
-   revision 2010-09-24 {
-     description
-      "Initial revision.";
-     reference
-      "RFC 6021: Common YANG Data Types";
-   }
-
-   /*** collection of counter and gauge types ***/
-
-   typedef counter32 {
-     type uint32;
-     description
-      "The counter32 type represents a non-negative integer
-       that monotonically increases until it reaches a
-       maximum value of 2^32-1 (4294967295 decimal), when it
-       wraps around and starts increasing again from zero.
-
-       Counters have no defined 'initial' value, and thus, a
-       single value of a counter has (in general) no information
-       content.  Discontinuities in the monotonically increasing
-       value normally occur at re-initialization of the
-       management system, and at other times as specified in the
-       description of a schema node using this type.  If such
-       other times can occur, for example, the creation of
-       a schema node of type counter32 at times other than
-       re-initialization, then a corresponding schema node
-       should be defined, with an appropriate type, to indicate
-       the last discontinuity.
-
-       The counter32 type should not be used for configuration
-       schema nodes.  A default statement SHOULD NOT be used in
-       combination with the type counter32.
-
-       In the value set and its semantics, this type is equivalent
-       to the Counter32 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef zero-based-counter32 {
-     type yang:counter32;
-     default "0";
-     description
-      "The zero-based-counter32 type represents a counter32
-       that has the defined 'initial' value zero.
-
-       A schema node of this type will be set to zero (0) on creation
-       and will thereafter increase monotonically until it reaches
-       a maximum value of 2^32-1 (4294967295 decimal), when it
-       wraps around and starts increasing again from zero.
-
-       Provided that an application discovers a new schema node
-       of this type within the minimum time to wrap, it can use the
-       'initial' value as a delta.  It is important for a management
-       station to be aware of this minimum time and the actual time
-       between polls, and to discard data if the actual time is too
-       long or there is no defined minimum time.
-
-       In the value set and its semantics, this type is equivalent
-       to the ZeroBasedCounter32 textual convention of the SMIv2.";
-     reference
-       "RFC 4502: Remote Network Monitoring Management Information
-                  Base Version 2";
-   }
-
-   typedef counter64 {
-     type uint64;
-     description
-      "The counter64 type represents a non-negative integer
-       that monotonically increases until it reaches a
-       maximum value of 2^64-1 (18446744073709551615 decimal),
-       when it wraps around and starts increasing again from zero.
-
-       Counters have no defined 'initial' value, and thus, a
-       single value of a counter has (in general) no information
-       content.  Discontinuities in the monotonically increasing
-       value normally occur at re-initialization of the
-       management system, and at other times as specified in the
-       description of a schema node using this type.  If such
-       other times can occur, for example, the creation of
-       a schema node of type counter64 at times other than
-       re-initialization, then a corresponding schema node
-       should be defined, with an appropriate type, to indicate
-       the last discontinuity.
-
-       The counter64 type should not be used for configuration
-       schema nodes.  A default statement SHOULD NOT be used in
-       combination with the type counter64.
-
-       In the value set and its semantics, this type is equivalent
-       to the Counter64 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef zero-based-counter64 {
-     type yang:counter64;
-     default "0";
-     description
-      "The zero-based-counter64 type represents a counter64 that
-       has the defined 'initial' value zero.
-
-       A schema node of this type will be set to zero (0) on creation
-       and will thereafter increase monotonically until it reaches
-       a maximum value of 2^64-1 (18446744073709551615 decimal),
-       when it wraps around and starts increasing again from zero.
-
-       Provided that an application discovers a new schema node
-       of this type within the minimum time to wrap, it can use the
-       'initial' value as a delta.  It is important for a management
-       station to be aware of this minimum time and the actual time
-       between polls, and to discard data if the actual time is too
-       long or there is no defined minimum time.
-
-       In the value set and its semantics, this type is equivalent
-       to the ZeroBasedCounter64 textual convention of the SMIv2.";
-     reference
-      "RFC 2856: Textual Conventions for Additional High Capacity
-                 Data Types";
-   }
-
-   typedef gauge32 {
-     type uint32;
-     description
-      "The gauge32 type represents a non-negative integer, which
-       may increase or decrease, but shall never exceed a maximum
-       value, nor fall below a minimum value.  The maximum value
-       cannot be greater than 2^32-1 (4294967295 decimal), and
-       the minimum value cannot be smaller than 0.  The value of
-       a gauge32 has its maximum value whenever the information
-       being modeled is greater than or equal to its maximum
-       value, and has its minimum value whenever the information
-       being modeled is smaller than or equal to its minimum value.
-       If the information being modeled subsequently decreases
-       below (increases above) the maximum (minimum) value, the
-       gauge32 also decreases (increases).
-
-       In the value set and its semantics, this type is equivalent
-       to the Gauge32 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef gauge64 {
-     type uint64;
-     description
-      "The gauge64 type represents a non-negative integer, which
-       may increase or decrease, but shall never exceed a maximum
-       value, nor fall below a minimum value.  The maximum value
-       cannot be greater than 2^64-1 (18446744073709551615), and
-       the minimum value cannot be smaller than 0.  The value of
-       a gauge64 has its maximum value whenever the information
-       being modeled is greater than or equal to its maximum
-       value, and has its minimum value whenever the information
-       being modeled is smaller than or equal to its minimum value.
-       If the information being modeled subsequently decreases
-       below (increases above) the maximum (minimum) value, the
-       gauge64 also decreases (increases).
-
-       In the value set and its semantics, this type is equivalent
-       to the CounterBasedGauge64 SMIv2 textual convention defined
-       in RFC 2856";
-     reference
-      "RFC 2856: Textual Conventions for Additional High Capacity
-                 Data Types";
-   }
-
-   /*** collection of identifier related types ***/
-
-   typedef object-identifier {
-     type string {
-       pattern '(([0-1](\.[1-3]?[0-9]))|(2\.(0|([1-9]\d*))))'
-             + '(\.(0|([1-9]\d*)))*';
-     }
-     description
-      "The object-identifier type represents administratively
-       assigned names in a registration-hierarchical-name tree.
-
-       Values of this type are denoted as a sequence of numerical
-       non-negative sub-identifier values.  Each sub-identifier
-       value MUST NOT exceed 2^32-1 (4294967295).  Sub-identifiers
-       are separated by single dots and without any intermediate
-       whitespace.
-
-       The ASN.1 standard restricts the value space of the first
-       sub-identifier to 0, 1, or 2.  Furthermore, the value space
-       of the second sub-identifier is restricted to the range
-       0 to 39 if the first sub-identifier is 0 or 1.  Finally,
-       the ASN.1 standard requires that an object identifier
-       has always at least two sub-identifier.  The pattern
-       captures these restrictions.
-
-       Although the number of sub-identifiers is not limited,
-       module designers should realize that there may be
-       implementations that stick with the SMIv2 limit of 128
-       sub-identifiers.
-
-       This type is a superset of the SMIv2 OBJECT IDENTIFIER type
-       since it is not restricted to 128 sub-identifiers.  Hence,
-       this type SHOULD NOT be used to represent the SMIv2 OBJECT
-       IDENTIFIER type, the object-identifier-128 type SHOULD be
-       used instead.";
-     reference
-      "ISO9834-1: Information technology -- Open Systems
-       Interconnection -- Procedures for the operation of OSI
-       Registration Authorities: General procedures and top
-       arcs of the ASN.1 Object Identifier tree";
-   }
-
-
-
-
-   typedef object-identifier-128 {
-     type object-identifier {
-       pattern '\d*(\.\d*){1,127}';
-     }
-     description
-      "This type represents object-identifiers restricted to 128
-       sub-identifiers.
-
-       In the value set and its semantics, this type is equivalent
-       to the OBJECT IDENTIFIER type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   /*** collection of date and time related types ***/
-
-   typedef date-and-time {
-     type string {
-       pattern '\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?'
-             + '(Z|[\+\-]\d{2}:\d{2})';
-     }
-     description
-      "The date-and-time type is a profile of the ISO 8601
-       standard for representation of dates and times using the
-       Gregorian calendar.  The profile is defined by the
-       date-time production in Section 5.6 of RFC 3339.
-
-       The date-and-time type is compatible with the dateTime XML
-       schema type with the following notable exceptions:
-
-       (a) The date-and-time type does not allow negative years.
-
-       (b) The date-and-time time-offset -00:00 indicates an unknown
-           time zone (see RFC 3339) while -00:00 and +00:00 and Z all
-           represent the same time zone in dateTime.
-
-       (c) The canonical format (see below) of data-and-time values
-           differs from the canonical format used by the dateTime XML
-           schema type, which requires all times to be in UTC using the
-           time-offset 'Z'.
-
-       This type is not equivalent to the DateAndTime textual
-       convention of the SMIv2 since RFC 3339 uses a different
-       separator between full-date and full-time and provides
-       higher resolution of time-secfrac.
-
-       The canonical format for date-and-time values with a known time
-       zone uses a numeric time zone offset that is calculated using
-       the device's configured known offset to UTC time.  A change of
-       the device's offset to UTC time will cause date-and-time values
-       to change accordingly.  Such changes might happen periodically
-       in case a server follows automatically daylight saving time
-       (DST) time zone offset changes.  The canonical format for
-       date-and-time values with an unknown time zone (usually referring
-       to the notion of local time) uses the time-offset -00:00.";
-     reference
-      "RFC 3339: Date and Time on the Internet: Timestamps
-       RFC 2579: Textual Conventions for SMIv2
-       XSD-TYPES: XML Schema Part 2: Datatypes Second Edition";
-   }
-
-   typedef timeticks {
-     type uint32;
-     description
-      "The timeticks type represents a non-negative integer that
-       represents the time, modulo 2^32 (4294967296 decimal), in
-       hundredths of a second between two epochs.  When a schema
-       node is defined that uses this type, the description of
-       the schema node identifies both of the reference epochs.
-
-       In the value set and its semantics, this type is equivalent
-       to the TimeTicks type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef timestamp {
-     type yang:timeticks;
-     description
-      "The timestamp type represents the value of an associated
-       timeticks schema node at which a specific occurrence happened.
-       The specific occurrence must be defined in the description
-       of any schema node defined using this type.  When the specific
-       occurrence occurred prior to the last time the associated
-       timeticks attribute was zero, then the timestamp value is
-       zero.  Note that this requires all timestamp values to be
-       reset to zero when the value of the associated timeticks
-       attribute reaches 497+ days and wraps around to zero.
-
-       The associated timeticks schema node must be specified
-       in the description of any schema node using this type.
-
-       In the value set and its semantics, this type is equivalent
-       to the TimeStamp textual convention of the SMIv2.";
-     reference
-      "RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   /*** collection of generic address types ***/
-
-   typedef phys-address {
-     type string {
-       pattern '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?';
-     }
-     description
-      "Represents media- or physical-level addresses represented
-       as a sequence octets, each octet represented by two hexadecimal
-       numbers.  Octets are separated by colons.  The canonical
-       representation uses lowercase characters.
-
-       In the value set and its semantics, this type is equivalent
-       to the PhysAddress textual convention of the SMIv2.";
-     reference
-      "RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   typedef mac-address {
-     type string {
-       pattern '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}';
-     }
-     description
-      "The mac-address type represents an IEEE 802 MAC address.
-       The canonical representation uses lowercase characters.
-
-       In the value set and its semantics, this type is equivalent
-       to the MacAddress textual convention of the SMIv2.";
-     reference
-      "IEEE 802: IEEE Standard for Local and Metropolitan Area
-                 Networks: Overview and Architecture
-       RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   /*** collection of XML specific types ***/
-
-   typedef xpath1.0 {
-     type string;
-     description
-      "This type represents an XPATH 1.0 expression.
-
-       When a schema node is defined that uses this type, the
-       description of the schema node MUST specify the XPath
-       context in which the XPath expression is evaluated.";
-     reference
-      "XPATH: XML Path Language (XPath) Version 1.0";
-   }
-
- }
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/controller-models/controller-network.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/controller-models/controller-network.yang
deleted file mode 100644 (file)
index 357e6ba..0000000
+++ /dev/null
@@ -1,172 +0,0 @@
-module controller-network {
-       yang-version 1;
-       namespace "urn:opendaylight:controller:network";
-       prefix "topos";
-       
-       import ietf-inet-types { prefix "inet"; }
-       
-       revision 2013-05-20 {
-          description "Initial demo";
-       }
-       
-
-       
-       
-       typedef topology-id {
-               type string;
-       }
-
-       typedef node-id {
-               type string;
-       }
-
-       typedef link-id {
-               type string;
-       }
-
-       typedef tp-id {
-               type string;
-               description "identifier for termination points on a port";
-       }
-
-       typedef tp-ref {
-               type leafref {
-                       path "/network/topologies/topology/nodes/node/termination-points/termination-point/tp-id";
-               }
-       }
-       typedef topology-ref {
-               type leafref {
-                       path "/network/topologies/topology/topology-id";
-               }
-               description "This type is used for leafs that reference topology identifier instance.";
-               // currently not used
-       }
-
-       typedef node-ref {
-               type leafref {
-                       path "/network/topologies/topology/nodes/node/node-id";
-               }
-               description "This type is used for leafs that reference a node instance.";
-       }
-
-       typedef link-ref {
-               type leafref {
-                       path "/network/topologies/topology/links/link/link-id";
-               }
-               description "This type is used for leafs that reference a link instance.";
-               // currently not used
-       }
-       
-       typedef network-element-ref {
-               type leafref {
-                       path "/network/network-elements/network-element/element-id";
-               }
-       }
-
-
-       typedef element-id {
-               type string;
-       }
-       
-       container network {
-               container topologies {
-                       list topology {
-                               description "
-                                       This is the model of abstract topology which contains only Network
-                                       Nodes and Network Links. Each topology MUST be identified by
-                                       unique topology-id for reason that the store could contain many
-                                       topologies.
-                               ";
-                               key "topology-id";
-                               leaf topology-id {
-                                       type topology-id; 
-                                       description "
-                                               It is presumed that datastore will contain many topologies. To
-                                               distinguish between topologies it is vital to have UNIQUE
-                                               topology identifier.
-                                       ";
-                               }
-
-                               container types {
-                                       description "
-                                               The container for definition of topology types.
-                                               The augmenting modules should add empty optional leaf 
-                                               to this container to signalize topology type.
-                                       ";
-                               }
-
-                               container nodes {
-                                       list node {
-                                               description "The list of network nodes defined for topology.";
-
-                                               key "node-id";
-                                               leaf node-id {
-                                                       type node-id;
-                                                       description "The Topology identifier of network-node.";
-                                               }
-
-                                               leaf supporting-ne {
-                                                       type network-element-ref;
-                                               }
-                                               
-                                               container termination-points {
-                                                       list termination-point {
-                                                               key "tp-id";
-                                                               leaf tp-id {
-                                                                       type tp-id;
-                                                               }
-                                                       }
-                                               }
-                                       }
-                               }
-               
-                               container links {
-                                       list link {
-                                               description "
-                                                       The Network Link which is defined by Local (Source) and
-                                                       Remote (Destination) Network Nodes. Every link MUST be
-                                                       defined either by identifier and his local and remote
-                                                       Network Nodes (in real applications it is common that many
-                                                       links are originated from one node and end up in same
-                                                       remote node). To ensure that we would always know to
-                                                       distinguish between links, every link SHOULD have
-                                                       identifier.
-                                               ";
-                                               key "link-id";
-               
-                                               leaf link-id {
-                                                       type link-id;
-                                               }
-                                               container source { 
-                                                       leaf source-node {
-                                                               type node-ref;
-                                                               description "Source node identifier.";
-                                                       }
-                                                       leaf source-tp {
-                                                               type tp-ref;
-                                                       }
-                                               }
-                                               container destination { 
-                                                       leaf dest-node {
-                                                               type node-ref;
-                                                               description "Destination node identifier.";
-                                                       }
-                                                       leaf dest-tp {
-                                                               type tp-ref;
-                                                       }
-                                               }
-                                       }
-                               }
-                       }
-               }
-               container network-elements {
-                       config true;
-                       list network-element {
-                               key "element-id";
-                               leaf element-id {
-                                       type element-id;
-                               }
-                       }
-               }
-       }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/controller-models/controller-openflow.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/controller-models/controller-openflow.yang
deleted file mode 100644 (file)
index 62e937e..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-module controller-openflow {
-
-    namespace "urn:opendaylight:controller:openflow";
-    prefix "of";
-    import controller-network {prefix cn;}
-    
-    
-    revision 2013-05-20 {
-       description "Initial demo";
-    }
-
-   
-
-
-
-    typedef datapath-id {
-        type string {
-            length 16;
-        }
-    }
-
-
-    augment "/cn:network/cn:topologies/cn:topology/cn:types" {
-        leaf openflow {type string;}
-    }
-
-    augment "/cn:network/cn:topologies/cn:topology/cn:links/cn:link/cn:source" {
-        when "../../../cn:types/of:openflow";
-
-        leaf logical-port {
-            type int32;
-        }
-    }
-
-    augment "/cn:network/cn:topologies/cn:topology/cn:links/cn:link/cn:destination" {
-        when "../../../cn:types/of:openflow";
-
-        leaf logical-port {
-            type int32;
-        }
-    }
-
-    augment "/cn:network/cn:topologies/cn:topology/cn:nodes/cn:node/" {
-        when "../../../cn:types/of:openflow";
-        leaf datapath-id {
-            type datapath-id;
-        }
-    }
-    
-    augment "/cn:network/cn:network-elements/cn:network-element" {
-        leaf datapath-id {
-            type datapath-id;
-        }
-
-        container ports {
-            list port {
-                key "logical-port-id";
-                
-                leaf logical-port-id {
-                    type int32;
-                }
-
-                // Should be replaced with ref to interface
-                leaf physical-name {
-                    type string;
-                }
-            }
-        }
-        container flow-tables {
-            list flow-table {
-                key "flow-table-id";
-                leaf flow-table-id {
-                    type string;
-                }
-
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/controller-models/ietf-inet-types@2010-09-24.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/controller-models/ietf-inet-types@2010-09-24.yang
deleted file mode 100644 (file)
index de20feb..0000000
+++ /dev/null
@@ -1,418 +0,0 @@
- module ietf-inet-types {
-
-   namespace "urn:ietf:params:xml:ns:yang:ietf-inet-types";
-   prefix "inet";
-
-   organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-   contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Partain
-               <mailto:david.partain@ericsson.com>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     Editor:   Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>";
-
-   description
-    "This module contains a collection of generally useful derived
-     YANG data types for Internet addresses and related things.
-
-     Copyright (c) 2010 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or without
-     modification, is permitted pursuant to, and subject to the license
-     terms contained in, the Simplified BSD License set forth in Section
-     4.c of the IETF Trust's Legal Provisions Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC 6021; see
-     the RFC itself for full legal notices.";
-
-   revision 2010-09-24 {
-     description
-      "Initial revision.";
-     reference
-      "RFC 6021: Common YANG Data Types";
-   }
-
-   /*** collection of protocol field related types ***/
-
-   typedef ip-version {
-     type enumeration {
-       enum unknown {
-         value "0";
-         description
-          "An unknown or unspecified version of the Internet protocol.";
-       }
-       enum ipv4 {
-         value "1";
-         description
-          "The IPv4 protocol as defined in RFC 791.";
-       }
-       enum ipv6 {
-         value "2";
-         description
-          "The IPv6 protocol as defined in RFC 2460.";
-       }
-     }
-     description
-      "This value represents the version of the IP protocol.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetVersion textual convention of the SMIv2.";
-     reference
-      "RFC  791: Internet Protocol
-       RFC 2460: Internet Protocol, Version 6 (IPv6) Specification
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   typedef dscp {
-     type uint8 {
-       range "0..63";
-     }
-     description
-      "The dscp type represents a Differentiated Services Code-Point
-       that may be used for marking packets in a traffic stream.
-
-       In the value set and its semantics, this type is equivalent
-       to the Dscp textual convention of the SMIv2.";
-     reference
-      "RFC 3289: Management Information Base for the Differentiated
-                 Services Architecture
-       RFC 2474: Definition of the Differentiated Services Field
-                 (DS Field) in the IPv4 and IPv6 Headers
-       RFC 2780: IANA Allocation Guidelines For Values In
-                 the Internet Protocol and Related Headers";
-   }
-
-   typedef ipv6-flow-label {
-     type uint32 {
-       range "0..1048575";
-     }
-     description
-      "The flow-label type represents flow identifier or Flow Label
-       in an IPv6 packet header that may be used to discriminate
-       traffic flows.
-
-       In the value set and its semantics, this type is equivalent
-       to the IPv6FlowLabel textual convention of the SMIv2.";
-     reference
-      "RFC 3595: Textual Conventions for IPv6 Flow Label
-       RFC 2460: Internet Protocol, Version 6 (IPv6) Specification";
-   }
-
-   typedef port-number {
-     type uint16 {
-       range "0..65535";
-     }
-     description
-      "The port-number type represents a 16-bit port number of an
-       Internet transport layer protocol such as UDP, TCP, DCCP, or
-       SCTP.  Port numbers are assigned by IANA.  A current list of
-       all assignments is available from <http://www.iana.org/>.
-
-       Note that the port number value zero is reserved by IANA.  In
-       situations where the value zero does not make sense, it can
-       be excluded by subtyping the port-number type.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetPortNumber textual convention of the SMIv2.";
-     reference
-      "RFC  768: User Datagram Protocol
-       RFC  793: Transmission Control Protocol
-       RFC 4960: Stream Control Transmission Protocol
-       RFC 4340: Datagram Congestion Control Protocol (DCCP)
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   /*** collection of autonomous system related types ***/
-
-   typedef as-number {
-     type uint32;
-     description
-      "The as-number type represents autonomous system numbers
-       which identify an Autonomous System (AS).  An AS is a set
-       of routers under a single technical administration, using
-       an interior gateway protocol and common metrics to route
-       packets within the AS, and using an exterior gateway
-       protocol to route packets to other ASs'.  IANA maintains
-       the AS number space and has delegated large parts to the
-       regional registries.
-
-       Autonomous system numbers were originally limited to 16
-       bits.  BGP extensions have enlarged the autonomous system
-       number space to 32 bits.  This type therefore uses an uint32
-       base type without a range restriction in order to support
-       a larger autonomous system number space.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetAutonomousSystemNumber textual convention of
-       the SMIv2.";
-     reference
-      "RFC 1930: Guidelines for creation, selection, and registration
-                 of an Autonomous System (AS)
-       RFC 4271: A Border Gateway Protocol 4 (BGP-4)
-       RFC 4893: BGP Support for Four-octet AS Number Space
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   /*** collection of IP address and hostname related types ***/
-
-   typedef ip-address {
-     type union {
-       type inet:ipv4-address;
-       type inet:ipv6-address;
-     }
-     description
-      "The ip-address type represents an IP address and is IP
-       version neutral.  The format of the textual representations
-       implies the IP version.";
-   }
-
-   typedef ipv4-address {
-     type string {
-       pattern
-         '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
-       +  '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
-       + '(%[\p{N}\p{L}]+)?';
-     }
-     description
-       "The ipv4-address type represents an IPv4 address in
-        dotted-quad notation.  The IPv4 address may include a zone
-        index, separated by a % sign.
-
-        The zone index is used to disambiguate identical address
-        values.  For link-local addresses, the zone index will
-        typically be the interface index number or the name of an
-        interface.  If the zone index is not present, the default
-        zone of the device will be used.
-
-        The canonical format for the zone index is the numerical
-        format";
-   }
-
-   typedef ipv6-address {
-     type string {
-       pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
-             + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
-             + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
-             + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
-             + '(%[\p{N}\p{L}]+)?';
-       pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
-             + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
-             + '(%.+)?';
-     }
-     description
-      "The ipv6-address type represents an IPv6 address in full,
-       mixed, shortened, and shortened-mixed notation.  The IPv6
-       address may include a zone index, separated by a % sign.
-
-       The zone index is used to disambiguate identical address
-       values.  For link-local addresses, the zone index will
-       typically be the interface index number or the name of an
-       interface.  If the zone index is not present, the default
-       zone of the device will be used.
-
-       The canonical format of IPv6 addresses uses the compressed
-       format described in RFC 4291, Section 2.2, item 2 with the
-       following additional rules: the :: substitution must be
-       applied to the longest sequence of all-zero 16-bit chunks
-       in an IPv6 address.  If there is a tie, the first sequence
-       of all-zero 16-bit chunks is replaced by ::.  Single
-       all-zero 16-bit chunks are not compressed.  The canonical
-       format uses lowercase characters and leading zeros are
-       not allowed.  The canonical format for the zone index is
-       the numerical format as described in RFC 4007, Section
-       11.2.";
-     reference
-      "RFC 4291: IP Version 6 Addressing Architecture
-       RFC 4007: IPv6 Scoped Address Architecture
-       RFC 5952: A Recommendation for IPv6 Address Text Representation";
-   }
-
-   typedef ip-prefix {
-     type union {
-       type inet:ipv4-prefix;
-       type inet:ipv6-prefix;
-     }
-     description
-      "The ip-prefix type represents an IP prefix and is IP
-       version neutral.  The format of the textual representations
-       implies the IP version.";
-   }
-
-   typedef ipv4-prefix {
-     type string {
-       pattern
-          '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
-        +  '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
-        + '/(([0-9])|([1-2][0-9])|(3[0-2]))';
-     }
-     description
-      "The ipv4-prefix type represents an IPv4 address prefix.
-       The prefix length is given by the number following the
-       slash character and must be less than or equal to 32.
-
-       A prefix length value of n corresponds to an IP address
-       mask that has n contiguous 1-bits from the most
-       significant bit (MSB) and all other bits set to 0.
-
-       The canonical format of an IPv4 prefix has all bits of
-       the IPv4 address set to zero that are not part of the
-       IPv4 prefix.";
-   }
-
-   typedef ipv6-prefix {
-     type string {
-       pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
-             + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
-             + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
-             + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
-             + '(/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))';
-       pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
-             + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
-             + '(/.+)';
-     }
-     description
-      "The ipv6-prefix type represents an IPv6 address prefix.
-       The prefix length is given by the number following the
-       slash character and must be less than or equal 128.
-
-       A prefix length value of n corresponds to an IP address
-       mask that has n contiguous 1-bits from the most
-       significant bit (MSB) and all other bits set to 0.
-
-       The IPv6 address should have all bits that do not belong
-       to the prefix set to zero.
-
-       The canonical format of an IPv6 prefix has all bits of
-       the IPv6 address set to zero that are not part of the
-       IPv6 prefix.  Furthermore, IPv6 address is represented
-       in the compressed format described in RFC 4291, Section
-       2.2, item 2 with the following additional rules: the ::
-       substitution must be applied to the longest sequence of
-       all-zero 16-bit chunks in an IPv6 address.  If there is
-       a tie, the first sequence of all-zero 16-bit chunks is
-       replaced by ::.  Single all-zero 16-bit chunks are not
-       compressed.  The canonical format uses lowercase
-       characters and leading zeros are not allowed.";
-     reference
-      "RFC 4291: IP Version 6 Addressing Architecture";
-   }
-
-   /*** collection of domain name and URI types ***/
-
-   typedef domain-name {
-     type string {
-       pattern '((([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.)*'
-            +  '([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.?)'
-            +  '|\.';
-       length "1..253";
-     }
-     description
-      "The domain-name type represents a DNS domain name.  The
-       name SHOULD be fully qualified whenever possible.
-
-       Internet domain names are only loosely specified.  Section
-       3.5 of RFC 1034 recommends a syntax (modified in Section
-       2.1 of RFC 1123).  The pattern above is intended to allow
-       for current practice in domain name use, and some possible
-       future expansion.  It is designed to hold various types of
-       domain names, including names used for A or AAAA records
-       (host names) and other records, such as SRV records.  Note
-       that Internet host names have a stricter syntax (described
-       in RFC 952) than the DNS recommendations in RFCs 1034 and
-       1123, and that systems that want to store host names in
-       schema nodes using the domain-name type are recommended to
-       adhere to this stricter standard to ensure interoperability.
-
-       The encoding of DNS names in the DNS protocol is limited
-       to 255 characters.  Since the encoding consists of labels
-       prefixed by a length bytes and there is a trailing NULL
-       byte, only 253 characters can appear in the textual dotted
-       notation.
-
-       The description clause of schema nodes using the domain-name
-       type MUST describe when and how these names are resolved to
-       IP addresses.  Note that the resolution of a domain-name value
-       may require to query multiple DNS records (e.g., A for IPv4
-       and AAAA for IPv6).  The order of the resolution process and
-       which DNS record takes precedence can either be defined
-       explicitely or it may depend on the configuration of the
-       resolver.
-
-       Domain-name values use the US-ASCII encoding.  Their canonical
-       format uses lowercase US-ASCII characters.  Internationalized
-       domain names MUST be encoded in punycode as described in RFC
-       3492";
-     reference
-      "RFC  952: DoD Internet Host Table Specification
-       RFC 1034: Domain Names - Concepts and Facilities
-       RFC 1123: Requirements for Internet Hosts -- Application
-                 and Support
-       RFC 2782: A DNS RR for specifying the location of services
-                 (DNS SRV)
-       RFC 3492: Punycode: A Bootstring encoding of Unicode for
-                 Internationalized Domain Names in Applications
-                 (IDNA)
-       RFC 5891: Internationalizing Domain Names in Applications
-                 (IDNA): Protocol";
-   }
-
-   typedef host {
-     type union {
-       type inet:ip-address;
-       type inet:domain-name;
-     }
-     description
-      "The host type represents either an IP address or a DNS
-       domain name.";
-   }
-
-   typedef uri {
-     type string;
-     description
-      "The uri type represents a Uniform Resource Identifier
-       (URI) as defined by STD 66.
-
-       Objects using the uri type MUST be in US-ASCII encoding,
-       and MUST be normalized as described by RFC 3986 Sections
-       6.2.1, 6.2.2.1, and 6.2.2.2.  All unnecessary
-       percent-encoding is removed, and all case-insensitive
-       characters are set to lowercase except for hexadecimal
-       digits, which are normalized to uppercase as described in
-       Section 6.2.2.1.
-
-       The purpose of this normalization is to help provide
-       unique URIs.  Note that this normalization is not
-       sufficient to provide uniqueness.  Two URIs that are
-       textually distinct after this normalization may still be
-       equivalent.
-
-       Objects using the uri type may restrict the schemes that
-       they permit.  For example, 'data:' and 'urn:' schemes
-       might not be appropriate.
-
-       A zero-length URI is not a valid URI.  This can be used to
-       express 'URI absent' where required.
-
-       In the value set and its semantics, this type is equivalent
-       to the Uri SMIv2 textual convention defined in RFC 5017.";
-     reference
-      "RFC 3986: Uniform Resource Identifier (URI): Generic Syntax
-       RFC 3305: Report from the Joint W3C/IETF URI Planning Interest
-                 Group: Uniform Resource Identifiers (URIs), URLs,
-                 and Uniform Resource Names (URNs): Clarifications
-                 and Recommendations
-       RFC 5017: MIB Textual Conventions for Uniform Resource
-                 Identifiers (URIs)";
-   }
-
- }
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/controller-models/ietf-yang-types@2010-09-24.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/controller-models/ietf-yang-types@2010-09-24.yang
deleted file mode 100644 (file)
index 51d9f8b..0000000
+++ /dev/null
@@ -1,396 +0,0 @@
- module ietf-yang-types {
-
-   namespace "urn:ietf:params:xml:ns:yang:ietf-yang-types";
-   prefix "yang";
-
-   organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-   contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Partain
-               <mailto:david.partain@ericsson.com>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     Editor:   Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>";
-
-   description
-    "This module contains a collection of generally useful derived
-     YANG data types.
-
-     Copyright (c) 2010 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or without
-     modification, is permitted pursuant to, and subject to the license
-     terms contained in, the Simplified BSD License set forth in Section
-     4.c of the IETF Trust's Legal Provisions Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC 6021; see
-     the RFC itself for full legal notices.";
-
-   revision 2010-09-24 {
-     description
-      "Initial revision.";
-     reference
-      "RFC 6021: Common YANG Data Types";
-   }
-
-   /*** collection of counter and gauge types ***/
-
-   typedef counter32 {
-     type uint32;
-     description
-      "The counter32 type represents a non-negative integer
-       that monotonically increases until it reaches a
-       maximum value of 2^32-1 (4294967295 decimal), when it
-       wraps around and starts increasing again from zero.
-
-       Counters have no defined 'initial' value, and thus, a
-       single value of a counter has (in general) no information
-       content.  Discontinuities in the monotonically increasing
-       value normally occur at re-initialization of the
-       management system, and at other times as specified in the
-       description of a schema node using this type.  If such
-       other times can occur, for example, the creation of
-       a schema node of type counter32 at times other than
-       re-initialization, then a corresponding schema node
-       should be defined, with an appropriate type, to indicate
-       the last discontinuity.
-
-       The counter32 type should not be used for configuration
-       schema nodes.  A default statement SHOULD NOT be used in
-       combination with the type counter32.
-
-       In the value set and its semantics, this type is equivalent
-       to the Counter32 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef zero-based-counter32 {
-     type yang:counter32;
-     default "0";
-     description
-      "The zero-based-counter32 type represents a counter32
-       that has the defined 'initial' value zero.
-
-       A schema node of this type will be set to zero (0) on creation
-       and will thereafter increase monotonically until it reaches
-       a maximum value of 2^32-1 (4294967295 decimal), when it
-       wraps around and starts increasing again from zero.
-
-       Provided that an application discovers a new schema node
-       of this type within the minimum time to wrap, it can use the
-       'initial' value as a delta.  It is important for a management
-       station to be aware of this minimum time and the actual time
-       between polls, and to discard data if the actual time is too
-       long or there is no defined minimum time.
-
-       In the value set and its semantics, this type is equivalent
-       to the ZeroBasedCounter32 textual convention of the SMIv2.";
-     reference
-       "RFC 4502: Remote Network Monitoring Management Information
-                  Base Version 2";
-   }
-
-   typedef counter64 {
-     type uint64;
-     description
-      "The counter64 type represents a non-negative integer
-       that monotonically increases until it reaches a
-       maximum value of 2^64-1 (18446744073709551615 decimal),
-       when it wraps around and starts increasing again from zero.
-
-       Counters have no defined 'initial' value, and thus, a
-       single value of a counter has (in general) no information
-       content.  Discontinuities in the monotonically increasing
-       value normally occur at re-initialization of the
-       management system, and at other times as specified in the
-       description of a schema node using this type.  If such
-       other times can occur, for example, the creation of
-       a schema node of type counter64 at times other than
-       re-initialization, then a corresponding schema node
-       should be defined, with an appropriate type, to indicate
-       the last discontinuity.
-
-       The counter64 type should not be used for configuration
-       schema nodes.  A default statement SHOULD NOT be used in
-       combination with the type counter64.
-
-       In the value set and its semantics, this type is equivalent
-       to the Counter64 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef zero-based-counter64 {
-     type yang:counter64;
-     default "0";
-     description
-      "The zero-based-counter64 type represents a counter64 that
-       has the defined 'initial' value zero.
-
-       A schema node of this type will be set to zero (0) on creation
-       and will thereafter increase monotonically until it reaches
-       a maximum value of 2^64-1 (18446744073709551615 decimal),
-       when it wraps around and starts increasing again from zero.
-
-       Provided that an application discovers a new schema node
-       of this type within the minimum time to wrap, it can use the
-       'initial' value as a delta.  It is important for a management
-       station to be aware of this minimum time and the actual time
-       between polls, and to discard data if the actual time is too
-       long or there is no defined minimum time.
-
-       In the value set and its semantics, this type is equivalent
-       to the ZeroBasedCounter64 textual convention of the SMIv2.";
-     reference
-      "RFC 2856: Textual Conventions for Additional High Capacity
-                 Data Types";
-   }
-
-   typedef gauge32 {
-     type uint32;
-     description
-      "The gauge32 type represents a non-negative integer, which
-       may increase or decrease, but shall never exceed a maximum
-       value, nor fall below a minimum value.  The maximum value
-       cannot be greater than 2^32-1 (4294967295 decimal), and
-       the minimum value cannot be smaller than 0.  The value of
-       a gauge32 has its maximum value whenever the information
-       being modeled is greater than or equal to its maximum
-       value, and has its minimum value whenever the information
-       being modeled is smaller than or equal to its minimum value.
-       If the information being modeled subsequently decreases
-       below (increases above) the maximum (minimum) value, the
-       gauge32 also decreases (increases).
-
-       In the value set and its semantics, this type is equivalent
-       to the Gauge32 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef gauge64 {
-     type uint64;
-     description
-      "The gauge64 type represents a non-negative integer, which
-       may increase or decrease, but shall never exceed a maximum
-       value, nor fall below a minimum value.  The maximum value
-       cannot be greater than 2^64-1 (18446744073709551615), and
-       the minimum value cannot be smaller than 0.  The value of
-       a gauge64 has its maximum value whenever the information
-       being modeled is greater than or equal to its maximum
-       value, and has its minimum value whenever the information
-       being modeled is smaller than or equal to its minimum value.
-       If the information being modeled subsequently decreases
-       below (increases above) the maximum (minimum) value, the
-       gauge64 also decreases (increases).
-
-       In the value set and its semantics, this type is equivalent
-       to the CounterBasedGauge64 SMIv2 textual convention defined
-       in RFC 2856";
-     reference
-      "RFC 2856: Textual Conventions for Additional High Capacity
-                 Data Types";
-   }
-
-   /*** collection of identifier related types ***/
-
-   typedef object-identifier {
-     type string {
-       pattern '(([0-1](\.[1-3]?[0-9]))|(2\.(0|([1-9]\d*))))'
-             + '(\.(0|([1-9]\d*)))*';
-     }
-     description
-      "The object-identifier type represents administratively
-       assigned names in a registration-hierarchical-name tree.
-
-       Values of this type are denoted as a sequence of numerical
-       non-negative sub-identifier values.  Each sub-identifier
-       value MUST NOT exceed 2^32-1 (4294967295).  Sub-identifiers
-       are separated by single dots and without any intermediate
-       whitespace.
-
-       The ASN.1 standard restricts the value space of the first
-       sub-identifier to 0, 1, or 2.  Furthermore, the value space
-       of the second sub-identifier is restricted to the range
-       0 to 39 if the first sub-identifier is 0 or 1.  Finally,
-       the ASN.1 standard requires that an object identifier
-       has always at least two sub-identifier.  The pattern
-       captures these restrictions.
-
-       Although the number of sub-identifiers is not limited,
-       module designers should realize that there may be
-       implementations that stick with the SMIv2 limit of 128
-       sub-identifiers.
-
-       This type is a superset of the SMIv2 OBJECT IDENTIFIER type
-       since it is not restricted to 128 sub-identifiers.  Hence,
-       this type SHOULD NOT be used to represent the SMIv2 OBJECT
-       IDENTIFIER type, the object-identifier-128 type SHOULD be
-       used instead.";
-     reference
-      "ISO9834-1: Information technology -- Open Systems
-       Interconnection -- Procedures for the operation of OSI
-       Registration Authorities: General procedures and top
-       arcs of the ASN.1 Object Identifier tree";
-   }
-
-
-
-
-   typedef object-identifier-128 {
-     type object-identifier {
-       pattern '\d*(\.\d*){1,127}';
-     }
-     description
-      "This type represents object-identifiers restricted to 128
-       sub-identifiers.
-
-       In the value set and its semantics, this type is equivalent
-       to the OBJECT IDENTIFIER type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   /*** collection of date and time related types ***/
-
-   typedef date-and-time {
-     type string {
-       pattern '\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?'
-             + '(Z|[\+\-]\d{2}:\d{2})';
-     }
-     description
-      "The date-and-time type is a profile of the ISO 8601
-       standard for representation of dates and times using the
-       Gregorian calendar.  The profile is defined by the
-       date-time production in Section 5.6 of RFC 3339.
-
-       The date-and-time type is compatible with the dateTime XML
-       schema type with the following notable exceptions:
-
-       (a) The date-and-time type does not allow negative years.
-
-       (b) The date-and-time time-offset -00:00 indicates an unknown
-           time zone (see RFC 3339) while -00:00 and +00:00 and Z all
-           represent the same time zone in dateTime.
-
-       (c) The canonical format (see below) of data-and-time values
-           differs from the canonical format used by the dateTime XML
-           schema type, which requires all times to be in UTC using the
-           time-offset 'Z'.
-
-       This type is not equivalent to the DateAndTime textual
-       convention of the SMIv2 since RFC 3339 uses a different
-       separator between full-date and full-time and provides
-       higher resolution of time-secfrac.
-
-       The canonical format for date-and-time values with a known time
-       zone uses a numeric time zone offset that is calculated using
-       the device's configured known offset to UTC time.  A change of
-       the device's offset to UTC time will cause date-and-time values
-       to change accordingly.  Such changes might happen periodically
-       in case a server follows automatically daylight saving time
-       (DST) time zone offset changes.  The canonical format for
-       date-and-time values with an unknown time zone (usually referring
-       to the notion of local time) uses the time-offset -00:00.";
-     reference
-      "RFC 3339: Date and Time on the Internet: Timestamps
-       RFC 2579: Textual Conventions for SMIv2
-       XSD-TYPES: XML Schema Part 2: Datatypes Second Edition";
-   }
-
-   typedef timeticks {
-     type uint32;
-     description
-      "The timeticks type represents a non-negative integer that
-       represents the time, modulo 2^32 (4294967296 decimal), in
-       hundredths of a second between two epochs.  When a schema
-       node is defined that uses this type, the description of
-       the schema node identifies both of the reference epochs.
-
-       In the value set and its semantics, this type is equivalent
-       to the TimeTicks type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef timestamp {
-     type yang:timeticks;
-     description
-      "The timestamp type represents the value of an associated
-       timeticks schema node at which a specific occurrence happened.
-       The specific occurrence must be defined in the description
-       of any schema node defined using this type.  When the specific
-       occurrence occurred prior to the last time the associated
-       timeticks attribute was zero, then the timestamp value is
-       zero.  Note that this requires all timestamp values to be
-       reset to zero when the value of the associated timeticks
-       attribute reaches 497+ days and wraps around to zero.
-
-       The associated timeticks schema node must be specified
-       in the description of any schema node using this type.
-
-       In the value set and its semantics, this type is equivalent
-       to the TimeStamp textual convention of the SMIv2.";
-     reference
-      "RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   /*** collection of generic address types ***/
-
-   typedef phys-address {
-     type string {
-       pattern '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?';
-     }
-     description
-      "Represents media- or physical-level addresses represented
-       as a sequence octets, each octet represented by two hexadecimal
-       numbers.  Octets are separated by colons.  The canonical
-       representation uses lowercase characters.
-
-       In the value set and its semantics, this type is equivalent
-       to the PhysAddress textual convention of the SMIv2.";
-     reference
-      "RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   typedef mac-address {
-     type string {
-       pattern '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}';
-     }
-     description
-      "The mac-address type represents an IEEE 802 MAC address.
-       The canonical representation uses lowercase characters.
-
-       In the value set and its semantics, this type is equivalent
-       to the MacAddress textual convention of the SMIv2.";
-     reference
-      "IEEE 802: IEEE Standard for Local and Metropolitan Area
-                 Networks: Overview and Architecture
-       RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   /*** collection of XML specific types ***/
-
-   typedef xpath1.0 {
-     type string;
-     description
-      "This type represents an XPATH 1.0 expression.
-
-       When a schema node is defined that uses this type, the
-       description of the schema node MUST specify the XPath
-       context in which the XPath expression is evaluated.";
-     reference
-      "XPATH: XML Path Language (XPath) Version 1.0";
-   }
-
- }
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/demo-topology.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/demo-topology.yang
deleted file mode 100644 (file)
index 4fef1cd..0000000
+++ /dev/null
@@ -1,121 +0,0 @@
-module demo-topology {
-       yang-version 1;
-    namespace "urn:model.1demo-275topology.4.5.my";
-    prefix "tp";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    description "
-               This module contains the definitions of elements that creates network 
-               topology i.e. definition of network nodes and links. This module is
-               not designed to be used solely for network representation. This module
-               SHOULD be used as base module in defining the network topology.
-       ";
-
-    revision "2013-02-08"{
-               reference " WILL BE DEFINED LATER";
-       }
-
-       container topology {
-        description "
-                       This is the model of abstract topology which contains only Network
-                       Nodes and Network Links. Each topology MUST be identified by
-                       unique topology-id for reason that the store could contain many
-                       topologies.
-               ";
-
-        leaf topology-id {
-            type string;
-            description "
-                               It is presumed that datastore will contain many topologies. To
-                               distinguish between topologies it is vital to have UNIQUE
-                               topology identifier.
-                       ";
-        }
-
-        container network-nodes {
-               list network-node {
-                   description "The list of network nodes defined for topology.";
-
-                       key "node-id";
-
-                       leaf node-id {
-                               type string;
-                               description "The Topology identifier of network-node.";
-                       }
-                
-                list network-interface {
-                    key "interface-id";
-                    
-                    leaf interface-id {
-                        type uint8;
-                    }
-                    
-                    leaf interface-address {
-                        type string;
-                    }
-                }
-                
-                   container node-attributes {
-                                       description "
-                                               Additional attributes that can Network Node contains.
-                                       ";
-
-                                       leaf geo-latitude {
-                                               type decimal64 {
-                                                       fraction-digits 2;
-                                               }
-                                               config true;
-                                       }
-
-                                       leaf geo-longitude {
-                                               type decimal64 {
-                                                       fraction-digits 2;
-                                               }
-                                               config true;
-                                       }
-                               }
-               }
-        }
-        
-        container network-links {
-               list network-link {
-                   description "
-                                       The Network Link which is defined by Local (Source) and
-                                       Remote (Destination) Network Nodes. Every link MUST be
-                                       defined either by identifier and his local and remote
-                                       Network Nodes (in real applications it is common that many
-                                       links are originated from one node and end up in same
-                                       remote node). To ensure that we would always know to
-                                       distinguish between links, every link SHOULD have
-                                       identifier.
-                               ";
-                       key "link-id";
-
-                       leaf link-id {
-                               type string;
-                               description "";
-                       }
-
-                   container source {
-                                       leaf node-id {
-                                               type string;
-                                               description "Source node identifier.";
-                                       }
-                               }
-
-                               container destination {
-                                       leaf node-id {
-                                               type string;
-                                               description "Destination node identifier.";
-                                       }
-                               }
-
-                               container link-attributes {
-                                       description "Aditional attributes that can Network Link contains.";
-                               }
-                   }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/enum-test-models/abstract-topology@2013-02-08.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/enum-test-models/abstract-topology@2013-02-08.yang
deleted file mode 100644 (file)
index d4a7341..0000000
+++ /dev/null
@@ -1,153 +0,0 @@
-module abstract-topology {
-    yang-version 1;
-    namespace "urn:model:abstract:topology";
-    prefix "tp";
-
-    import ietf-inet-types {
-        prefix "inet";
-        revision-date 2010-09-24;
-    }
-
-    import ietf-interfaces {
-        prefix "if";
-        revision-date 2012-11-15;
-    }
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    description
-        "This module contains the definitions of elements that creates network 
-    topology i.e. definition of network nodes and links. This module is not designed to be used solely for network representation. This module SHOULD be used as base module in defining the network topology.";
-
-    revision "2013-02-08" {
-        reference "~~~ WILL BE DEFINED LATER";
-    }
-    
-    revision "2013-01-01" {
-        reference "~~~ WILL BE DEFINED LATER";
-    }
-    
-    typedef node-id-ref {
-        type leafref {
-            path "/tp:topology/tp:network-nodes/tp:network-node/tp:node-id";
-        }
-        description "This type is used for leafs that reference network node instance.";
-    }
-
-    typedef link-id-ref {
-        type leafref {
-            path "/tp:topology/tp:network-links/tp:network-link/tp:link-id";
-        }
-        description "This type is used for leafs that reference network link instance.";
-    }
-
-    typedef interface-id-ref {
-        type leafref {
-            path "/tp:topology/tp:interfaces/tp:interface/tp:interface-id";
-        }
-    }
-
-    container topology {
-        description "This is the model of abstract topology which contains only Network Nodes and Network Links. Each topology MUST be identified by unique topology-id for reason that the store could contain many topologies.";
-
-        leaf topology-id {
-            type inet:uri;
-            description "It is presumed that datastore will contain many topologies. To distinguish between topologies it is vital to have
-            UNIQUE topology identifier.";
-        }
-
-        container network-nodes {
-            list network-node {
-                key "node-id";
-
-                leaf node-id {
-                    type inet:uri;
-                    description "The Topology identifier of network-node.";
-                }
-
-                container attributes {
-                    description "Aditional attributes that can Network Node contains.";
-                }
-                description "The list of network nodes defined for topology.";
-            }
-        }
-
-        container interfaces {
-            list interface {
-                key "interface-id";
-
-                leaf interface-id {
-                    type leafref {
-                        path "/if:interfaces/if:interface/if:name";
-                    }
-                }
-
-                leaf-list higher-layer-if {
-                    type leafref {
-                        path "/if:interfaces/if:interface/if:higher-layer-if";
-                    }
-                }
-
-                leaf oper-status {
-                    type leafref {
-                        path "/if:interfaces/if:interface/if:oper-status";
-                    }
-                }
-
-                leaf link-up-down-trap-enable {
-                    type leafref {
-                        path "/if:interfaces/if:interface/if:link-up-down-trap-enable";
-                    }
-                }
-            }
-        }
-        
-        container network-links {
-            list network-link {
-                key "link-id";
-
-                leaf link-id {
-                    type inet:uri;
-                    description "";
-                }
-
-                container source-node {
-                    leaf id {
-                        type node-id-ref;
-                        description "Source node identifier.";
-                    }
-                }
-
-                container destination-node {
-                    leaf id {
-                        type node-id-ref;
-                        description "Destination node identifier.";
-                    }
-                }
-
-                container tunnels {
-                    list tunnel {
-                        key "tunnel-id";
-
-                        leaf tunnel-id {
-                            type leafref {
-                                path "../../../link-id";
-                            }
-                        }
-                    }
-                }
-
-                leaf interface {
-                    type interface-id-ref;
-                }
-
-                container attributes {
-                    description "Aditional attributes that can Network Link contains.";
-                }
-                description "The Network Link which is defined by Local (Source) and Remote (Destination) Network Nodes. Every link MUST be defined either by identifier and
-                his local and remote Network Nodes (In real applications it is common that many links are originated from one node and end up in same remote node). To ensure that we would always know to distinguish between links, every link SHOULD have identifier.";
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/enum-test-models/iana-if-type@2012-06-05.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/enum-test-models/iana-if-type@2012-06-05.yang
deleted file mode 100644 (file)
index a7fa137..0000000
+++ /dev/null
@@ -1,1516 +0,0 @@
-module iana-if-type {
-  namespace "urn:ietf:params:xml:ns:yang:iana-if-type";
-  prefix ianaift;
-
-  organization "IANA";
-  contact
-    "        Internet Assigned Numbers Authority
-
-     Postal: ICANN
-             4676 Admiralty Way, Suite 330
-             Marina del Rey, CA 90292
-
-     Tel:    +1 310 823 9358
-     E-Mail: iana&iana.org";
-  description
-    "This YANG module defines the iana-if-type typedef, which
-     contains YANG definitions for IANA-registered interface types.
-
-     This YANG module is maintained by IANA, and reflects the
-     'ifType definitions' registry.
-
-     The latest revision of this YANG module can be obtained from
-     the IANA web site.
-
-     Copyright (c) 2011 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or
-     without modification, is permitted pursuant to, and subject
-     to the license terms contained in, the Simplified BSD License
-     set forth in Section 4.c of the IETF Trust's Legal Provisions
-     Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC XXXX; see
-     the RFC itself for full legal notices.";
-  // RFC Ed.: replace XXXX with actual RFC number and remove this
-  // note.
-
-  // RFC Ed.: update the date below with the date of RFC publication
-  // and remove this note.
-  revision 2012-06-05 {
-    description
-      "Initial revision.";
-    reference
-      "RFC XXXX: TITLE";
-  }
-
-  typedef iana-if-type {
-    type enumeration {
-      enum "other" {
-        value 1;
-        description
-          "None of the following";
-      }
-      enum "regular1822" {
-        value 2;
-      }
-      enum "hdh1822" {
-        value 3;
-      }
-      enum "ddnX25" {
-        value 4;
-      }
-      enum "rfc877x25" {
-        value 5;
-        reference
-          "RFC 1382 - SNMP MIB Extension for the X.25 Packet Layer";
-      }
-      enum "ethernetCsmacd" {
-        value 6;
-        description
-          "For all ethernet-like interfaces, regardless of speed,
-           as per RFC3635.";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "iso88023Csmacd" {
-        value 7;
-        status deprecated;
-        description
-          "Deprecated via RFC3635.
-           Use ethernetCsmacd(6) instead.";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "iso88024TokenBus" {
-        value 8;
-      }
-      enum "iso88025TokenRing" {
-        value 9;
-      }
-      enum "iso88026Man" {
-        value 10;
-      }
-      enum "starLan" {
-        value 11;
-        status deprecated;
-        description
-          "Deprecated via RFC3635.
-           Use ethernetCsmacd(6) instead.";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "proteon10Mbit" {
-        value 12;
-      }
-      enum "proteon80Mbit" {
-        value 13;
-      }
-      enum "hyperchannel" {
-        value 14;
-      }
-      enum "fddi" {
-        value 15;
-        reference
-          "RFC 1512 - FDDI Management Information Base";
-      }
-      enum "lapb" {
-        value 16;
-        reference
-          "RFC 1381 - SNMP MIB Extension for X.25 LAPB";
-      }
-      enum "sdlc" {
-        value 17;
-      }
-      enum "ds1" {
-        value 18;
-        description
-          "DS1-MIB";
-        reference
-          "RFC 4805 - Definitions of Managed Objects for the
-                      DS1, J1, E1, DS2, and E2 Interface Types";
-      }
-      enum "e1" {
-        value 19;
-        status obsolete;
-        description
-          "Obsolete see DS1-MIB";
-        reference
-          "RFC 4805 - Definitions of Managed Objects for the
-                      DS1, J1, E1, DS2, and E2 Interface Types";
-      }
-      enum "basicISDN" {
-        value 20;
-        description
-          "see also RFC2127";
-      }
-      enum "primaryISDN" {
-        value 21;
-      }
-      enum "propPointToPointSerial" {
-        value 22;
-        description
-          "proprietary serial";
-      }
-      enum "ppp" {
-        value 23;
-      }
-      enum "softwareLoopback" {
-        value 24;
-      }
-      enum "eon" {
-        value 25;
-        description
-          "CLNP over IP";
-      }
-      enum "ethernet3Mbit" {
-        value 26;
-      }
-      enum "nsip" {
-        value 27;
-        description
-          "XNS over IP";
-      }
-      enum "slip" {
-        value 28;
-        description
-          "generic SLIP";
-      }
-      enum "ultra" {
-        value 29;
-        description
-          "ULTRA technologies";
-      }
-      enum "ds3" {
-        value 30;
-        description
-          "DS3-MIB";
-        reference
-          "RFC 3896 - Definitions of Managed Objects for the
-                      DS3/E3 Interface Type";
-      }
-      enum "sip" {
-        value 31;
-        description
-          "SMDS, coffee";
-        reference
-          "RFC 1694 - Definitions of Managed Objects for SMDS
-                      Interfaces using SMIv2";
-      }
-      enum "frameRelay" {
-        value 32;
-        description
-          "DTE only.";
-        reference
-          "RFC 2115 - Management Information Base for Frame Relay
-                      DTEs Using SMIv2";
-      }
-      enum "rs232" {
-        value 33;
-        reference
-          "RFC 1659 - Definitions of Managed Objects for RS-232-like
-                      Hardware Devices using SMIv2";
-      }
-      enum "para" {
-        value 34;
-        description
-          "parallel-port";
-        reference
-          "RFC 1660 - Definitions of Managed Objects for
-                      Parallel-printer-like Hardware Devices using
-                      SMIv2";
-      }
-      enum "arcnet" {
-        value 35;
-        description
-          "arcnet";
-      }
-      enum "arcnetPlus" {
-        value 36;
-        description
-          "arcnet plus";
-      }
-      enum "atm" {
-        value 37;
-        description
-          "ATM cells";
-      }
-      enum "miox25" {
-        value 38;
-        reference
-          "RFC 1461 - SNMP MIB extension for Multiprotocol
-                      Interconnect over X.25";
-      }
-      enum "sonet" {
-        value 39;
-        description
-          "SONET or SDH";
-      }
-      enum "x25ple" {
-        value 40;
-        reference
-          "RFC 2127 - ISDN Management Information Base using SMIv2";
-      }
-      enum "iso88022llc" {
-        value 41;
-      }
-      enum "localTalk" {
-        value 42;
-      }
-      enum "smdsDxi" {
-        value 43;
-      }
-      enum "frameRelayService" {
-        value 44;
-        description
-          "FRNETSERV-MIB";
-        reference
-          "RFC 2954 - Definitions of Managed Objects for Frame
-                      Relay Service";
-      }
-      enum "v35" {
-        value 45;
-      }
-      enum "hssi" {
-        value 46;
-      }
-      enum "hippi" {
-        value 47;
-      }
-      enum "modem" {
-        value 48;
-        description
-          "Generic modem";
-      }
-      enum "aal5" {
-        value 49;
-        description
-          "AAL5 over ATM";
-      }
-      enum "sonetPath" {
-        value 50;
-      }
-      enum "sonetVT" {
-        value 51;
-      }
-      enum "smdsIcip" {
-        value 52;
-        description
-          "SMDS InterCarrier Interface";
-      }
-      enum "propVirtual" {
-        value 53;
-        description
-          "proprietary virtual/internal";
-        reference
-          "RFC 2863 - The Interfaces Group MIB";
-      }
-      enum "propMultiplexor" {
-        value 54;
-        description
-          "proprietary multiplexing";
-        reference
-          "RFC 2863 - The Interfaces Group MIB";
-      }
-      enum "ieee80212" {
-        value 55;
-        description
-          "100BaseVG";
-      }
-      enum "fibreChannel" {
-        value 56;
-        description
-          "Fibre Channel";
-      }
-      enum "hippiInterface" {
-        value 57;
-        description
-          "HIPPI interfaces";
-      }
-      enum "frameRelayInterconnect" {
-        value 58;
-        status obsolete;
-        description
-          "Obsolete use either
-           frameRelay(32) or frameRelayService(44).";
-      }
-      enum "aflane8023" {
-        value 59;
-        description
-          "ATM Emulated LAN for 802.3";
-      }
-      enum "aflane8025" {
-        value 60;
-        description
-          "ATM Emulated LAN for 802.5";
-      }
-      enum "cctEmul" {
-        value 61;
-        description
-         "ATM Emulated circuit";
-      }
-      enum "fastEther" {
-        value 62;
-        status deprecated;
-        description
-          "Obsoleted via RFC3635.
-          ethernetCsmacd(6) should be used instead";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "isdn" {
-        value 63;
-        description
-          "ISDN and X.25";
-        reference
-          "RFC 1356 - Multiprotocol Interconnect on X.25 and ISDN
-                      in the Packet Mode";
-      }
-      enum "v11" {
-        value 64;
-        description
-         "CCITT V.11/X.21";
-      }
-      enum "v36" {
-        value 65;
-        description
-          "CCITT V.36";
-      }
-      enum "g703at64k" {
-        value 66;
-        description
-          "CCITT G703 at 64Kbps";
-      }
-      enum "g703at2mb" {
-        value 67;
-        status obsolete;
-        description
-          "Obsolete see DS1-MIB";
-      }
-      enum "qllc" {
-        value 68;
-        description
-          "SNA QLLC";
-      }
-      enum "fastEtherFX" {
-        value 69;
-        status deprecated;
-        description
-          "Obsoleted via RFC3635
-          ethernetCsmacd(6) should be used instead";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "channel" {
-        value 70;
-        description
-          "channel";
-      }
-      enum "ieee80211" {
-        value 71;
-        description
-          "radio spread spectrum";
-      }
-      enum "ibm370parChan" {
-        value 72;
-        description
-          "IBM System 360/370 OEMI Channel";
-      }
-      enum "escon" {
-        value 73;
-        description
-          "IBM Enterprise Systems Connection";
-      }
-      enum "dlsw" {
-        value 74;
-        description
-          "Data Link Switching";
-      }
-      enum "isdns" {
-        value 75;
-        description
-          "ISDN S/T interface";
-      }
-      enum "isdnu" {
-        value 76;
-        description
-          "ISDN U interface";
-      }
-      enum "lapd" {
-        value 77;
-        description
-          "Link Access Protocol D";
-      }
-      enum "ipSwitch" {
-        value 78;
-        description
-          "IP Switching Objects";
-      }
-      enum "rsrb" {
-        value 79;
-        description
-          "Remote Source Route Bridging";
-      }
-      enum "atmLogical" {
-        value 80;
-        description
-          "ATM Logical Port";
-        reference
-          "RFC 3606 - Definitions of Supplemental Managed Objects
-                      for ATM Interface";
-      }
-      enum "ds0" {
-        value 81;
-        description
-          "Digital Signal Level 0";
-        reference
-          "RFC 2494 - Definitions of Managed Objects for the DS0
-                      and DS0 Bundle Interface Type";
-      }
-      enum "ds0Bundle" {
-        value 82;
-        description
-          "group of ds0s on the same ds1";
-        reference
-          "RFC 2494 - Definitions of Managed Objects for the DS0
-                      and DS0 Bundle Interface Type";
-      }
-      enum "bsc" {
-        value 83;
-        description
-          "Bisynchronous Protocol";
-      }
-      enum "async" {
-        value 84;
-        description
-          "Asynchronous Protocol";
-      }
-      enum "cnr" {
-        value 85;
-        description
-          "Combat Net Radio";
-      }
-      enum "iso88025Dtr" {
-        value 86;
-        description
-          "ISO 802.5r DTR";
-      }
-      enum "eplrs" {
-        value 87;
-        description
-          "Ext Pos Loc Report Sys";
-      }
-      enum "arap" {
-        value 88;
-        description
-          "Appletalk Remote Access Protocol";
-      }
-      enum "propCnls" {
-        value 89;
-        description
-          "Proprietary Connectionless Protocol";
-      }
-      enum "hostPad" {
-        value 90;
-        description
-          "CCITT-ITU X.29 PAD Protocol";
-      }
-      enum "termPad" {
-        value 91;
-        description
-          "CCITT-ITU X.3 PAD Facility";
-      }
-      enum "frameRelayMPI" {
-        value 92;
-        description
-          "Multiproto Interconnect over FR";
-      }
-      enum "x213" {
-        value 93;
-        description
-          "CCITT-ITU X213";
-      }
-      enum "adsl" {
-        value 94;
-        description
-          "Asymmetric Digital Subscriber Loop";
-      }
-      enum "radsl" {
-        value 95;
-        description
-          "Rate-Adapt. Digital Subscriber Loop";
-      }
-      enum "sdsl" {
-        value 96;
-        description
-          "Symmetric Digital Subscriber Loop";
-      }
-      enum "vdsl" {
-        value 97;
-        description
-          "Very H-Speed Digital Subscrib. Loop";
-      }
-      enum "iso88025CRFPInt" {
-        value 98;
-        description
-          "ISO 802.5 CRFP";
-      }
-      enum "myrinet" {
-        value 99;
-        description
-          "Myricom Myrinet";
-      }
-      enum "voiceEM" {
-        value 100;
-        description
-          "voice recEive and transMit";
-      }
-      enum "voiceFXO" {
-        value 101;
-        description
-          "voice Foreign Exchange Office";
-      }
-      enum "voiceFXS" {
-        value 102;
-        description
-          "voice Foreign Exchange Station";
-      }
-      enum "voiceEncap" {
-        value 103;
-        description
-          "voice encapsulation";
-      }
-      enum "voiceOverIp" {
-        value 104;
-        description
-          "voice over IP encapsulation";
-      }
-      enum "atmDxi" {
-        value 105;
-        description
-          "ATM DXI";
-      }
-      enum "atmFuni" {
-        value 106;
-        description
-          "ATM FUNI";
-      }
-      enum "atmIma" {
-        value 107;
-        description
-          "ATM IMA";
-      }
-      enum "pppMultilinkBundle" {
-        value 108;
-        description
-          "PPP Multilink Bundle";
-      }
-      enum "ipOverCdlc" {
-        value 109;
-        description
-          "IBM ipOverCdlc";
-      }
-      enum "ipOverClaw" {
-        value 110;
-        description
-          "IBM Common Link Access to Workstn";
-      }
-      enum "stackToStack" {
-        value 111;
-        description
-          "IBM stackToStack";
-      }
-      enum "virtualIpAddress" {
-        value 112;
-        description
-          "IBM VIPA";
-      }
-      enum "mpc" {
-        value 113;
-        description
-          "IBM multi-protocol channel support";
-      }
-      enum "ipOverAtm" {
-        value 114;
-        description
-          "IBM ipOverAtm";
-        reference
-          "RFC 2320 - Definitions of Managed Objects for Classical IP
-                      and ARP Over ATM Using SMIv2 (IPOA-MIB)";
-      }
-      enum "iso88025Fiber" {
-        value 115;
-        description
-          "ISO 802.5j Fiber Token Ring";
-      }
-      enum "tdlc" {
-        value 116;
-        description
-          "IBM twinaxial data link control";
-      }
-      enum "gigabitEthernet" {
-        value 117;
-        status deprecated;
-        description
-          "Obsoleted via RFC3635
-           ethernetCsmacd(6) should be used instead";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "hdlc" {
-        value 118;
-        description
-          "HDLC";
-      }
-      enum "lapf" {
-        value 119;
-        description
-          "LAP F";
-      }
-      enum "v37" {
-        value 120;
-        description
-          "V.37";
-      }
-      enum "x25mlp" {
-        value 121;
-        description
-          "Multi-Link Protocol";
-      }
-      enum "x25huntGroup" {
-        value 122;
-        description
-          "X25 Hunt Group";
-      }
-      enum "transpHdlc" {
-        value 123;
-        description
-          "Transp HDLC";
-      }
-      enum "interleave" {
-        value 124;
-        description
-          "Interleave channel";
-      }
-      enum "fast" {
-        value 125;
-        description
-          "Fast channel";
-      }
-      enum "ip" {
-        value 126;
-        description
-          "IP (for APPN HPR in IP networks)";
-      }
-      enum "docsCableMaclayer" {
-        value 127;
-        description
-          "CATV Mac Layer";
-      }
-      enum "docsCableDownstream" {
-        value 128;
-        description
-          "CATV Downstream interface";
-      }
-      enum "docsCableUpstream" {
-        value 129;
-        description
-          "CATV Upstream interface";
-      }
-      enum "a12MppSwitch" {
-        value 130;
-        description
-          "Avalon Parallel Processor";
-      }
-      enum "tunnel" {
-        value 131;
-        description
-          "Encapsulation interface";
-      }
-      enum "coffee" {
-        value 132;
-        description
-          "coffee pot";
-        reference
-          "RFC 2325 - Coffee MIB";
-      }
-      enum "ces" {
-        value 133;
-        description
-          "Circuit Emulation Service";
-      }
-      enum "atmSubInterface" {
-        value 134;
-        description
-          "ATM Sub Interface";
-      }
-      enum "l2vlan" {
-        value 135;
-        description
-          "Layer 2 Virtual LAN using 802.1Q";
-      }
-      enum "l3ipvlan" {
-        value 136;
-        description
-          "Layer 3 Virtual LAN using IP";
-      }
-      enum "l3ipxvlan" {
-        value 137;
-        description
-          "Layer 3 Virtual LAN using IPX";
-      }
-      enum "digitalPowerline" {
-        value 138;
-        description
-          "IP over Power Lines";
-      }
-      enum "mediaMailOverIp" {
-        value 139;
-        description
-          "Multimedia Mail over IP";
-      }
-      enum "dtm" {
-        value 140;
-        description
-          "Dynamic syncronous Transfer Mode";
-      }
-      enum "dcn" {
-        value 141;
-        description
-          "Data Communications Network";
-      }
-      enum "ipForward" {
-        value 142;
-        description
-          "IP Forwarding Interface";
-      }
-      enum "msdsl" {
-        value 143;
-        description
-          "Multi-rate Symmetric DSL";
-      }
-      enum "ieee1394" {
-        value 144;
-        description
-          "IEEE1394 High Performance Serial Bus";
-      }
-      enum "if-gsn" {
-        value 145;
-        description
-          "HIPPI-6400";
-      }
-      enum "dvbRccMacLayer" {
-        value 146;
-        description
-          "DVB-RCC MAC Layer";
-      }
-      enum "dvbRccDownstream" {
-        value 147;
-        description
-          "DVB-RCC Downstream Channel";
-      }
-      enum "dvbRccUpstream" {
-        value 148;
-        description
-          "DVB-RCC Upstream Channel";
-      }
-      enum "atmVirtual" {
-        value 149;
-        description
-          "ATM Virtual Interface";
-      }
-      enum "mplsTunnel" {
-        value 150;
-        description
-          "MPLS Tunnel Virtual Interface";
-      }
-      enum "srp" {
-        value 151;
-        description
-          "Spatial Reuse Protocol       ";
-      }
-      enum "voiceOverAtm" {
-        value 152;
-        description
-          "Voice Over ATM";
-      }
-      enum "voiceOverFrameRelay" {
-        value 153;
-        description
-          "Voice Over Frame Relay";
-      }
-      enum "idsl" {
-        value 154;
-        description
-          "Digital Subscriber Loop over ISDN";
-      }
-      enum "compositeLink" {
-        value 155;
-        description
-          "Avici Composite Link Interface";
-      }
-      enum "ss7SigLink" {
-        value 156;
-        description
-          "SS7 Signaling Link";
-      }
-      enum "propWirelessP2P" {
-        value 157;
-        description
-          "Prop. P2P wireless interface";
-      }
-      enum "frForward" {
-        value 158;
-        description
-          "Frame Forward Interface";
-      }
-      enum "rfc1483" {
-        value 159;
-        description
-          "Multiprotocol over ATM AAL5";
-        reference
-          "RFC 1483 - Multiprotocol Encapsulation over ATM
-                      Adaptation Layer 5";
-      }
-      enum "usb" {
-        value 160;
-        description
-          "USB Interface";
-      }
-      enum "ieee8023adLag" {
-        value 161;
-        description
-          "IEEE 802.3ad Link Aggregate";
-      }
-      enum "bgppolicyaccounting" {
-        value 162;
-        description
-          "BGP Policy Accounting";
-      }
-      enum "frf16MfrBundle" {
-        value 163;
-        description
-          "FRF .16 Multilink Frame Relay";
-      }
-      enum "h323Gatekeeper" {
-        value 164;
-        description
-          "H323 Gatekeeper";
-      }
-      enum "h323Proxy" {
-        value 165;
-        description
-          "H323 Voice and Video Proxy";
-      }
-      enum "mpls" {
-        value 166;
-        description
-          "MPLS";
-      }
-      enum "mfSigLink" {
-        value 167;
-        description
-          "Multi-frequency signaling link";
-      }
-      enum "hdsl2" {
-        value 168;
-        description
-          "High Bit-Rate DSL - 2nd generation";
-      }
-      enum "shdsl" {
-        value 169;
-        description
-          "Multirate HDSL2";
-      }
-      enum "ds1FDL" {
-        value 170;
-        description
-          "Facility Data Link 4Kbps on a DS1";
-      }
-      enum "pos" {
-        value 171;
-        description
-          "Packet over SONET/SDH Interface";
-      }
-      enum "dvbAsiIn" {
-        value 172;
-        description
-          "DVB-ASI Input";
-      }
-      enum "dvbAsiOut" {
-        value 173;
-        description
-          "DVB-ASI Output";
-      }
-      enum "plc" {
-        value 174;
-        description
-          "Power Line Communtications";
-      }
-      enum "nfas" {
-        value 175;
-        description
-          "Non Facility Associated Signaling";
-      }
-      enum "tr008" {
-        value 176;
-        description
-          "TR008";
-      }
-      enum "gr303RDT" {
-        value 177;
-        description
-          "Remote Digital Terminal";
-      }
-      enum "gr303IDT" {
-        value 178;
-        description
-          "Integrated Digital Terminal";
-      }
-      enum "isup" {
-        value 179;
-        description
-          "ISUP";
-      }
-      enum "propDocsWirelessMaclayer" {
-        value 180;
-        description
-          "Cisco proprietary Maclayer";
-      }
-      enum "propDocsWirelessDownstream" {
-        value 181;
-        description
-          "Cisco proprietary Downstream";
-      }
-      enum "propDocsWirelessUpstream" {
-        value 182;
-        description
-          "Cisco proprietary Upstream";
-      }
-      enum "hiperlan2" {
-        value 183;
-        description
-          "HIPERLAN Type 2 Radio Interface";
-      }
-      enum "propBWAp2Mp" {
-        value 184;
-        description
-          "PropBroadbandWirelessAccesspt2multipt use of this value
-           for IEEE 802.16 WMAN interfaces as per IEEE Std 802.16f
-           is deprecated and ieee80216WMAN(237) should be used
-           instead.";
-      }
-      enum "sonetOverheadChannel" {
-        value 185;
-        description
-          "SONET Overhead Channel";
-      }
-      enum "digitalWrapperOverheadChannel" {
-        value 186;
-        description
-          "Digital Wrapper";
-      }
-      enum "aal2" {
-        value 187;
-        description
-          "ATM adaptation layer 2";
-      }
-      enum "radioMAC" {
-        value 188;
-        description
-          "MAC layer over radio links";
-      }
-      enum "atmRadio" {
-        value 189;
-        description
-          "ATM over radio links";
-      }
-      enum "imt" {
-        value 190;
-        description
-          "Inter Machine Trunks";
-      }
-      enum "mvl" {
-        value 191;
-        description
-          "Multiple Virtual Lines DSL";
-      }
-      enum "reachDSL" {
-        value 192;
-        description
-          "Long Reach DSL";
-      }
-      enum "frDlciEndPt" {
-        value 193;
-        description
-          "Frame Relay DLCI End Point";
-      }
-      enum "atmVciEndPt" {
-        value 194;
-        description
-          "ATM VCI End Point";
-      }
-      enum "opticalChannel" {
-        value 195;
-        description
-          "Optical Channel";
-      }
-      enum "opticalTransport" {
-        value 196;
-        description
-          "Optical Transport";
-      }
-      enum "propAtm" {
-        value 197;
-        description
-          "Proprietary ATM";
-      }
-      enum "voiceOverCable" {
-        value 198;
-        description
-          "Voice Over Cable Interface";
-      }
-      enum "infiniband" {
-        value 199;
-        description
-          "Infiniband";
-      }
-      enum "teLink" {
-        value 200;
-        description
-          "TE Link";
-      }
-      enum "q2931" {
-        value 201;
-        description
-          "Q.2931";
-      }
-      enum "virtualTg" {
-        value 202;
-        description
-          "Virtual Trunk Group";
-      }
-      enum "sipTg" {
-        value 203;
-        description
-          "SIP Trunk Group";
-      }
-      enum "sipSig" {
-        value 204;
-        description
-          "SIP Signaling";
-      }
-      enum "docsCableUpstreamChannel" {
-        value 205;
-        description
-          "CATV Upstream Channel";
-      }
-      enum "econet" {
-        value 206;
-        description
-          "Acorn Econet";
-      }
-      enum "pon155" {
-        value 207;
-        description
-          "FSAN 155Mb Symetrical PON interface";
-      }
-      enum "pon622" {
-        value 208;
-        description
-          "FSAN622Mb Symetrical PON interface";
-      }
-      enum "bridge" {
-        value 209;
-        description
-          "Transparent bridge interface";
-      }
-      enum "linegroup" {
-        value 210;
-        description
-          "Interface common to multiple lines";
-      }
-      enum "voiceEMFGD" {
-        value 211;
-        description
-          "voice E&M Feature Group D";
-      }
-      enum "voiceFGDEANA" {
-        value 212;
-        description
-          "voice FGD Exchange Access North American";
-      }
-      enum "voiceDID" {
-        value 213;
-        description
-          "voice Direct Inward Dialing";
-      }
-      enum "mpegTransport" {
-        value 214;
-        description
-          "MPEG transport interface";
-      }
-      enum "sixToFour" {
-        value 215;
-        status deprecated;
-        description
-          "6to4 interface (DEPRECATED)";
-        reference
-          "RFC 4087 - IP Tunnel MIB";
-      }
-      enum "gtp" {
-        value 216;
-        description
-          "GTP (GPRS Tunneling Protocol)";
-      }
-      enum "pdnEtherLoop1" {
-        value 217;
-        description
-          "Paradyne EtherLoop 1";
-      }
-      enum "pdnEtherLoop2" {
-        value 218;
-        description
-          "Paradyne EtherLoop 2";
-      }
-      enum "opticalChannelGroup" {
-        value 219;
-        description
-          "Optical Channel Group";
-      }
-      enum "homepna" {
-        value 220;
-        description
-          "HomePNA ITU-T G.989";
-      }
-      enum "gfp" {
-        value 221;
-        description
-          "Generic Framing Procedure (GFP)";
-      }
-      enum "ciscoISLvlan" {
-        value 222;
-        description
-          "Layer 2 Virtual LAN using Cisco ISL";
-      }
-      enum "actelisMetaLOOP" {
-        value 223;
-        description
-          "Acteleis proprietary MetaLOOP High Speed Link";
-      }
-      enum "fcipLink" {
-        value 224;
-        description
-          "FCIP Link";
-      }
-      enum "rpr" {
-        value 225;
-        description
-          "Resilient Packet Ring Interface Type";
-      }
-      enum "qam" {
-        value 226;
-        description
-          "RF Qam Interface";
-      }
-      enum "lmp" {
-        value 227;
-        description
-          "Link Management Protocol";
-        reference
-          "RFC 4327 - Link Management Protocol (LMP) Management
-                      Information Base (MIB)";
-      }
-      enum "cblVectaStar" {
-        value 228;
-        description
-          "Cambridge Broadband Networks Limited VectaStar";
-      }
-      enum "docsCableMCmtsDownstream" {
-        value 229;
-        description
-          "CATV Modular CMTS Downstream Interface";
-      }
-      enum "adsl2" {
-        value 230;
-        status deprecated;
-        description
-          "Asymmetric Digital Subscriber Loop Version 2
-           (DEPRECATED/OBSOLETED - please use adsl2plus(238)
-           instead)";
-        reference
-          "RFC 4706 - Definitions of Managed Objects for Asymmetric
-                      Digital Subscriber Line 2 (ADSL2)";
-      }
-      enum "macSecControlledIF" {
-        value 231;
-        description
-          "MACSecControlled";
-      }
-      enum "macSecUncontrolledIF" {
-        value 232;
-        description
-          "MACSecUncontrolled";
-      }
-      enum "aviciOpticalEther" {
-        value 233;
-        description
-         "Avici Optical Ethernet Aggregate";
-      }
-      enum "atmbond" {
-        value 234;
-        description
-          "atmbond";
-      }
-      enum "voiceFGDOS" {
-        value 235;
-        description
-          "voice FGD Operator Services";
-      }
-      enum "mocaVersion1" {
-        value 236;
-        description
-          "MultiMedia over Coax Alliance (MoCA) Interface
-           as documented in information provided privately to IANA";
-      }
-      enum "ieee80216WMAN" {
-        value 237;
-        description
-          "IEEE 802.16 WMAN interface";
-      }
-      enum "adsl2plus" {
-        value 238;
-        description
-          "Asymmetric Digital Subscriber Loop Version 2,
-           Version 2 Plus and all variants";
-      }
-      enum "dvbRcsMacLayer" {
-        value 239;
-        description
-          "DVB-RCS MAC Layer";
-        reference
-          "RFC 5728 - The SatLabs Group DVB-RCS MIB";
-      }
-      enum "dvbTdm" {
-        value 240;
-        description
-          "DVB Satellite TDM";
-        reference
-          "RFC 5728 - The SatLabs Group DVB-RCS MIB";
-      }
-      enum "dvbRcsTdma" {
-        value 241;
-        description
-          "DVB-RCS TDMA";
-        reference
-          "RFC 5728 - The SatLabs Group DVB-RCS MIB";
-      }
-      enum "x86Laps" {
-        value 242;
-        description
-          "LAPS based on ITU-T X.86/Y.1323";
-      }
-      enum "wwanPP" {
-        value 243;
-        description
-          "3GPP WWAN";
-      }
-      enum "wwanPP2" {
-        value 244;
-        description
-          "3GPP2 WWAN";
-      }
-      enum "voiceEBS" {
-        value 245;
-        description
-          "voice P-phone EBS physical interface";
-      }
-      enum "ifPwType" {
-        value 246;
-        description
-          "Pseudowire interface type";
-        reference
-          "RFC 5601 - Pseudowire (PW) Management Information Base";
-      }
-      enum "ilan" {
-        value 247;
-        description
-          "Internal LAN on a bridge per IEEE 802.1ap";
-      }
-      enum "pip" {
-        value 248;
-        description
-          "Provider Instance Port on a bridge per IEEE 802.1ah PBB";
-      }
-      enum "aluELP" {
-        value 249;
-        description
-          "Alcatel-Lucent Ethernet Link Protection";
-      }
-      enum "gpon" {
-        value 250;
-        description
-          "Gigabit-capable passive optical networks (G-PON) as per
-           ITU-T G.948";
-      }
-      enum "vdsl2" {
-        value 251;
-        description
-          "Very high speed digital subscriber line Version 2
-           (as per ITU-T Recommendation G.993.2)";
-        reference
-          "RFC 5650 - Definitions of Managed Objects for Very High
-                      Speed Digital Subscriber Line 2 (VDSL2)";
-      }
-      enum "capwapDot11Profile" {
-        value 252;
-        description
-          "WLAN Profile Interface";
-        reference
-          "RFC 5834 - Control and Provisioning of Wireless Access
-                      Points (CAPWAP) Protocol Binding MIB for
-                      IEEE 802.11";
-      }
-      enum "capwapDot11Bss" {
-        value 253;
-        description
-          "WLAN BSS Interface";
-        reference
-          "RFC 5834 - Control and Provisioning of Wireless Access
-                      Points (CAPWAP) Protocol Binding MIB for
-                      IEEE 802.11";
-      }
-      enum "capwapWtpVirtualRadio" {
-        value 254;
-        description
-          "WTP Virtual Radio Interface";
-        reference
-          "RFC 5833 - Control and Provisioning of Wireless Access
-                      Points (CAPWAP) Protocol Base MIB";
-      }
-      enum "bits" {
-        value 255;
-        description
-          "bitsport";
-      }
-      enum "docsCableUpstreamRfPort" {
-        value 256;
-        description
-          "DOCSIS CATV Upstream RF Port";
-      }
-      enum "cableDownstreamRfPort" {
-        value 257;
-        description
-          "CATV downstream RF port";
-      }
-      enum "vmwareVirtualNic" {
-        value 258;
-        description
-          "VMware Virtual Network Interface";
-      }
-      enum "ieee802154" {
-        value 259;
-        description
-          "IEEE 802.15.4 WPAN interface";
-        reference
-          "IEEE 802.15.4-2006";
-      }
-      enum "otnOdu" {
-        value 260;
-        description
-          "OTN Optical Data Unit";
-      }
-      enum "otnOtu" {
-        value 261;
-        description
-          "OTN Optical channel Transport Unit";
-      }
-      enum "ifVfiType" {
-        value 262;
-        description
-          "VPLS Forwarding Instance Interface Type";
-      }
-      enum "g9981" {
-        value 263;
-        description
-          "G.998.1 bonded interface";
-      }
-      enum "g9982" {
-        value 264;
-        description
-          "G.998.2 bonded interface";
-      }
-      enum "g9983" {
-        value 265;
-        description
-          "G.998.3 bonded interface";
-      }
-      enum "aluEpon" {
-        value 266;
-        description
-          "Ethernet Passive Optical Networks (E-PON)";
-      }
-      enum "aluEponOnu" {
-        value 267;
-        description
-          "EPON Optical Network Unit";
-      }
-      enum "aluEponPhysicalUni" {
-        value 268;
-        description
-          "EPON physical User to Network interface";
-      }
-      enum "aluEponLogicalLink" {
-        value 269;
-        description
-          "The emulation of a point-to-point link over the EPON
-           layer";
-      }
-      enum "aluGponOnu" {
-        value 270;
-        description
-          "GPON Optical Network Unit";
-        reference
-          "ITU-T G.984.2";
-      }
-      enum "aluGponPhysicalUni" {
-        value 271;
-        description
-          "GPON physical User to Network interface";
-        reference
-          "ITU-T G.984.2";
-      }
-      enum "vmwareNicTeam" {
-        value 272;
-        description
-          "VMware NIC Team";
-      }
-    }
-    description
-      "This data type is used as the syntax of the 'type'
-       leaf in the 'interface' list in the YANG module
-       ietf-interface.
-
-       The definition of this typedef with the
-       addition of newly assigned values is published
-       periodically by the IANA, in either the Assigned
-       Numbers RFC, or some derivative of it specific to
-       Internet Network Management number assignments.  (The
-       latest arrangements can be obtained by contacting the
-       IANA.)
-
-       Requests for new values should be made to IANA via
-       email (iana&iana.org).";
-    reference
-      "ifType definitions registry.
-       <http://www.iana.org/assignments/smi-numbers>";
-  }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/enum-test-models/ietf-inet-types@2010-09-24.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/enum-test-models/ietf-inet-types@2010-09-24.yang
deleted file mode 100644 (file)
index 6a6c748..0000000
+++ /dev/null
@@ -1,418 +0,0 @@
- module ietf-inet-types {
-
-   namespace "urn:ietf:params:xml:ns:yang:ietf-inet-types";
-   prefix "inet";
-
-   organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-   contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Partain
-               <mailto:david.partain@ericsson.com>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     Editor:   Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>";
-
-   description
-    "This module contains a collection of generally useful derived
-     YANG data types for Internet addresses and related things.
-
-     Copyright (c) 2010 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or without
-     modification, is permitted pursuant to, and subject to the license
-     terms contained in, the Simplified BSD License set forth in Section
-     4.c of the IETF Trust's Legal Provisions Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC 6021; see
-     the RFC itself for full legal notices.";
-
-   revision 2010-09-24 {
-     description
-      "Initial revision.";
-     reference
-      "RFC 6021: Common YANG Data Types";
-   }
-
-   /*** collection of protocol field related types ***/
-
-   typedef ip-version {
-     type enumeration {
-       enum unknown {
-         value "0";
-         description
-          "An unknown or unspecified version of the Internet protocol.";
-       }
-       enum ipv4 {
-         value "1";
-         description
-          "The IPv4 protocol as defined in RFC 791.";
-       }
-       enum ipv6 {
-         value "2";
-         description
-          "The IPv6 protocol as defined in RFC 2460.";
-       }
-     }
-     description
-      "This value represents the version of the IP protocol.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetVersion textual convention of the SMIv2.";
-     reference
-      "RFC  791: Internet Protocol
-       RFC 2460: Internet Protocol, Version 6 (IPv6) Specification
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   typedef dscp {
-     type uint8 {
-       range "0..63";
-     }
-     description
-      "The dscp type represents a Differentiated Services Code-Point
-       that may be used for marking packets in a traffic stream.
-
-       In the value set and its semantics, this type is equivalent
-       to the Dscp textual convention of the SMIv2.";
-     reference
-      "RFC 3289: Management Information Base for the Differentiated
-                 Services Architecture
-       RFC 2474: Definition of the Differentiated Services Field
-                 (DS Field) in the IPv4 and IPv6 Headers
-       RFC 2780: IANA Allocation Guidelines For Values In
-                 the Internet Protocol and Related Headers";
-   }
-
-   typedef ipv6-flow-label {
-     type uint32 {
-       range "0..1048575";
-     }
-     description
-      "The flow-label type represents flow identifier or Flow Label
-       in an IPv6 packet header that may be used to discriminate
-       traffic flows.
-
-       In the value set and its semantics, this type is equivalent
-       to the IPv6FlowLabel textual convention of the SMIv2.";
-     reference
-      "RFC 3595: Textual Conventions for IPv6 Flow Label
-       RFC 2460: Internet Protocol, Version 6 (IPv6) Specification";
-   }
-
-   typedef port-number {
-     type uint16 {
-       range "0..65535";
-     }
-     description
-      "The port-number type represents a 16-bit port number of an
-       Internet transport layer protocol such as UDP, TCP, DCCP, or
-       SCTP.  Port numbers are assigned by IANA.  A current list of
-       all assignments is available from <http://www.iana.org/>.
-
-       Note that the port number value zero is reserved by IANA.  In
-       situations where the value zero does not make sense, it can
-       be excluded by subtyping the port-number type.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetPortNumber textual convention of the SMIv2.";
-     reference
-      "RFC  768: User Datagram Protocol
-       RFC  793: Transmission Control Protocol
-       RFC 4960: Stream Control Transmission Protocol
-       RFC 4340: Datagram Congestion Control Protocol (DCCP)
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   /*** collection of autonomous system related types ***/
-
-   typedef as-number {
-     type uint32;
-     description
-      "The as-number type represents autonomous system numbers
-       which identify an Autonomous System (AS).  An AS is a set
-       of routers under a single technical administration, using
-       an interior gateway protocol and common metrics to route
-       packets within the AS, and using an exterior gateway
-       protocol to route packets to other ASs'.  IANA maintains
-       the AS number space and has delegated large parts to the
-       regional registries.
-
-       Autonomous system numbers were originally limited to 16
-       bits.  BGP extensions have enlarged the autonomous system
-       number space to 32 bits.  This type therefore uses an uint32
-       base type without a range restriction in order to support
-       a larger autonomous system number space.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetAutonomousSystemNumber textual convention of
-       the SMIv2.";
-     reference
-      "RFC 1930: Guidelines for creation, selection, and registration
-                 of an Autonomous System (AS)
-       RFC 4271: A Border Gateway Protocol 4 (BGP-4)
-       RFC 4893: BGP Support for Four-octet AS Number Space
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   /*** collection of IP address and hostname related types ***/
-
-   typedef ip-address {
-     type union {
-       type inet:ipv4-address;
-       type inet:ipv6-address;
-     }
-     description
-      "The ip-address type represents an IP address and is IP
-       version neutral.  The format of the textual representations
-       implies the IP version.";
-   }
-
-   typedef ipv4-address {
-     type string {
-       pattern
-         '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
-       +  '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
-       + '(%[\p{N}\p{L}]+)?';
-     }
-     description
-       "The ipv4-address type represents an IPv4 address in
-        dotted-quad notation.  The IPv4 address may include a zone
-        index, separated by a % sign.
-
-        The zone index is used to disambiguate identical address
-        values.  For link-local addresses, the zone index will
-        typically be the interface index number or the name of an
-        interface.  If the zone index is not present, the default
-        zone of the device will be used.
-
-        The canonical format for the zone index is the numerical
-        format";
-   }
-
-   typedef ipv6-address {
-     type string {
-       pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
-             + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
-             + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
-             + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
-             + '(%[\p{N}\p{L}]+)?';
-       pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
-             + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
-             + '(%.+)?';
-     }
-     description
-      "The ipv6-address type represents an IPv6 address in full,
-       mixed, shortened, and shortened-mixed notation.  The IPv6
-       address may include a zone index, separated by a % sign.
-
-       The zone index is used to disambiguate identical address
-       values.  For link-local addresses, the zone index will
-       typically be the interface index number or the name of an
-       interface.  If the zone index is not present, the default
-       zone of the device will be used.
-
-       The canonical format of IPv6 addresses uses the compressed
-       format described in RFC 4291, Section 2.2, item 2 with the
-       following additional rules: the :: substitution must be
-       applied to the longest sequence of all-zero 16-bit chunks
-       in an IPv6 address.  If there is a tie, the first sequence
-       of all-zero 16-bit chunks is replaced by ::.  Single
-       all-zero 16-bit chunks are not compressed.  The canonical
-       format uses lowercase characters and leading zeros are
-       not allowed.  The canonical format for the zone index is
-       the numerical format as described in RFC 4007, Section
-       11.2.";
-     reference
-      "RFC 4291: IP Version 6 Addressing Architecture
-       RFC 4007: IPv6 Scoped Address Architecture
-       RFC 5952: A Recommendation for IPv6 Address Text Representation";
-   }
-
-   typedef ip-prefix {
-     type union {
-       type inet:ipv4-prefix;
-       type inet:ipv6-prefix;
-     }
-     description
-      "The ip-prefix type represents an IP prefix and is IP
-       version neutral.  The format of the textual representations
-       implies the IP version.";
-   }
-
-   typedef ipv4-prefix {
-     type string {
-       pattern
-          '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
-        +  '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
-        + '/(([0-9])|([1-2][0-9])|(3[0-2]))';
-     }
-     description
-      "The ipv4-prefix type represents an IPv4 address prefix.
-       The prefix length is given by the number following the
-       slash character and must be less than or equal to 32.
-
-       A prefix length value of n corresponds to an IP address
-       mask that has n contiguous 1-bits from the most
-       significant bit (MSB) and all other bits set to 0.
-
-       The canonical format of an IPv4 prefix has all bits of
-       the IPv4 address set to zero that are not part of the
-       IPv4 prefix.";
-   }
-
-   typedef ipv6-prefix {
-     type string {
-       pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
-             + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
-             + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
-             + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
-             + '(/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))';
-       pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
-             + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
-             + '(/.+)';
-     }
-     description
-      "The ipv6-prefix type represents an IPv6 address prefix.
-       The prefix length is given by the number following the
-       slash character and must be less than or equal 128.
-
-       A prefix length value of n corresponds to an IP address
-       mask that has n contiguous 1-bits from the most
-       significant bit (MSB) and all other bits set to 0.
-
-       The IPv6 address should have all bits that do not belong
-       to the prefix set to zero.
-
-       The canonical format of an IPv6 prefix has all bits of
-       the IPv6 address set to zero that are not part of the
-       IPv6 prefix.  Furthermore, IPv6 address is represented
-       in the compressed format described in RFC 4291, Section
-       2.2, item 2 with the following additional rules: the ::
-       substitution must be applied to the longest sequence of
-       all-zero 16-bit chunks in an IPv6 address.  If there is
-       a tie, the first sequence of all-zero 16-bit chunks is
-       replaced by ::.  Single all-zero 16-bit chunks are not
-       compressed.  The canonical format uses lowercase
-       characters and leading zeros are not allowed.";
-     reference
-      "RFC 4291: IP Version 6 Addressing Architecture";
-   }
-
-   /*** collection of domain name and URI types ***/
-
-   typedef domain-name {
-     type string {
-       pattern '((([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.)*'
-            +  '([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.?)'
-            +  '|\.';
-       length "1..253";
-     }
-     description
-      "The domain-name type represents a DNS domain name.  The
-       name SHOULD be fully qualified whenever possible.
-
-       Internet domain names are only loosely specified.  Section
-       3.5 of RFC 1034 recommends a syntax (modified in Section
-       2.1 of RFC 1123).  The pattern above is intended to allow
-       for current practice in domain name use, and some possible
-       future expansion.  It is designed to hold various types of
-       domain names, including names used for A or AAAA records
-       (host names) and other records, such as SRV records.  Note
-       that Internet host names have a stricter syntax (described
-       in RFC 952) than the DNS recommendations in RFCs 1034 and
-       1123, and that systems that want to store host names in
-       schema nodes using the domain-name type are recommended to
-       adhere to this stricter standard to ensure interoperability.
-
-       The encoding of DNS names in the DNS protocol is limited
-       to 255 characters.  Since the encoding consists of labels
-       prefixed by a length bytes and there is a trailing NULL
-       byte, only 253 characters can appear in the textual dotted
-       notation.
-
-       The description clause of schema nodes using the domain-name
-       type MUST describe when and how these names are resolved to
-       IP addresses.  Note that the resolution of a domain-name value
-       may require to query multiple DNS records (e.g., A for IPv4
-       and AAAA for IPv6).  The order of the resolution process and
-       which DNS record takes precedence can either be defined
-       explicitely or it may depend on the configuration of the
-       resolver.
-
-       Domain-name values use the US-ASCII encoding.  Their canonical
-       format uses lowercase US-ASCII characters.  Internationalized
-       domain names MUST be encoded in punycode as described in RFC
-       3492";
-     reference
-      "RFC  952: DoD Internet Host Table Specification
-       RFC 1034: Domain Names - Concepts and Facilities
-       RFC 1123: Requirements for Internet Hosts -- Application
-                 and Support
-       RFC 2782: A DNS RR for specifying the location of services
-                 (DNS SRV)
-       RFC 3492: Punycode: A Bootstring encoding of Unicode for
-                 Internationalized Domain Names in Applications
-                 (IDNA)
-       RFC 5891: Internationalizing Domain Names in Applications
-                 (IDNA): Protocol";
-   }
-
-   typedef host {
-     type union {
-       type inet:ip-address;
-       type inet:domain-name;
-     }
-     description
-      "The host type represents either an IP address or a DNS
-       domain name.";
-   }
-
-   typedef uri {
-     type string;
-     description
-      "The uri type represents a Uniform Resource Identifier
-       (URI) as defined by STD 66.
-
-       Objects using the uri type MUST be in US-ASCII encoding,
-       and MUST be normalized as described by RFC 3986 Sections
-       6.2.1, 6.2.2.1, and 6.2.2.2.  All unnecessary
-       percent-encoding is removed, and all case-insensitive
-       characters are set to lowercase except for hexadecimal
-       digits, which are normalized to uppercase as described in
-       Section 6.2.2.1.
-
-       The purpose of this normalization is to help provide
-       unique URIs.  Note that this normalization is not
-       sufficient to provide uniqueness.  Two URIs that are
-       textually distinct after this normalization may still be
-       equivalent.
-
-       Objects using the uri type may restrict the schemes that
-       they permit.  For example, 'data:' and 'urn:' schemes
-       might not be appropriate.
-
-       A zero-length URI is not a valid URI.  This can be used to
-       express 'URI absent' where required.
-
-       In the value set and its semantics, this type is equivalent
-       to the Uri SMIv2 textual convention defined in RFC 5017.";
-     reference
-      "RFC 3986: Uniform Resource Identifier (URI): Generic Syntax
-       RFC 3305: Report from the Joint W3C/IETF URI Planning Interest
-                 Group: Uniform Resource Identifiers (URIs), URLs,
-                 and Uniform Resource Names (URNs): Clarifications
-                 and Recommendations
-       RFC 5017: MIB Textual Conventions for Uniform Resource
-                 Identifiers (URIs)";
-   }
-
- }
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/enum-test-models/ietf-interfaces@2012-11-15.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/enum-test-models/ietf-interfaces@2012-11-15.yang
deleted file mode 100644 (file)
index b9117d0..0000000
+++ /dev/null
@@ -1,565 +0,0 @@
-module ietf-interfaces {
-
-  namespace "urn:ietf:params:xml:ns:yang:ietf-interfaces";
-  prefix if;
-
-  import ietf-yang-types {
-    prefix yang;
-  }
-  import iana-if-type {
-    prefix ianaift;
-  }
-
-  organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-  contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     WG Chair: Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>
-
-     Editor:   Martin Bjorklund
-               <mailto:mbj@tail-f.com>";
-
-  description
-    "This module contains a collection of YANG definitions for
-     managing network interfaces.
-
-     Copyright (c) 2012 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or
-     without modification, is permitted pursuant to, and subject
-     to the license terms contained in, the Simplified BSD License
-     set forth in Section 4.c of the IETF Trust's Legal Provisions
-     Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC XXXX; see
-     the RFC itself for full legal notices.";
-
-  // RFC Ed.: replace XXXX with actual RFC number and remove this
-  // note.
-
-  // RFC Ed.: update the date below with the date of RFC publication
-  // and remove this note.
-  revision 2012-11-15 {
-    description
-      "Initial revision.";
-    reference
-      "RFC XXXX: A YANG Data Model for Interface Management";
-  }
-
-  /* Typedefs */
-
-  typedef interface-ref {
-    type leafref {
-      path "/if:interfaces/if:interface/if:name";
-    }
-    description
-      "This type is used by data models that need to reference
-       interfaces.";
-  }
-
-  /* Features */
-
-  feature arbitrary-names {
-    description
-      "This feature indicates that the server allows interfaces to
-       be named arbitrarily.";
-  }
-
-  feature if-mib {
-    description
-      "This feature indicates that the server implements IF-MIB.";
-    reference
-      "RFC 2863: The Interfaces Group MIB";
-  }
-
-  /* Data nodes */
-
-  container interfaces {
-    description
-      "Interface parameters.";
-
-    list interface {
-      key "name";
-      unique "type location";
-
-      description
-        "The list of interfaces on the device.";
-
-      leaf name {
-        type string;
-        description
-          "The name of the interface.
-
-           A device MAY restrict the allowed values for this leaf,
-           possibly depending on the type and location.
-
-           If the device allows arbitrarily named interfaces, the
-           feature 'arbitrary-names' is advertised.
-
-           This leaf MAY be mapped to ifName by an implementation.
-           Such an implementation MAY restrict the allowed values for
-           this leaf so that it matches the restrictions of ifName.
-           If a NETCONF server that implements this restriction is
-           sent a value that doesn't match the restriction, it MUST
-           reply with an rpc-error with the error-tag
-           'invalid-value'.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifName";
-      }
-
-      leaf description {
-        type string;
-        description
-          "A textual description of the interface.
-
-           This leaf MAY be mapped to ifAlias by an implementation.
-           Such an implementation MAY restrict the allowed values for
-           this leaf so that it matches the restrictions of ifAlias.
-           If a NETCONF server that implements this restriction is
-           sent a value that doesn't match the restriction, it MUST
-           reply with an rpc-error with the error-tag
-           'invalid-value'.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifAlias";
-      }
-
-      leaf type {
-        type ianaift:iana-if-type;
-        mandatory true;
-        description
-          "The type of the interface.
-
-           When an interface entry is created, a server MAY
-           initialize the type leaf with a valid value, e.g., if it
-           is possible to derive the type from the name of the
-           interface.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifType";
-      }
-
-      leaf location {
-        type string;
-        description
-          "The device-specific location of the interface of a
-           particular type.  The format of the location string
-           depends on the interface type and the device.
-
-           If the interface's type represents a physical interface,
-           this leaf MUST be set.
-
-           When an interface entry is created, a server MAY
-           initialize the location leaf with a valid value, e.g., if
-           it is possible to derive the location from the name of
-           the interface.";
-      }
-
-      leaf enabled {
-        type boolean;
-        default "true";
-        description
-          "The desired state of the interface.
-
-           This leaf contains the configured, desired state of the
-           interface.  Systems that implement the IF-MIB use the
-           value of this leaf to set IF-MIB.ifAdminStatus to 'up' or
-           'down' after an ifEntry has been initialized, as described
-           in RFC 2863.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifAdminStatus";
-      }
-
-      leaf oper-status {
-        type enumeration {
-          enum up {
-            value 1;
-            description
-              "Ready to pass packets.";
-          }
-          enum down {
-            value 2;
-            description
-              "The interface does not pass any packets.";
-          }
-          enum testing {
-            value 3;
-            description
-              "In some test mode.  No operational packets can
-               be passed.";
-          }
-          enum unknown {
-            value 4;
-            description
-              "Status cannot be determined for some reason.";
-          }
-          enum dormant {
-            value 5;
-            description
-              "Waiting for some external event.";
-          }
-          enum not-present {
-            value 6;
-            description
-              "Some component is missing.";
-          }
-          enum lower-layer-down {
-            value 7;
-            description
-              "Down due to state of lower-layer interface(s).";
-          }
-        }
-        config false;
-        description
-          "The current operational state of the interface.
-
-           If 'enabled' is 'false' then 'oper-status'
-           should be 'down'.  If 'enabled' is changed to 'true'
-           then 'oper-status' should change to 'up' if the interface
-           is ready to transmit and receive network traffic; it
-           should change to 'dormant' if the interface is waiting for
-           external actions (such as a serial line waiting for an
-           incoming connection); it should remain in the 'down' state
-           if and only if there is a fault that prevents it from
-           going to the 'up' state; it should remain in the
-           'not-present' state if the interface has missing
-           (typically, hardware) components.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifOperStatus";
-      }
-
-      leaf last-change {
-        type yang:date-and-time;
-        config false;
-        description
-          "The time the interface entered its current operational
-           state.  If the current state was entered prior to the
-           last re-initialization of the local network management
-           subsystem, then this node is not present.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifLastChange";
-      }
-
-      leaf if-index {
-        if-feature if-mib;
-        type int32 {
-          range "1..2147483647";
-        }
-        config false;
-        description
-          "The ifIndex value for the ifEntry represented by this
-           interface.
-
-           Media-specific modules must specify how the type is
-           mapped to entries in the ifTable.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifIndex";
-      }
-
-      leaf link-up-down-trap-enable {
-        if-feature if-mib;
-        type enumeration {
-          enum enabled {
-            value 1;
-          }
-          enum disabled {
-            value 2;
-          }
-        }
-        description
-          "Indicates whether linkUp/linkDown SNMP notifications
-           should be generated for this interface.
-           If this node is not configured, the value 'enabled' is
-           operationally used by the server for interfaces which do
-           not operate on top of any other interface (i.e., there are
-           no 'lower-layer-if' entries), and 'disabled' otherwise.";
-        reference
-          "RFC 2863: The Interfaces Group MIB -
-                     ifLinkUpDownTrapEnable";
-      }
-
-      leaf phys-address {
-        type yang:phys-address;
-        config false;
-        description
-          "The interface's address at its protocol sub-layer.  For
-          example, for an 802.x interface, this object normally
-          contains a MAC address.  The interface's media-specific
-          modules must define the bit and byte ordering and the
-          format of the value of this object.  For interfaces that do
-          not have such an address (e.g., a serial line), this node
-          is not present.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifPhysAddress";
-      }
-
-      leaf-list higher-layer-if {
-        type interface-ref;
-        config false;
-        description
-          "A list of references to interfaces layered on top of this
-           interface.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifStackTable";
-      }
-
-      leaf-list lower-layer-if {
-        type interface-ref;
-        config false;
-        description
-          "A list of references to interfaces layered underneath this
-           interface.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifStackTable";
-      }
-
-      leaf speed {
-        type yang:gauge64;
-        units "bits / second";
-        config false;
-        description
-            "An estimate of the interface's current bandwidth in bits
-             per second.  For interfaces which do not vary in
-             bandwidth or for those where no accurate estimation can
-             be made, this node should contain the nominal bandwidth.
-             For interfaces that has no concept of bandwidth, this
-             node is not present.";
-        reference
-          "RFC 2863: The Interfaces Group MIB -
-                     ifSpeed, ifHighSpeed";
-      }
-
-      container statistics {
-        config false;
-        description
-          "A collection of interface-related statistics objects.";
-
-        leaf discontinuity-time {
-          type yang:date-and-time;
-          description
-            "The time on the most recent occasion at which any one or
-             more of this interface's counters suffered a
-             discontinuity.  If no such discontinuities have occurred
-             since the last re-initialization of the local management
-             subsystem, then this node contains the time the local
-             management subsystem re-initialized itself.";
-        }
-
-        leaf in-octets {
-          type yang:counter64;
-          description
-            "The total number of octets received on the interface,
-             including framing characters.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifHCInOctets";
-        }
-        leaf in-unicast-pkts {
-          type yang:counter64;
-          description
-            "The number of packets, delivered by this sub-layer to a
-             higher (sub-)layer, which were not addressed to a
-             multicast or broadcast address at this sub-layer.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifHCInUcastPkts";
-        }
-        leaf in-broadcast-pkts {
-          type yang:counter64;
-          description
-            "The number of packets, delivered by this sub-layer to a
-             higher (sub-)layer, which were addressed to a broadcast
-             address at this sub-layer.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB -
-                       ifHCInBroadcastPkts";
-        }
-        leaf in-multicast-pkts {
-          type yang:counter64;
-          description
-            "The number of packets, delivered by this sub-layer to a
-             higher (sub-)layer, which were addressed to a multicast
-             address at this sub-layer.  For a MAC layer protocol,
-             this includes both Group and Functional addresses.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB -
-                       ifHCInMulticastPkts";
-        }
-        leaf in-discards {
-          type yang:counter32;
-          description
-            "The number of inbound packets which were chosen to be
-             discarded even though no errors had been detected to
-             prevent their being deliverable to a higher-layer
-             protocol.  One possible reason for discarding such a
-             packet could be to free up buffer space.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifInDiscards";
-        }
-        leaf in-errors {
-          type yang:counter32;
-          description
-            "For packet-oriented interfaces, the number of inbound
-             packets that contained errors preventing them from being
-             deliverable to a higher-layer protocol.  For character-
-             oriented or fixed-length interfaces, the number of
-             inbound transmission units that contained errors
-             preventing them from being deliverable to a higher-layer
-             protocol.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifInErrors";
-        }
-        leaf in-unknown-protos {
-          type yang:counter32;
-          description
-            "For packet-oriented interfaces, the number of packets
-             received via the interface which were discarded because
-             of an unknown or unsupported protocol.  For
-             character-oriented or fixed-length interfaces that
-             support protocol multiplexing the number of transmission
-             units received via the interface which were discarded
-             because of an unknown or unsupported protocol.  For any
-             interface that does not support protocol multiplexing,
-             this counter is not present.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifInUnknownProtos";
-        }
-
-        leaf out-octets {
-          type yang:counter64;
-          description
-            "The total number of octets transmitted out of the
-             interface, including framing characters.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifHCOutOctets";
-        }
-        leaf out-unicast-pkts {
-          type yang:counter64;
-          description
-            "The total number of packets that higher-level protocols
-             requested be transmitted, and which were not addressed
-             to a multicast or broadcast address at this sub-layer,
-             including those that were discarded or not sent.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifHCOutUcastPkts";
-        }
-        leaf out-broadcast-pkts {
-          type yang:counter64;
-          description
-            "The total number of packets that higher-level protocols
-             requested be transmitted, and which were addressed to a
-             broadcast address at this sub-layer, including those
-             that were discarded or not sent.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB -
-                       ifHCOutBroadcastPkts";
-        }
-        leaf out-multicast-pkts {
-          type yang:counter64;
-          description
-            "The total number of packets that higher-level protocols
-             requested be transmitted, and which were addressed to a
-             multicast address at this sub-layer, including those
-             that were discarded or not sent.  For a MAC layer
-             protocol, this includes both Group and Functional
-             addresses.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB -
-                       ifHCOutMulticastPkts";
-        }
-        leaf out-discards {
-          type yang:counter32;
-          description
-            "The number of outbound packets which were chosen to be
-             discarded even though no errors had been detected to
-             prevent their being transmitted.  One possible reason
-             for discarding such a packet could be to free up buffer
-             space.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifOutDiscards";
-        }
-        leaf out-errors {
-          type yang:counter32;
-          description
-            "For packet-oriented interfaces, the number of outbound
-             packets that could not be transmitted because of errors.
-             For character-oriented or fixed-length interfaces, the
-             number of outbound transmission units that could not be
-             transmitted because of errors.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifOutErrors";
-        }
-      }
-    }
-  }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/enum-test-models/ietf-yang-types@2010-09-24.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/enum-test-models/ietf-yang-types@2010-09-24.yang
deleted file mode 100644 (file)
index e9d88ab..0000000
+++ /dev/null
@@ -1,396 +0,0 @@
- module ietf-yang-types {
-
-   namespace "urn:ietf:params:xml:ns:yang:ietf-yang-types";
-   prefix "yang";
-
-   organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-   contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Partain
-               <mailto:david.partain@ericsson.com>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     Editor:   Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>";
-
-   description
-    "This module contains a collection of generally useful derived
-     YANG data types.
-
-     Copyright (c) 2010 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or without
-     modification, is permitted pursuant to, and subject to the license
-     terms contained in, the Simplified BSD License set forth in Section
-     4.c of the IETF Trust's Legal Provisions Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC 6021; see
-     the RFC itself for full legal notices.";
-
-   revision 2010-09-24 {
-     description
-      "Initial revision.";
-     reference
-      "RFC 6021: Common YANG Data Types";
-   }
-
-   /*** collection of counter and gauge types ***/
-
-   typedef counter32 {
-     type uint32;
-     description
-      "The counter32 type represents a non-negative integer
-       that monotonically increases until it reaches a
-       maximum value of 2^32-1 (4294967295 decimal), when it
-       wraps around and starts increasing again from zero.
-
-       Counters have no defined 'initial' value, and thus, a
-       single value of a counter has (in general) no information
-       content.  Discontinuities in the monotonically increasing
-       value normally occur at re-initialization of the
-       management system, and at other times as specified in the
-       description of a schema node using this type.  If such
-       other times can occur, for example, the creation of
-       a schema node of type counter32 at times other than
-       re-initialization, then a corresponding schema node
-       should be defined, with an appropriate type, to indicate
-       the last discontinuity.
-
-       The counter32 type should not be used for configuration
-       schema nodes.  A default statement SHOULD NOT be used in
-       combination with the type counter32.
-
-       In the value set and its semantics, this type is equivalent
-       to the Counter32 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef zero-based-counter32 {
-     type yang:counter32;
-     default "0";
-     description
-      "The zero-based-counter32 type represents a counter32
-       that has the defined 'initial' value zero.
-
-       A schema node of this type will be set to zero (0) on creation
-       and will thereafter increase monotonically until it reaches
-       a maximum value of 2^32-1 (4294967295 decimal), when it
-       wraps around and starts increasing again from zero.
-
-       Provided that an application discovers a new schema node
-       of this type within the minimum time to wrap, it can use the
-       'initial' value as a delta.  It is important for a management
-       station to be aware of this minimum time and the actual time
-       between polls, and to discard data if the actual time is too
-       long or there is no defined minimum time.
-
-       In the value set and its semantics, this type is equivalent
-       to the ZeroBasedCounter32 textual convention of the SMIv2.";
-     reference
-       "RFC 4502: Remote Network Monitoring Management Information
-                  Base Version 2";
-   }
-
-   typedef counter64 {
-     type uint64;
-     description
-      "The counter64 type represents a non-negative integer
-       that monotonically increases until it reaches a
-       maximum value of 2^64-1 (18446744073709551615 decimal),
-       when it wraps around and starts increasing again from zero.
-
-       Counters have no defined 'initial' value, and thus, a
-       single value of a counter has (in general) no information
-       content.  Discontinuities in the monotonically increasing
-       value normally occur at re-initialization of the
-       management system, and at other times as specified in the
-       description of a schema node using this type.  If such
-       other times can occur, for example, the creation of
-       a schema node of type counter64 at times other than
-       re-initialization, then a corresponding schema node
-       should be defined, with an appropriate type, to indicate
-       the last discontinuity.
-
-       The counter64 type should not be used for configuration
-       schema nodes.  A default statement SHOULD NOT be used in
-       combination with the type counter64.
-
-       In the value set and its semantics, this type is equivalent
-       to the Counter64 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef zero-based-counter64 {
-     type yang:counter64;
-     default "0";
-     description
-      "The zero-based-counter64 type represents a counter64 that
-       has the defined 'initial' value zero.
-
-       A schema node of this type will be set to zero (0) on creation
-       and will thereafter increase monotonically until it reaches
-       a maximum value of 2^64-1 (18446744073709551615 decimal),
-       when it wraps around and starts increasing again from zero.
-
-       Provided that an application discovers a new schema node
-       of this type within the minimum time to wrap, it can use the
-       'initial' value as a delta.  It is important for a management
-       station to be aware of this minimum time and the actual time
-       between polls, and to discard data if the actual time is too
-       long or there is no defined minimum time.
-
-       In the value set and its semantics, this type is equivalent
-       to the ZeroBasedCounter64 textual convention of the SMIv2.";
-     reference
-      "RFC 2856: Textual Conventions for Additional High Capacity
-                 Data Types";
-   }
-
-   typedef gauge32 {
-     type uint32;
-     description
-      "The gauge32 type represents a non-negative integer, which
-       may increase or decrease, but shall never exceed a maximum
-       value, nor fall below a minimum value.  The maximum value
-       cannot be greater than 2^32-1 (4294967295 decimal), and
-       the minimum value cannot be smaller than 0.  The value of
-       a gauge32 has its maximum value whenever the information
-       being modeled is greater than or equal to its maximum
-       value, and has its minimum value whenever the information
-       being modeled is smaller than or equal to its minimum value.
-       If the information being modeled subsequently decreases
-       below (increases above) the maximum (minimum) value, the
-       gauge32 also decreases (increases).
-
-       In the value set and its semantics, this type is equivalent
-       to the Gauge32 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef gauge64 {
-     type uint64;
-     description
-      "The gauge64 type represents a non-negative integer, which
-       may increase or decrease, but shall never exceed a maximum
-       value, nor fall below a minimum value.  The maximum value
-       cannot be greater than 2^64-1 (18446744073709551615), and
-       the minimum value cannot be smaller than 0.  The value of
-       a gauge64 has its maximum value whenever the information
-       being modeled is greater than or equal to its maximum
-       value, and has its minimum value whenever the information
-       being modeled is smaller than or equal to its minimum value.
-       If the information being modeled subsequently decreases
-       below (increases above) the maximum (minimum) value, the
-       gauge64 also decreases (increases).
-
-       In the value set and its semantics, this type is equivalent
-       to the CounterBasedGauge64 SMIv2 textual convention defined
-       in RFC 2856";
-     reference
-      "RFC 2856: Textual Conventions for Additional High Capacity
-                 Data Types";
-   }
-
-   /*** collection of identifier related types ***/
-
-   typedef object-identifier {
-     type string {
-       pattern '(([0-1](\.[1-3]?[0-9]))|(2\.(0|([1-9]\d*))))'
-             + '(\.(0|([1-9]\d*)))*';
-     }
-     description
-      "The object-identifier type represents administratively
-       assigned names in a registration-hierarchical-name tree.
-
-       Values of this type are denoted as a sequence of numerical
-       non-negative sub-identifier values.  Each sub-identifier
-       value MUST NOT exceed 2^32-1 (4294967295).  Sub-identifiers
-       are separated by single dots and without any intermediate
-       whitespace.
-
-       The ASN.1 standard restricts the value space of the first
-       sub-identifier to 0, 1, or 2.  Furthermore, the value space
-       of the second sub-identifier is restricted to the range
-       0 to 39 if the first sub-identifier is 0 or 1.  Finally,
-       the ASN.1 standard requires that an object identifier
-       has always at least two sub-identifier.  The pattern
-       captures these restrictions.
-
-       Although the number of sub-identifiers is not limited,
-       module designers should realize that there may be
-       implementations that stick with the SMIv2 limit of 128
-       sub-identifiers.
-
-       This type is a superset of the SMIv2 OBJECT IDENTIFIER type
-       since it is not restricted to 128 sub-identifiers.  Hence,
-       this type SHOULD NOT be used to represent the SMIv2 OBJECT
-       IDENTIFIER type, the object-identifier-128 type SHOULD be
-       used instead.";
-     reference
-      "ISO9834-1: Information technology -- Open Systems
-       Interconnection -- Procedures for the operation of OSI
-       Registration Authorities: General procedures and top
-       arcs of the ASN.1 Object Identifier tree";
-   }
-
-
-
-
-   typedef object-identifier-128 {
-     type object-identifier {
-       pattern '\d*(\.\d*){1,127}';
-     }
-     description
-      "This type represents object-identifiers restricted to 128
-       sub-identifiers.
-
-       In the value set and its semantics, this type is equivalent
-       to the OBJECT IDENTIFIER type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   /*** collection of date and time related types ***/
-
-   typedef date-and-time {
-     type string {
-       pattern '\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?'
-             + '(Z|[\+\-]\d{2}:\d{2})';
-     }
-     description
-      "The date-and-time type is a profile of the ISO 8601
-       standard for representation of dates and times using the
-       Gregorian calendar.  The profile is defined by the
-       date-time production in Section 5.6 of RFC 3339.
-
-       The date-and-time type is compatible with the dateTime XML
-       schema type with the following notable exceptions:
-
-       (a) The date-and-time type does not allow negative years.
-
-       (b) The date-and-time time-offset -00:00 indicates an unknown
-           time zone (see RFC 3339) while -00:00 and +00:00 and Z all
-           represent the same time zone in dateTime.
-
-       (c) The canonical format (see below) of data-and-time values
-           differs from the canonical format used by the dateTime XML
-           schema type, which requires all times to be in UTC using the
-           time-offset 'Z'.
-
-       This type is not equivalent to the DateAndTime textual
-       convention of the SMIv2 since RFC 3339 uses a different
-       separator between full-date and full-time and provides
-       higher resolution of time-secfrac.
-
-       The canonical format for date-and-time values with a known time
-       zone uses a numeric time zone offset that is calculated using
-       the device's configured known offset to UTC time.  A change of
-       the device's offset to UTC time will cause date-and-time values
-       to change accordingly.  Such changes might happen periodically
-       in case a server follows automatically daylight saving time
-       (DST) time zone offset changes.  The canonical format for
-       date-and-time values with an unknown time zone (usually referring
-       to the notion of local time) uses the time-offset -00:00.";
-     reference
-      "RFC 3339: Date and Time on the Internet: Timestamps
-       RFC 2579: Textual Conventions for SMIv2
-       XSD-TYPES: XML Schema Part 2: Datatypes Second Edition";
-   }
-
-   typedef timeticks {
-     type uint32;
-     description
-      "The timeticks type represents a non-negative integer that
-       represents the time, modulo 2^32 (4294967296 decimal), in
-       hundredths of a second between two epochs.  When a schema
-       node is defined that uses this type, the description of
-       the schema node identifies both of the reference epochs.
-
-       In the value set and its semantics, this type is equivalent
-       to the TimeTicks type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef timestamp {
-     type yang:timeticks;
-     description
-      "The timestamp type represents the value of an associated
-       timeticks schema node at which a specific occurrence happened.
-       The specific occurrence must be defined in the description
-       of any schema node defined using this type.  When the specific
-       occurrence occurred prior to the last time the associated
-       timeticks attribute was zero, then the timestamp value is
-       zero.  Note that this requires all timestamp values to be
-       reset to zero when the value of the associated timeticks
-       attribute reaches 497+ days and wraps around to zero.
-
-       The associated timeticks schema node must be specified
-       in the description of any schema node using this type.
-
-       In the value set and its semantics, this type is equivalent
-       to the TimeStamp textual convention of the SMIv2.";
-     reference
-      "RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   /*** collection of generic address types ***/
-
-   typedef phys-address {
-     type string {
-       pattern '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?';
-     }
-     description
-      "Represents media- or physical-level addresses represented
-       as a sequence octets, each octet represented by two hexadecimal
-       numbers.  Octets are separated by colons.  The canonical
-       representation uses lowercase characters.
-
-       In the value set and its semantics, this type is equivalent
-       to the PhysAddress textual convention of the SMIv2.";
-     reference
-      "RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   typedef mac-address {
-     type string {
-       pattern '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}';
-     }
-     description
-      "The mac-address type represents an IEEE 802 MAC address.
-       The canonical representation uses lowercase characters.
-
-       In the value set and its semantics, this type is equivalent
-       to the MacAddress textual convention of the SMIv2.";
-     reference
-      "IEEE 802: IEEE Standard for Local and Metropolitan Area
-                 Networks: Overview and Architecture
-       RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   /*** collection of XML specific types ***/
-
-   typedef xpath1.0 {
-     type string;
-     description
-      "This type represents an XPATH 1.0 expression.
-
-       When a schema node is defined that uses this type, the
-       description of the schema node MUST specify the XPath
-       context in which the XPath expression is evaluated.";
-     reference
-      "XPATH: XML Path Language (XPath) Version 1.0";
-   }
-
- }
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/ietf-inet-types@2010-09-24.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/ietf-inet-types@2010-09-24.yang
deleted file mode 100644 (file)
index de20feb..0000000
+++ /dev/null
@@ -1,418 +0,0 @@
- module ietf-inet-types {
-
-   namespace "urn:ietf:params:xml:ns:yang:ietf-inet-types";
-   prefix "inet";
-
-   organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-   contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Partain
-               <mailto:david.partain@ericsson.com>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     Editor:   Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>";
-
-   description
-    "This module contains a collection of generally useful derived
-     YANG data types for Internet addresses and related things.
-
-     Copyright (c) 2010 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or without
-     modification, is permitted pursuant to, and subject to the license
-     terms contained in, the Simplified BSD License set forth in Section
-     4.c of the IETF Trust's Legal Provisions Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC 6021; see
-     the RFC itself for full legal notices.";
-
-   revision 2010-09-24 {
-     description
-      "Initial revision.";
-     reference
-      "RFC 6021: Common YANG Data Types";
-   }
-
-   /*** collection of protocol field related types ***/
-
-   typedef ip-version {
-     type enumeration {
-       enum unknown {
-         value "0";
-         description
-          "An unknown or unspecified version of the Internet protocol.";
-       }
-       enum ipv4 {
-         value "1";
-         description
-          "The IPv4 protocol as defined in RFC 791.";
-       }
-       enum ipv6 {
-         value "2";
-         description
-          "The IPv6 protocol as defined in RFC 2460.";
-       }
-     }
-     description
-      "This value represents the version of the IP protocol.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetVersion textual convention of the SMIv2.";
-     reference
-      "RFC  791: Internet Protocol
-       RFC 2460: Internet Protocol, Version 6 (IPv6) Specification
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   typedef dscp {
-     type uint8 {
-       range "0..63";
-     }
-     description
-      "The dscp type represents a Differentiated Services Code-Point
-       that may be used for marking packets in a traffic stream.
-
-       In the value set and its semantics, this type is equivalent
-       to the Dscp textual convention of the SMIv2.";
-     reference
-      "RFC 3289: Management Information Base for the Differentiated
-                 Services Architecture
-       RFC 2474: Definition of the Differentiated Services Field
-                 (DS Field) in the IPv4 and IPv6 Headers
-       RFC 2780: IANA Allocation Guidelines For Values In
-                 the Internet Protocol and Related Headers";
-   }
-
-   typedef ipv6-flow-label {
-     type uint32 {
-       range "0..1048575";
-     }
-     description
-      "The flow-label type represents flow identifier or Flow Label
-       in an IPv6 packet header that may be used to discriminate
-       traffic flows.
-
-       In the value set and its semantics, this type is equivalent
-       to the IPv6FlowLabel textual convention of the SMIv2.";
-     reference
-      "RFC 3595: Textual Conventions for IPv6 Flow Label
-       RFC 2460: Internet Protocol, Version 6 (IPv6) Specification";
-   }
-
-   typedef port-number {
-     type uint16 {
-       range "0..65535";
-     }
-     description
-      "The port-number type represents a 16-bit port number of an
-       Internet transport layer protocol such as UDP, TCP, DCCP, or
-       SCTP.  Port numbers are assigned by IANA.  A current list of
-       all assignments is available from <http://www.iana.org/>.
-
-       Note that the port number value zero is reserved by IANA.  In
-       situations where the value zero does not make sense, it can
-       be excluded by subtyping the port-number type.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetPortNumber textual convention of the SMIv2.";
-     reference
-      "RFC  768: User Datagram Protocol
-       RFC  793: Transmission Control Protocol
-       RFC 4960: Stream Control Transmission Protocol
-       RFC 4340: Datagram Congestion Control Protocol (DCCP)
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   /*** collection of autonomous system related types ***/
-
-   typedef as-number {
-     type uint32;
-     description
-      "The as-number type represents autonomous system numbers
-       which identify an Autonomous System (AS).  An AS is a set
-       of routers under a single technical administration, using
-       an interior gateway protocol and common metrics to route
-       packets within the AS, and using an exterior gateway
-       protocol to route packets to other ASs'.  IANA maintains
-       the AS number space and has delegated large parts to the
-       regional registries.
-
-       Autonomous system numbers were originally limited to 16
-       bits.  BGP extensions have enlarged the autonomous system
-       number space to 32 bits.  This type therefore uses an uint32
-       base type without a range restriction in order to support
-       a larger autonomous system number space.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetAutonomousSystemNumber textual convention of
-       the SMIv2.";
-     reference
-      "RFC 1930: Guidelines for creation, selection, and registration
-                 of an Autonomous System (AS)
-       RFC 4271: A Border Gateway Protocol 4 (BGP-4)
-       RFC 4893: BGP Support for Four-octet AS Number Space
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   /*** collection of IP address and hostname related types ***/
-
-   typedef ip-address {
-     type union {
-       type inet:ipv4-address;
-       type inet:ipv6-address;
-     }
-     description
-      "The ip-address type represents an IP address and is IP
-       version neutral.  The format of the textual representations
-       implies the IP version.";
-   }
-
-   typedef ipv4-address {
-     type string {
-       pattern
-         '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
-       +  '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
-       + '(%[\p{N}\p{L}]+)?';
-     }
-     description
-       "The ipv4-address type represents an IPv4 address in
-        dotted-quad notation.  The IPv4 address may include a zone
-        index, separated by a % sign.
-
-        The zone index is used to disambiguate identical address
-        values.  For link-local addresses, the zone index will
-        typically be the interface index number or the name of an
-        interface.  If the zone index is not present, the default
-        zone of the device will be used.
-
-        The canonical format for the zone index is the numerical
-        format";
-   }
-
-   typedef ipv6-address {
-     type string {
-       pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
-             + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
-             + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
-             + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
-             + '(%[\p{N}\p{L}]+)?';
-       pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
-             + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
-             + '(%.+)?';
-     }
-     description
-      "The ipv6-address type represents an IPv6 address in full,
-       mixed, shortened, and shortened-mixed notation.  The IPv6
-       address may include a zone index, separated by a % sign.
-
-       The zone index is used to disambiguate identical address
-       values.  For link-local addresses, the zone index will
-       typically be the interface index number or the name of an
-       interface.  If the zone index is not present, the default
-       zone of the device will be used.
-
-       The canonical format of IPv6 addresses uses the compressed
-       format described in RFC 4291, Section 2.2, item 2 with the
-       following additional rules: the :: substitution must be
-       applied to the longest sequence of all-zero 16-bit chunks
-       in an IPv6 address.  If there is a tie, the first sequence
-       of all-zero 16-bit chunks is replaced by ::.  Single
-       all-zero 16-bit chunks are not compressed.  The canonical
-       format uses lowercase characters and leading zeros are
-       not allowed.  The canonical format for the zone index is
-       the numerical format as described in RFC 4007, Section
-       11.2.";
-     reference
-      "RFC 4291: IP Version 6 Addressing Architecture
-       RFC 4007: IPv6 Scoped Address Architecture
-       RFC 5952: A Recommendation for IPv6 Address Text Representation";
-   }
-
-   typedef ip-prefix {
-     type union {
-       type inet:ipv4-prefix;
-       type inet:ipv6-prefix;
-     }
-     description
-      "The ip-prefix type represents an IP prefix and is IP
-       version neutral.  The format of the textual representations
-       implies the IP version.";
-   }
-
-   typedef ipv4-prefix {
-     type string {
-       pattern
-          '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
-        +  '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
-        + '/(([0-9])|([1-2][0-9])|(3[0-2]))';
-     }
-     description
-      "The ipv4-prefix type represents an IPv4 address prefix.
-       The prefix length is given by the number following the
-       slash character and must be less than or equal to 32.
-
-       A prefix length value of n corresponds to an IP address
-       mask that has n contiguous 1-bits from the most
-       significant bit (MSB) and all other bits set to 0.
-
-       The canonical format of an IPv4 prefix has all bits of
-       the IPv4 address set to zero that are not part of the
-       IPv4 prefix.";
-   }
-
-   typedef ipv6-prefix {
-     type string {
-       pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
-             + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
-             + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
-             + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
-             + '(/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))';
-       pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
-             + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
-             + '(/.+)';
-     }
-     description
-      "The ipv6-prefix type represents an IPv6 address prefix.
-       The prefix length is given by the number following the
-       slash character and must be less than or equal 128.
-
-       A prefix length value of n corresponds to an IP address
-       mask that has n contiguous 1-bits from the most
-       significant bit (MSB) and all other bits set to 0.
-
-       The IPv6 address should have all bits that do not belong
-       to the prefix set to zero.
-
-       The canonical format of an IPv6 prefix has all bits of
-       the IPv6 address set to zero that are not part of the
-       IPv6 prefix.  Furthermore, IPv6 address is represented
-       in the compressed format described in RFC 4291, Section
-       2.2, item 2 with the following additional rules: the ::
-       substitution must be applied to the longest sequence of
-       all-zero 16-bit chunks in an IPv6 address.  If there is
-       a tie, the first sequence of all-zero 16-bit chunks is
-       replaced by ::.  Single all-zero 16-bit chunks are not
-       compressed.  The canonical format uses lowercase
-       characters and leading zeros are not allowed.";
-     reference
-      "RFC 4291: IP Version 6 Addressing Architecture";
-   }
-
-   /*** collection of domain name and URI types ***/
-
-   typedef domain-name {
-     type string {
-       pattern '((([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.)*'
-            +  '([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.?)'
-            +  '|\.';
-       length "1..253";
-     }
-     description
-      "The domain-name type represents a DNS domain name.  The
-       name SHOULD be fully qualified whenever possible.
-
-       Internet domain names are only loosely specified.  Section
-       3.5 of RFC 1034 recommends a syntax (modified in Section
-       2.1 of RFC 1123).  The pattern above is intended to allow
-       for current practice in domain name use, and some possible
-       future expansion.  It is designed to hold various types of
-       domain names, including names used for A or AAAA records
-       (host names) and other records, such as SRV records.  Note
-       that Internet host names have a stricter syntax (described
-       in RFC 952) than the DNS recommendations in RFCs 1034 and
-       1123, and that systems that want to store host names in
-       schema nodes using the domain-name type are recommended to
-       adhere to this stricter standard to ensure interoperability.
-
-       The encoding of DNS names in the DNS protocol is limited
-       to 255 characters.  Since the encoding consists of labels
-       prefixed by a length bytes and there is a trailing NULL
-       byte, only 253 characters can appear in the textual dotted
-       notation.
-
-       The description clause of schema nodes using the domain-name
-       type MUST describe when and how these names are resolved to
-       IP addresses.  Note that the resolution of a domain-name value
-       may require to query multiple DNS records (e.g., A for IPv4
-       and AAAA for IPv6).  The order of the resolution process and
-       which DNS record takes precedence can either be defined
-       explicitely or it may depend on the configuration of the
-       resolver.
-
-       Domain-name values use the US-ASCII encoding.  Their canonical
-       format uses lowercase US-ASCII characters.  Internationalized
-       domain names MUST be encoded in punycode as described in RFC
-       3492";
-     reference
-      "RFC  952: DoD Internet Host Table Specification
-       RFC 1034: Domain Names - Concepts and Facilities
-       RFC 1123: Requirements for Internet Hosts -- Application
-                 and Support
-       RFC 2782: A DNS RR for specifying the location of services
-                 (DNS SRV)
-       RFC 3492: Punycode: A Bootstring encoding of Unicode for
-                 Internationalized Domain Names in Applications
-                 (IDNA)
-       RFC 5891: Internationalizing Domain Names in Applications
-                 (IDNA): Protocol";
-   }
-
-   typedef host {
-     type union {
-       type inet:ip-address;
-       type inet:domain-name;
-     }
-     description
-      "The host type represents either an IP address or a DNS
-       domain name.";
-   }
-
-   typedef uri {
-     type string;
-     description
-      "The uri type represents a Uniform Resource Identifier
-       (URI) as defined by STD 66.
-
-       Objects using the uri type MUST be in US-ASCII encoding,
-       and MUST be normalized as described by RFC 3986 Sections
-       6.2.1, 6.2.2.1, and 6.2.2.2.  All unnecessary
-       percent-encoding is removed, and all case-insensitive
-       characters are set to lowercase except for hexadecimal
-       digits, which are normalized to uppercase as described in
-       Section 6.2.2.1.
-
-       The purpose of this normalization is to help provide
-       unique URIs.  Note that this normalization is not
-       sufficient to provide uniqueness.  Two URIs that are
-       textually distinct after this normalization may still be
-       equivalent.
-
-       Objects using the uri type may restrict the schemes that
-       they permit.  For example, 'data:' and 'urn:' schemes
-       might not be appropriate.
-
-       A zero-length URI is not a valid URI.  This can be used to
-       express 'URI absent' where required.
-
-       In the value set and its semantics, this type is equivalent
-       to the Uri SMIv2 textual convention defined in RFC 5017.";
-     reference
-      "RFC 3986: Uniform Resource Identifier (URI): Generic Syntax
-       RFC 3305: Report from the Joint W3C/IETF URI Planning Interest
-                 Group: Uniform Resource Identifiers (URIs), URLs,
-                 and Uniform Resource Names (URNs): Clarifications
-                 and Recommendations
-       RFC 5017: MIB Textual Conventions for Uniform Resource
-                 Identifiers (URIs)";
-   }
-
- }
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/leafref-test-models/abstract-topology@2013-02-08.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/leafref-test-models/abstract-topology@2013-02-08.yang
deleted file mode 100644 (file)
index be31192..0000000
+++ /dev/null
@@ -1,147 +0,0 @@
-module abstract-topology {
-    yang-version 1;
-    namespace "urn:model:abstract:topology";
-    prefix "tp";
-
-    import ietf-inet-types {
-        prefix "inet";
-        revision-date 2010-09-24;
-    }
-
-    import ietf-interfaces {
-        prefix "if";
-        revision-date 2012-11-15;
-    }
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    description
-        "This module contains the definitions of elements that creates network 
-    topology i.e. definition of network nodes and links. This module is not designed to be used solely for network representation. This module SHOULD be used as base module in defining the network topology.";
-
-    revision "2013-02-08" {
-        reference "~~~ WILL BE DEFINED LATER";
-    }
-    
-    revision "2013-01-01" {
-        reference "~~~ WILL BE DEFINED LATER";
-    }
-    
-    typedef node-id-ref {
-        type leafref {
-            path "/tp:topology/tp:network-nodes/tp:network-node/tp:node-id";
-        }
-        description "This type is used for leafs that reference network node instance.";
-    }
-
-    typedef link-id-ref {
-        type leafref {
-            path "/tp:topology/tp:network-links/tp:network-link/tp:link-id";
-        }
-        description "This type is used for leafs that reference network link instance.";
-    }
-
-    typedef interface-id-ref {
-        type leafref {
-            path "/tp:topology/tp:interfaces/tp:interface/tp:interface-id";
-        }
-    }
-
-    container topology {
-        description "This is the model of abstract topology which contains only Network Nodes and Network Links. Each topology MUST be identified by unique topology-id for reason that the store could contain many topologies.";
-
-        leaf topology-id {
-            type inet:uri;
-            description "It is presumed that datastore will contain many topologies. To distinguish between topologies it is vital to have
-            UNIQUE topology identifier.";
-        }
-
-        leaf cond-leafref {
-            type leafref {
-                path "/tp:topology/tp:network-nodes/tp:network-node[node-id = 'super-node']";
-            }
-        }
-
-        container network-nodes {
-            list network-node {
-                key "node-id";
-
-                leaf node-id {
-                    type inet:uri;
-                    description "The Topology identifier of network-node.";
-                }
-
-                container attributes {
-                    description "Aditional attributes that can Network Node contains.";
-                }
-                description "The list of network nodes defined for topology.";
-            }
-        }
-
-        container interfaces {
-            list interface {
-                key "interface-id";
-
-                leaf interface-id {
-                    type leafref {
-                        path "/if:interfaces/if:interface/if:name";
-                    }
-                }
-
-                leaf-list higher-layer-if {
-                    type leafref {
-                        path "/if:interfaces/if:interface/if:higher-layer-if";
-                    }
-                }
-            }
-        }
-        
-        container network-links {
-            list network-link {
-                key "link-id";
-
-                leaf link-id {
-                    type inet:uri;
-                    description "";
-                }
-
-                container source-node {
-                    leaf id {
-                        type node-id-ref;
-                        description "Source node identifier.";
-                    }
-                }
-
-                container destination-node {
-                    leaf id {
-                        type node-id-ref;
-                        description "Destination node identifier.";
-                    }
-                }
-
-                container tunnels {
-                    list tunnel {
-                        key "tunnel-id";
-
-                        leaf tunnel-id {
-                            type leafref {
-                                path "../../../link-id";
-                            }
-                        }
-                    }
-                }
-
-                leaf interface {
-                    type interface-id-ref;
-                }
-
-                container attributes {
-                    description "Aditional attributes that can Network Link contains.";
-                }
-                description "The Network Link which is defined by Local (Source) and Remote (Destination) Network Nodes. Every link MUST be defined either by identifier and
-                his local and remote Network Nodes (In real applications it is common that many links are originated from one node and end up in same remote node). To ensure that we would always know to distinguish between links, every link SHOULD have identifier.";
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/leafref-test-models/iana-if-type@2012-06-05.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/leafref-test-models/iana-if-type@2012-06-05.yang
deleted file mode 100644 (file)
index a7fa137..0000000
+++ /dev/null
@@ -1,1516 +0,0 @@
-module iana-if-type {
-  namespace "urn:ietf:params:xml:ns:yang:iana-if-type";
-  prefix ianaift;
-
-  organization "IANA";
-  contact
-    "        Internet Assigned Numbers Authority
-
-     Postal: ICANN
-             4676 Admiralty Way, Suite 330
-             Marina del Rey, CA 90292
-
-     Tel:    +1 310 823 9358
-     E-Mail: iana&iana.org";
-  description
-    "This YANG module defines the iana-if-type typedef, which
-     contains YANG definitions for IANA-registered interface types.
-
-     This YANG module is maintained by IANA, and reflects the
-     'ifType definitions' registry.
-
-     The latest revision of this YANG module can be obtained from
-     the IANA web site.
-
-     Copyright (c) 2011 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or
-     without modification, is permitted pursuant to, and subject
-     to the license terms contained in, the Simplified BSD License
-     set forth in Section 4.c of the IETF Trust's Legal Provisions
-     Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC XXXX; see
-     the RFC itself for full legal notices.";
-  // RFC Ed.: replace XXXX with actual RFC number and remove this
-  // note.
-
-  // RFC Ed.: update the date below with the date of RFC publication
-  // and remove this note.
-  revision 2012-06-05 {
-    description
-      "Initial revision.";
-    reference
-      "RFC XXXX: TITLE";
-  }
-
-  typedef iana-if-type {
-    type enumeration {
-      enum "other" {
-        value 1;
-        description
-          "None of the following";
-      }
-      enum "regular1822" {
-        value 2;
-      }
-      enum "hdh1822" {
-        value 3;
-      }
-      enum "ddnX25" {
-        value 4;
-      }
-      enum "rfc877x25" {
-        value 5;
-        reference
-          "RFC 1382 - SNMP MIB Extension for the X.25 Packet Layer";
-      }
-      enum "ethernetCsmacd" {
-        value 6;
-        description
-          "For all ethernet-like interfaces, regardless of speed,
-           as per RFC3635.";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "iso88023Csmacd" {
-        value 7;
-        status deprecated;
-        description
-          "Deprecated via RFC3635.
-           Use ethernetCsmacd(6) instead.";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "iso88024TokenBus" {
-        value 8;
-      }
-      enum "iso88025TokenRing" {
-        value 9;
-      }
-      enum "iso88026Man" {
-        value 10;
-      }
-      enum "starLan" {
-        value 11;
-        status deprecated;
-        description
-          "Deprecated via RFC3635.
-           Use ethernetCsmacd(6) instead.";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "proteon10Mbit" {
-        value 12;
-      }
-      enum "proteon80Mbit" {
-        value 13;
-      }
-      enum "hyperchannel" {
-        value 14;
-      }
-      enum "fddi" {
-        value 15;
-        reference
-          "RFC 1512 - FDDI Management Information Base";
-      }
-      enum "lapb" {
-        value 16;
-        reference
-          "RFC 1381 - SNMP MIB Extension for X.25 LAPB";
-      }
-      enum "sdlc" {
-        value 17;
-      }
-      enum "ds1" {
-        value 18;
-        description
-          "DS1-MIB";
-        reference
-          "RFC 4805 - Definitions of Managed Objects for the
-                      DS1, J1, E1, DS2, and E2 Interface Types";
-      }
-      enum "e1" {
-        value 19;
-        status obsolete;
-        description
-          "Obsolete see DS1-MIB";
-        reference
-          "RFC 4805 - Definitions of Managed Objects for the
-                      DS1, J1, E1, DS2, and E2 Interface Types";
-      }
-      enum "basicISDN" {
-        value 20;
-        description
-          "see also RFC2127";
-      }
-      enum "primaryISDN" {
-        value 21;
-      }
-      enum "propPointToPointSerial" {
-        value 22;
-        description
-          "proprietary serial";
-      }
-      enum "ppp" {
-        value 23;
-      }
-      enum "softwareLoopback" {
-        value 24;
-      }
-      enum "eon" {
-        value 25;
-        description
-          "CLNP over IP";
-      }
-      enum "ethernet3Mbit" {
-        value 26;
-      }
-      enum "nsip" {
-        value 27;
-        description
-          "XNS over IP";
-      }
-      enum "slip" {
-        value 28;
-        description
-          "generic SLIP";
-      }
-      enum "ultra" {
-        value 29;
-        description
-          "ULTRA technologies";
-      }
-      enum "ds3" {
-        value 30;
-        description
-          "DS3-MIB";
-        reference
-          "RFC 3896 - Definitions of Managed Objects for the
-                      DS3/E3 Interface Type";
-      }
-      enum "sip" {
-        value 31;
-        description
-          "SMDS, coffee";
-        reference
-          "RFC 1694 - Definitions of Managed Objects for SMDS
-                      Interfaces using SMIv2";
-      }
-      enum "frameRelay" {
-        value 32;
-        description
-          "DTE only.";
-        reference
-          "RFC 2115 - Management Information Base for Frame Relay
-                      DTEs Using SMIv2";
-      }
-      enum "rs232" {
-        value 33;
-        reference
-          "RFC 1659 - Definitions of Managed Objects for RS-232-like
-                      Hardware Devices using SMIv2";
-      }
-      enum "para" {
-        value 34;
-        description
-          "parallel-port";
-        reference
-          "RFC 1660 - Definitions of Managed Objects for
-                      Parallel-printer-like Hardware Devices using
-                      SMIv2";
-      }
-      enum "arcnet" {
-        value 35;
-        description
-          "arcnet";
-      }
-      enum "arcnetPlus" {
-        value 36;
-        description
-          "arcnet plus";
-      }
-      enum "atm" {
-        value 37;
-        description
-          "ATM cells";
-      }
-      enum "miox25" {
-        value 38;
-        reference
-          "RFC 1461 - SNMP MIB extension for Multiprotocol
-                      Interconnect over X.25";
-      }
-      enum "sonet" {
-        value 39;
-        description
-          "SONET or SDH";
-      }
-      enum "x25ple" {
-        value 40;
-        reference
-          "RFC 2127 - ISDN Management Information Base using SMIv2";
-      }
-      enum "iso88022llc" {
-        value 41;
-      }
-      enum "localTalk" {
-        value 42;
-      }
-      enum "smdsDxi" {
-        value 43;
-      }
-      enum "frameRelayService" {
-        value 44;
-        description
-          "FRNETSERV-MIB";
-        reference
-          "RFC 2954 - Definitions of Managed Objects for Frame
-                      Relay Service";
-      }
-      enum "v35" {
-        value 45;
-      }
-      enum "hssi" {
-        value 46;
-      }
-      enum "hippi" {
-        value 47;
-      }
-      enum "modem" {
-        value 48;
-        description
-          "Generic modem";
-      }
-      enum "aal5" {
-        value 49;
-        description
-          "AAL5 over ATM";
-      }
-      enum "sonetPath" {
-        value 50;
-      }
-      enum "sonetVT" {
-        value 51;
-      }
-      enum "smdsIcip" {
-        value 52;
-        description
-          "SMDS InterCarrier Interface";
-      }
-      enum "propVirtual" {
-        value 53;
-        description
-          "proprietary virtual/internal";
-        reference
-          "RFC 2863 - The Interfaces Group MIB";
-      }
-      enum "propMultiplexor" {
-        value 54;
-        description
-          "proprietary multiplexing";
-        reference
-          "RFC 2863 - The Interfaces Group MIB";
-      }
-      enum "ieee80212" {
-        value 55;
-        description
-          "100BaseVG";
-      }
-      enum "fibreChannel" {
-        value 56;
-        description
-          "Fibre Channel";
-      }
-      enum "hippiInterface" {
-        value 57;
-        description
-          "HIPPI interfaces";
-      }
-      enum "frameRelayInterconnect" {
-        value 58;
-        status obsolete;
-        description
-          "Obsolete use either
-           frameRelay(32) or frameRelayService(44).";
-      }
-      enum "aflane8023" {
-        value 59;
-        description
-          "ATM Emulated LAN for 802.3";
-      }
-      enum "aflane8025" {
-        value 60;
-        description
-          "ATM Emulated LAN for 802.5";
-      }
-      enum "cctEmul" {
-        value 61;
-        description
-         "ATM Emulated circuit";
-      }
-      enum "fastEther" {
-        value 62;
-        status deprecated;
-        description
-          "Obsoleted via RFC3635.
-          ethernetCsmacd(6) should be used instead";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "isdn" {
-        value 63;
-        description
-          "ISDN and X.25";
-        reference
-          "RFC 1356 - Multiprotocol Interconnect on X.25 and ISDN
-                      in the Packet Mode";
-      }
-      enum "v11" {
-        value 64;
-        description
-         "CCITT V.11/X.21";
-      }
-      enum "v36" {
-        value 65;
-        description
-          "CCITT V.36";
-      }
-      enum "g703at64k" {
-        value 66;
-        description
-          "CCITT G703 at 64Kbps";
-      }
-      enum "g703at2mb" {
-        value 67;
-        status obsolete;
-        description
-          "Obsolete see DS1-MIB";
-      }
-      enum "qllc" {
-        value 68;
-        description
-          "SNA QLLC";
-      }
-      enum "fastEtherFX" {
-        value 69;
-        status deprecated;
-        description
-          "Obsoleted via RFC3635
-          ethernetCsmacd(6) should be used instead";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "channel" {
-        value 70;
-        description
-          "channel";
-      }
-      enum "ieee80211" {
-        value 71;
-        description
-          "radio spread spectrum";
-      }
-      enum "ibm370parChan" {
-        value 72;
-        description
-          "IBM System 360/370 OEMI Channel";
-      }
-      enum "escon" {
-        value 73;
-        description
-          "IBM Enterprise Systems Connection";
-      }
-      enum "dlsw" {
-        value 74;
-        description
-          "Data Link Switching";
-      }
-      enum "isdns" {
-        value 75;
-        description
-          "ISDN S/T interface";
-      }
-      enum "isdnu" {
-        value 76;
-        description
-          "ISDN U interface";
-      }
-      enum "lapd" {
-        value 77;
-        description
-          "Link Access Protocol D";
-      }
-      enum "ipSwitch" {
-        value 78;
-        description
-          "IP Switching Objects";
-      }
-      enum "rsrb" {
-        value 79;
-        description
-          "Remote Source Route Bridging";
-      }
-      enum "atmLogical" {
-        value 80;
-        description
-          "ATM Logical Port";
-        reference
-          "RFC 3606 - Definitions of Supplemental Managed Objects
-                      for ATM Interface";
-      }
-      enum "ds0" {
-        value 81;
-        description
-          "Digital Signal Level 0";
-        reference
-          "RFC 2494 - Definitions of Managed Objects for the DS0
-                      and DS0 Bundle Interface Type";
-      }
-      enum "ds0Bundle" {
-        value 82;
-        description
-          "group of ds0s on the same ds1";
-        reference
-          "RFC 2494 - Definitions of Managed Objects for the DS0
-                      and DS0 Bundle Interface Type";
-      }
-      enum "bsc" {
-        value 83;
-        description
-          "Bisynchronous Protocol";
-      }
-      enum "async" {
-        value 84;
-        description
-          "Asynchronous Protocol";
-      }
-      enum "cnr" {
-        value 85;
-        description
-          "Combat Net Radio";
-      }
-      enum "iso88025Dtr" {
-        value 86;
-        description
-          "ISO 802.5r DTR";
-      }
-      enum "eplrs" {
-        value 87;
-        description
-          "Ext Pos Loc Report Sys";
-      }
-      enum "arap" {
-        value 88;
-        description
-          "Appletalk Remote Access Protocol";
-      }
-      enum "propCnls" {
-        value 89;
-        description
-          "Proprietary Connectionless Protocol";
-      }
-      enum "hostPad" {
-        value 90;
-        description
-          "CCITT-ITU X.29 PAD Protocol";
-      }
-      enum "termPad" {
-        value 91;
-        description
-          "CCITT-ITU X.3 PAD Facility";
-      }
-      enum "frameRelayMPI" {
-        value 92;
-        description
-          "Multiproto Interconnect over FR";
-      }
-      enum "x213" {
-        value 93;
-        description
-          "CCITT-ITU X213";
-      }
-      enum "adsl" {
-        value 94;
-        description
-          "Asymmetric Digital Subscriber Loop";
-      }
-      enum "radsl" {
-        value 95;
-        description
-          "Rate-Adapt. Digital Subscriber Loop";
-      }
-      enum "sdsl" {
-        value 96;
-        description
-          "Symmetric Digital Subscriber Loop";
-      }
-      enum "vdsl" {
-        value 97;
-        description
-          "Very H-Speed Digital Subscrib. Loop";
-      }
-      enum "iso88025CRFPInt" {
-        value 98;
-        description
-          "ISO 802.5 CRFP";
-      }
-      enum "myrinet" {
-        value 99;
-        description
-          "Myricom Myrinet";
-      }
-      enum "voiceEM" {
-        value 100;
-        description
-          "voice recEive and transMit";
-      }
-      enum "voiceFXO" {
-        value 101;
-        description
-          "voice Foreign Exchange Office";
-      }
-      enum "voiceFXS" {
-        value 102;
-        description
-          "voice Foreign Exchange Station";
-      }
-      enum "voiceEncap" {
-        value 103;
-        description
-          "voice encapsulation";
-      }
-      enum "voiceOverIp" {
-        value 104;
-        description
-          "voice over IP encapsulation";
-      }
-      enum "atmDxi" {
-        value 105;
-        description
-          "ATM DXI";
-      }
-      enum "atmFuni" {
-        value 106;
-        description
-          "ATM FUNI";
-      }
-      enum "atmIma" {
-        value 107;
-        description
-          "ATM IMA";
-      }
-      enum "pppMultilinkBundle" {
-        value 108;
-        description
-          "PPP Multilink Bundle";
-      }
-      enum "ipOverCdlc" {
-        value 109;
-        description
-          "IBM ipOverCdlc";
-      }
-      enum "ipOverClaw" {
-        value 110;
-        description
-          "IBM Common Link Access to Workstn";
-      }
-      enum "stackToStack" {
-        value 111;
-        description
-          "IBM stackToStack";
-      }
-      enum "virtualIpAddress" {
-        value 112;
-        description
-          "IBM VIPA";
-      }
-      enum "mpc" {
-        value 113;
-        description
-          "IBM multi-protocol channel support";
-      }
-      enum "ipOverAtm" {
-        value 114;
-        description
-          "IBM ipOverAtm";
-        reference
-          "RFC 2320 - Definitions of Managed Objects for Classical IP
-                      and ARP Over ATM Using SMIv2 (IPOA-MIB)";
-      }
-      enum "iso88025Fiber" {
-        value 115;
-        description
-          "ISO 802.5j Fiber Token Ring";
-      }
-      enum "tdlc" {
-        value 116;
-        description
-          "IBM twinaxial data link control";
-      }
-      enum "gigabitEthernet" {
-        value 117;
-        status deprecated;
-        description
-          "Obsoleted via RFC3635
-           ethernetCsmacd(6) should be used instead";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "hdlc" {
-        value 118;
-        description
-          "HDLC";
-      }
-      enum "lapf" {
-        value 119;
-        description
-          "LAP F";
-      }
-      enum "v37" {
-        value 120;
-        description
-          "V.37";
-      }
-      enum "x25mlp" {
-        value 121;
-        description
-          "Multi-Link Protocol";
-      }
-      enum "x25huntGroup" {
-        value 122;
-        description
-          "X25 Hunt Group";
-      }
-      enum "transpHdlc" {
-        value 123;
-        description
-          "Transp HDLC";
-      }
-      enum "interleave" {
-        value 124;
-        description
-          "Interleave channel";
-      }
-      enum "fast" {
-        value 125;
-        description
-          "Fast channel";
-      }
-      enum "ip" {
-        value 126;
-        description
-          "IP (for APPN HPR in IP networks)";
-      }
-      enum "docsCableMaclayer" {
-        value 127;
-        description
-          "CATV Mac Layer";
-      }
-      enum "docsCableDownstream" {
-        value 128;
-        description
-          "CATV Downstream interface";
-      }
-      enum "docsCableUpstream" {
-        value 129;
-        description
-          "CATV Upstream interface";
-      }
-      enum "a12MppSwitch" {
-        value 130;
-        description
-          "Avalon Parallel Processor";
-      }
-      enum "tunnel" {
-        value 131;
-        description
-          "Encapsulation interface";
-      }
-      enum "coffee" {
-        value 132;
-        description
-          "coffee pot";
-        reference
-          "RFC 2325 - Coffee MIB";
-      }
-      enum "ces" {
-        value 133;
-        description
-          "Circuit Emulation Service";
-      }
-      enum "atmSubInterface" {
-        value 134;
-        description
-          "ATM Sub Interface";
-      }
-      enum "l2vlan" {
-        value 135;
-        description
-          "Layer 2 Virtual LAN using 802.1Q";
-      }
-      enum "l3ipvlan" {
-        value 136;
-        description
-          "Layer 3 Virtual LAN using IP";
-      }
-      enum "l3ipxvlan" {
-        value 137;
-        description
-          "Layer 3 Virtual LAN using IPX";
-      }
-      enum "digitalPowerline" {
-        value 138;
-        description
-          "IP over Power Lines";
-      }
-      enum "mediaMailOverIp" {
-        value 139;
-        description
-          "Multimedia Mail over IP";
-      }
-      enum "dtm" {
-        value 140;
-        description
-          "Dynamic syncronous Transfer Mode";
-      }
-      enum "dcn" {
-        value 141;
-        description
-          "Data Communications Network";
-      }
-      enum "ipForward" {
-        value 142;
-        description
-          "IP Forwarding Interface";
-      }
-      enum "msdsl" {
-        value 143;
-        description
-          "Multi-rate Symmetric DSL";
-      }
-      enum "ieee1394" {
-        value 144;
-        description
-          "IEEE1394 High Performance Serial Bus";
-      }
-      enum "if-gsn" {
-        value 145;
-        description
-          "HIPPI-6400";
-      }
-      enum "dvbRccMacLayer" {
-        value 146;
-        description
-          "DVB-RCC MAC Layer";
-      }
-      enum "dvbRccDownstream" {
-        value 147;
-        description
-          "DVB-RCC Downstream Channel";
-      }
-      enum "dvbRccUpstream" {
-        value 148;
-        description
-          "DVB-RCC Upstream Channel";
-      }
-      enum "atmVirtual" {
-        value 149;
-        description
-          "ATM Virtual Interface";
-      }
-      enum "mplsTunnel" {
-        value 150;
-        description
-          "MPLS Tunnel Virtual Interface";
-      }
-      enum "srp" {
-        value 151;
-        description
-          "Spatial Reuse Protocol       ";
-      }
-      enum "voiceOverAtm" {
-        value 152;
-        description
-          "Voice Over ATM";
-      }
-      enum "voiceOverFrameRelay" {
-        value 153;
-        description
-          "Voice Over Frame Relay";
-      }
-      enum "idsl" {
-        value 154;
-        description
-          "Digital Subscriber Loop over ISDN";
-      }
-      enum "compositeLink" {
-        value 155;
-        description
-          "Avici Composite Link Interface";
-      }
-      enum "ss7SigLink" {
-        value 156;
-        description
-          "SS7 Signaling Link";
-      }
-      enum "propWirelessP2P" {
-        value 157;
-        description
-          "Prop. P2P wireless interface";
-      }
-      enum "frForward" {
-        value 158;
-        description
-          "Frame Forward Interface";
-      }
-      enum "rfc1483" {
-        value 159;
-        description
-          "Multiprotocol over ATM AAL5";
-        reference
-          "RFC 1483 - Multiprotocol Encapsulation over ATM
-                      Adaptation Layer 5";
-      }
-      enum "usb" {
-        value 160;
-        description
-          "USB Interface";
-      }
-      enum "ieee8023adLag" {
-        value 161;
-        description
-          "IEEE 802.3ad Link Aggregate";
-      }
-      enum "bgppolicyaccounting" {
-        value 162;
-        description
-          "BGP Policy Accounting";
-      }
-      enum "frf16MfrBundle" {
-        value 163;
-        description
-          "FRF .16 Multilink Frame Relay";
-      }
-      enum "h323Gatekeeper" {
-        value 164;
-        description
-          "H323 Gatekeeper";
-      }
-      enum "h323Proxy" {
-        value 165;
-        description
-          "H323 Voice and Video Proxy";
-      }
-      enum "mpls" {
-        value 166;
-        description
-          "MPLS";
-      }
-      enum "mfSigLink" {
-        value 167;
-        description
-          "Multi-frequency signaling link";
-      }
-      enum "hdsl2" {
-        value 168;
-        description
-          "High Bit-Rate DSL - 2nd generation";
-      }
-      enum "shdsl" {
-        value 169;
-        description
-          "Multirate HDSL2";
-      }
-      enum "ds1FDL" {
-        value 170;
-        description
-          "Facility Data Link 4Kbps on a DS1";
-      }
-      enum "pos" {
-        value 171;
-        description
-          "Packet over SONET/SDH Interface";
-      }
-      enum "dvbAsiIn" {
-        value 172;
-        description
-          "DVB-ASI Input";
-      }
-      enum "dvbAsiOut" {
-        value 173;
-        description
-          "DVB-ASI Output";
-      }
-      enum "plc" {
-        value 174;
-        description
-          "Power Line Communtications";
-      }
-      enum "nfas" {
-        value 175;
-        description
-          "Non Facility Associated Signaling";
-      }
-      enum "tr008" {
-        value 176;
-        description
-          "TR008";
-      }
-      enum "gr303RDT" {
-        value 177;
-        description
-          "Remote Digital Terminal";
-      }
-      enum "gr303IDT" {
-        value 178;
-        description
-          "Integrated Digital Terminal";
-      }
-      enum "isup" {
-        value 179;
-        description
-          "ISUP";
-      }
-      enum "propDocsWirelessMaclayer" {
-        value 180;
-        description
-          "Cisco proprietary Maclayer";
-      }
-      enum "propDocsWirelessDownstream" {
-        value 181;
-        description
-          "Cisco proprietary Downstream";
-      }
-      enum "propDocsWirelessUpstream" {
-        value 182;
-        description
-          "Cisco proprietary Upstream";
-      }
-      enum "hiperlan2" {
-        value 183;
-        description
-          "HIPERLAN Type 2 Radio Interface";
-      }
-      enum "propBWAp2Mp" {
-        value 184;
-        description
-          "PropBroadbandWirelessAccesspt2multipt use of this value
-           for IEEE 802.16 WMAN interfaces as per IEEE Std 802.16f
-           is deprecated and ieee80216WMAN(237) should be used
-           instead.";
-      }
-      enum "sonetOverheadChannel" {
-        value 185;
-        description
-          "SONET Overhead Channel";
-      }
-      enum "digitalWrapperOverheadChannel" {
-        value 186;
-        description
-          "Digital Wrapper";
-      }
-      enum "aal2" {
-        value 187;
-        description
-          "ATM adaptation layer 2";
-      }
-      enum "radioMAC" {
-        value 188;
-        description
-          "MAC layer over radio links";
-      }
-      enum "atmRadio" {
-        value 189;
-        description
-          "ATM over radio links";
-      }
-      enum "imt" {
-        value 190;
-        description
-          "Inter Machine Trunks";
-      }
-      enum "mvl" {
-        value 191;
-        description
-          "Multiple Virtual Lines DSL";
-      }
-      enum "reachDSL" {
-        value 192;
-        description
-          "Long Reach DSL";
-      }
-      enum "frDlciEndPt" {
-        value 193;
-        description
-          "Frame Relay DLCI End Point";
-      }
-      enum "atmVciEndPt" {
-        value 194;
-        description
-          "ATM VCI End Point";
-      }
-      enum "opticalChannel" {
-        value 195;
-        description
-          "Optical Channel";
-      }
-      enum "opticalTransport" {
-        value 196;
-        description
-          "Optical Transport";
-      }
-      enum "propAtm" {
-        value 197;
-        description
-          "Proprietary ATM";
-      }
-      enum "voiceOverCable" {
-        value 198;
-        description
-          "Voice Over Cable Interface";
-      }
-      enum "infiniband" {
-        value 199;
-        description
-          "Infiniband";
-      }
-      enum "teLink" {
-        value 200;
-        description
-          "TE Link";
-      }
-      enum "q2931" {
-        value 201;
-        description
-          "Q.2931";
-      }
-      enum "virtualTg" {
-        value 202;
-        description
-          "Virtual Trunk Group";
-      }
-      enum "sipTg" {
-        value 203;
-        description
-          "SIP Trunk Group";
-      }
-      enum "sipSig" {
-        value 204;
-        description
-          "SIP Signaling";
-      }
-      enum "docsCableUpstreamChannel" {
-        value 205;
-        description
-          "CATV Upstream Channel";
-      }
-      enum "econet" {
-        value 206;
-        description
-          "Acorn Econet";
-      }
-      enum "pon155" {
-        value 207;
-        description
-          "FSAN 155Mb Symetrical PON interface";
-      }
-      enum "pon622" {
-        value 208;
-        description
-          "FSAN622Mb Symetrical PON interface";
-      }
-      enum "bridge" {
-        value 209;
-        description
-          "Transparent bridge interface";
-      }
-      enum "linegroup" {
-        value 210;
-        description
-          "Interface common to multiple lines";
-      }
-      enum "voiceEMFGD" {
-        value 211;
-        description
-          "voice E&M Feature Group D";
-      }
-      enum "voiceFGDEANA" {
-        value 212;
-        description
-          "voice FGD Exchange Access North American";
-      }
-      enum "voiceDID" {
-        value 213;
-        description
-          "voice Direct Inward Dialing";
-      }
-      enum "mpegTransport" {
-        value 214;
-        description
-          "MPEG transport interface";
-      }
-      enum "sixToFour" {
-        value 215;
-        status deprecated;
-        description
-          "6to4 interface (DEPRECATED)";
-        reference
-          "RFC 4087 - IP Tunnel MIB";
-      }
-      enum "gtp" {
-        value 216;
-        description
-          "GTP (GPRS Tunneling Protocol)";
-      }
-      enum "pdnEtherLoop1" {
-        value 217;
-        description
-          "Paradyne EtherLoop 1";
-      }
-      enum "pdnEtherLoop2" {
-        value 218;
-        description
-          "Paradyne EtherLoop 2";
-      }
-      enum "opticalChannelGroup" {
-        value 219;
-        description
-          "Optical Channel Group";
-      }
-      enum "homepna" {
-        value 220;
-        description
-          "HomePNA ITU-T G.989";
-      }
-      enum "gfp" {
-        value 221;
-        description
-          "Generic Framing Procedure (GFP)";
-      }
-      enum "ciscoISLvlan" {
-        value 222;
-        description
-          "Layer 2 Virtual LAN using Cisco ISL";
-      }
-      enum "actelisMetaLOOP" {
-        value 223;
-        description
-          "Acteleis proprietary MetaLOOP High Speed Link";
-      }
-      enum "fcipLink" {
-        value 224;
-        description
-          "FCIP Link";
-      }
-      enum "rpr" {
-        value 225;
-        description
-          "Resilient Packet Ring Interface Type";
-      }
-      enum "qam" {
-        value 226;
-        description
-          "RF Qam Interface";
-      }
-      enum "lmp" {
-        value 227;
-        description
-          "Link Management Protocol";
-        reference
-          "RFC 4327 - Link Management Protocol (LMP) Management
-                      Information Base (MIB)";
-      }
-      enum "cblVectaStar" {
-        value 228;
-        description
-          "Cambridge Broadband Networks Limited VectaStar";
-      }
-      enum "docsCableMCmtsDownstream" {
-        value 229;
-        description
-          "CATV Modular CMTS Downstream Interface";
-      }
-      enum "adsl2" {
-        value 230;
-        status deprecated;
-        description
-          "Asymmetric Digital Subscriber Loop Version 2
-           (DEPRECATED/OBSOLETED - please use adsl2plus(238)
-           instead)";
-        reference
-          "RFC 4706 - Definitions of Managed Objects for Asymmetric
-                      Digital Subscriber Line 2 (ADSL2)";
-      }
-      enum "macSecControlledIF" {
-        value 231;
-        description
-          "MACSecControlled";
-      }
-      enum "macSecUncontrolledIF" {
-        value 232;
-        description
-          "MACSecUncontrolled";
-      }
-      enum "aviciOpticalEther" {
-        value 233;
-        description
-         "Avici Optical Ethernet Aggregate";
-      }
-      enum "atmbond" {
-        value 234;
-        description
-          "atmbond";
-      }
-      enum "voiceFGDOS" {
-        value 235;
-        description
-          "voice FGD Operator Services";
-      }
-      enum "mocaVersion1" {
-        value 236;
-        description
-          "MultiMedia over Coax Alliance (MoCA) Interface
-           as documented in information provided privately to IANA";
-      }
-      enum "ieee80216WMAN" {
-        value 237;
-        description
-          "IEEE 802.16 WMAN interface";
-      }
-      enum "adsl2plus" {
-        value 238;
-        description
-          "Asymmetric Digital Subscriber Loop Version 2,
-           Version 2 Plus and all variants";
-      }
-      enum "dvbRcsMacLayer" {
-        value 239;
-        description
-          "DVB-RCS MAC Layer";
-        reference
-          "RFC 5728 - The SatLabs Group DVB-RCS MIB";
-      }
-      enum "dvbTdm" {
-        value 240;
-        description
-          "DVB Satellite TDM";
-        reference
-          "RFC 5728 - The SatLabs Group DVB-RCS MIB";
-      }
-      enum "dvbRcsTdma" {
-        value 241;
-        description
-          "DVB-RCS TDMA";
-        reference
-          "RFC 5728 - The SatLabs Group DVB-RCS MIB";
-      }
-      enum "x86Laps" {
-        value 242;
-        description
-          "LAPS based on ITU-T X.86/Y.1323";
-      }
-      enum "wwanPP" {
-        value 243;
-        description
-          "3GPP WWAN";
-      }
-      enum "wwanPP2" {
-        value 244;
-        description
-          "3GPP2 WWAN";
-      }
-      enum "voiceEBS" {
-        value 245;
-        description
-          "voice P-phone EBS physical interface";
-      }
-      enum "ifPwType" {
-        value 246;
-        description
-          "Pseudowire interface type";
-        reference
-          "RFC 5601 - Pseudowire (PW) Management Information Base";
-      }
-      enum "ilan" {
-        value 247;
-        description
-          "Internal LAN on a bridge per IEEE 802.1ap";
-      }
-      enum "pip" {
-        value 248;
-        description
-          "Provider Instance Port on a bridge per IEEE 802.1ah PBB";
-      }
-      enum "aluELP" {
-        value 249;
-        description
-          "Alcatel-Lucent Ethernet Link Protection";
-      }
-      enum "gpon" {
-        value 250;
-        description
-          "Gigabit-capable passive optical networks (G-PON) as per
-           ITU-T G.948";
-      }
-      enum "vdsl2" {
-        value 251;
-        description
-          "Very high speed digital subscriber line Version 2
-           (as per ITU-T Recommendation G.993.2)";
-        reference
-          "RFC 5650 - Definitions of Managed Objects for Very High
-                      Speed Digital Subscriber Line 2 (VDSL2)";
-      }
-      enum "capwapDot11Profile" {
-        value 252;
-        description
-          "WLAN Profile Interface";
-        reference
-          "RFC 5834 - Control and Provisioning of Wireless Access
-                      Points (CAPWAP) Protocol Binding MIB for
-                      IEEE 802.11";
-      }
-      enum "capwapDot11Bss" {
-        value 253;
-        description
-          "WLAN BSS Interface";
-        reference
-          "RFC 5834 - Control and Provisioning of Wireless Access
-                      Points (CAPWAP) Protocol Binding MIB for
-                      IEEE 802.11";
-      }
-      enum "capwapWtpVirtualRadio" {
-        value 254;
-        description
-          "WTP Virtual Radio Interface";
-        reference
-          "RFC 5833 - Control and Provisioning of Wireless Access
-                      Points (CAPWAP) Protocol Base MIB";
-      }
-      enum "bits" {
-        value 255;
-        description
-          "bitsport";
-      }
-      enum "docsCableUpstreamRfPort" {
-        value 256;
-        description
-          "DOCSIS CATV Upstream RF Port";
-      }
-      enum "cableDownstreamRfPort" {
-        value 257;
-        description
-          "CATV downstream RF port";
-      }
-      enum "vmwareVirtualNic" {
-        value 258;
-        description
-          "VMware Virtual Network Interface";
-      }
-      enum "ieee802154" {
-        value 259;
-        description
-          "IEEE 802.15.4 WPAN interface";
-        reference
-          "IEEE 802.15.4-2006";
-      }
-      enum "otnOdu" {
-        value 260;
-        description
-          "OTN Optical Data Unit";
-      }
-      enum "otnOtu" {
-        value 261;
-        description
-          "OTN Optical channel Transport Unit";
-      }
-      enum "ifVfiType" {
-        value 262;
-        description
-          "VPLS Forwarding Instance Interface Type";
-      }
-      enum "g9981" {
-        value 263;
-        description
-          "G.998.1 bonded interface";
-      }
-      enum "g9982" {
-        value 264;
-        description
-          "G.998.2 bonded interface";
-      }
-      enum "g9983" {
-        value 265;
-        description
-          "G.998.3 bonded interface";
-      }
-      enum "aluEpon" {
-        value 266;
-        description
-          "Ethernet Passive Optical Networks (E-PON)";
-      }
-      enum "aluEponOnu" {
-        value 267;
-        description
-          "EPON Optical Network Unit";
-      }
-      enum "aluEponPhysicalUni" {
-        value 268;
-        description
-          "EPON physical User to Network interface";
-      }
-      enum "aluEponLogicalLink" {
-        value 269;
-        description
-          "The emulation of a point-to-point link over the EPON
-           layer";
-      }
-      enum "aluGponOnu" {
-        value 270;
-        description
-          "GPON Optical Network Unit";
-        reference
-          "ITU-T G.984.2";
-      }
-      enum "aluGponPhysicalUni" {
-        value 271;
-        description
-          "GPON physical User to Network interface";
-        reference
-          "ITU-T G.984.2";
-      }
-      enum "vmwareNicTeam" {
-        value 272;
-        description
-          "VMware NIC Team";
-      }
-    }
-    description
-      "This data type is used as the syntax of the 'type'
-       leaf in the 'interface' list in the YANG module
-       ietf-interface.
-
-       The definition of this typedef with the
-       addition of newly assigned values is published
-       periodically by the IANA, in either the Assigned
-       Numbers RFC, or some derivative of it specific to
-       Internet Network Management number assignments.  (The
-       latest arrangements can be obtained by contacting the
-       IANA.)
-
-       Requests for new values should be made to IANA via
-       email (iana&iana.org).";
-    reference
-      "ifType definitions registry.
-       <http://www.iana.org/assignments/smi-numbers>";
-  }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/leafref-test-models/ietf-inet-types@2010-09-24.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/leafref-test-models/ietf-inet-types@2010-09-24.yang
deleted file mode 100644 (file)
index 6a6c748..0000000
+++ /dev/null
@@ -1,418 +0,0 @@
- module ietf-inet-types {
-
-   namespace "urn:ietf:params:xml:ns:yang:ietf-inet-types";
-   prefix "inet";
-
-   organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-   contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Partain
-               <mailto:david.partain@ericsson.com>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     Editor:   Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>";
-
-   description
-    "This module contains a collection of generally useful derived
-     YANG data types for Internet addresses and related things.
-
-     Copyright (c) 2010 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or without
-     modification, is permitted pursuant to, and subject to the license
-     terms contained in, the Simplified BSD License set forth in Section
-     4.c of the IETF Trust's Legal Provisions Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC 6021; see
-     the RFC itself for full legal notices.";
-
-   revision 2010-09-24 {
-     description
-      "Initial revision.";
-     reference
-      "RFC 6021: Common YANG Data Types";
-   }
-
-   /*** collection of protocol field related types ***/
-
-   typedef ip-version {
-     type enumeration {
-       enum unknown {
-         value "0";
-         description
-          "An unknown or unspecified version of the Internet protocol.";
-       }
-       enum ipv4 {
-         value "1";
-         description
-          "The IPv4 protocol as defined in RFC 791.";
-       }
-       enum ipv6 {
-         value "2";
-         description
-          "The IPv6 protocol as defined in RFC 2460.";
-       }
-     }
-     description
-      "This value represents the version of the IP protocol.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetVersion textual convention of the SMIv2.";
-     reference
-      "RFC  791: Internet Protocol
-       RFC 2460: Internet Protocol, Version 6 (IPv6) Specification
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   typedef dscp {
-     type uint8 {
-       range "0..63";
-     }
-     description
-      "The dscp type represents a Differentiated Services Code-Point
-       that may be used for marking packets in a traffic stream.
-
-       In the value set and its semantics, this type is equivalent
-       to the Dscp textual convention of the SMIv2.";
-     reference
-      "RFC 3289: Management Information Base for the Differentiated
-                 Services Architecture
-       RFC 2474: Definition of the Differentiated Services Field
-                 (DS Field) in the IPv4 and IPv6 Headers
-       RFC 2780: IANA Allocation Guidelines For Values In
-                 the Internet Protocol and Related Headers";
-   }
-
-   typedef ipv6-flow-label {
-     type uint32 {
-       range "0..1048575";
-     }
-     description
-      "The flow-label type represents flow identifier or Flow Label
-       in an IPv6 packet header that may be used to discriminate
-       traffic flows.
-
-       In the value set and its semantics, this type is equivalent
-       to the IPv6FlowLabel textual convention of the SMIv2.";
-     reference
-      "RFC 3595: Textual Conventions for IPv6 Flow Label
-       RFC 2460: Internet Protocol, Version 6 (IPv6) Specification";
-   }
-
-   typedef port-number {
-     type uint16 {
-       range "0..65535";
-     }
-     description
-      "The port-number type represents a 16-bit port number of an
-       Internet transport layer protocol such as UDP, TCP, DCCP, or
-       SCTP.  Port numbers are assigned by IANA.  A current list of
-       all assignments is available from <http://www.iana.org/>.
-
-       Note that the port number value zero is reserved by IANA.  In
-       situations where the value zero does not make sense, it can
-       be excluded by subtyping the port-number type.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetPortNumber textual convention of the SMIv2.";
-     reference
-      "RFC  768: User Datagram Protocol
-       RFC  793: Transmission Control Protocol
-       RFC 4960: Stream Control Transmission Protocol
-       RFC 4340: Datagram Congestion Control Protocol (DCCP)
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   /*** collection of autonomous system related types ***/
-
-   typedef as-number {
-     type uint32;
-     description
-      "The as-number type represents autonomous system numbers
-       which identify an Autonomous System (AS).  An AS is a set
-       of routers under a single technical administration, using
-       an interior gateway protocol and common metrics to route
-       packets within the AS, and using an exterior gateway
-       protocol to route packets to other ASs'.  IANA maintains
-       the AS number space and has delegated large parts to the
-       regional registries.
-
-       Autonomous system numbers were originally limited to 16
-       bits.  BGP extensions have enlarged the autonomous system
-       number space to 32 bits.  This type therefore uses an uint32
-       base type without a range restriction in order to support
-       a larger autonomous system number space.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetAutonomousSystemNumber textual convention of
-       the SMIv2.";
-     reference
-      "RFC 1930: Guidelines for creation, selection, and registration
-                 of an Autonomous System (AS)
-       RFC 4271: A Border Gateway Protocol 4 (BGP-4)
-       RFC 4893: BGP Support for Four-octet AS Number Space
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   /*** collection of IP address and hostname related types ***/
-
-   typedef ip-address {
-     type union {
-       type inet:ipv4-address;
-       type inet:ipv6-address;
-     }
-     description
-      "The ip-address type represents an IP address and is IP
-       version neutral.  The format of the textual representations
-       implies the IP version.";
-   }
-
-   typedef ipv4-address {
-     type string {
-       pattern
-         '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
-       +  '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
-       + '(%[\p{N}\p{L}]+)?';
-     }
-     description
-       "The ipv4-address type represents an IPv4 address in
-        dotted-quad notation.  The IPv4 address may include a zone
-        index, separated by a % sign.
-
-        The zone index is used to disambiguate identical address
-        values.  For link-local addresses, the zone index will
-        typically be the interface index number or the name of an
-        interface.  If the zone index is not present, the default
-        zone of the device will be used.
-
-        The canonical format for the zone index is the numerical
-        format";
-   }
-
-   typedef ipv6-address {
-     type string {
-       pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
-             + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
-             + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
-             + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
-             + '(%[\p{N}\p{L}]+)?';
-       pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
-             + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
-             + '(%.+)?';
-     }
-     description
-      "The ipv6-address type represents an IPv6 address in full,
-       mixed, shortened, and shortened-mixed notation.  The IPv6
-       address may include a zone index, separated by a % sign.
-
-       The zone index is used to disambiguate identical address
-       values.  For link-local addresses, the zone index will
-       typically be the interface index number or the name of an
-       interface.  If the zone index is not present, the default
-       zone of the device will be used.
-
-       The canonical format of IPv6 addresses uses the compressed
-       format described in RFC 4291, Section 2.2, item 2 with the
-       following additional rules: the :: substitution must be
-       applied to the longest sequence of all-zero 16-bit chunks
-       in an IPv6 address.  If there is a tie, the first sequence
-       of all-zero 16-bit chunks is replaced by ::.  Single
-       all-zero 16-bit chunks are not compressed.  The canonical
-       format uses lowercase characters and leading zeros are
-       not allowed.  The canonical format for the zone index is
-       the numerical format as described in RFC 4007, Section
-       11.2.";
-     reference
-      "RFC 4291: IP Version 6 Addressing Architecture
-       RFC 4007: IPv6 Scoped Address Architecture
-       RFC 5952: A Recommendation for IPv6 Address Text Representation";
-   }
-
-   typedef ip-prefix {
-     type union {
-       type inet:ipv4-prefix;
-       type inet:ipv6-prefix;
-     }
-     description
-      "The ip-prefix type represents an IP prefix and is IP
-       version neutral.  The format of the textual representations
-       implies the IP version.";
-   }
-
-   typedef ipv4-prefix {
-     type string {
-       pattern
-          '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
-        +  '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
-        + '/(([0-9])|([1-2][0-9])|(3[0-2]))';
-     }
-     description
-      "The ipv4-prefix type represents an IPv4 address prefix.
-       The prefix length is given by the number following the
-       slash character and must be less than or equal to 32.
-
-       A prefix length value of n corresponds to an IP address
-       mask that has n contiguous 1-bits from the most
-       significant bit (MSB) and all other bits set to 0.
-
-       The canonical format of an IPv4 prefix has all bits of
-       the IPv4 address set to zero that are not part of the
-       IPv4 prefix.";
-   }
-
-   typedef ipv6-prefix {
-     type string {
-       pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
-             + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
-             + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
-             + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
-             + '(/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))';
-       pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
-             + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
-             + '(/.+)';
-     }
-     description
-      "The ipv6-prefix type represents an IPv6 address prefix.
-       The prefix length is given by the number following the
-       slash character and must be less than or equal 128.
-
-       A prefix length value of n corresponds to an IP address
-       mask that has n contiguous 1-bits from the most
-       significant bit (MSB) and all other bits set to 0.
-
-       The IPv6 address should have all bits that do not belong
-       to the prefix set to zero.
-
-       The canonical format of an IPv6 prefix has all bits of
-       the IPv6 address set to zero that are not part of the
-       IPv6 prefix.  Furthermore, IPv6 address is represented
-       in the compressed format described in RFC 4291, Section
-       2.2, item 2 with the following additional rules: the ::
-       substitution must be applied to the longest sequence of
-       all-zero 16-bit chunks in an IPv6 address.  If there is
-       a tie, the first sequence of all-zero 16-bit chunks is
-       replaced by ::.  Single all-zero 16-bit chunks are not
-       compressed.  The canonical format uses lowercase
-       characters and leading zeros are not allowed.";
-     reference
-      "RFC 4291: IP Version 6 Addressing Architecture";
-   }
-
-   /*** collection of domain name and URI types ***/
-
-   typedef domain-name {
-     type string {
-       pattern '((([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.)*'
-            +  '([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.?)'
-            +  '|\.';
-       length "1..253";
-     }
-     description
-      "The domain-name type represents a DNS domain name.  The
-       name SHOULD be fully qualified whenever possible.
-
-       Internet domain names are only loosely specified.  Section
-       3.5 of RFC 1034 recommends a syntax (modified in Section
-       2.1 of RFC 1123).  The pattern above is intended to allow
-       for current practice in domain name use, and some possible
-       future expansion.  It is designed to hold various types of
-       domain names, including names used for A or AAAA records
-       (host names) and other records, such as SRV records.  Note
-       that Internet host names have a stricter syntax (described
-       in RFC 952) than the DNS recommendations in RFCs 1034 and
-       1123, and that systems that want to store host names in
-       schema nodes using the domain-name type are recommended to
-       adhere to this stricter standard to ensure interoperability.
-
-       The encoding of DNS names in the DNS protocol is limited
-       to 255 characters.  Since the encoding consists of labels
-       prefixed by a length bytes and there is a trailing NULL
-       byte, only 253 characters can appear in the textual dotted
-       notation.
-
-       The description clause of schema nodes using the domain-name
-       type MUST describe when and how these names are resolved to
-       IP addresses.  Note that the resolution of a domain-name value
-       may require to query multiple DNS records (e.g., A for IPv4
-       and AAAA for IPv6).  The order of the resolution process and
-       which DNS record takes precedence can either be defined
-       explicitely or it may depend on the configuration of the
-       resolver.
-
-       Domain-name values use the US-ASCII encoding.  Their canonical
-       format uses lowercase US-ASCII characters.  Internationalized
-       domain names MUST be encoded in punycode as described in RFC
-       3492";
-     reference
-      "RFC  952: DoD Internet Host Table Specification
-       RFC 1034: Domain Names - Concepts and Facilities
-       RFC 1123: Requirements for Internet Hosts -- Application
-                 and Support
-       RFC 2782: A DNS RR for specifying the location of services
-                 (DNS SRV)
-       RFC 3492: Punycode: A Bootstring encoding of Unicode for
-                 Internationalized Domain Names in Applications
-                 (IDNA)
-       RFC 5891: Internationalizing Domain Names in Applications
-                 (IDNA): Protocol";
-   }
-
-   typedef host {
-     type union {
-       type inet:ip-address;
-       type inet:domain-name;
-     }
-     description
-      "The host type represents either an IP address or a DNS
-       domain name.";
-   }
-
-   typedef uri {
-     type string;
-     description
-      "The uri type represents a Uniform Resource Identifier
-       (URI) as defined by STD 66.
-
-       Objects using the uri type MUST be in US-ASCII encoding,
-       and MUST be normalized as described by RFC 3986 Sections
-       6.2.1, 6.2.2.1, and 6.2.2.2.  All unnecessary
-       percent-encoding is removed, and all case-insensitive
-       characters are set to lowercase except for hexadecimal
-       digits, which are normalized to uppercase as described in
-       Section 6.2.2.1.
-
-       The purpose of this normalization is to help provide
-       unique URIs.  Note that this normalization is not
-       sufficient to provide uniqueness.  Two URIs that are
-       textually distinct after this normalization may still be
-       equivalent.
-
-       Objects using the uri type may restrict the schemes that
-       they permit.  For example, 'data:' and 'urn:' schemes
-       might not be appropriate.
-
-       A zero-length URI is not a valid URI.  This can be used to
-       express 'URI absent' where required.
-
-       In the value set and its semantics, this type is equivalent
-       to the Uri SMIv2 textual convention defined in RFC 5017.";
-     reference
-      "RFC 3986: Uniform Resource Identifier (URI): Generic Syntax
-       RFC 3305: Report from the Joint W3C/IETF URI Planning Interest
-                 Group: Uniform Resource Identifiers (URIs), URLs,
-                 and Uniform Resource Names (URNs): Clarifications
-                 and Recommendations
-       RFC 5017: MIB Textual Conventions for Uniform Resource
-                 Identifiers (URIs)";
-   }
-
- }
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/leafref-test-models/ietf-interfaces@2012-11-15.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/leafref-test-models/ietf-interfaces@2012-11-15.yang
deleted file mode 100644 (file)
index 481a5d2..0000000
+++ /dev/null
@@ -1,469 +0,0 @@
-module ietf-interfaces {
-
-  namespace "urn:ietf:params:xml:ns:yang:ietf-interfaces";
-  prefix if;
-
-  import ietf-yang-types {
-    prefix yang;
-    revision-date 2010-09-24;
-  }
-
-  organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-  contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     WG Chair: Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>
-
-     Editor:   Martin Bjorklund
-               <mailto:mbj@tail-f.com>";
-
-  description
-    "This module contains a collection of YANG definitions for
-     managing network interfaces.
-
-     Copyright (c) 2012 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or
-     without modification, is permitted pursuant to, and subject
-     to the license terms contained in, the Simplified BSD License
-     set forth in Section 4.c of the IETF Trust's Legal Provisions
-     Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC XXXX; see
-     the RFC itself for full legal notices.";
-
-  // RFC Ed.: replace XXXX with actual RFC number and remove this
-  // note.
-
-  // RFC Ed.: update the date below with the date of RFC publication
-  // and remove this note.
-  revision 2012-11-15 {
-    description
-      "Initial revision.";
-    reference
-      "RFC XXXX: A YANG Data Model for Interface Management";
-  }
-
-  /* Typedefs */
-
-  typedef interface-ref {
-    type leafref {
-      path "/if:interfaces/if:interface/if:name";
-    }
-    description
-      "This type is used by data models that need to reference
-       interfaces.";
-  }
-
-  /* Features */
-
-  feature arbitrary-names {
-    description
-      "This feature indicates that the server allows interfaces to
-       be named arbitrarily.";
-  }
-
-  feature if-mib {
-    description
-      "This feature indicates that the server implements IF-MIB.";
-    reference
-      "RFC 2863: The Interfaces Group MIB";
-  }
-
-  /* Data nodes */
-
-  container interfaces {
-    description
-      "Interface parameters.";
-
-    list interface {
-      key "name";
-      unique "type location";
-
-      description
-        "The list of interfaces on the device.";
-
-      leaf name {
-        type string;
-        description
-          "The name of the interface.
-
-           A device MAY restrict the allowed values for this leaf,
-           possibly depending on the type and location.
-
-           If the device allows arbitrarily named interfaces, the
-           feature 'arbitrary-names' is advertised.
-
-           This leaf MAY be mapped to ifName by an implementation.
-           Such an implementation MAY restrict the allowed values for
-           this leaf so that it matches the restrictions of ifName.
-           If a NETCONF server that implements this restriction is
-           sent a value that doesn't match the restriction, it MUST
-           reply with an rpc-error with the error-tag
-           'invalid-value'.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifName";
-      }
-
-      leaf description {
-        type string;
-        description
-          "A textual description of the interface.
-
-           This leaf MAY be mapped to ifAlias by an implementation.
-           Such an implementation MAY restrict the allowed values for
-           this leaf so that it matches the restrictions of ifAlias.
-           If a NETCONF server that implements this restriction is
-           sent a value that doesn't match the restriction, it MUST
-           reply with an rpc-error with the error-tag
-           'invalid-value'.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifAlias";
-      }
-
-      leaf location {
-        type string;
-        description
-          "The device-specific location of the interface of a
-           particular type.  The format of the location string
-           depends on the interface type and the device.
-
-           If the interface's type represents a physical interface,
-           this leaf MUST be set.
-
-           When an interface entry is created, a server MAY
-           initialize the location leaf with a valid value, e.g., if
-           it is possible to derive the location from the name of
-           the interface.";
-      }
-
-      leaf enabled {
-        type boolean;
-        default "true";
-        description
-          "The desired state of the interface.
-
-           This leaf contains the configured, desired state of the
-           interface.  Systems that implement the IF-MIB use the
-           value of this leaf to set IF-MIB.ifAdminStatus to 'up' or
-           'down' after an ifEntry has been initialized, as described
-           in RFC 2863.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifAdminStatus";
-      }
-
-      leaf last-change {
-        type yang:date-and-time;
-        config false;
-        description
-          "The time the interface entered its current operational
-           state.  If the current state was entered prior to the
-           last re-initialization of the local network management
-           subsystem, then this node is not present.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifLastChange";
-      }
-
-      leaf if-index {
-        if-feature if-mib;
-        type int32 {
-          range "1..2147483647";
-        }
-        config false;
-        description
-          "The ifIndex value for the ifEntry represented by this
-           interface.
-
-           Media-specific modules must specify how the type is
-           mapped to entries in the ifTable.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifIndex";
-      }
-
-      leaf phys-address {
-        type yang:phys-address;
-        config false;
-        description
-          "The interface's address at its protocol sub-layer.  For
-          example, for an 802.x interface, this object normally
-          contains a MAC address.  The interface's media-specific
-          modules must define the bit and byte ordering and the
-          format of the value of this object.  For interfaces that do
-          not have such an address (e.g., a serial line), this node
-          is not present.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifPhysAddress";
-      }
-
-      leaf-list higher-layer-if {
-        type interface-ref;
-        config false;
-        description
-          "A list of references to interfaces layered on top of this
-           interface.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifStackTable";
-      }
-
-      leaf-list lower-layer-if {
-        type interface-ref;
-        config false;
-        description
-          "A list of references to interfaces layered underneath this
-           interface.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifStackTable";
-      }
-
-      leaf speed {
-        type yang:gauge64;
-        units "bits / second";
-        config false;
-        description
-            "An estimate of the interface's current bandwidth in bits
-             per second.  For interfaces which do not vary in
-             bandwidth or for those where no accurate estimation can
-             be made, this node should contain the nominal bandwidth.
-             For interfaces that has no concept of bandwidth, this
-             node is not present.";
-        reference
-          "RFC 2863: The Interfaces Group MIB -
-                     ifSpeed, ifHighSpeed";
-      }
-
-      container statistics {
-        config false;
-        description
-          "A collection of interface-related statistics objects.";
-
-        leaf discontinuity-time {
-          type yang:date-and-time;
-          description
-            "The time on the most recent occasion at which any one or
-             more of this interface's counters suffered a
-             discontinuity.  If no such discontinuities have occurred
-             since the last re-initialization of the local management
-             subsystem, then this node contains the time the local
-             management subsystem re-initialized itself.";
-        }
-
-        leaf in-octets {
-          type yang:counter64;
-          description
-            "The total number of octets received on the interface,
-             including framing characters.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifHCInOctets";
-        }
-        leaf in-unicast-pkts {
-          type yang:counter64;
-          description
-            "The number of packets, delivered by this sub-layer to a
-             higher (sub-)layer, which were not addressed to a
-             multicast or broadcast address at this sub-layer.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifHCInUcastPkts";
-        }
-        leaf in-broadcast-pkts {
-          type yang:counter64;
-          description
-            "The number of packets, delivered by this sub-layer to a
-             higher (sub-)layer, which were addressed to a broadcast
-             address at this sub-layer.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB -
-                       ifHCInBroadcastPkts";
-        }
-        leaf in-multicast-pkts {
-          type yang:counter64;
-          description
-            "The number of packets, delivered by this sub-layer to a
-             higher (sub-)layer, which were addressed to a multicast
-             address at this sub-layer.  For a MAC layer protocol,
-             this includes both Group and Functional addresses.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB -
-                       ifHCInMulticastPkts";
-        }
-        leaf in-discards {
-          type yang:counter32;
-          description
-            "The number of inbound packets which were chosen to be
-             discarded even though no errors had been detected to
-             prevent their being deliverable to a higher-layer
-             protocol.  One possible reason for discarding such a
-             packet could be to free up buffer space.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifInDiscards";
-        }
-        leaf in-errors {
-          type yang:counter32;
-          description
-            "For packet-oriented interfaces, the number of inbound
-             packets that contained errors preventing them from being
-             deliverable to a higher-layer protocol.  For character-
-             oriented or fixed-length interfaces, the number of
-             inbound transmission units that contained errors
-             preventing them from being deliverable to a higher-layer
-             protocol.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifInErrors";
-        }
-        leaf in-unknown-protos {
-          type yang:counter32;
-          description
-            "For packet-oriented interfaces, the number of packets
-             received via the interface which were discarded because
-             of an unknown or unsupported protocol.  For
-             character-oriented or fixed-length interfaces that
-             support protocol multiplexing the number of transmission
-             units received via the interface which were discarded
-             because of an unknown or unsupported protocol.  For any
-             interface that does not support protocol multiplexing,
-             this counter is not present.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifInUnknownProtos";
-        }
-
-        leaf out-octets {
-          type yang:counter64;
-          description
-            "The total number of octets transmitted out of the
-             interface, including framing characters.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifHCOutOctets";
-        }
-        leaf out-unicast-pkts {
-          type yang:counter64;
-          description
-            "The total number of packets that higher-level protocols
-             requested be transmitted, and which were not addressed
-             to a multicast or broadcast address at this sub-layer,
-             including those that were discarded or not sent.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifHCOutUcastPkts";
-        }
-        leaf out-broadcast-pkts {
-          type yang:counter64;
-          description
-            "The total number of packets that higher-level protocols
-             requested be transmitted, and which were addressed to a
-             broadcast address at this sub-layer, including those
-             that were discarded or not sent.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB -
-                       ifHCOutBroadcastPkts";
-        }
-        leaf out-multicast-pkts {
-          type yang:counter64;
-          description
-            "The total number of packets that higher-level protocols
-             requested be transmitted, and which were addressed to a
-             multicast address at this sub-layer, including those
-             that were discarded or not sent.  For a MAC layer
-             protocol, this includes both Group and Functional
-             addresses.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB -
-                       ifHCOutMulticastPkts";
-        }
-        leaf out-discards {
-          type yang:counter32;
-          description
-            "The number of outbound packets which were chosen to be
-             discarded even though no errors had been detected to
-             prevent their being transmitted.  One possible reason
-             for discarding such a packet could be to free up buffer
-             space.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifOutDiscards";
-        }
-        leaf out-errors {
-          type yang:counter32;
-          description
-            "For packet-oriented interfaces, the number of outbound
-             packets that could not be transmitted because of errors.
-             For character-oriented or fixed-length interfaces, the
-             number of outbound transmission units that could not be
-             transmitted because of errors.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifOutErrors";
-        }
-      }
-    }
-  }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/leafref-test-models/ietf-yang-types@2010-09-24.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/leafref-test-models/ietf-yang-types@2010-09-24.yang
deleted file mode 100644 (file)
index e9d88ab..0000000
+++ /dev/null
@@ -1,396 +0,0 @@
- module ietf-yang-types {
-
-   namespace "urn:ietf:params:xml:ns:yang:ietf-yang-types";
-   prefix "yang";
-
-   organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-   contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Partain
-               <mailto:david.partain@ericsson.com>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     Editor:   Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>";
-
-   description
-    "This module contains a collection of generally useful derived
-     YANG data types.
-
-     Copyright (c) 2010 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or without
-     modification, is permitted pursuant to, and subject to the license
-     terms contained in, the Simplified BSD License set forth in Section
-     4.c of the IETF Trust's Legal Provisions Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC 6021; see
-     the RFC itself for full legal notices.";
-
-   revision 2010-09-24 {
-     description
-      "Initial revision.";
-     reference
-      "RFC 6021: Common YANG Data Types";
-   }
-
-   /*** collection of counter and gauge types ***/
-
-   typedef counter32 {
-     type uint32;
-     description
-      "The counter32 type represents a non-negative integer
-       that monotonically increases until it reaches a
-       maximum value of 2^32-1 (4294967295 decimal), when it
-       wraps around and starts increasing again from zero.
-
-       Counters have no defined 'initial' value, and thus, a
-       single value of a counter has (in general) no information
-       content.  Discontinuities in the monotonically increasing
-       value normally occur at re-initialization of the
-       management system, and at other times as specified in the
-       description of a schema node using this type.  If such
-       other times can occur, for example, the creation of
-       a schema node of type counter32 at times other than
-       re-initialization, then a corresponding schema node
-       should be defined, with an appropriate type, to indicate
-       the last discontinuity.
-
-       The counter32 type should not be used for configuration
-       schema nodes.  A default statement SHOULD NOT be used in
-       combination with the type counter32.
-
-       In the value set and its semantics, this type is equivalent
-       to the Counter32 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef zero-based-counter32 {
-     type yang:counter32;
-     default "0";
-     description
-      "The zero-based-counter32 type represents a counter32
-       that has the defined 'initial' value zero.
-
-       A schema node of this type will be set to zero (0) on creation
-       and will thereafter increase monotonically until it reaches
-       a maximum value of 2^32-1 (4294967295 decimal), when it
-       wraps around and starts increasing again from zero.
-
-       Provided that an application discovers a new schema node
-       of this type within the minimum time to wrap, it can use the
-       'initial' value as a delta.  It is important for a management
-       station to be aware of this minimum time and the actual time
-       between polls, and to discard data if the actual time is too
-       long or there is no defined minimum time.
-
-       In the value set and its semantics, this type is equivalent
-       to the ZeroBasedCounter32 textual convention of the SMIv2.";
-     reference
-       "RFC 4502: Remote Network Monitoring Management Information
-                  Base Version 2";
-   }
-
-   typedef counter64 {
-     type uint64;
-     description
-      "The counter64 type represents a non-negative integer
-       that monotonically increases until it reaches a
-       maximum value of 2^64-1 (18446744073709551615 decimal),
-       when it wraps around and starts increasing again from zero.
-
-       Counters have no defined 'initial' value, and thus, a
-       single value of a counter has (in general) no information
-       content.  Discontinuities in the monotonically increasing
-       value normally occur at re-initialization of the
-       management system, and at other times as specified in the
-       description of a schema node using this type.  If such
-       other times can occur, for example, the creation of
-       a schema node of type counter64 at times other than
-       re-initialization, then a corresponding schema node
-       should be defined, with an appropriate type, to indicate
-       the last discontinuity.
-
-       The counter64 type should not be used for configuration
-       schema nodes.  A default statement SHOULD NOT be used in
-       combination with the type counter64.
-
-       In the value set and its semantics, this type is equivalent
-       to the Counter64 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef zero-based-counter64 {
-     type yang:counter64;
-     default "0";
-     description
-      "The zero-based-counter64 type represents a counter64 that
-       has the defined 'initial' value zero.
-
-       A schema node of this type will be set to zero (0) on creation
-       and will thereafter increase monotonically until it reaches
-       a maximum value of 2^64-1 (18446744073709551615 decimal),
-       when it wraps around and starts increasing again from zero.
-
-       Provided that an application discovers a new schema node
-       of this type within the minimum time to wrap, it can use the
-       'initial' value as a delta.  It is important for a management
-       station to be aware of this minimum time and the actual time
-       between polls, and to discard data if the actual time is too
-       long or there is no defined minimum time.
-
-       In the value set and its semantics, this type is equivalent
-       to the ZeroBasedCounter64 textual convention of the SMIv2.";
-     reference
-      "RFC 2856: Textual Conventions for Additional High Capacity
-                 Data Types";
-   }
-
-   typedef gauge32 {
-     type uint32;
-     description
-      "The gauge32 type represents a non-negative integer, which
-       may increase or decrease, but shall never exceed a maximum
-       value, nor fall below a minimum value.  The maximum value
-       cannot be greater than 2^32-1 (4294967295 decimal), and
-       the minimum value cannot be smaller than 0.  The value of
-       a gauge32 has its maximum value whenever the information
-       being modeled is greater than or equal to its maximum
-       value, and has its minimum value whenever the information
-       being modeled is smaller than or equal to its minimum value.
-       If the information being modeled subsequently decreases
-       below (increases above) the maximum (minimum) value, the
-       gauge32 also decreases (increases).
-
-       In the value set and its semantics, this type is equivalent
-       to the Gauge32 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef gauge64 {
-     type uint64;
-     description
-      "The gauge64 type represents a non-negative integer, which
-       may increase or decrease, but shall never exceed a maximum
-       value, nor fall below a minimum value.  The maximum value
-       cannot be greater than 2^64-1 (18446744073709551615), and
-       the minimum value cannot be smaller than 0.  The value of
-       a gauge64 has its maximum value whenever the information
-       being modeled is greater than or equal to its maximum
-       value, and has its minimum value whenever the information
-       being modeled is smaller than or equal to its minimum value.
-       If the information being modeled subsequently decreases
-       below (increases above) the maximum (minimum) value, the
-       gauge64 also decreases (increases).
-
-       In the value set and its semantics, this type is equivalent
-       to the CounterBasedGauge64 SMIv2 textual convention defined
-       in RFC 2856";
-     reference
-      "RFC 2856: Textual Conventions for Additional High Capacity
-                 Data Types";
-   }
-
-   /*** collection of identifier related types ***/
-
-   typedef object-identifier {
-     type string {
-       pattern '(([0-1](\.[1-3]?[0-9]))|(2\.(0|([1-9]\d*))))'
-             + '(\.(0|([1-9]\d*)))*';
-     }
-     description
-      "The object-identifier type represents administratively
-       assigned names in a registration-hierarchical-name tree.
-
-       Values of this type are denoted as a sequence of numerical
-       non-negative sub-identifier values.  Each sub-identifier
-       value MUST NOT exceed 2^32-1 (4294967295).  Sub-identifiers
-       are separated by single dots and without any intermediate
-       whitespace.
-
-       The ASN.1 standard restricts the value space of the first
-       sub-identifier to 0, 1, or 2.  Furthermore, the value space
-       of the second sub-identifier is restricted to the range
-       0 to 39 if the first sub-identifier is 0 or 1.  Finally,
-       the ASN.1 standard requires that an object identifier
-       has always at least two sub-identifier.  The pattern
-       captures these restrictions.
-
-       Although the number of sub-identifiers is not limited,
-       module designers should realize that there may be
-       implementations that stick with the SMIv2 limit of 128
-       sub-identifiers.
-
-       This type is a superset of the SMIv2 OBJECT IDENTIFIER type
-       since it is not restricted to 128 sub-identifiers.  Hence,
-       this type SHOULD NOT be used to represent the SMIv2 OBJECT
-       IDENTIFIER type, the object-identifier-128 type SHOULD be
-       used instead.";
-     reference
-      "ISO9834-1: Information technology -- Open Systems
-       Interconnection -- Procedures for the operation of OSI
-       Registration Authorities: General procedures and top
-       arcs of the ASN.1 Object Identifier tree";
-   }
-
-
-
-
-   typedef object-identifier-128 {
-     type object-identifier {
-       pattern '\d*(\.\d*){1,127}';
-     }
-     description
-      "This type represents object-identifiers restricted to 128
-       sub-identifiers.
-
-       In the value set and its semantics, this type is equivalent
-       to the OBJECT IDENTIFIER type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   /*** collection of date and time related types ***/
-
-   typedef date-and-time {
-     type string {
-       pattern '\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?'
-             + '(Z|[\+\-]\d{2}:\d{2})';
-     }
-     description
-      "The date-and-time type is a profile of the ISO 8601
-       standard for representation of dates and times using the
-       Gregorian calendar.  The profile is defined by the
-       date-time production in Section 5.6 of RFC 3339.
-
-       The date-and-time type is compatible with the dateTime XML
-       schema type with the following notable exceptions:
-
-       (a) The date-and-time type does not allow negative years.
-
-       (b) The date-and-time time-offset -00:00 indicates an unknown
-           time zone (see RFC 3339) while -00:00 and +00:00 and Z all
-           represent the same time zone in dateTime.
-
-       (c) The canonical format (see below) of data-and-time values
-           differs from the canonical format used by the dateTime XML
-           schema type, which requires all times to be in UTC using the
-           time-offset 'Z'.
-
-       This type is not equivalent to the DateAndTime textual
-       convention of the SMIv2 since RFC 3339 uses a different
-       separator between full-date and full-time and provides
-       higher resolution of time-secfrac.
-
-       The canonical format for date-and-time values with a known time
-       zone uses a numeric time zone offset that is calculated using
-       the device's configured known offset to UTC time.  A change of
-       the device's offset to UTC time will cause date-and-time values
-       to change accordingly.  Such changes might happen periodically
-       in case a server follows automatically daylight saving time
-       (DST) time zone offset changes.  The canonical format for
-       date-and-time values with an unknown time zone (usually referring
-       to the notion of local time) uses the time-offset -00:00.";
-     reference
-      "RFC 3339: Date and Time on the Internet: Timestamps
-       RFC 2579: Textual Conventions for SMIv2
-       XSD-TYPES: XML Schema Part 2: Datatypes Second Edition";
-   }
-
-   typedef timeticks {
-     type uint32;
-     description
-      "The timeticks type represents a non-negative integer that
-       represents the time, modulo 2^32 (4294967296 decimal), in
-       hundredths of a second between two epochs.  When a schema
-       node is defined that uses this type, the description of
-       the schema node identifies both of the reference epochs.
-
-       In the value set and its semantics, this type is equivalent
-       to the TimeTicks type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef timestamp {
-     type yang:timeticks;
-     description
-      "The timestamp type represents the value of an associated
-       timeticks schema node at which a specific occurrence happened.
-       The specific occurrence must be defined in the description
-       of any schema node defined using this type.  When the specific
-       occurrence occurred prior to the last time the associated
-       timeticks attribute was zero, then the timestamp value is
-       zero.  Note that this requires all timestamp values to be
-       reset to zero when the value of the associated timeticks
-       attribute reaches 497+ days and wraps around to zero.
-
-       The associated timeticks schema node must be specified
-       in the description of any schema node using this type.
-
-       In the value set and its semantics, this type is equivalent
-       to the TimeStamp textual convention of the SMIv2.";
-     reference
-      "RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   /*** collection of generic address types ***/
-
-   typedef phys-address {
-     type string {
-       pattern '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?';
-     }
-     description
-      "Represents media- or physical-level addresses represented
-       as a sequence octets, each octet represented by two hexadecimal
-       numbers.  Octets are separated by colons.  The canonical
-       representation uses lowercase characters.
-
-       In the value set and its semantics, this type is equivalent
-       to the PhysAddress textual convention of the SMIv2.";
-     reference
-      "RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   typedef mac-address {
-     type string {
-       pattern '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}';
-     }
-     description
-      "The mac-address type represents an IEEE 802 MAC address.
-       The canonical representation uses lowercase characters.
-
-       In the value set and its semantics, this type is equivalent
-       to the MacAddress textual convention of the SMIv2.";
-     reference
-      "IEEE 802: IEEE Standard for Local and Metropolitan Area
-                 Networks: Overview and Architecture
-       RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   /*** collection of XML specific types ***/
-
-   typedef xpath1.0 {
-     type string;
-     description
-      "This type represents an XPATH 1.0 expression.
-
-       When a schema node is defined that uses this type, the
-       description of the schema node MUST specify the XPath
-       context in which the XPath expression is evaluated.";
-     reference
-      "XPATH: XML Path Language (XPath) Version 1.0";
-   }
-
- }
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/list-composite-key.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/list-composite-key.yang
deleted file mode 100644 (file)
index 07e1dc7..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-module list-composite-key {
-    yang-version 1;
-    namespace "urn:composite.key";
-    prefix "scd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    description "
-        This module contains the definitions of elements that creates network 
-        topology i.e. definition of network nodes and links. This module is
-        not designed to be used solely for network representation. This module
-        SHOULD be used as base module in defining the network topology.
-    ";
-
-    revision "2013-02-27" {
-        reference " WILL BE DEFINED LATER";
-    }
-
-    container list-parent-container {
-
-        list composite-key-list {
-            key "key1 key2";
-
-            leaf key1 {
-                type int8;
-            }
-            
-            leaf key2 {
-                type string;
-            }
-            
-            list inner-list {
-                key "key1";
-                
-                leaf key1 {
-                    type uint16;
-                }
-                
-                leaf foo {
-                    type int32;
-                }
-            }
-            
-            leaf foo {
-                type int32;
-            }
-        }
-        
-        list no-key-list {
-            leaf foo {
-                type int32;
-            }
-            
-            leaf bar {
-                type decimal64 {
-                    fraction-digits 2;
-                }
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/simple-bits-demo.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/simple-bits-demo.yang
deleted file mode 100644 (file)
index d7e69d1..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-module simple-bits-demo {
-    
-    namespace "urn:simple:bits:demo";
-    prefix "sbd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";    
-
-    revision 2013-06-11 {
-        
-    }
-
-    typedef byte-type {
-        type bits {
-            bit first-bit {
-                position 10;
-            }
-            bit second-bit {
-                position 20;
-            }
-            bit third-bit {
-                position 30;
-            }
-            bit forth-bit {
-                position 40;
-            }       
-            bit fifth-bit {
-                position 50;
-            }       
-            bit sixth-bit {
-                position 60;
-            }       
-            bit seventh-bit {
-                position 70;
-            }       
-            bit eight-bit {
-                position 80;
-            }       
-            
-    }
-
-    typedef jo {
-        type uint32;
-    }
-
-    
-    container leaf-parent-container {
-        leaf byte-leaf {
-            type byte-type;
-        }
-        
-    }
-
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/simple-container-demo.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/simple-container-demo.yang
deleted file mode 100644 (file)
index 3962274..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-module simple-container-demo {
-       yang-version 1;
-    namespace "urn:simple.container.demo";
-    prefix "scd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    description "
-        This module contains the definitions of elements that creates network 
-        topology i.e. definition of network nodes and links. This module is
-        not designed to be used solely for network representation. This module
-        SHOULD be used as base module in defining the network topology.
-    ";
-
-    revision "2012-02-08" {
-        reference " WILL BE DEFINED LATER";
-    }
-
-    revision "2010-02-08" {
-        reference " WILL BE DEFINED LATER";
-    }
-
-    container simple-container {
-
-       leaf foo {
-               type int32;
-       }
-
-       leaf bar {
-               type string;
-               config true;
-       }
-
-       container nested-container {
-               leaf foo {
-                       type uint8;
-               }
-
-               leaf bar {
-                       type string;
-               }
-       }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/simple-leaf-list-demo.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/simple-leaf-list-demo.yang
deleted file mode 100644 (file)
index c0e77ef..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-module simple-leaf-list-demo {
-    yang-version 1;
-    namespace "urn:simple.leaf-list.demo";
-    prefix "scd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    description "
-        This module contains the definitions of elements that creates network 
-        topology i.e. definition of network nodes and links. This module is
-        not designed to be used solely for network representation. This module
-        SHOULD be used as base module in defining the network topology.
-    ";
-
-    revision "2012-02-08" {
-        reference " WILL BE DEFINED LATER";
-    }
-
-    revision "2010-02-08" {
-        reference " WILL BE DEFINED LATER";
-    }
-
-    container simple-container {
-
-        leaf-list foo {
-            type int32;
-        }
-
-        leaf bar {
-            type string;
-            config true;
-        }
-
-        container nested-container {
-            leaf foo {
-                type uint8;
-            }
-
-            leaf-list bar {
-                type string;
-                config true;
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/simple-list-demo.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/simple-list-demo.yang
deleted file mode 100644 (file)
index 69f7f5c..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-module simple-list-demo {
-       yang-version 1;
-    namespace "urn:simple.container.demo";
-    prefix "scd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    description "
-        This module contains the definitions of elements that creates network 
-        topology i.e. definition of network nodes and links. This module is
-        not designed to be used solely for network representation. This module
-        SHOULD be used as base module in defining the network topology.
-    ";
-
-    revision "2013-02-27" {
-        reference " WILL BE DEFINED LATER";
-    }
-
-    container list-parent-container {
-
-       list simple-list {
-               key "list-key";
-
-               leaf list-key {
-                       type int8;
-               }
-            
-            container list-child-container {
-                leaf foo {
-                    type uint8;
-                }
-            }
-            
-               leaf foo {
-                       type int32;
-               }
-            
-            leaf-list simple-leaf-list {
-                type int32;
-            }
-            
-               leaf bar {
-                       type string;
-                       config true;
-               }       
-       }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/simple-string-demo.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/simple-string-demo.yang
deleted file mode 100644 (file)
index 687d2a1..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-module simple-string-demo {
-
-    namespace "urn:simple:string:demo";
-    prefix "sbd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision 2013-06-18 {
-        
-    }
-
-
-    typedef typedef-string {
-        type string {
-            length "40";
-            pattern "[0-9A-F]*";
-            pattern "[B-D]*";
-            pattern "[4-7]*";
-        }
-    }
-
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/typedef_of_typedef.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/typedef_of_typedef.yang
deleted file mode 100644 (file)
index fc0bab9..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-module typedef_typedef {
-    
-    namespace "urn:typedef:typedef";
-    prefix "sbd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision 2013-07-09 {
-        
-    }
-
-   typedef byte-type {
-        type bits {
-            bit first-bit {
-                position 10;
-            }
-            bit second-bit {
-                position 20;
-            }
-         }
-    }    
-    
-    
-  typedef typedef-enum-fruit {
-    type enumeration {
-      enum "apple" {
-        value 1;
-        description "gold";
-      }
-      enum "pear" {
-        value 2;
-      }
-    }
-  }    
-    
-    typedef simple-typedef1 {
-        type uint8;
-    }
-    
-    typedef simple-typedef2 {
-        type simple-typedef1;
-    }
-    
-    typedef simple-typedef3 {
-        type simple-typedef2;
-    }
-    
-    typedef simple-typedef4 {
-        type simple-typedef3;
-    }
-    
-    typedef simple-typedef1-1 {
-        type uint16;
-    }
-
-    
-    typedef union-typedef {
-        type union {
-            type simple-typedef1;
-            type simple-typedef4;
-            type byte-type;
-            type typedef-enum-fruit;
-        }
-    }
-    
-    typedef extended-typedef-union {
-        type union-typedef;
-    }
-    
-    
-    typedef extended-typedef-simple {
-        type simple-typedef1;
-    }
-    
-    typedef extended-typedef-enum {
-        type typedef-enum-fruit;
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/union-test-models/abstract-topology.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/union-test-models/abstract-topology.yang
deleted file mode 100644 (file)
index a4b589b..0000000
+++ /dev/null
@@ -1,120 +0,0 @@
-module abstract-topology {
-    yang-version 1;
-    namespace "urn:model:abstract:topology";
-    prefix "tp";
-
-    import ietf-inet-types { 
-        prefix "inet"; 
-        revision-date 2010-09-24;
-    }
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    description
-        "This module contains the definitions of elements that creates network 
-    topology i.e. definition of network nodes and links. This module is not designed to be used solely for network representation. This module SHOULD be used as base module in defining the network topology.";
-
-    revision "2013-02-08" {
-        reference "~~~ WILL BE DEFINED LATER";
-    }
-    
-    revision "2013-01-01" {
-        reference "~~~ WILL BE DEFINED LATER";
-    }
-
-    typedef union-enum {
-        type union {
-            type int32;
-            type enumeration {
-                enum "unbounded";
-            }
-        }
-    }
-
-    typedef link-address {
-        type union {
-            type inet:ip-address;
-            type string;
-        }
-    }
-
-    typedef node-id-ref {
-        type leafref {
-            path "/tp:topology/tp:network-nodes/tp:network-node/tp:node-id";
-        }
-        description "This type is used for leafs that reference network node instance.";
-    }
-
-    typedef link-id-ref {
-        type leafref {
-            path "/tp:topology/tp:network-links/tp:network-link/tp:link-id";
-        }
-        description "This type is used for leafs that reference network link instance.";
-    }
-
-    container topology {
-        description "This is the model of abstract topology which contains only Network Nodes and Network Links. Each topology MUST be identified by unique topology-id for reason that the store could contain many topologies.";
-
-        leaf topology-id {
-            type inet:uri;
-            description "It is presumed that datastore will contain many topologies. To distinguish between topologies it is vital to have
-            UNIQUE topology identifier.";
-        }
-
-        container network-nodes {
-            list network-node {
-                key "node-id";
-
-                leaf node-id {
-                    type inet:uri;
-                    description "The Topology identifier of network-node.";
-                }
-
-                leaf bounding {
-                    type union-enum;
-                }
-
-                container attributes {
-                    description "Aditional attributes that can Network Node contains.";
-                }
-                description "The list of network nodes defined for topology.";
-            }
-        }
-        
-        container network-links {
-            list network-link {
-                key "link-id";
-
-                leaf link-id {
-                    type inet:uri;
-                    description "";
-                }
-
-                leaf link-address {
-                    type link-address;
-                }
-
-                container source-node {
-                    leaf id {
-                        type node-id-ref;
-                        description "Source node identifier.";
-                    }
-                }
-
-                container destination-node {
-                    leaf id {
-                        type node-id-ref;
-                        description "Destination node identifier.";
-                    }
-                }
-
-                container attributes {
-                    description "Aditional attributes that can Network Link contains.";
-                }
-                description "The Network Link which is defined by Local (Source) and Remote (Destination) Network Nodes. Every link MUST be defined either by identifier and
-                his local and remote Network Nodes (In real applications it is common that many links are originated from one node and end up in same remote node). To ensure that we would always know to distinguish between links, every link SHOULD have identifier.";
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/union-test-models/ietf-inet-types@2010-09-24.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/union-test-models/ietf-inet-types@2010-09-24.yang
deleted file mode 100644 (file)
index 6a6c748..0000000
+++ /dev/null
@@ -1,418 +0,0 @@
- module ietf-inet-types {
-
-   namespace "urn:ietf:params:xml:ns:yang:ietf-inet-types";
-   prefix "inet";
-
-   organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-   contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Partain
-               <mailto:david.partain@ericsson.com>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     Editor:   Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>";
-
-   description
-    "This module contains a collection of generally useful derived
-     YANG data types for Internet addresses and related things.
-
-     Copyright (c) 2010 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or without
-     modification, is permitted pursuant to, and subject to the license
-     terms contained in, the Simplified BSD License set forth in Section
-     4.c of the IETF Trust's Legal Provisions Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC 6021; see
-     the RFC itself for full legal notices.";
-
-   revision 2010-09-24 {
-     description
-      "Initial revision.";
-     reference
-      "RFC 6021: Common YANG Data Types";
-   }
-
-   /*** collection of protocol field related types ***/
-
-   typedef ip-version {
-     type enumeration {
-       enum unknown {
-         value "0";
-         description
-          "An unknown or unspecified version of the Internet protocol.";
-       }
-       enum ipv4 {
-         value "1";
-         description
-          "The IPv4 protocol as defined in RFC 791.";
-       }
-       enum ipv6 {
-         value "2";
-         description
-          "The IPv6 protocol as defined in RFC 2460.";
-       }
-     }
-     description
-      "This value represents the version of the IP protocol.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetVersion textual convention of the SMIv2.";
-     reference
-      "RFC  791: Internet Protocol
-       RFC 2460: Internet Protocol, Version 6 (IPv6) Specification
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   typedef dscp {
-     type uint8 {
-       range "0..63";
-     }
-     description
-      "The dscp type represents a Differentiated Services Code-Point
-       that may be used for marking packets in a traffic stream.
-
-       In the value set and its semantics, this type is equivalent
-       to the Dscp textual convention of the SMIv2.";
-     reference
-      "RFC 3289: Management Information Base for the Differentiated
-                 Services Architecture
-       RFC 2474: Definition of the Differentiated Services Field
-                 (DS Field) in the IPv4 and IPv6 Headers
-       RFC 2780: IANA Allocation Guidelines For Values In
-                 the Internet Protocol and Related Headers";
-   }
-
-   typedef ipv6-flow-label {
-     type uint32 {
-       range "0..1048575";
-     }
-     description
-      "The flow-label type represents flow identifier or Flow Label
-       in an IPv6 packet header that may be used to discriminate
-       traffic flows.
-
-       In the value set and its semantics, this type is equivalent
-       to the IPv6FlowLabel textual convention of the SMIv2.";
-     reference
-      "RFC 3595: Textual Conventions for IPv6 Flow Label
-       RFC 2460: Internet Protocol, Version 6 (IPv6) Specification";
-   }
-
-   typedef port-number {
-     type uint16 {
-       range "0..65535";
-     }
-     description
-      "The port-number type represents a 16-bit port number of an
-       Internet transport layer protocol such as UDP, TCP, DCCP, or
-       SCTP.  Port numbers are assigned by IANA.  A current list of
-       all assignments is available from <http://www.iana.org/>.
-
-       Note that the port number value zero is reserved by IANA.  In
-       situations where the value zero does not make sense, it can
-       be excluded by subtyping the port-number type.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetPortNumber textual convention of the SMIv2.";
-     reference
-      "RFC  768: User Datagram Protocol
-       RFC  793: Transmission Control Protocol
-       RFC 4960: Stream Control Transmission Protocol
-       RFC 4340: Datagram Congestion Control Protocol (DCCP)
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   /*** collection of autonomous system related types ***/
-
-   typedef as-number {
-     type uint32;
-     description
-      "The as-number type represents autonomous system numbers
-       which identify an Autonomous System (AS).  An AS is a set
-       of routers under a single technical administration, using
-       an interior gateway protocol and common metrics to route
-       packets within the AS, and using an exterior gateway
-       protocol to route packets to other ASs'.  IANA maintains
-       the AS number space and has delegated large parts to the
-       regional registries.
-
-       Autonomous system numbers were originally limited to 16
-       bits.  BGP extensions have enlarged the autonomous system
-       number space to 32 bits.  This type therefore uses an uint32
-       base type without a range restriction in order to support
-       a larger autonomous system number space.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetAutonomousSystemNumber textual convention of
-       the SMIv2.";
-     reference
-      "RFC 1930: Guidelines for creation, selection, and registration
-                 of an Autonomous System (AS)
-       RFC 4271: A Border Gateway Protocol 4 (BGP-4)
-       RFC 4893: BGP Support for Four-octet AS Number Space
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   /*** collection of IP address and hostname related types ***/
-
-   typedef ip-address {
-     type union {
-       type inet:ipv4-address;
-       type inet:ipv6-address;
-     }
-     description
-      "The ip-address type represents an IP address and is IP
-       version neutral.  The format of the textual representations
-       implies the IP version.";
-   }
-
-   typedef ipv4-address {
-     type string {
-       pattern
-         '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
-       +  '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
-       + '(%[\p{N}\p{L}]+)?';
-     }
-     description
-       "The ipv4-address type represents an IPv4 address in
-        dotted-quad notation.  The IPv4 address may include a zone
-        index, separated by a % sign.
-
-        The zone index is used to disambiguate identical address
-        values.  For link-local addresses, the zone index will
-        typically be the interface index number or the name of an
-        interface.  If the zone index is not present, the default
-        zone of the device will be used.
-
-        The canonical format for the zone index is the numerical
-        format";
-   }
-
-   typedef ipv6-address {
-     type string {
-       pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
-             + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
-             + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
-             + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
-             + '(%[\p{N}\p{L}]+)?';
-       pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
-             + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
-             + '(%.+)?';
-     }
-     description
-      "The ipv6-address type represents an IPv6 address in full,
-       mixed, shortened, and shortened-mixed notation.  The IPv6
-       address may include a zone index, separated by a % sign.
-
-       The zone index is used to disambiguate identical address
-       values.  For link-local addresses, the zone index will
-       typically be the interface index number or the name of an
-       interface.  If the zone index is not present, the default
-       zone of the device will be used.
-
-       The canonical format of IPv6 addresses uses the compressed
-       format described in RFC 4291, Section 2.2, item 2 with the
-       following additional rules: the :: substitution must be
-       applied to the longest sequence of all-zero 16-bit chunks
-       in an IPv6 address.  If there is a tie, the first sequence
-       of all-zero 16-bit chunks is replaced by ::.  Single
-       all-zero 16-bit chunks are not compressed.  The canonical
-       format uses lowercase characters and leading zeros are
-       not allowed.  The canonical format for the zone index is
-       the numerical format as described in RFC 4007, Section
-       11.2.";
-     reference
-      "RFC 4291: IP Version 6 Addressing Architecture
-       RFC 4007: IPv6 Scoped Address Architecture
-       RFC 5952: A Recommendation for IPv6 Address Text Representation";
-   }
-
-   typedef ip-prefix {
-     type union {
-       type inet:ipv4-prefix;
-       type inet:ipv6-prefix;
-     }
-     description
-      "The ip-prefix type represents an IP prefix and is IP
-       version neutral.  The format of the textual representations
-       implies the IP version.";
-   }
-
-   typedef ipv4-prefix {
-     type string {
-       pattern
-          '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
-        +  '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
-        + '/(([0-9])|([1-2][0-9])|(3[0-2]))';
-     }
-     description
-      "The ipv4-prefix type represents an IPv4 address prefix.
-       The prefix length is given by the number following the
-       slash character and must be less than or equal to 32.
-
-       A prefix length value of n corresponds to an IP address
-       mask that has n contiguous 1-bits from the most
-       significant bit (MSB) and all other bits set to 0.
-
-       The canonical format of an IPv4 prefix has all bits of
-       the IPv4 address set to zero that are not part of the
-       IPv4 prefix.";
-   }
-
-   typedef ipv6-prefix {
-     type string {
-       pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
-             + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
-             + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
-             + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
-             + '(/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))';
-       pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
-             + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
-             + '(/.+)';
-     }
-     description
-      "The ipv6-prefix type represents an IPv6 address prefix.
-       The prefix length is given by the number following the
-       slash character and must be less than or equal 128.
-
-       A prefix length value of n corresponds to an IP address
-       mask that has n contiguous 1-bits from the most
-       significant bit (MSB) and all other bits set to 0.
-
-       The IPv6 address should have all bits that do not belong
-       to the prefix set to zero.
-
-       The canonical format of an IPv6 prefix has all bits of
-       the IPv6 address set to zero that are not part of the
-       IPv6 prefix.  Furthermore, IPv6 address is represented
-       in the compressed format described in RFC 4291, Section
-       2.2, item 2 with the following additional rules: the ::
-       substitution must be applied to the longest sequence of
-       all-zero 16-bit chunks in an IPv6 address.  If there is
-       a tie, the first sequence of all-zero 16-bit chunks is
-       replaced by ::.  Single all-zero 16-bit chunks are not
-       compressed.  The canonical format uses lowercase
-       characters and leading zeros are not allowed.";
-     reference
-      "RFC 4291: IP Version 6 Addressing Architecture";
-   }
-
-   /*** collection of domain name and URI types ***/
-
-   typedef domain-name {
-     type string {
-       pattern '((([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.)*'
-            +  '([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.?)'
-            +  '|\.';
-       length "1..253";
-     }
-     description
-      "The domain-name type represents a DNS domain name.  The
-       name SHOULD be fully qualified whenever possible.
-
-       Internet domain names are only loosely specified.  Section
-       3.5 of RFC 1034 recommends a syntax (modified in Section
-       2.1 of RFC 1123).  The pattern above is intended to allow
-       for current practice in domain name use, and some possible
-       future expansion.  It is designed to hold various types of
-       domain names, including names used for A or AAAA records
-       (host names) and other records, such as SRV records.  Note
-       that Internet host names have a stricter syntax (described
-       in RFC 952) than the DNS recommendations in RFCs 1034 and
-       1123, and that systems that want to store host names in
-       schema nodes using the domain-name type are recommended to
-       adhere to this stricter standard to ensure interoperability.
-
-       The encoding of DNS names in the DNS protocol is limited
-       to 255 characters.  Since the encoding consists of labels
-       prefixed by a length bytes and there is a trailing NULL
-       byte, only 253 characters can appear in the textual dotted
-       notation.
-
-       The description clause of schema nodes using the domain-name
-       type MUST describe when and how these names are resolved to
-       IP addresses.  Note that the resolution of a domain-name value
-       may require to query multiple DNS records (e.g., A for IPv4
-       and AAAA for IPv6).  The order of the resolution process and
-       which DNS record takes precedence can either be defined
-       explicitely or it may depend on the configuration of the
-       resolver.
-
-       Domain-name values use the US-ASCII encoding.  Their canonical
-       format uses lowercase US-ASCII characters.  Internationalized
-       domain names MUST be encoded in punycode as described in RFC
-       3492";
-     reference
-      "RFC  952: DoD Internet Host Table Specification
-       RFC 1034: Domain Names - Concepts and Facilities
-       RFC 1123: Requirements for Internet Hosts -- Application
-                 and Support
-       RFC 2782: A DNS RR for specifying the location of services
-                 (DNS SRV)
-       RFC 3492: Punycode: A Bootstring encoding of Unicode for
-                 Internationalized Domain Names in Applications
-                 (IDNA)
-       RFC 5891: Internationalizing Domain Names in Applications
-                 (IDNA): Protocol";
-   }
-
-   typedef host {
-     type union {
-       type inet:ip-address;
-       type inet:domain-name;
-     }
-     description
-      "The host type represents either an IP address or a DNS
-       domain name.";
-   }
-
-   typedef uri {
-     type string;
-     description
-      "The uri type represents a Uniform Resource Identifier
-       (URI) as defined by STD 66.
-
-       Objects using the uri type MUST be in US-ASCII encoding,
-       and MUST be normalized as described by RFC 3986 Sections
-       6.2.1, 6.2.2.1, and 6.2.2.2.  All unnecessary
-       percent-encoding is removed, and all case-insensitive
-       characters are set to lowercase except for hexadecimal
-       digits, which are normalized to uppercase as described in
-       Section 6.2.2.1.
-
-       The purpose of this normalization is to help provide
-       unique URIs.  Note that this normalization is not
-       sufficient to provide uniqueness.  Two URIs that are
-       textually distinct after this normalization may still be
-       equivalent.
-
-       Objects using the uri type may restrict the schemes that
-       they permit.  For example, 'data:' and 'urn:' schemes
-       might not be appropriate.
-
-       A zero-length URI is not a valid URI.  This can be used to
-       express 'URI absent' where required.
-
-       In the value set and its semantics, this type is equivalent
-       to the Uri SMIv2 textual convention defined in RFC 5017.";
-     reference
-      "RFC 3986: Uniform Resource Identifier (URI): Generic Syntax
-       RFC 3305: Report from the Joint W3C/IETF URI Planning Interest
-                 Group: Uniform Resource Identifiers (URIs), URLs,
-                 and Uniform Resource Names (URNs): Clarifications
-                 and Recommendations
-       RFC 5017: MIB Textual Conventions for Uniform Resource
-                 Identifiers (URIs)";
-   }
-
- }
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping.yang
deleted file mode 100644 (file)
index 36913cd..0000000
+++ /dev/null
@@ -1,145 +0,0 @@
-module grouping_uses {
-
-    namespace "urn:uses:of:grouping";
-    prefix "sbd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision 2013-07-18 {
-    }
-
-
-  
-    grouping grouping-modul-test {
-        leaf leaf-grouping-modul-test {
-            type string;
-        }
-        leaf leaf-grouping-modul-test2 {
-            type uint8;
-        }
-    }
-
-    grouping grouping-container-test {
-        leaf leaf-grouping-container-test1 {
-            type string;
-        }
-        leaf leaf-grouping-container-test2 {
-            type uint8;
-        }
-    }
-
-    grouping grouping-case-test {
-        leaf leaf-grouping-case-test1 {
-            type string;
-        }     
-    }
-
-    grouping grouping-choice-test {
-        choice choice-grouing-choice-test {
-            case case-choice-grouping-choice-test1 {
-                leaf leaf-case-choice-grouping-choice-test1 {
-                    type string;
-                }
-            }
-            case case-choice-grouping-choice-test2 {
-                leaf leaf-case-choice-grouping-choice-test2 {
-                    type uint8;
-                }
-            }
-        }
-    }
-    grouping grouping-list-test {
-        leaf leaf-grouping-list-test {
-            type string;
-        }
-        container container-grouping-list-test {
-            leaf leaf-container-grouping-list-test {
-                type uint8;
-            }
-        }
-        list list-grouping-list-test {
-            leaf leaf-list-grouping-list-test {
-                type int32;
-            }
-        }
-        leaf-list leaflist-grouping-list-test {
-            type string;
-        }
-    }     
-
-    grouping grouping-grouping-test {
-        leaf leaf-grouping-grouping {
-            type string;
-        }
-    }
-
-    grouping grouping-rpc-input-test {
-        container container-grouping-rpc-input-test {
-            leaf leaf-container-grouping-rpc-input-test {
-                type string;
-            }
-        }
-        leaf-list leaflist-grouping-rpc-input-test {
-            type uint8;
-        }
-    }
-    
-    grouping grouping-rpc-output-test {
-        leaf leaf-grouping-rpc-output-test {
-            type int8;
-        }
-    }
-     
-//grouping in GROUPING
-    grouping grouping-atest {
-        leaf leaf-grouping-test {
-            type int8;
-        }
-        uses grouping-grouping-test;
-    }
-    
-//grouping in MODUL     
-//     uses grouping-modul-test;
-
-//grouping in RPC
-        rpc rpc-test {
-            input {
-                uses grouping-rpc-input-test;
-            }
-            output {
-                uses grouping-rpc-output-test;
-            }
-        }     
-
-//grouping in CONTAINER
-    container container-test {
-        leaf container-leaf-test {
-            type string;
-        }
-        uses grouping-container-test;
-    }
-
-//grouping in CASE     
-    container container-with-choicetest {
-        choice choice-test {
-            case a {
-                leaf leaf-choice-test1 {
-                    type string;
-                }
-            }
-            case c {                 
-                uses grouping-case-test;                 
-            }
-        }     
-    }  
-//grouping in LIST     
-    list list-test {
-        leaf list-leaf-test {
-            type string;
-        }
-        uses grouping-list-test;
-    }   
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-augment.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-augment.yang
deleted file mode 100644 (file)
index 0b99911..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-module grouping_uses_augment {
-    
-    namespace "urn:grouping:uses:augment";
-    prefix "sbd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision 2013-07-18 {
-    }
-
-    grouping grouping-augment-test {
-        leaf leaf-grouping-augment-test {
-            type string;
-        }
-    }
-    
-
-    container container-augment {
-        leaf leaf-container-augment1 {
-            type string;
-        }
-        leaf leaf-container-augment2 {
-            type int64;
-        }
-    }         
-    
-    augment "/container-augment" {
-        uses grouping-augment-test;        
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-case.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-case.yang
deleted file mode 100644 (file)
index 2f97f1b..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-module grouping_uses_case {
-
-    namespace "urn:grouping:uses:case";
-    prefix "sbd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision 2013-07-18 {
-    }
-
-
-    grouping grouping-case-test {
-        leaf leaf-grouping-case-test1 {
-            type string;
-        }
-    }
-
-    grouping grouping-choice-test {
-        choice choice-grouing-choice-test {
-            case case-choice-grouping-choice-test1 {
-                leaf leaf-case-choice-grouping-choice-test1 {
-                    type string;
-                }
-            }
-            case case-choice-grouping-choice-test2 {
-                leaf leaf-case-choice-grouping-choice-test2 {
-                    type uint8;
-                }
-            }
-        }
-    }
-
-//grouping in CASE
-    container container-with-choicetest {
-        choice choice-test {
-            case a {
-                leaf leaf-choice-test1 {
-                    type string;
-                }
-            }
-            case c {
-                uses grouping-case-test;
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-container.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-container.yang
deleted file mode 100644 (file)
index 77b8c00..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-module grouping_uses_container {
-    
-    namespace "urn:grouping:uses:container";
-    prefix "sbd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision 2013-07-18 {
-    }
-    
-    grouping grouping-container-test {
-        leaf leaf-grouping-container-test1 {
-            type string;
-        }
-        leaf leaf-grouping-container-test2 {
-            type uint8;
-        }
-    }
-    
-//grouping in CONTAINER
-    container container-test {
-        leaf container-leaf-test {
-            type string;
-        }
-        uses grouping-container-test;
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-dependencies.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-dependencies.yang
deleted file mode 100644 (file)
index ef6efb5..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-module grouping_dependencies {
-    
-    namespace "urn:grouping:dependencies";
-    prefix "sbd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision 2013-07-18 {
-    }
-  
-    grouping grouping-U {
-        leaf leaf-grouping-U {
-            type string;
-        }
-        uses grouping-V;
-        uses grouping-X;
-    }
-
-    grouping grouping-V {
-        leaf leaf-grouping-V {
-            type string;
-        }
-        uses grouping-Z;
-        uses grouping-ZZ;
-    }
-
-    grouping grouping-X {
-        leaf leaf-grouping-X {
-            type string;
-        }
-        uses grouping-Y;
-    }
-
-    grouping grouping-Y {
-        leaf leaf-grouping-Y {
-            type string;
-        }
-    }
-    
-    grouping grouping-Z {
-        leaf leaf-grouping-Z {
-            type string;
-        }
-    }
-    
-    grouping grouping-ZZ {
-        leaf leaf-grouping-ZZ {
-            type string;
-        }
-    }    
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-grouping.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-grouping.yang
deleted file mode 100644 (file)
index 3c68cd7..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-module grouping_uses_grouping {
-    
-    namespace "urn:grouping:uses:grouping";
-    prefix "sbd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision 2013-07-18 {
-    }
-
-    grouping grouping-grouping-test {
-        leaf leaf-grouping-grouping {
-            type string;
-        }
-    }
-     
-
-//grouping in GROUPING
-    grouping grouping-test {
-        leaf leaf-grouping-test {
-            type int8;
-        }
-        uses grouping-grouping-test;
-    }
-    
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-list.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-list.yang
deleted file mode 100644 (file)
index 420d336..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-module grouping_uses_list {
-    
-    namespace "urn:grouping:uses:list";
-    prefix "sbd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision 2013-07-18 {
-    }
-
-
-    grouping grouping-list-test {
-        leaf leaf-grouping-list-test {
-            type string;
-        }
-        container container-grouping-list-test {
-            leaf leaf-container-grouping-list-test {
-                type uint8;
-            }
-        }
-        list list-grouping-list-test {
-            leaf leaf-list-grouping-list-test {
-                type int32;
-            }
-        }
-        leaf-list leaffllist-grouping-list-test {
-            type string;
-        }
-    }
-
-//grouping in LIST
-    list list-test {
-        leaf list-leaf-test {
-            type string;
-        }
-        uses grouping-list-test;
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-modul.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-modul.yang
deleted file mode 100644 (file)
index 4dc6b17..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-module grouping_uses_modul {
-
-    namespace "urn:grouping:uses:modul";
-    prefix "sbd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision 2013-07-18 {
-    }
-
-    grouping grouping-modul-test {
-        leaf leaf-grouping-modul-test {
-            type string;
-        }
-        leaf leaf-grouping-modul-test2 {
-            type uint8;
-        }
-    }
-    
-//grouping in MODUL     
-    uses grouping-modul-test;
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-notification.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-notification.yang
deleted file mode 100644 (file)
index e3caf2a..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-module grouping_uses_notification {
-    
-    namespace "urn:grouping:uses:notification";
-    prefix "sbd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision 2013-07-18 {
-    }
-
-    grouping grouping-notification-test {
-        container container-grouping-notification-test {
-            leaf leaf-container-grouping-notification-test {
-                type uint32;
-            }
-        }
-        leaf-list leaffllist-grouping-notification-test {
-            type string;
-        }
-    }
-
-//grouping in NOTIFICATION
-    notification notification-test {
-        leaf leaf-notification-test {
-            type string;
-        }
-        uses grouping-notification-test;
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-rpc.yang b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/resources/uses-of-grouping/uses-of-grouping-rpc.yang
deleted file mode 100644 (file)
index 81f3b3c..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-module grouping_uses_rpc {
-    
-    namespace "urn:grouping:uses:rpc";
-    prefix "sbd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision 2013-07-18 {
-    }
-
-     
-
-    grouping grouping-rpc-input-test {
-        container container-grouping-rpc-input-test {
-            leaf leaf-container-grouping-rpc-input-test {
-                type string;
-            }
-        }
-        leaf-list leaflist-grouping-rpc-input-test {
-            type uint8;
-        }
-    }
-    
-    grouping grouping-rpc-output-test {
-        leaf leaf-grouping-rpc-output-test {
-            type int8;
-        }
-    }
-
-//grouping in RPC
-    rpc rpc-test {
-        input {
-            uses grouping-rpc-input-test;
-        }
-        output {
-            uses grouping-rpc-output-test;
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-spi/pom.xml b/opendaylight/sal/yang-prototype/code-generator/binding-generator-spi/pom.xml
deleted file mode 100644 (file)
index b011da3..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">\r
-\r
-    <parent>\r
-        <groupId>org.opendaylight.controller</groupId>\r
-        <artifactId>binding-generator</artifactId>\r
-        <version>0.5.5-SNAPSHOT</version>\r
-    </parent>\r
-\r
-    <modelVersion>4.0.0</modelVersion>\r
-    <artifactId>binding-generator-spi</artifactId>\r
-\r
-    <dependencies>\r
-        <dependency>\r
-            <groupId>org.opendaylight.controller</groupId>\r
-            <artifactId>binding-model-api</artifactId>\r
-        </dependency>\r
-        <dependency>\r
-            <groupId>org.opendaylight.yangtools</groupId>\r
-            <artifactId>yang-model-api</artifactId>\r
-        </dependency>\r
-    </dependencies>\r
-\r
-</project>\r
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-spi/src/main/java/org/opendaylight/controller/sal/binding/generator/spi/BindingGeneratorServiceProvider.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-spi/src/main/java/org/opendaylight/controller/sal/binding/generator/spi/BindingGeneratorServiceProvider.java
deleted file mode 100644 (file)
index 2677221..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-/*\r
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
- *\r
- * This program and the accompanying materials are made available under the\r
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
- * and is available at http://www.eclipse.org/legal/epl-v10.html\r
- */\r
-package org.opendaylight.controller.sal.binding.generator.spi;\r
-\r
-public interface BindingGeneratorServiceProvider {\r
-\r
-    public void registerTypeProvider(final TypeProvider provider);\r
-}\r
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-spi/src/main/java/org/opendaylight/controller/sal/binding/generator/spi/TypeProvider.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-spi/src/main/java/org/opendaylight/controller/sal/binding/generator/spi/TypeProvider.java
deleted file mode 100644 (file)
index 6f74f7a..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-/*\r
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
- *\r
- * This program and the accompanying materials are made available under the\r
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
- * and is available at http://www.eclipse.org/legal/epl-v10.html\r
- */\r
-package org.opendaylight.controller.sal.binding.generator.spi;\r
-\r
-import org.opendaylight.controller.sal.binding.model.api.Type;\r
-import org.opendaylight.yangtools.yang.model.api.TypeDefinition;\r
-\r
-public interface TypeProvider {\r
-\r
-    @Deprecated\r
-    Type javaTypeForYangType(String type);\r
-\r
-    /**\r
-     * Resolve of yang Type Definition to it's java counter part.\r
-     * If the Type Definition contains one of yang primitive types the method\r
-     * will return java.lang. counterpart. (For example if yang type is int32\r
-     * the java counterpart is java.lang.Integer). In case that Type\r
-     * Definition contains extended type defined via yang typedef statement\r
-     * the method SHOULD return Generated Type or Generated Transfer Object\r
-     * if that Type is correctly referenced to resolved imported yang module.\r
-     * The method will return <cdoe>null</cdoe> value in situations that\r
-     * TypeDefinition can't be resolved (either due missing yang import or\r
-     * incorrectly specified type).\r
-     *\r
-     *\r
-     * @param type Type Definition to resolve from\r
-     * @return Resolved Type\r
-     */\r
-    Type javaTypeForSchemaDefinitionType(final TypeDefinition<?> type);\r
-}\r
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-spi/src/main/java/org/opendaylight/controller/sal/binding/generator/spi/TypeProviderFactory.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-spi/src/main/java/org/opendaylight/controller/sal/binding/generator/spi/TypeProviderFactory.java
deleted file mode 100644 (file)
index 1b9156d..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-/*\r
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
- *\r
- * This program and the accompanying materials are made available under the\r
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
- * and is available at http://www.eclipse.org/legal/epl-v10.html\r
- */\r
-package org.opendaylight.controller.sal.binding.generator.spi;\r
-\r
-public interface TypeProviderFactory {\r
-\r
-    TypeProvider providerFor(YANGModuleIdentifier module);\r
-}\r
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-spi/src/main/java/org/opendaylight/controller/sal/binding/generator/spi/YANGModuleIdentifier.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-spi/src/main/java/org/opendaylight/controller/sal/binding/generator/spi/YANGModuleIdentifier.java
deleted file mode 100644 (file)
index 8c547f4..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-/*\r
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
- *\r
- * This program and the accompanying materials are made available under the\r
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
- * and is available at http://www.eclipse.org/legal/epl-v10.html\r
- */\r
-package org.opendaylight.controller.sal.binding.generator.spi;\r
-\r
-import java.net.URI;\r
-import java.util.Date;\r
-\r
-public class YANGModuleIdentifier {\r
-    String name;\r
-    URI namespace;\r
-    Date revision;\r
-}\r
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-spi/src/main/java/org/opendaylight/controller/sal/binding/generator/spi/package-info.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-spi/src/main/java/org/opendaylight/controller/sal/binding/generator/spi/package-info.java
deleted file mode 100644 (file)
index bf15d86..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-/*\r
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
- *\r
- * This program and the accompanying materials are made available under the\r
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
- * and is available at http://www.eclipse.org/legal/epl-v10.html\r
- */\r
-package org.opendaylight.controller.sal.binding.generator.spi;
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/pom.xml b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/pom.xml
deleted file mode 100644 (file)
index c707151..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">\r
-\r
-    <parent>\r
-        <groupId>org.opendaylight.controller</groupId>\r
-        <artifactId>binding-generator</artifactId>\r
-        <version>0.5.5-SNAPSHOT</version>\r
-    </parent>\r
-\r
-    <modelVersion>4.0.0</modelVersion>\r
-    <artifactId>binding-generator-util</artifactId>\r
-\r
-    <dependencies>\r
-        <dependency>\r
-            <groupId>org.opendaylight.controller</groupId>\r
-            <artifactId>binding-model-api</artifactId>\r
-        </dependency>\r
-        <dependency>\r
-            <groupId>org.opendaylight.yangtools</groupId>\r
-            <artifactId>yang-model-api</artifactId>\r
-        </dependency>\r
-        <dependency>\r
-            <groupId>junit</groupId>\r
-            <artifactId>junit</artifactId>\r
-        </dependency>\r
-        <dependency>\r
-            <groupId>org.opendaylight.yangtools</groupId>\r
-            <artifactId>yang-binding</artifactId>\r
-        </dependency>\r
-    </dependencies>\r
-\r
-</project>\r
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/AbstractBaseType.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/AbstractBaseType.java
deleted file mode 100644 (file)
index a67e416..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-/*\r
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
- *\r
- * This program and the accompanying materials are made available under the\r
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
- * and is available at http://www.eclipse.org/legal/epl-v10.html\r
- */\r
-package org.opendaylight.controller.binding.generator.util;\r
-\r
-import org.opendaylight.controller.sal.binding.model.api.Type;\r
-\r
-public class AbstractBaseType implements Type {\r
-\r
-    private final String packageName;\r
-    private final String name;\r
-\r
-    @Override\r
-    public String getPackageName() {\r
-        return packageName;\r
-    }\r
-\r
-    @Override\r
-    public String getName() {\r
-        return name;\r
-    }\r
-\r
-    @Override\r
-    public String getFullyQualifiedName() {\r
-        if (packageName.isEmpty()) {\r
-            return name;\r
-        } else {\r
-            return packageName + "." + name;\r
-        }\r
-    }\r
-\r
-    protected AbstractBaseType(String pkName, String name) {\r
-        this.packageName = pkName;\r
-        this.name = name;\r
-    }\r
-\r
-    @Override\r
-    public int hashCode() {\r
-        final int prime = 31;\r
-        int result = 1;\r
-        result = prime * result + ((name == null) ? 0 : name.hashCode());\r
-        result = prime * result\r
-                + ((packageName == null) ? 0 : packageName.hashCode());\r
-        return result;\r
-    }\r
-\r
-    @Override\r
-    public boolean equals(Object obj) {\r
-        if (this == obj)\r
-            return true;\r
-        if (obj == null)\r
-            return false;\r
-        if (getClass() != obj.getClass())\r
-            return false;\r
-        Type other = (Type) obj;\r
-        if (name == null) {\r
-            if (other.getName() != null)\r
-                return false;\r
-        } else if (!name.equals(other.getName()))\r
-            return false;\r
-        if (packageName == null) {\r
-            if (other.getPackageName() != null)\r
-                return false;\r
-        } else if (!packageName.equals(other.getPackageName()))\r
-            return false;\r
-        return true;\r
-    }\r
-\r
-    @Override\r
-    public String toString() {\r
-        if (packageName.isEmpty()) {\r
-            return "Type (" + name + ")";\r
-        }\r
-        return "Type (" + packageName + "." + name + ")";\r
-    }\r
-}\r
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/BindingGeneratorUtil.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/BindingGeneratorUtil.java
deleted file mode 100644 (file)
index 86e62ac..0000000
+++ /dev/null
@@ -1,210 +0,0 @@
-package org.opendaylight.controller.binding.generator.util;
-
-import java.util.Arrays;
-import java.util.Calendar;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.opendaylight.controller.binding.generator.util.generated.type.builder.GeneratedTOBuilderImpl;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.GeneratedTOBuilder;
-import org.opendaylight.yangtools.yang.common.QName;
-import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.SchemaNode;
-import org.opendaylight.yangtools.yang.model.api.SchemaPath;
-import org.opendaylight.yangtools.yang.model.api.TypeDefinition;
-
-public final class BindingGeneratorUtil {
-
-    private static final String[] SET_VALUES = new String[] { "abstract", "assert", "boolean", "break", "byte", "case",
-            "catch", "char", "class", "const", "continue", "default", "double", "do", "else", "enum", "extends",
-            "false", "final", "finally", "float", "for", "goto", "if", "implements", "import", "instanceof", "int",
-            "interface", "long", "native", "new", "null", "package", "private", "protected", "public", "return",
-            "short", "static", "strictfp", "super", "switch", "synchronized", "this", "throw", "throws", "transient",
-            "true", "try", "void", "volatile", "while" };
-
-    private BindingGeneratorUtil() {
-    }
-
-    public static final Set<String> JAVA_RESERVED_WORDS = new HashSet<String>(Arrays.asList(SET_VALUES));
-
-    public static String validateJavaPackage(final String packageName) {
-        if (packageName != null) {
-            final String[] packNameParts = packageName.split("\\.");
-            if (packNameParts != null) {
-                final StringBuilder builder = new StringBuilder();
-                for (int i = 0; i < packNameParts.length; ++i) {
-                    final String packNamePart = packNameParts[i];
-                    if (Character.isDigit(packNamePart.charAt(0))) {
-                        packNameParts[i] = "_" + packNamePart;
-                    } else if (JAVA_RESERVED_WORDS.contains(packNamePart)) {
-                        packNameParts[i] = "_" + packNamePart;
-                    }
-                    if (i > 0) {
-                        builder.append(".");
-                    }
-                    builder.append(packNameParts[i]);
-                }
-                return builder.toString();
-            }
-        }
-        return packageName;
-    }
-
-    public static String validateParameterName(final String parameterName) {
-        if (parameterName != null) {
-            if (JAVA_RESERVED_WORDS.contains(parameterName)) {
-                return "_" + parameterName;
-            }
-        }
-        return parameterName;
-    }
-
-    public static GeneratedTOBuilder schemaNodeToTransferObjectBuilder(final String packageName,
-            final SchemaNode schemaNode, final String transObjectName) {
-        if (packageName != null && schemaNode != null && transObjectName != null) {
-
-            final String genTOName = BindingGeneratorUtil.parseToClassName(transObjectName);
-            final GeneratedTOBuilder newType = new GeneratedTOBuilderImpl(packageName, genTOName);
-
-            return newType;
-
-        }
-        return null;
-    }
-
-    public static String moduleNamespaceToPackageName(final Module module) {
-        final StringBuilder packageNameBuilder = new StringBuilder();
-
-        final Calendar calendar = Calendar.getInstance();
-        if (module.getRevision() == null) {
-            throw new IllegalArgumentException("Module " + module.getName() + " does not specify revision date!");
-        }
-        packageNameBuilder.append("org.opendaylight.yang.gen.v");
-        packageNameBuilder.append(module.getYangVersion());
-        packageNameBuilder.append(".");
-
-        String namespace = module.getNamespace().toString();
-        namespace = namespace.replace("://", ".");
-        namespace = namespace.replace("/", ".");
-        namespace = namespace.replace(":", ".");
-        namespace = namespace.replace("-", ".");
-        namespace = namespace.replace("@", ".");
-        namespace = namespace.replace("$", ".");
-        namespace = namespace.replace("#", ".");
-        namespace = namespace.replace("'", ".");
-        namespace = namespace.replace("*", ".");
-        namespace = namespace.replace("+", ".");
-        namespace = namespace.replace(",", ".");
-        namespace = namespace.replace(";", ".");
-        namespace = namespace.replace("=", ".");
-
-        packageNameBuilder.append(namespace);
-        calendar.setTime(module.getRevision());
-        packageNameBuilder.append(".rev");
-        packageNameBuilder.append(calendar.get(Calendar.YEAR));
-        packageNameBuilder.append((calendar.get(Calendar.MONTH) + 1));
-        packageNameBuilder.append(calendar.get(Calendar.DAY_OF_MONTH));
-
-        return validateJavaPackage(packageNameBuilder.toString());
-    }
-
-    public static String packageNameForGeneratedType(final String basePackageName, final SchemaPath schemaPath) {
-        if (basePackageName == null) {
-            throw new IllegalArgumentException("Base Package Name cannot be NULL!");
-        }
-        if (schemaPath == null) {
-            throw new IllegalArgumentException("Schema Path cannot be NULL!");
-        }
-
-        final StringBuilder builder = new StringBuilder();
-        builder.append(basePackageName);
-        final List<QName> pathToNode = schemaPath.getPath();
-        final int traversalSteps = (pathToNode.size() - 1);
-        for (int i = 0; i < traversalSteps; ++i) {
-            builder.append(".");
-            String nodeLocalName = pathToNode.get(i).getLocalName();
-
-            nodeLocalName = nodeLocalName.replace(":", ".");
-            nodeLocalName = nodeLocalName.replace("-", ".");
-            builder.append(nodeLocalName);
-        }
-        return validateJavaPackage(builder.toString());
-    }
-
-    public static String packageNameForTypeDefinition(final String basePackageName,
-            final TypeDefinition<?> typeDefinition) {
-        if (basePackageName == null) {
-            throw new IllegalArgumentException("Base Package Name cannot be NULL!");
-        }
-        if (typeDefinition == null) {
-            throw new IllegalArgumentException("Type Definition reference cannot be NULL!");
-        }
-
-        final StringBuilder builder = new StringBuilder();
-        builder.append(basePackageName);
-        return validateJavaPackage(builder.toString());
-    }
-
-    public static String parseToClassName(String token) {
-        token = token.replace(".", "");
-        String correctStr = parseToCamelCase(token);
-
-        // make first char upper-case
-        char first = Character.toUpperCase(correctStr.charAt(0));
-        correctStr = first + correctStr.substring(1);
-        return correctStr;
-    }
-
-    public static String parseToValidParamName(final String token) {
-        final String validToken = token.replace(".", "");
-        String correctStr = parseToCamelCase(validToken);
-
-        // make first char lower-case
-        char first = Character.toLowerCase(correctStr.charAt(0));
-        correctStr = first + correctStr.substring(1);
-        return validateParameterName(correctStr);
-    }
-
-    public static String convertToCapitalLetters(final String token) {
-        String convertedStr = token.replace(" ", "_");
-        convertedStr = convertedStr.replace(".", "_");
-        convertedStr = convertedStr.toUpperCase();
-        return convertedStr;
-    }
-
-    private static String parseToCamelCase(String token) {
-        if (token == null) {
-            throw new NullPointerException("Name can not be null");
-        }
-
-        String correctStr = token.trim();
-        if (correctStr.length() == 0) {
-            throw new IllegalArgumentException("Name can not be emty");
-        }
-
-        correctStr = replaceWithCamelCase(correctStr, ' ');
-        correctStr = replaceWithCamelCase(correctStr, '-');
-        correctStr = replaceWithCamelCase(correctStr, '_');
-        return correctStr;
-    }
-
-    private static String replaceWithCamelCase(String text, char removalChar) {
-        StringBuilder sb = new StringBuilder(text);
-        String toBeRemoved = String.valueOf(removalChar);
-
-        int toBeRemovedPos = sb.indexOf(toBeRemoved);
-        while (toBeRemovedPos != -1) {
-            sb.replace(toBeRemovedPos, toBeRemovedPos + 1, "");
-            // check if 'toBeRemoved' character is not the only character in
-            // 'text'
-            if (sb.length() == 0) {
-                throw new IllegalArgumentException("Name can not be '" + toBeRemoved + "'");
-            }
-            String replacement = String.valueOf(sb.charAt(toBeRemovedPos)).toUpperCase();
-            sb.setCharAt(toBeRemovedPos, replacement.charAt(0));
-            toBeRemovedPos = sb.indexOf(toBeRemoved);
-        }
-        return sb.toString();
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/ReferencedTypeImpl.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/ReferencedTypeImpl.java
deleted file mode 100644 (file)
index bffa013..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.binding.generator.util;
-
-public final class ReferencedTypeImpl extends AbstractBaseType {
-
-    public ReferencedTypeImpl(String packageName, String name) {
-        super(packageName, name);
-    }
-
-    @Override
-    public String toString() {
-        StringBuilder builder = new StringBuilder();
-        builder.append("ReferencedTypeImpl [packageName=");
-        builder.append(getPackageName());
-        builder.append(", name=");
-        builder.append(getName());
-        builder.append("]");
-        return builder.toString();
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/TypeConstants.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/TypeConstants.java
deleted file mode 100644 (file)
index 69443aa..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-package org.opendaylight.controller.binding.generator.util;
-
-public final class TypeConstants {
-
-    public static final String PATTERN_CONSTANT_NAME = "PATTERN_CONSTANTS";
-
-    private TypeConstants() {
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/Types.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/Types.java
deleted file mode 100644 (file)
index ac26300..0000000
+++ /dev/null
@@ -1,153 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.binding.generator.util;
-
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.opendaylight.controller.binding.generator.util.generated.type.builder.GeneratedTOBuilderImpl;
-import org.opendaylight.controller.sal.binding.model.api.ConcreteType;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;
-import org.opendaylight.controller.sal.binding.model.api.ParameterizedType;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.controller.sal.binding.model.api.WildcardType;
-import org.opendaylight.yangtools.yang.binding.Augmentable;
-import org.opendaylight.yangtools.yang.binding.Augmentation;
-import org.opendaylight.yangtools.yang.binding.BaseIdentity;
-import org.opendaylight.yangtools.yang.binding.DataObject;
-
-public final class Types {
-    private static final Type SET_TYPE = typeForClass(Set.class);
-    private static final Type LIST_TYPE = typeForClass(List.class);
-    private static final Type MAP_TYPE = typeForClass(Map.class);
-    public static final Type DATA_OBJECT = typeForClass(DataObject.class);
-
-    public static ConcreteType voidType() {
-        return new ConcreteTypeImpl(Void.class.getPackage().getName(), Void.class.getSimpleName());
-    }
-
-    public static final Type primitiveType(final String primitiveType) {
-        return new ConcreteTypeImpl("", primitiveType);
-    }
-
-    /**
-     * Returns an instance of {@link ConcreteType} describing the class
-     *
-     * @param cls
-     *            Class to describe
-     * @return Description of class
-     */
-    public static ConcreteType typeForClass(Class<?> cls) {
-        return new ConcreteTypeImpl(cls.getPackage().getName(), cls.getSimpleName());
-    }
-
-    /**
-     * Returns an instance of {@link ParameterizedType} describing the typed
-     * {@link Map}<K,V>
-     *
-     * @param keyType
-     *            Key Type
-     * @param valueType
-     *            Value Type
-     * @return Description of generic type instance
-     */
-    public static ParameterizedType mapTypeFor(Type keyType, Type valueType) {
-        return parameterizedTypeFor(MAP_TYPE, keyType, valueType);
-    }
-
-    /**
-     * Returns an instance of {@link ParameterizedType} describing the typed
-     * {@link Set}<V> with concrete type of value.
-     *
-     * @param valueType
-     *            Value Type
-     * @return Description of generic type instance of Set
-     */
-    public static ParameterizedType setTypeFor(Type valueType) {
-        return parameterizedTypeFor(SET_TYPE, valueType);
-    }
-
-    /**
-     * Returns an instance of {@link ParameterizedType} describing the typed
-     * {@link List}<V> with concrete type of value.
-     *
-     * @param valueType
-     *            Value Type
-     * @return Description of type instance of List
-     */
-    public static ParameterizedType listTypeFor(Type valueType) {
-        return parameterizedTypeFor(LIST_TYPE, valueType);
-    }
-
-    public static GeneratedTransferObject getBaseIdentityTO() {
-        Class<BaseIdentity> cls = BaseIdentity.class;
-        GeneratedTOBuilderImpl gto = new GeneratedTOBuilderImpl(cls.getPackage().getName(), cls.getSimpleName());
-        return gto.toInstance();
-    }
-
-    /**
-     *
-     * @param type
-     * @param parameters
-     * @return
-     */
-    public static ParameterizedType parameterizedTypeFor(Type type, Type... parameters) {
-        return new ParametrizedTypeImpl(type, parameters);
-    }
-
-    public static WildcardType wildcardTypeFor(String packageName, String typeName) {
-        return new WildcardTypeImpl(packageName, typeName);
-    }
-
-    public static ParameterizedType augmentableTypeFor(Type valueType) {
-        final Type augmentable = typeForClass(Augmentable.class);
-        return parameterizedTypeFor(augmentable, valueType);
-    }
-
-    public static ParameterizedType augmentationTypeFor(Type valueType) {
-        final Type augmentation = typeForClass(Augmentation.class);
-        return parameterizedTypeFor(augmentation, valueType);
-    }
-
-    private static class ConcreteTypeImpl extends AbstractBaseType implements ConcreteType {
-        private ConcreteTypeImpl(String pkName, String name) {
-            super(pkName, name);
-        }
-    }
-
-    private static class ParametrizedTypeImpl extends AbstractBaseType implements ParameterizedType {
-        private Type[] actualTypes;
-        private Type rawType;
-
-        @Override
-        public Type[] getActualTypeArguments() {
-
-            return actualTypes;
-        }
-
-        @Override
-        public Type getRawType() {
-            return rawType;
-        }
-
-        public ParametrizedTypeImpl(Type rawType, Type[] actTypes) {
-            super(rawType.getPackageName(), rawType.getName());
-            this.rawType = rawType;
-            this.actualTypes = actTypes;
-        }
-
-    }
-
-    private static class WildcardTypeImpl extends AbstractBaseType implements WildcardType {
-        public WildcardTypeImpl(String packageName, String typeName) {
-            super(packageName, typeName);
-        }
-    }
-
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/AbstractGeneratedType.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/AbstractGeneratedType.java
deleted file mode 100644 (file)
index 2144597..0000000
+++ /dev/null
@@ -1,161 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.binding.generator.util.generated.type.builder;
-
-import org.opendaylight.controller.binding.generator.util.AbstractBaseType;
-import org.opendaylight.controller.sal.binding.model.api.*;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.*;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-abstract class AbstractGeneratedType extends AbstractBaseType implements GeneratedType {
-
-    private final Type parent;
-    private final String comment;
-    private final List<AnnotationType> annotations;
-    private final List<Type> implementsTypes;
-    private final List<Enumeration> enumerations;
-    private final List<Constant> constants;
-    private final List<MethodSignature> methodSignatures;
-    private final List<GeneratedType> enclosedTypes;
-    private final boolean isAbstract;
-
-    public AbstractGeneratedType(final Type parent, final String packageName, final String name, final String comment,
-            final List<AnnotationTypeBuilder> annotationBuilders, final boolean isAbstract,
-            final List<Type> implementsTypes, final List<GeneratedTypeBuilder> enclosedGenTypeBuilders,
-            final List<GeneratedTOBuilder> enclosedGenTOBuilders, final List<EnumBuilder> enumBuilders,
-            final List<Constant> constants, final List<MethodSignatureBuilder> methodBuilders) {
-        super(packageName, name);
-        this.parent = parent;
-        this.comment = comment;
-        this.annotations = toUnmodifiableAnnotations(annotationBuilders);
-        this.implementsTypes = Collections.unmodifiableList(implementsTypes);
-        this.constants = Collections.unmodifiableList(constants);
-        this.enumerations = toUnmodifiableEnumerations(enumBuilders);
-        this.methodSignatures = toUnmodifiableMethods(methodBuilders);
-        this.enclosedTypes = toUnmodifiableEnclosedTypes(enclosedGenTypeBuilders, enclosedGenTOBuilders);
-        this.isAbstract = isAbstract;
-    }
-
-    private List<GeneratedType> toUnmodifiableEnclosedTypes(final List<GeneratedTypeBuilder> enclosedGenTypeBuilders,
-            final List<GeneratedTOBuilder> enclosedGenTOBuilders) {
-        final List<GeneratedType> enclosedTypes = new ArrayList<>();
-        for (final GeneratedTypeBuilder builder : enclosedGenTypeBuilders) {
-            if (builder != null) {
-                enclosedTypes.add(builder.toInstance());
-            }
-        }
-
-        for (final GeneratedTOBuilder builder : enclosedGenTOBuilders) {
-            if (builder != null) {
-                enclosedTypes.add(builder.toInstance());
-            }
-        }
-        return enclosedTypes;
-    }
-
-    protected List<AnnotationType> toUnmodifiableAnnotations(final List<AnnotationTypeBuilder> annotationBuilders) {
-        final List<AnnotationType> annotations = new ArrayList<>();
-        for (final AnnotationTypeBuilder builder : annotationBuilders) {
-            annotations.add(builder.toInstance());
-        }
-        return Collections.unmodifiableList(annotations);
-    }
-
-    protected List<MethodSignature> toUnmodifiableMethods(List<MethodSignatureBuilder> methodBuilders) {
-        final List<MethodSignature> methods = new ArrayList<>();
-        for (final MethodSignatureBuilder methodBuilder : methodBuilders) {
-            methods.add(methodBuilder.toInstance(this));
-        }
-        return Collections.unmodifiableList(methods);
-    }
-
-    protected List<Enumeration> toUnmodifiableEnumerations(List<EnumBuilder> enumBuilders) {
-        final List<Enumeration> enums = new ArrayList<>();
-        for (final EnumBuilder enumBuilder : enumBuilders) {
-            enums.add(enumBuilder.toInstance(this));
-        }
-        return Collections.unmodifiableList(enums);
-    }
-
-    @Override
-    public Type getParentType() {
-        return parent;
-    }
-
-    @Override
-    public String getComment() {
-        return comment;
-    }
-
-    @Override
-    public List<AnnotationType> getAnnotations() {
-        return annotations;
-    }
-
-    @Override
-    public boolean isAbstract() {
-        return isAbstract;
-    }
-
-    @Override
-    public List<Type> getImplements() {
-        return implementsTypes;
-    }
-
-    @Override
-    public List<GeneratedType> getEnclosedTypes() {
-        return enclosedTypes;
-    }
-
-    @Override
-    public List<Enumeration> getEnumerations() {
-        return enumerations;
-    }
-
-    @Override
-    public List<Constant> getConstantDefinitions() {
-        return constants;
-    }
-
-    @Override
-    public List<MethodSignature> getMethodDefinitions() {
-        return methodSignatures;
-    }
-
-    @Override
-    public String toString() {
-        StringBuilder builder = new StringBuilder();
-        builder.append("GeneratedType [packageName=");
-        builder.append(getPackageName());
-        builder.append(", name=");
-        builder.append(getName());
-        if (parent != null) {
-            builder.append(", parent=");
-            builder.append(parent.getFullyQualifiedName());
-        } else {
-            builder.append(", parent=null");
-        }
-        builder.append(", comment=");
-        builder.append(comment);
-        builder.append(", annotations=");
-        builder.append(annotations);
-        builder.append(", enclosedTypes=");
-        builder.append(enclosedTypes);
-        builder.append(", enumerations=");
-        builder.append(enumerations);
-        builder.append(", constants=");
-        builder.append(constants);
-        builder.append(", methodSignatures=");
-        builder.append(methodSignatures);
-        builder.append("]");
-        return builder.toString();
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/AbstractGeneratedTypeBuilder.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/AbstractGeneratedTypeBuilder.java
deleted file mode 100644 (file)
index c6abc86..0000000
+++ /dev/null
@@ -1,228 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.binding.generator.util.generated.type.builder;
-
-import org.opendaylight.controller.binding.generator.util.AbstractBaseType;
-import org.opendaylight.controller.sal.binding.model.api.AccessModifier;
-import org.opendaylight.controller.sal.binding.model.api.Constant;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.*;
-
-import java.util.ArrayList;
-import java.util.List;
-
-abstract class AbstractGeneratedTypeBuilder extends AbstractBaseType implements GeneratedTypeBuilder {
-
-    private final String packageName;
-    private String comment = "";
-    private final String name;
-
-    private final List<AnnotationTypeBuilder> annotationBuilders = new ArrayList<>();
-    private final List<Type> implementsTypes = new ArrayList<>();
-    private final List<EnumBuilder> enumDefinitions = new ArrayList<>();
-    private final List<Constant> constants = new ArrayList<>();
-    private final List<MethodSignatureBuilder> methodDefinitions = new ArrayList<>();
-    private final List<GeneratedTypeBuilder> enclosedTypes = new ArrayList<>();
-    private final List<GeneratedTOBuilder> enclosingTransferObjects = new ArrayList<>();
-    private boolean isAbstract;
-
-    public AbstractGeneratedTypeBuilder(final String packageName, final String name) {
-        super(packageName, name);
-        if (packageName == null) {
-            throw new IllegalArgumentException("Package Name for Generated Type cannot be null!");
-        }
-        if (name == null) {
-            throw new IllegalArgumentException("Name of Generated Type cannot be null!");
-        }
-        this.packageName = packageName;
-        this.name = name;
-    }
-
-    protected String getComment() {
-        return comment;
-    }
-
-    protected List<AnnotationTypeBuilder> getAnnotations() {
-        return annotationBuilders;
-    }
-
-    protected boolean isAbstract() {
-        return isAbstract;
-    }
-
-    protected List<Type> getImplementsTypes() {
-        return implementsTypes;
-    }
-
-    protected List<EnumBuilder> getEnumerations() {
-        return enumDefinitions;
-    }
-
-    protected List<Constant> getConstants() {
-        return constants;
-    }
-
-    protected List<MethodSignatureBuilder> getMethodDefinitions() {
-        return methodDefinitions;
-    }
-
-    protected List<GeneratedTypeBuilder> getEnclosedTypes() {
-        return enclosedTypes;
-    }
-
-    protected List<GeneratedTOBuilder> getEnclosedTransferObjects() {
-        return enclosingTransferObjects;
-    }
-
-    @Override
-    public GeneratedTypeBuilder addEnclosingType(String name) {
-        if (name == null) {
-            throw new IllegalArgumentException("Name for Enclosing Generated Type cannot be null!");
-        }
-        GeneratedTypeBuilder builder = new GeneratedTOBuilderImpl(getFullyQualifiedName(), name);
-        enclosedTypes.add(builder);
-        return builder;
-    }
-
-    @Override
-    public GeneratedTOBuilder addEnclosingTransferObject(String name) {
-        if (name == null) {
-            throw new IllegalArgumentException("Name for Enclosing Generated Transfer Object cannot be null!");
-        }
-        GeneratedTOBuilder builder = new GeneratedTOBuilderImpl(getFullyQualifiedName(), name);
-        enclosingTransferObjects.add(builder);
-        return builder;
-    }
-
-    @Override
-    public void addEnclosingTransferObject(final GeneratedTOBuilder genTOBuilder) {
-        if (genTOBuilder == null) {
-            throw new IllegalArgumentException("Parameter genTOBuilder cannot be null!");
-        }
-        enclosingTransferObjects.add(genTOBuilder);
-    }
-
-    @Override
-    public void addComment(String comment) {
-        this.comment = comment;
-    }
-
-    @Override
-    public AnnotationTypeBuilder addAnnotation(final String packageName, final String name) {
-        if (packageName == null) {
-            throw new IllegalArgumentException("Package Name for Annotation Type cannot be null!");
-        }
-        if (name == null) {
-            throw new IllegalArgumentException("Name of Annotation Type cannot be null!");
-        }
-
-        final AnnotationTypeBuilder builder = new AnnotationTypeBuilderImpl(packageName, name);
-        annotationBuilders.add(builder);
-        return builder;
-    }
-
-    @Override
-    public void setAbstract(boolean isAbstract) {
-        this.isAbstract = isAbstract;
-    }
-
-    @Override
-    public boolean addImplementsType(Type genType) {
-        if (genType == null) {
-            throw new IllegalArgumentException("Type cannot be null");
-        }
-        return implementsTypes.add(genType);
-    }
-
-    @Override
-    public Constant addConstant(Type type, String name, Object value) {
-        if (type == null) {
-            throw new IllegalArgumentException("Returning Type for Constant cannot be null!");
-        }
-        if (name == null) {
-            throw new IllegalArgumentException("Name of constant cannot be null!");
-        }
-
-        final Constant constant = new ConstantImpl(this, type, name, value);
-        constants.add(constant);
-        return constant;
-    }
-
-    @Override
-    public EnumBuilder addEnumeration(String name) {
-        if (name == null) {
-            throw new IllegalArgumentException("Name of enumeration cannot be null!");
-        }
-        final EnumBuilder builder = new EnumerationBuilderImpl(getFullyQualifiedName(), name);
-        enumDefinitions.add(builder);
-        return builder;
-    }
-
-    @Override
-    public MethodSignatureBuilder addMethod(String name) {
-        if (name == null) {
-            throw new IllegalArgumentException("Name of method cannot be null!");
-        }
-        final MethodSignatureBuilder builder = new MethodSignatureBuilderImpl(name);
-        builder.setAccessModifier(AccessModifier.PUBLIC);
-        builder.setAbstract(true);
-        methodDefinitions.add(builder);
-        return builder;
-    }
-
-    @Override
-    public boolean containsMethod(String name) {
-        if (name == null) {
-            throw new IllegalArgumentException("Parameter name can't be null");
-        }
-        for (MethodSignatureBuilder methodDefinition : methodDefinitions) {
-            if (name.equals(methodDefinition.getName())) {
-                return true;
-            }
-        }
-        return false;
-    }
-
-    @Override
-    public int hashCode() {
-        final int prime = 31;
-        int result = 1;
-        result = prime * result + ((getName() == null) ? 0 : getName().hashCode());
-        result = prime * result + ((getPackageName() == null) ? 0 : getPackageName().hashCode());
-        return result;
-    }
-
-    @Override
-    public boolean equals(Object obj) {
-        if (this == obj) {
-            return true;
-        }
-        if (obj == null) {
-            return false;
-        }
-        if (getClass() != obj.getClass()) {
-            return false;
-        }
-        AbstractGeneratedTypeBuilder other = (AbstractGeneratedTypeBuilder) obj;
-        if (getName() == null) {
-            if (other.getName() != null) {
-                return false;
-            }
-        } else if (!getName().equals(other.getName())) {
-            return false;
-        }
-        if (getPackageName() == null) {
-            if (other.getPackageName() != null) {
-                return false;
-            }
-        } else if (!getPackageName().equals(other.getPackageName())) {
-            return false;
-        }
-        return true;
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/AbstractTypeMember.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/AbstractTypeMember.java
deleted file mode 100644 (file)
index 5719d35..0000000
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.binding.generator.util.generated.type.builder;
-
-
-import org.opendaylight.controller.sal.binding.model.api.AccessModifier;
-import org.opendaylight.controller.sal.binding.model.api.AnnotationType;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.controller.sal.binding.model.api.TypeMember;
-
-import java.util.Collections;
-import java.util.List;
-
-abstract class AbstractTypeMember implements TypeMember {
-
-    private final String name;
-    private final String comment;
-    private final Type definingType;
-    private final Type returnType;
-    private final List<AnnotationType> annotations;
-    private final boolean isFinal;
-    private final AccessModifier accessModifier;
-
-    public AbstractTypeMember(final Type definingType, final String name,  final List<AnnotationType> annotations,
-                              final String comment, final AccessModifier accessModifier, final Type returnType,
-                              boolean isFinal) {
-        super();
-        this.definingType = definingType;
-        this.name = name;
-        this.annotations = Collections.unmodifiableList(annotations);
-        this.comment = comment;
-        this.accessModifier = accessModifier;
-        this.returnType = returnType;
-        this.isFinal = isFinal;
-    }
-
-    @Override
-    public List<AnnotationType> getAnnotations() {
-        return annotations;
-    }
-
-    @Override
-    public String getName() {
-        return name;
-    }
-
-    @Override
-    public String getComment() {
-        return comment;
-    }
-
-    @Override
-    public Type getDefiningType() {
-        return definingType;
-    }
-
-    @Override
-    public AccessModifier getAccessModifier() {
-        return accessModifier;
-    }
-
-    @Override
-    public Type getReturnType() {
-        return returnType;
-    }
-
-    @Override
-    public boolean isFinal() {
-        return isFinal;
-    }
-
-    @Override
-    public int hashCode() {
-        final int prime = 31;
-        int result = 1;
-        result = prime * result + ((getName() == null) ? 0 : getName().hashCode());
-        result = prime * result
-                + ((getReturnType() == null) ? 0 : getReturnType().hashCode());
-        return result;
-    }
-
-    @Override
-    public boolean equals(Object obj) {
-        if (this == obj) {
-            return true;
-        }
-        if (obj == null) {
-            return false;
-        }
-        if (getClass() != obj.getClass()) {
-            return false;
-        }
-        MethodSignatureImpl other = (MethodSignatureImpl) obj;
-        if (getName() == null) {
-            if (other.getName() != null) {
-                return false;
-            }
-        } else if (!getName().equals(other.getName())) {
-            return false;
-        }
-        if (getReturnType() == null) {
-            if (other.getReturnType() != null) {
-                return false;
-            }
-        } else if (!getReturnType().equals(other.getReturnType())) {
-            return false;
-        }
-        return true;
-    }
-
-    @Override
-    public String toString() {
-        StringBuilder builder = new StringBuilder();
-        builder.append("MethodSignatureImpl [name=");
-        builder.append(getName());
-        builder.append(", comment=");
-        builder.append(getComment());
-        if (getDefiningType() != null) {
-            builder.append(", definingType=");
-            builder.append(getDefiningType().getPackageName());
-            builder.append(".");
-            builder.append(getDefiningType().getName());
-        } else {
-            builder.append(", definingType= null");
-        }
-        builder.append(", returnType=");
-        builder.append(getReturnType());
-        builder.append(", annotations=");
-        builder.append(getAnnotations());
-        builder.append("]");
-        return builder.toString();
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/AbstractTypeMemberBuilder.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/AbstractTypeMemberBuilder.java
deleted file mode 100644 (file)
index 677c5e2..0000000
+++ /dev/null
@@ -1,167 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.binding.generator.util.generated.type.builder;
-
-import org.opendaylight.controller.sal.binding.model.api.AccessModifier;
-import org.opendaylight.controller.sal.binding.model.api.AnnotationType;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.AnnotationTypeBuilder;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.TypeMemberBuilder;
-
-import java.util.ArrayList;
-import java.util.List;
-
-abstract class AbstractTypeMemberBuilder implements TypeMemberBuilder {
-    private final String name;
-    private Type returnType;
-    private final List<AnnotationTypeBuilder> annotationBuilders;
-    private String comment = "";
-    private boolean isFinal;
-    private AccessModifier accessModifier;
-
-    public AbstractTypeMemberBuilder(final String name) {
-        this.name = name;
-        this.annotationBuilders = new ArrayList<>();
-    }
-
-    @Override
-    public AnnotationTypeBuilder addAnnotation(String packageName, String name) {
-        if (packageName == null) {
-            throw new IllegalArgumentException("Annotation Type cannot have package name null!");
-        }
-        if (name == null) {
-            throw new IllegalArgumentException("Annotation Type cannot have name as null!");
-        }
-        final AnnotationTypeBuilder builder = new AnnotationTypeBuilderImpl(
-                    packageName, name);
-        annotationBuilders.add(builder);
-        return builder;
-    }
-
-    protected Type getReturnType() {
-        return returnType;
-    }
-
-    protected List<AnnotationTypeBuilder> getAnnotationBuilders() {
-        return annotationBuilders;
-    }
-
-    protected String getComment() {
-        return comment;
-    }
-
-    protected boolean isFinal() {
-        return isFinal;
-    }
-
-    protected AccessModifier getAccessModifier() {
-        return accessModifier;
-    }
-
-    @Override
-    public String getName() {
-        return name;
-    }
-
-    @Override
-    public void setReturnType(Type returnType) {
-        if (returnType == null) {
-            throw new IllegalArgumentException("Return Type of member cannot be null!");
-        }
-        this.returnType = returnType;
-    }
-
-    @Override
-    public void setAccessModifier(AccessModifier modifier) {
-        if (modifier == null) {
-            throw new IllegalArgumentException("Access Modifier for member type cannot be null!");
-        }
-        this.accessModifier = modifier;
-    }
-
-    @Override
-    public void setComment(String comment) {
-        if (comment == null) {
-            this.comment = "";
-        }
-        this.comment = comment;
-    }
-
-    @Override
-    public void setFinal(boolean isFinal) {
-        this.isFinal = isFinal;
-    }
-
-    protected List<AnnotationType> toAnnotationTypes() {
-        final List<AnnotationType> annotations = new ArrayList<>();
-        for (final AnnotationTypeBuilder annotBuilder : getAnnotationBuilders()) {
-            if (annotBuilder != null) {
-                annotations.add(annotBuilder.toInstance());
-            }
-        }
-        return annotations;
-    }
-
-    @Override
-    public int hashCode() {
-        final int prime = 31;
-        int result = 1;
-        result = prime * result + ((getName() == null) ? 0 : getName().hashCode());
-        result = prime * result
-                + ((getReturnType() == null) ? 0 : getReturnType().hashCode());
-        return result;
-    }
-
-    @Override
-    public boolean equals(Object obj) {
-        if (this == obj) {
-            return true;
-        }
-        if (obj == null) {
-            return false;
-        }
-        if (getClass() != obj.getClass()) {
-            return false;
-        }
-        MethodSignatureBuilderImpl other = (MethodSignatureBuilderImpl) obj;
-        if (getName() == null) {
-            if (other.getName() != null) {
-                return false;
-            }
-        } else if (!getName().equals(other.getName())) {
-            return false;
-        }
-        if (getReturnType() == null) {
-            if (other.getReturnType() != null) {
-                return false;
-            }
-        } else if (!getReturnType().equals(other.getReturnType())) {
-            return false;
-        }
-        return true;
-    }
-
-    @Override
-    public String toString() {
-        StringBuilder builder = new StringBuilder();
-        builder.append("GeneratedPropertyImpl [name=");
-        builder.append(getName());
-        builder.append(", annotations=");
-        builder.append(getAnnotationBuilders());
-        builder.append(", comment=");
-        builder.append(getComment());
-        builder.append(", returnType=");
-        builder.append(getReturnType());
-        builder.append(", isFinal=");
-        builder.append(isFinal());
-        builder.append(", modifier=");
-        builder.append(getAccessModifier());
-        builder.append("]");
-        return builder.toString();
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/AnnotationTypeBuilderImpl.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/AnnotationTypeBuilderImpl.java
deleted file mode 100644 (file)
index 3b49952..0000000
+++ /dev/null
@@ -1,329 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.binding.generator.util.generated.type.builder;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-import org.opendaylight.controller.binding.generator.util.AbstractBaseType;
-import org.opendaylight.controller.sal.binding.model.api.AnnotationType;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.AnnotationTypeBuilder;
-
-final class AnnotationTypeBuilderImpl extends AbstractBaseType implements AnnotationTypeBuilder {
-    
-    private final String packageName;
-    private final String name;
-    private final List<AnnotationTypeBuilder> annotationBuilders;
-    private final List<AnnotationType.Parameter> parameters;
-    
-    public AnnotationTypeBuilderImpl(final String packageName, final String name) {
-        super(packageName, name);
-        this.packageName = packageName;
-        this.name = name;
-        annotationBuilders = new ArrayList<>();
-        parameters = new ArrayList<>();
-    }
-
-    @Override
-    public AnnotationTypeBuilder addAnnotation(final String packageName, final String name) {
-        if (packageName != null && name != null) {
-            final AnnotationTypeBuilder builder = new AnnotationTypeBuilderImpl(packageName, name);
-            if (annotationBuilders.add(builder)) {
-                return builder;
-            }
-        }
-        return null;
-    }
-
-    @Override
-    public boolean addParameter(String paramName, String value) {
-        if ((paramName != null) && (value != null)) {
-            return parameters.add(new ParameterImpl(paramName, value));
-        }
-        return false;
-    }
-
-    @Override
-    public boolean addParameters(String paramName, List<String> values) {
-        if ((paramName != null) && (values != null)) {
-            return parameters.add(new ParameterImpl(paramName, values));
-        }
-        return false;
-    }
-
-    @Override
-    public AnnotationType toInstance() {
-        return new AnnotationTypeImpl(packageName, name, annotationBuilders, parameters);
-    }
-
-    @Override
-    public int hashCode() {
-        final int prime = 31;
-        int result = 1;
-        result = prime * result + ((name == null) ? 0 : name.hashCode());
-        result = prime * result
-                + ((packageName == null) ? 0 : packageName.hashCode());
-        return result;
-    }
-
-    @Override
-    public boolean equals(Object obj) {
-        if (this == obj) {
-            return true;
-        }
-        if (obj == null) {
-            return false;
-        }
-        if (getClass() != obj.getClass()) {
-            return false;
-        }
-        AnnotationTypeBuilderImpl other = (AnnotationTypeBuilderImpl) obj;
-        if (name == null) {
-            if (other.name != null) {
-                return false;
-            }
-        } else if (!name.equals(other.name)) {
-            return false;
-        }
-        if (packageName == null) {
-            if (other.packageName != null) {
-                return false;
-            }
-        } else if (!packageName.equals(other.packageName)) {
-            return false;
-        }
-        return true;
-    }
-
-    @Override
-    public String toString() {
-        StringBuilder builder = new StringBuilder();
-        builder.append("AnnotationTypeBuilder [packageName=");
-        builder.append(packageName);
-        builder.append(", name=");
-        builder.append(name);
-        builder.append(", annotationBuilders=");
-        builder.append(annotationBuilders);
-        builder.append(", parameters=");
-        builder.append(parameters);
-        builder.append("]");
-        return builder.toString();
-    }
-    
-    private static final class AnnotationTypeImpl implements AnnotationType {
-        
-        private final String packageName;
-        private final String name;
-        private List<AnnotationType> annotations;
-        private final List<AnnotationType.Parameter> parameters;
-        private List<String> paramNames;
-        
-        public AnnotationTypeImpl(String packageName, String name,
-                List<AnnotationTypeBuilder> annotationBuilders,
-                List<AnnotationType.Parameter> parameters) {
-            super();
-            this.packageName = packageName;
-            this.name = name;
-            
-            this.annotations = new ArrayList<>();
-            for (final AnnotationTypeBuilder builder : annotationBuilders) {
-                annotations.add(builder.toInstance());
-            }
-            
-            this.annotations = Collections.unmodifiableList(annotations); 
-            this.parameters = Collections.unmodifiableList(parameters);
-            
-            paramNames = new ArrayList<>();
-            for (final AnnotationType.Parameter parameter : parameters) {
-                paramNames.add(parameter.getName());
-            }
-            this.paramNames = Collections.unmodifiableList(paramNames);
-        }
-        
-        @Override
-        public String getPackageName() {
-            return packageName;
-        }
-
-        @Override
-        public String getName() {
-            return name;
-        }
-
-        @Override
-        public String getFullyQualifiedName() {
-            return packageName + "." + name;
-        }
-
-        @Override
-        public List<AnnotationType> getAnnotations() {
-            return annotations;
-        }
-
-        @Override
-        public Parameter getParameter(final String paramName) {
-            if (paramName != null) {
-                for (final AnnotationType.Parameter parameter : parameters) {
-                    if (parameter.getName().equals(paramName)) {
-                        return parameter;
-                    }
-                }
-            }
-            return null;
-        }
-
-        @Override
-        public List<Parameter> getParameters() {
-            return parameters;
-        }
-
-        @Override
-        public List<String> getParameterNames() {
-            return paramNames;
-        }
-        
-        @Override
-        public boolean containsParameters() {
-            return !parameters.isEmpty();
-        }
-        
-        @Override
-        public int hashCode() {
-            final int prime = 31;
-            int result = 1;
-            result = prime * result + ((name == null) ? 0 : name.hashCode());
-            result = prime * result
-                    + ((packageName == null) ? 0 : packageName.hashCode());
-            return result;
-        }
-
-        @Override
-        public boolean equals(Object obj) {
-            if (this == obj) {
-                return true;
-            }
-            if (obj == null) {
-                return false;
-            }
-            if (getClass() != obj.getClass()) {
-                return false;
-            }
-            AnnotationTypeImpl other = (AnnotationTypeImpl) obj;
-            if (name == null) {
-                if (other.name != null) {
-                    return false;
-                }
-            } else if (!name.equals(other.name)) {
-                return false;
-            }
-            if (packageName == null) {
-                if (other.packageName != null) {
-                    return false;
-                }
-            } else if (!packageName.equals(other.packageName)) {
-                return false;
-            }
-            return true;
-        }
-
-        @Override
-        public String toString() {
-            StringBuilder builder = new StringBuilder();
-            builder.append("AnnotationType [packageName=");
-            builder.append(packageName);
-            builder.append(", name=");
-            builder.append(name);
-            builder.append(", annotations=");
-            builder.append(annotations);
-            builder.append(", parameters=");
-            builder.append(parameters);
-            builder.append("]");
-            return builder.toString();
-        }
-    }
-    
-    private static final class ParameterImpl implements AnnotationType.Parameter {
-        
-        private final String name;
-        private final String value;
-        private final List<String> values;
-        
-        public ParameterImpl(String name, String value) {
-            super();
-            this.name = name;
-            this.value = value;
-            this.values = Collections.emptyList();
-        }
-        
-        public ParameterImpl(String name, List<String> values) {
-            super();
-            this.name = name;
-            this.values = values;
-            this.value = null;
-        }
-
-        @Override
-        public String getName() {
-            return name;
-        }
-
-        @Override
-        public String getValue() {
-            return value;
-        }
-
-        @Override
-        public List<String> getValues() {
-            return values;
-        }
-
-        @Override
-        public int hashCode() {
-            final int prime = 31;
-            int result = 1;
-            result = prime * result + ((name == null) ? 0 : name.hashCode());
-            return result;
-        }
-
-        @Override
-        public boolean equals(Object obj) {
-            if (this == obj) {
-                return true;
-            }
-            if (obj == null) {
-                return false;
-            }
-            if (getClass() != obj.getClass()) {
-                return false;
-            }
-            ParameterImpl other = (ParameterImpl) obj;
-            if (name == null) {
-                if (other.name != null) {
-                    return false;
-                }
-            } else if (!name.equals(other.name)) {
-                return false;
-            }
-            return true;
-        }
-
-        @Override
-        public String toString() {
-            StringBuilder builder = new StringBuilder();
-            builder.append("ParameterImpl [name=");
-            builder.append(name);
-            builder.append(", value=");
-            builder.append(value);
-            builder.append(", values=");
-            builder.append(values);
-            builder.append("]");
-            return builder.toString();
-        }
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/ConstantImpl.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/ConstantImpl.java
deleted file mode 100644 (file)
index 5d7ba4e..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.binding.generator.util.generated.type.builder;
-
-import org.opendaylight.controller.sal.binding.model.api.Constant;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-
-final class ConstantImpl implements Constant {
-
-    final Type definingType;
-    private final Type type;
-    private final String name;
-    private final Object value;
-
-    public ConstantImpl(final Type definingType, final Type type,
-                        final String name, final Object value) {
-        super();
-        this.definingType = definingType;
-        this.type = type;
-        this.name = name;
-        this.value = value;
-    }
-
-    @Override
-    public Type getDefiningType() {
-        return definingType;
-    }
-
-    @Override
-    public Type getType() {
-        return type;
-    }
-
-    @Override
-    public String getName() {
-        return name;
-    }
-
-    @Override
-    public Object getValue() {
-        return value;
-    }
-
-    @Override
-    public String toFormattedString() {
-        StringBuilder builder = new StringBuilder();
-        builder.append(type);
-        builder.append(" ");
-        builder.append(name);
-        builder.append(" ");
-        builder.append(value);
-        return builder.toString();
-    }
-
-    /*
-     * (non-Javadoc)
-     *
-     * @see java.lang.Object#hashCode()
-     */
-    @Override
-    public int hashCode() {
-        final int prime = 31;
-        int result = 1;
-        result = prime * result + ((name == null) ? 0 : name.hashCode());
-        result = prime * result + ((type == null) ? 0 : type.hashCode());
-        return result;
-    }
-
-    /*
-     * (non-Javadoc)
-     *
-     * @see java.lang.Object#equals(java.lang.Object)
-     */
-    @Override
-    public boolean equals(Object obj) {
-        if (this == obj) {
-            return true;
-        }
-        if (obj == null) {
-            return false;
-        }
-        if (getClass() != obj.getClass()) {
-            return false;
-        }
-        ConstantImpl other = (ConstantImpl) obj;
-        if (name == null) {
-            if (other.name != null) {
-                return false;
-            }
-        } else if (!name.equals(other.name)) {
-            return false;
-        }
-        if (type == null) {
-            if (other.type != null) {
-                return false;
-            }
-        } else if (!type.equals(other.type)) {
-            return false;
-        }
-        if (value == null) {
-            if (other.value != null) {
-                return false;
-            }
-        } else if (!value.equals(other.value)) {
-            return false;
-        }
-        return true;
-    }
-
-    @Override
-    public String toString() {
-        StringBuilder builder = new StringBuilder();
-        builder.append("Constant [type=");
-        builder.append(type);
-        builder.append(", name=");
-        builder.append(name);
-        builder.append(", value=");
-        builder.append(value);
-        if (definingType != null) {
-            builder.append(", definingType=");
-            builder.append(definingType.getPackageName());
-            builder.append(".");
-            builder.append(definingType.getName());
-        } else {
-            builder.append(", definingType= null");
-        }
-        builder.append("]");
-        return builder.toString();
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/EnumerationBuilderImpl.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/EnumerationBuilderImpl.java
deleted file mode 100644 (file)
index c45c765..0000000
+++ /dev/null
@@ -1,373 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.binding.generator.util.generated.type.builder;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-import org.opendaylight.controller.binding.generator.util.AbstractBaseType;
-import org.opendaylight.controller.sal.binding.model.api.AnnotationType;
-import org.opendaylight.controller.sal.binding.model.api.Enumeration;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.AnnotationTypeBuilder;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.EnumBuilder;
-
-public final class EnumerationBuilderImpl extends AbstractBaseType implements EnumBuilder {
-    private final String packageName;
-    private final String name;
-    private final List<Enumeration.Pair> values;
-    private final List<AnnotationTypeBuilder> annotationBuilders = new ArrayList<>();
-    
-    public EnumerationBuilderImpl(final String packageName, final String name) {
-        super(packageName, name);
-        this.packageName = packageName;
-        this.name = name;
-        values = new ArrayList<>();
-    }
-
-    @Override
-    public AnnotationTypeBuilder addAnnotation(final String packageName, final String name) {
-        if (packageName != null && name != null) {
-            final AnnotationTypeBuilder builder = new AnnotationTypeBuilderImpl(packageName, name);
-            if (annotationBuilders.add(builder)) {
-                return builder;
-            }
-        }
-        return null;
-    }
-    
-    @Override
-    public void addValue(final String name, final Integer value) {
-        values.add(new EnumPairImpl(name, value));
-    }
-
-    @Override
-    public Enumeration toInstance(final Type definingType) {
-        return new EnumerationImpl(definingType, annotationBuilders, packageName, name, values);
-    }
-    
-    /*
-     * (non-Javadoc)
-     * 
-     * @see java.lang.Object#hashCode()
-     */
-    @Override
-    public int hashCode() {
-        final int prime = 31;
-        int result = 1;
-        result = prime * result + ((name == null) ? 0 : name.hashCode());
-        result = prime * result
-                + ((packageName == null) ? 0 : packageName.hashCode());
-        return result;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see java.lang.Object#equals(java.lang.Object)
-     */
-    @Override
-    public boolean equals(Object obj) {
-        if (this == obj) {
-            return true;
-        }
-        if (obj == null) {
-            return false;
-        }
-        if (getClass() != obj.getClass()) {
-            return false;
-        }
-        EnumerationBuilderImpl other = (EnumerationBuilderImpl) obj;
-        if (name == null) {
-            if (other.name != null) {
-                return false;
-            }
-        } else if (!name.equals(other.name)) {
-            return false;
-        }
-        if (packageName == null) {
-            if (other.packageName != null) {
-                return false;
-            }
-        } else if (!packageName.equals(other.packageName)) {
-            return false;
-        }
-        return true;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see java.lang.Object#toString()
-     */
-    @Override
-    public String toString() {
-        StringBuilder builder = new StringBuilder();
-        builder.append("EnumerationBuilderImpl [packageName=");
-        builder.append(packageName);
-        builder.append(", name=");
-        builder.append(name);
-        builder.append(", values=");
-        builder.append(values);
-        builder.append("]");
-        return builder.toString();
-    }
-
-    private static final class EnumPairImpl implements Enumeration.Pair {
-
-        private final String name;
-        private final Integer value;
-
-        public EnumPairImpl(String name, Integer value) {
-            super();
-            this.name = name;
-            this.value = value;
-        }
-
-        @Override
-        public String getName() {
-            return name;
-        }
-
-        @Override
-        public Integer getValue() {
-            return value;
-        }
-
-        /*
-         * (non-Javadoc)
-         * 
-         * @see java.lang.Object#hashCode()
-         */
-        @Override
-        public int hashCode() {
-            final int prime = 31;
-            int result = 1;
-            result = prime * result + ((name == null) ? 0 : name.hashCode());
-            result = prime * result + ((value == null) ? 0 : value.hashCode());
-            return result;
-        }
-
-        /*
-         * (non-Javadoc)
-         * 
-         * @see java.lang.Object#equals(java.lang.Object)
-         */
-        @Override
-        public boolean equals(Object obj) {
-            if (this == obj) {
-                return true;
-            }
-            if (obj == null) {
-                return false;
-            }
-            if (getClass() != obj.getClass()) {
-                return false;
-            }
-            EnumPairImpl other = (EnumPairImpl) obj;
-            if (name == null) {
-                if (other.name != null) {
-                    return false;
-                }
-            } else if (!name.equals(other.name)) {
-                return false;
-            }
-            if (value == null) {
-                if (other.value != null) {
-                    return false;
-                }
-            } else if (!value.equals(other.value)) {
-                return false;
-            }
-            return true;
-        }
-
-        /*
-         * (non-Javadoc)
-         * 
-         * @see java.lang.Object#toString()
-         */
-        @Override
-        public String toString() {
-            StringBuilder builder = new StringBuilder();
-            builder.append("EnumPair [name=");
-            builder.append(name);
-            builder.append(", value=");
-            builder.append(value);
-            builder.append("]");
-            return builder.toString();
-        }
-    }
-
-    private static final class EnumerationImpl implements Enumeration {
-
-        private final Type definingType;
-        private final String packageName;
-        private final String name;
-        private final List<Pair> values;
-        private List<AnnotationType> annotations = new ArrayList<>();
-        
-        public EnumerationImpl(final Type definingType,
-                final List<AnnotationTypeBuilder> annotationBuilders,
-                final String packageName, final String name,
-                final List<Pair> values) {
-            super();
-            this.definingType = definingType;
-            for (final AnnotationTypeBuilder builder : annotationBuilders) {
-                annotations.add(builder.toInstance());
-            }
-            this.annotations = Collections.unmodifiableList(annotations); 
-            this.packageName = packageName;
-            this.name = name;
-            this.values = Collections.unmodifiableList(values);
-        }
-
-        @Override
-        public Type getDefiningType() {
-            return definingType;
-        }
-
-        @Override
-        public String getPackageName() {
-            return packageName;
-        }
-
-        @Override
-        public String getName() {
-            return name;
-        }
-
-        @Override
-        public String getFullyQualifiedName() {
-            return packageName + "." + name;
-        }
-
-        @Override
-        public List<Pair> getValues() {
-            return values;
-        }
-        
-        @Override
-        public List<AnnotationType> getAnnotations() {
-            return annotations;
-        }
-
-        @Override
-        public String toFormattedString() {
-            StringBuilder builder = new StringBuilder();
-            builder.append("public enum");
-            builder.append(" ");
-            builder.append(name);
-            builder.append(" {");
-            builder.append("\n");
-
-            int i = 0;
-            for (final Enumeration.Pair valPair : values) {
-                builder.append("\t");
-                builder.append(" ");
-                builder.append(valPair.getName());
-                builder.append(" (");
-                builder.append(valPair.getValue());
-
-                if (i == (values.size() - 1)) {
-                    builder.append(" );");
-                } else {
-                    builder.append(" ),");
-                }
-                ++i;
-            }
-            return builder.toString();
-        }
-
-        /*
-         * (non-Javadoc)
-         * 
-         * @see java.lang.Object#hashCode()
-         */
-        @Override
-        public int hashCode() {
-            final int prime = 31;
-            int result = 1;
-            result = prime * result + ((name == null) ? 0 : name.hashCode());
-            result = prime * result
-                    + ((packageName == null) ? 0 : packageName.hashCode());
-            result = prime * result
-                    + ((values == null) ? 0 : values.hashCode());
-
-            return result;
-        }
-
-        /*
-         * (non-Javadoc)
-         * 
-         * @see java.lang.Object#equals(java.lang.Object)
-         */
-        @Override
-        public boolean equals(Object obj) {
-            if (this == obj) {
-                return true;
-            }
-            if (obj == null) {
-                return false;
-            }
-            if (getClass() != obj.getClass()) {
-                return false;
-            }
-            EnumerationImpl other = (EnumerationImpl) obj;
-            if (name == null) {
-                if (other.name != null) {
-                    return false;
-                }
-            } else if (!name.equals(other.name)) {
-                return false;
-            }
-            if (packageName == null) {
-                if (other.packageName != null) {
-                    return false;
-                }
-            } else if (!packageName.equals(other.packageName)) {
-                return false;
-            }
-            if (values == null) {
-                if (other.values != null) {
-                    return false;
-                }
-            } else if (!values.equals(other.values)) {
-                return false;
-            }
-            return true;
-        }
-
-        /*
-         * (non-Javadoc)
-         * 
-         * @see java.lang.Object#toString()
-         */
-        @Override
-        public String toString() {
-            StringBuilder builder = new StringBuilder();
-            builder.append("Enumeration [packageName=");
-            builder.append(packageName);
-            if (definingType != null) {
-                builder.append(", definingType=");
-                builder.append(definingType.getPackageName());
-                builder.append(".");
-                builder.append(definingType.getName());
-            } else {
-                builder.append(", definingType= null");
-            }
-            builder.append(", name=");
-            builder.append(name);
-            builder.append(", values=");
-            builder.append(values);
-            builder.append("]");
-            return builder.toString();
-        }
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/GeneratedPropertyBuilderImpl.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/GeneratedPropertyBuilderImpl.java
deleted file mode 100644 (file)
index 8886085..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.binding.generator.util.generated.type.builder;
-
-import org.opendaylight.controller.sal.binding.model.api.AnnotationType;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedProperty;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.GeneratedPropertyBuilder;
-
-import java.util.List;
-
-final class GeneratedPropertyBuilderImpl extends AbstractTypeMemberBuilder implements GeneratedPropertyBuilder {
-
-    private boolean isReadOnly;
-
-    public GeneratedPropertyBuilderImpl(String name) {
-        super(name);
-        this.isReadOnly = true;
-    }
-
-    @Override
-    public void setReadOnly(boolean isReadOnly) {
-        this.isReadOnly = isReadOnly;
-    }
-
-    @Override
-    public GeneratedProperty toInstance(Type definingType) {
-        final List<AnnotationType> annotations = toAnnotationTypes();
-        return new GeneratedPropertyImpl(definingType, getName(), annotations, getComment(), getAccessModifier(),
-                getReturnType(), isFinal(), isReadOnly);
-    }
-
-    @Override
-    public String toString() {
-        StringBuilder builder = new StringBuilder();
-        builder.append("GeneratedPropertyImpl [name=");
-        builder.append(getName());
-        builder.append(", annotations=");
-        builder.append(getAnnotationBuilders());
-        builder.append(", comment=");
-        builder.append(getComment());
-        builder.append(", returnType=");
-        builder.append(getReturnType());
-        builder.append(", isFinal=");
-        builder.append(isFinal());
-        builder.append(", isReadOnly=");
-        builder.append(isReadOnly);
-        builder.append(", modifier=");
-        builder.append(getAccessModifier());
-        builder.append("]");
-        return builder.toString();
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/GeneratedPropertyImpl.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/GeneratedPropertyImpl.java
deleted file mode 100644 (file)
index 6d11bfd..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.binding.generator.util.generated.type.builder;
-
-import org.opendaylight.controller.sal.binding.model.api.AccessModifier;
-import org.opendaylight.controller.sal.binding.model.api.AnnotationType;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedProperty;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-
-import java.util.List;
-
-final class GeneratedPropertyImpl extends AbstractTypeMember implements GeneratedProperty {
-
-    private boolean isReadOnly;
-
-    public GeneratedPropertyImpl(Type definingType, String name, List<AnnotationType> annotations, String comment,
-                                 AccessModifier accessModifier, Type returnType, boolean isFinal, boolean isReadOnly) {
-        super(definingType, name, annotations, comment, accessModifier, returnType, isFinal);
-        this.isReadOnly = isReadOnly;
-    }
-
-    @Override
-    public boolean isReadOnly() {
-        return isReadOnly;
-    }
-
-    @Override
-    public String toString() {
-        StringBuilder builder = new StringBuilder();
-        builder.append("GeneratedPropertyImpl [name=");
-        builder.append(getName());
-        builder.append(", annotations=");
-        builder.append(getAnnotations());
-        builder.append(", comment=");
-        builder.append(getComment());
-        if (getDefiningType() != null) {
-            builder.append(", parent=");
-            builder.append(getDefiningType().getPackageName());
-            builder.append(".");
-            builder.append(getDefiningType().getName());
-        } else {
-            builder.append(", parent=null");
-        }
-        builder.append(", returnType=");
-        builder.append(getReturnType());
-        builder.append(", isFinal=");
-        builder.append(isFinal());
-        builder.append(", isReadOnly=");
-        builder.append(isReadOnly);
-        builder.append(", modifier=");
-        builder.append(getAccessModifier());
-        builder.append("]");
-        return builder.toString();
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/GeneratedTOBuilderImpl.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/GeneratedTOBuilderImpl.java
deleted file mode 100644 (file)
index 571bc4a..0000000
+++ /dev/null
@@ -1,240 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.binding.generator.util.generated.type.builder;
-
-import org.opendaylight.controller.sal.binding.model.api.*;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.*;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-public final class GeneratedTOBuilderImpl extends AbstractGeneratedTypeBuilder implements GeneratedTOBuilder {
-
-    private GeneratedTransferObject extendsType;
-    private final List<GeneratedPropertyBuilder> properties = new ArrayList<>();
-    private final List<GeneratedPropertyBuilder> equalsProperties = new ArrayList<>();
-    private final List<GeneratedPropertyBuilder> hashProperties = new ArrayList<>();
-    private final List<GeneratedPropertyBuilder> toStringProperties = new ArrayList<>();
-    private boolean isUnionType = false;
-
-    public GeneratedTOBuilderImpl(String packageName, String name) {
-        super(packageName, name);
-        setAbstract(false);
-    }
-
-    @Override
-    public void setExtendsType(final GeneratedTransferObject genTransObj) {
-        if (genTransObj == null) {
-            throw new IllegalArgumentException("Generated Transfer Object cannot be null!");
-        }
-        extendsType = genTransObj;
-    }
-
-    @Override
-    public GeneratedPropertyBuilder addProperty(String name) {
-        final GeneratedPropertyBuilder builder = new GeneratedPropertyBuilderImpl(name);
-        builder.setAccessModifier(AccessModifier.PUBLIC);
-        properties.add(builder);
-        return builder;
-    }
-
-    @Override
-    public boolean containsProperty(String name) {
-        if (name == null) {
-            throw new IllegalArgumentException("Parameter name can't be null");
-        }
-        for (GeneratedPropertyBuilder property : properties) {
-            if (name.equals(property.getName())) {
-                return true;
-            }
-        }
-        return false;
-    }
-
-    /**
-     * Add new Method Signature definition for Generated Type Builder and
-     * returns Method Signature Builder for specifying all Method parameters. <br>
-     * Name of Method cannot be <code>null</code>, if it is <code>null</code>
-     * the method SHOULD throw {@link IllegalArgumentException} <br>
-     * By <i>Default</i> the MethodSignatureBuilder SHOULD be pre-set as
-     * {@link MethodSignatureBuilder#setAbstract(false)},
-     * {@link MethodSignatureBuilder#setFinal(false)} and
-     * {@link MethodSignatureBuilder#setAccessModifier(PUBLIC)}
-     * 
-     * @param name
-     *            Name of Method
-     * @return <code>new</code> instance of Method Signature Builder.
-     */
-    @Override
-    public MethodSignatureBuilder addMethod(String name) {
-        final MethodSignatureBuilder builder = super.addMethod(name);
-        builder.setAbstract(false);
-        return builder;
-    }
-
-    @Override
-    public boolean addEqualsIdentity(GeneratedPropertyBuilder property) {
-        return equalsProperties.add(property);
-    }
-
-    @Override
-    public boolean addHashIdentity(GeneratedPropertyBuilder property) {
-        return hashProperties.add(property);
-    }
-
-    @Override
-    public boolean addToStringProperty(GeneratedPropertyBuilder property) {
-        return toStringProperties.add(property);
-    }
-
-    @Override
-    public GeneratedTransferObject toInstance() {
-        return new GeneratedTransferObjectImpl(null, getPackageName(), getName(), getComment(), getAnnotations(),
-                isAbstract(), extendsType, getImplementsTypes(), getEnclosedTypes(), getEnclosedTransferObjects(),
-                getConstants(), getEnumerations(), getMethodDefinitions(), properties, equalsProperties,
-                hashProperties, toStringProperties, isUnionType);
-    }
-
-    @Override
-    public String toString() {
-        StringBuilder builder = new StringBuilder();
-        builder.append("GeneratedTransferObject [packageName=");
-        builder.append(getPackageName());
-        builder.append(", name=");
-        builder.append(getName());
-        builder.append(", comment=");
-        builder.append(getComment());
-        builder.append(", constants=");
-        builder.append(getConstants());
-        builder.append(", enumerations=");
-        builder.append(getEnumerations());
-        builder.append(", properties=");
-        builder.append(properties);
-        builder.append(", equalsProperties=");
-        builder.append(equalsProperties);
-        builder.append(", hashCodeProperties=");
-        builder.append(hashProperties);
-        builder.append(", stringProperties=");
-        builder.append(toStringProperties);
-        builder.append(", annotations=");
-        builder.append(getAnnotations());
-        builder.append(", methods=");
-        builder.append(getMethodDefinitions());
-        builder.append("]");
-        return builder.toString();
-    }
-
-    @Override
-    public void setIsUnion(boolean isUnion) {
-        this.isUnionType = isUnion;
-    }
-
-    private static final class GeneratedTransferObjectImpl extends AbstractGeneratedType implements
-            GeneratedTransferObject {
-
-        private final List<GeneratedProperty> properties;
-        private final List<GeneratedProperty> equalsProperties;
-        private final List<GeneratedProperty> hashCodeProperties;
-        private final List<GeneratedProperty> stringProperties;
-        private final GeneratedTransferObject extendsType;
-        private final boolean isUnionType;
-
-        GeneratedTransferObjectImpl(final Type parent, final String packageName, final String name,
-                final String comment, final List<AnnotationTypeBuilder> annotationBuilders, final boolean isAbstract,
-                final GeneratedTransferObject extendsType, final List<Type> implementsTypes,
-                final List<GeneratedTypeBuilder> enclosedGenTypeBuilders,
-                final List<GeneratedTOBuilder> enclosedGenTOBuilders, final List<Constant> constants,
-                final List<EnumBuilder> enumBuilders, final List<MethodSignatureBuilder> methodBuilders,
-                final List<GeneratedPropertyBuilder> propBuilders, final List<GeneratedPropertyBuilder> equalsBuilders,
-                final List<GeneratedPropertyBuilder> hashCodeBuilders,
-                final List<GeneratedPropertyBuilder> stringBuilders, final boolean isUnionType) {
-            super(parent, packageName, name, comment, annotationBuilders, isAbstract, implementsTypes,
-                    enclosedGenTypeBuilders, enclosedGenTOBuilders, enumBuilders, constants, methodBuilders);
-            this.extendsType = extendsType;
-            this.properties = toUnmodifiableProperties(propBuilders);
-            this.equalsProperties = toUnmodifiableProperties(equalsBuilders);
-            this.hashCodeProperties = toUnmodifiableProperties(hashCodeBuilders);
-            this.stringProperties = toUnmodifiableProperties(stringBuilders);
-            this.isUnionType = isUnionType;
-        }
-
-        @Override
-        public boolean isUnionType() {
-            return isUnionType;
-        }
-
-        private List<GeneratedProperty> toUnmodifiableProperties(final List<GeneratedPropertyBuilder> propBuilders) {
-            final List<GeneratedProperty> properties = new ArrayList<>();
-            for (final GeneratedPropertyBuilder builder : propBuilders) {
-                properties.add(builder.toInstance(this));
-            }
-            return Collections.unmodifiableList(properties);
-        }
-
-        @Override
-        public GeneratedTransferObject getExtends() {
-            return extendsType;
-        }
-
-        @Override
-        public List<GeneratedProperty> getProperties() {
-            return properties;
-        }
-
-        @Override
-        public List<GeneratedProperty> getEqualsIdentifiers() {
-            return equalsProperties;
-        }
-
-        @Override
-        public List<GeneratedProperty> getHashCodeIdentifiers() {
-            return hashCodeProperties;
-        }
-
-        @Override
-        public List<GeneratedProperty> getToStringIdentifiers() {
-            return stringProperties;
-        }
-
-        @Override
-        public String toString() {
-            StringBuilder builder = new StringBuilder();
-            builder.append("GeneratedTransferObject [packageName=");
-            builder.append(getPackageName());
-            builder.append(", name=");
-            builder.append(getName());
-            builder.append(", comment=");
-            builder.append(", annotations=");
-            builder.append(getAnnotations());
-            builder.append(getComment());
-            builder.append(", extends=");
-            builder.append(getExtends());
-            builder.append(", implements=");
-            builder.append(getImplements());
-            builder.append(", enclosedTypes=");
-            builder.append(getEnclosedTypes());
-            builder.append(", constants=");
-            builder.append(getConstantDefinitions());
-            builder.append(", enumerations=");
-            builder.append(getEnumerations());
-            builder.append(", properties=");
-            builder.append(properties);
-            builder.append(", equalsProperties=");
-            builder.append(equalsProperties);
-            builder.append(", hashCodeProperties=");
-            builder.append(hashCodeProperties);
-            builder.append(", stringProperties=");
-            builder.append(stringProperties);
-            builder.append(", methods=");
-            builder.append(getMethodDefinitions());
-            builder.append("]");
-            return builder.toString();
-        }
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/GeneratedTypeBuilderImpl.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/GeneratedTypeBuilderImpl.java
deleted file mode 100644 (file)
index a3ffbda..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.binding.generator.util.generated.type.builder;
-
-import org.opendaylight.controller.sal.binding.model.api.Constant;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.*;
-
-import java.util.List;
-
-public final class GeneratedTypeBuilderImpl extends AbstractGeneratedTypeBuilder {
-
-    public GeneratedTypeBuilderImpl(String packageName, String name) {
-        super(packageName, name);
-        setAbstract(true);
-    }
-
-    @Override
-    public GeneratedType toInstance() {
-        return new GeneratedTypeImpl(null, getPackageName(), getName(), getComment(), getAnnotations(), isAbstract(),
-                getImplementsTypes(), getEnclosedTypes(), getEnclosedTransferObjects(), getEnumerations(),
-                getConstants(), getMethodDefinitions());
-    }
-
-    @Override
-    public String toString() {
-        StringBuilder builder = new StringBuilder();
-        builder.append("GeneratedTransferObject [packageName=");
-        builder.append(getPackageName());
-        builder.append(", name=");
-        builder.append(getName());
-        builder.append(", comment=");
-        builder.append(", annotations=");
-        builder.append(getAnnotations());
-        builder.append(getComment());
-        builder.append(", implements=");
-        builder.append(getImplementsTypes());
-        builder.append(", enclosedTypes=");
-        builder.append(getEnclosedTypes());
-        builder.append(", constants=");
-        builder.append(getConstants());
-        builder.append(", enumerations=");
-        builder.append(getEnumerations());
-        builder.append(", properties=");
-        builder.append(", methods=");
-        builder.append(getMethodDefinitions());
-        builder.append("]");
-        return builder.toString();
-    }
-
-    private static final class GeneratedTypeImpl extends AbstractGeneratedType {
-
-        public GeneratedTypeImpl(final Type parent, final String packageName, final String name, final String comment,
-                                 final List<AnnotationTypeBuilder> annotationBuilders, final boolean isAbstract,
-                                 final List<Type> implementsTypes,
-                                 final List<GeneratedTypeBuilder> enclosedGenTypeBuilders,
-                                 final List<GeneratedTOBuilder> enclosedGenTOBuilders,
-                                 final List<EnumBuilder> enumBuilders, final List<Constant> constants,
-                                 final List<MethodSignatureBuilder> methodBuilders) {
-            super(parent, packageName, name, comment, annotationBuilders, isAbstract, implementsTypes,
-                    enclosedGenTypeBuilders, enclosedGenTOBuilders, enumBuilders, constants, methodBuilders);
-        }
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/MethodParameterImpl.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/MethodParameterImpl.java
deleted file mode 100644 (file)
index b5c1881..0000000
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.binding.generator.util.generated.type.builder;
-
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.controller.sal.binding.model.api.MethodSignature.Parameter;
-
-final class MethodParameterImpl implements Parameter {
-
-    private final String name;
-    private final Type type;
-
-    public MethodParameterImpl(final String name, final Type type) {
-        super();
-        this.name = name;
-        this.type = type;
-    }
-
-    @Override
-    public String getName() {
-        return name;
-    }
-
-    @Override
-    public Type getType() {
-        return type;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see java.lang.Object#hashCode()
-     */
-    @Override
-    public int hashCode() {
-        final int prime = 31;
-        int result = 1;
-        result = prime * result + ((name == null) ? 0 : name.hashCode());
-        result = prime * result + ((type == null) ? 0 : type.hashCode());
-        return result;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see java.lang.Object#equals(java.lang.Object)
-     */
-    @Override
-    public boolean equals(Object obj) {
-        if (this == obj) {
-            return true;
-        }
-        if (obj == null) {
-            return false;
-        }
-        if (getClass() != obj.getClass()) {
-            return false;
-        }
-        MethodParameterImpl other = (MethodParameterImpl) obj;
-        if (name == null) {
-            if (other.name != null) {
-                return false;
-            }
-        } else if (!name.equals(other.name)) {
-            return false;
-        }
-        if (type == null) {
-            if (other.type != null) {
-                return false;
-            }
-        } else if (!type.equals(other.type)) {
-            return false;
-        }
-        return true;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see java.lang.Object#toString()
-     */
-    @Override
-    public String toString() {
-        StringBuilder builder = new StringBuilder();
-        builder.append("MethodParameter [name=");
-        builder.append(name);
-        builder.append(", type=");
-        builder.append(type.getPackageName());
-        builder.append(".");
-        builder.append(type.getName());
-        builder.append("]");
-        return builder.toString();
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/MethodSignatureBuilderImpl.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/MethodSignatureBuilderImpl.java
deleted file mode 100644 (file)
index 92a46ff..0000000
+++ /dev/null
@@ -1,107 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.binding.generator.util.generated.type.builder;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.opendaylight.controller.sal.binding.model.api.AnnotationType;
-import org.opendaylight.controller.sal.binding.model.api.MethodSignature;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.MethodSignatureBuilder;
-
-final class MethodSignatureBuilderImpl extends AbstractTypeMemberBuilder implements MethodSignatureBuilder {
-
-    private final List<MethodSignature.Parameter> parameters;
-    private boolean isAbstract;
-
-    public MethodSignatureBuilderImpl(final String name) {
-        super(name);
-        this.parameters = new ArrayList<>();
-    }
-
-    @Override
-    public void setAbstract(boolean isAbstract) {
-        this.isAbstract = isAbstract;
-    }
-
-    @Override
-    public void addParameter(Type type, String name) {
-        parameters.add(new MethodParameterImpl(name, type));
-    }
-
-    @Override
-    public MethodSignature toInstance(Type definingType) {
-        final List<AnnotationType> annotations = toAnnotationTypes();
-        return new MethodSignatureImpl(definingType, getName(), annotations, getComment(), getAccessModifier(),
-                getReturnType(), parameters, isFinal(), isAbstract);
-    }
-
-    @Override
-    public int hashCode() {
-        final int prime = 31;
-        int result = 1;
-        result = prime * result + ((getName() == null) ? 0 : getName().hashCode());
-        result = prime * result + ((parameters == null) ? 0 : parameters.hashCode());
-        result = prime * result + ((getReturnType() == null) ? 0 : getReturnType().hashCode());
-        return result;
-    }
-
-    @Override
-    public boolean equals(Object obj) {
-        if (this == obj) {
-            return true;
-        }
-        if (obj == null) {
-            return false;
-        }
-        if (getClass() != obj.getClass()) {
-            return false;
-        }
-        MethodSignatureBuilderImpl other = (MethodSignatureBuilderImpl) obj;
-        if (getName() == null) {
-            if (other.getName() != null) {
-                return false;
-            }
-        } else if (!getName().equals(other.getName())) {
-            return false;
-        }
-        if (parameters == null) {
-            if (other.parameters != null) {
-                return false;
-            }
-        } else if (!parameters.equals(other.parameters)) {
-            return false;
-        }
-        if (getReturnType() == null) {
-            if (other.getReturnType() != null) {
-                return false;
-            }
-        } else if (!getReturnType().equals(other.getReturnType())) {
-            return false;
-        }
-        return true;
-    }
-
-    @Override
-    public String toString() {
-        StringBuilder builder = new StringBuilder();
-        builder.append("MethodSignatureBuilderImpl [name=");
-        builder.append(getName());
-        builder.append(", returnType=");
-        builder.append(getReturnType());
-        builder.append(", parameters=");
-        builder.append(parameters);
-        builder.append(", annotationBuilders=");
-        builder.append(getAnnotationBuilders());
-        builder.append(", comment=");
-        builder.append(getComment());
-        builder.append("]");
-        return builder.toString();
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/MethodSignatureImpl.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/MethodSignatureImpl.java
deleted file mode 100644 (file)
index 5be1cc9..0000000
+++ /dev/null
@@ -1,115 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.binding.generator.util.generated.type.builder;
-
-import org.opendaylight.controller.sal.binding.model.api.AccessModifier;
-import org.opendaylight.controller.sal.binding.model.api.AnnotationType;
-import org.opendaylight.controller.sal.binding.model.api.MethodSignature;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-
-import java.util.Collections;
-import java.util.List;
-
-class MethodSignatureImpl extends AbstractTypeMember implements MethodSignature {
-
-    private final List<Parameter> params;
-    private final boolean isAbstract;
-
-    public MethodSignatureImpl(final Type definingType, final String name,
-                               final List<AnnotationType> annotations,
-                               final String comment, final AccessModifier accessModifier,
-                               final Type returnType, final List<Parameter> params, boolean isFinal,
-                               boolean isAbstract) {
-        super(definingType, name, annotations, comment, accessModifier, returnType, isFinal);
-        this.params = Collections.unmodifiableList(params);
-        this.isAbstract = isAbstract;
-    }
-
-    @Override
-    public boolean isAbstract() {
-        return isAbstract;
-    }
-
-    @Override
-    public List<Parameter> getParameters() {
-        return params;
-    }
-
-    @Override
-    public int hashCode() {
-        final int prime = 31;
-        int result = 1;
-        result = prime * result + ((getName() == null) ? 0 : getName().hashCode());
-        result = prime * result
-                + ((params == null) ? 0 : params.hashCode());
-        result = prime * result
-                + ((getReturnType() == null) ? 0 : getReturnType().hashCode());
-        return result;
-    }
-
-    @Override
-    public boolean equals(Object obj) {
-        if (this == obj) {
-            return true;
-        }
-        if (obj == null) {
-            return false;
-        }
-        if (getClass() != obj.getClass()) {
-            return false;
-        }
-        MethodSignatureImpl other = (MethodSignatureImpl) obj;
-        if (getName() == null) {
-            if (other.getName() != null) {
-                return false;
-            }
-        } else if (!getName().equals(other.getName())) {
-            return false;
-        }
-        if (params == null) {
-            if (other.params != null) {
-                return false;
-            }
-        } else if (!params.equals(other.params)) {
-            return false;
-        }
-        if (getReturnType() == null) {
-            if (other.getReturnType() != null) {
-                return false;
-            }
-        } else if (!getReturnType().equals(other.getReturnType())) {
-            return false;
-        }
-        return true;
-    }
-
-    @Override
-    public String toString() {
-        StringBuilder builder = new StringBuilder();
-        builder.append("MethodSignatureImpl [name=");
-        builder.append(getName());
-        builder.append(", comment=");
-        builder.append(getComment());
-        if (getDefiningType() != null) {
-            builder.append(", definingType=");
-            builder.append(getDefiningType().getPackageName());
-            builder.append(".");
-            builder.append(getDefiningType().getName());
-        } else {
-            builder.append(", definingType= null");
-        }
-        builder.append(", returnType=");
-        builder.append(getReturnType());
-        builder.append(", params=");
-        builder.append(params);
-        builder.append(", annotations=");
-        builder.append(getAnnotations());
-        builder.append("]");
-        return builder.toString();
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/package-info.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/main/java/org/opendaylight/controller/binding/generator/util/package-info.java
deleted file mode 100644 (file)
index a5aa2a0..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-/*\r
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
- *\r
- * This program and the accompanying materials are made available under the\r
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
- * and is available at http://www.eclipse.org/legal/epl-v10.html\r
- */\r
-package org.opendaylight.controller.binding.generator.util;
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/test/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/AnnotationBuilderTest.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-util/src/test/java/org/opendaylight/controller/binding/generator/util/generated/type/builder/AnnotationBuilderTest.java
deleted file mode 100644 (file)
index 0f2daa8..0000000
+++ /dev/null
@@ -1,254 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.binding.generator.util.generated.type.builder;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertTrue;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.junit.Test;
-import org.opendaylight.controller.binding.generator.util.Types;
-import org.opendaylight.controller.sal.binding.model.api.AnnotationType;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.AnnotationTypeBuilder;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.GeneratedPropertyBuilder;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.GeneratedTOBuilder;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.GeneratedTypeBuilder;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.MethodSignatureBuilder;
-
-public class AnnotationBuilderTest {
-
-    @Test
-    public void generatedTypeAnnotationTest() {
-        final GeneratedTypeBuilder genTypeBuilder = new GeneratedTypeBuilderImpl(
-                "org.opendaylight.controller", "AnnotInterface");
-
-        genTypeBuilder.addAnnotation("javax.management", "MXBean");
-        final AnnotationTypeBuilder annotDesc = genTypeBuilder.addAnnotation(
-                "javax.management", "Description");
-        annotDesc.addParameter("description", "some sort of interface");
-
-        final GeneratedType genType = genTypeBuilder.toInstance();
-
-        assertNotNull(genType);
-        assertNotNull(genType.getAnnotations());
-        assertEquals(2, genType.getAnnotations().size());
-
-        int annotCount = 0;
-        for (final AnnotationType annotation : genType.getAnnotations()) {
-            if (annotation.getPackageName().equals("javax.management")
-                    && annotation.getName().equals("MXBean")) {
-                annotCount++;
-                assertEquals(0, annotation.getParameters().size());
-            }
-            if (annotation.getPackageName().equals("javax.management")
-                    && annotation.getName().equals("Description")) {
-                annotCount++;
-                assertEquals(1, annotation.getParameters().size());
-                AnnotationType.Parameter param = annotation
-                        .getParameter("description");
-                assertNotNull(param);
-                assertEquals("description", param.getName());
-                assertNotNull(param.getValue());
-                assertEquals("some sort of interface", param.getValue());
-                assertNotNull(param.getValues());
-                assertTrue(param.getValues().isEmpty());
-            }
-        }
-        assertEquals(2, annotCount);
-    }
-
-    @Test
-    public void methodSignatureAnnotationTest() {
-        final GeneratedTypeBuilder genTypeBuilder = new GeneratedTypeBuilderImpl(
-                "org.opendaylight.controller", "TransferObject");
-
-        final MethodSignatureBuilder methodBuilder = genTypeBuilder
-                .addMethod("simpleMethod");
-        methodBuilder.setReturnType(Types.typeForClass(Integer.class));
-        final AnnotationTypeBuilder annotManAttr = methodBuilder
-                .addAnnotation("org.springframework.jmx.export.annotation",
-                        "ManagedAttribute");
-
-        annotManAttr.addParameter("description", "\"The Name Attribute\"");
-        annotManAttr.addParameter("currencyTimeLimit", "20");
-        annotManAttr.addParameter("defaultValue", "\"bar\"");
-        annotManAttr.addParameter("persistPolicy", "\"OnUpdate\"");
-
-        final AnnotationTypeBuilder annotManProp = methodBuilder
-                .addAnnotation("org.springframework.jmx.export.annotation",
-                        "ManagedOperation");
-
-        final List<String> typeValues = new ArrayList<String>();
-        typeValues.add("\"val1\"");
-        typeValues.add("\"val2\"");
-        typeValues.add("\"val3\"");
-        annotManProp.addParameters("types", typeValues);
-
-        final GeneratedType genType = genTypeBuilder.toInstance();
-
-        assertNotNull(genType);
-        assertNotNull(genType.getAnnotations());
-        assertNotNull(genType.getMethodDefinitions());
-        assertNotNull(genType.getMethodDefinitions().get(0));
-        assertNotNull(genType.getMethodDefinitions().get(0).getAnnotations());
-        final List<AnnotationType> annotations = genType.getMethodDefinitions()
-                .get(0).getAnnotations();
-        assertEquals(2, annotations.size());
-        
-        int annotCount = 0;
-        for (final AnnotationType annotation : annotations) {
-            if (annotation.getPackageName().equals("org.springframework.jmx.export.annotation")
-                    && annotation.getName().equals("ManagedAttribute")) {
-                annotCount++;
-                assertEquals(4, annotation.getParameters().size());
-                
-                assertNotNull(annotation.getParameter("description"));
-                assertNotNull(annotation.getParameter("currencyTimeLimit"));
-                assertNotNull(annotation.getParameter("defaultValue"));
-                assertNotNull(annotation.getParameter("persistPolicy"));
-                assertEquals("\"The Name Attribute\"", annotation.getParameter("description").getValue());
-                assertEquals("20", annotation.getParameter("currencyTimeLimit").getValue());
-                assertEquals("\"bar\"", annotation.getParameter("defaultValue").getValue());
-                assertEquals("\"OnUpdate\"", annotation.getParameter("persistPolicy").getValue());
-            }
-            if (annotation.getPackageName().equals("org.springframework.jmx.export.annotation")
-                    && annotation.getName().equals("ManagedOperation")) {
-                annotCount++;
-                
-                assertEquals(1, annotation.getParameters().size());
-                assertNotNull(annotation.getParameter("types"));
-                assertEquals(3, annotation.getParameter("types").getValues().size());
-            }
-        }
-        assertEquals(2, annotCount);
-    }
-
-    @Test
-    public void generatedPropertyAnnotationTest() {
-        final GeneratedTOBuilder genTOBuilder = new GeneratedTOBuilderImpl(
-                "org.opendaylight.controller", "AnnotInterface");
-
-        final GeneratedPropertyBuilder propertyBuilder = genTOBuilder
-                .addProperty("simpleProperty");
-        propertyBuilder.setReturnType(Types.typeForClass(Integer.class));
-        final AnnotationTypeBuilder annotManAttr = propertyBuilder
-                .addAnnotation("org.springframework.jmx.export.annotation",
-                        "ManagedAttribute");
-
-        annotManAttr.addParameter("description", "\"The Name Attribute\"");
-        annotManAttr.addParameter("currencyTimeLimit", "20");
-        annotManAttr.addParameter("defaultValue", "\"bar\"");
-        annotManAttr.addParameter("persistPolicy", "\"OnUpdate\"");
-
-        final AnnotationTypeBuilder annotManProp = propertyBuilder
-                .addAnnotation("org.springframework.jmx.export.annotation",
-                        "ManagedOperation");
-
-        final List<String> typeValues = new ArrayList<String>();
-        typeValues.add("\"val1\"");
-        typeValues.add("\"val2\"");
-        typeValues.add("\"val3\"");
-        annotManProp.addParameters("types", typeValues);
-
-        final GeneratedTransferObject genTransObj = genTOBuilder.toInstance();
-
-        assertNotNull(genTransObj);
-        assertNotNull(genTransObj.getAnnotations());
-        assertNotNull(genTransObj.getProperties());
-        assertNotNull(genTransObj.getProperties().get(0));
-        assertNotNull(genTransObj.getProperties().get(0).getAnnotations());
-        final List<AnnotationType> annotations = genTransObj.getProperties()
-                .get(0).getAnnotations();
-        assertEquals(2, annotations.size());
-        
-        int annotCount = 0;
-        for (final AnnotationType annotation : annotations) {
-            if (annotation.getPackageName().equals("org.springframework.jmx.export.annotation")
-                    && annotation.getName().equals("ManagedAttribute")) {
-                annotCount++;
-                assertEquals(4, annotation.getParameters().size());
-                
-                assertNotNull(annotation.getParameter("description"));
-                assertNotNull(annotation.getParameter("currencyTimeLimit"));
-                assertNotNull(annotation.getParameter("defaultValue"));
-                assertNotNull(annotation.getParameter("persistPolicy"));
-                assertEquals("\"The Name Attribute\"", annotation.getParameter("description").getValue());
-                assertEquals("20", annotation.getParameter("currencyTimeLimit").getValue());
-                assertEquals("\"bar\"", annotation.getParameter("defaultValue").getValue());
-                assertEquals("\"OnUpdate\"", annotation.getParameter("persistPolicy").getValue());
-            }
-            if (annotation.getPackageName().equals("org.springframework.jmx.export.annotation")
-                    && annotation.getName().equals("ManagedOperation")) {
-                annotCount++;
-                
-                assertEquals(1, annotation.getParameters().size());
-                assertNotNull(annotation.getParameter("types"));
-                assertEquals(3, annotation.getParameter("types").getValues().size());
-            }
-        }
-        assertEquals(2, annotCount);
-    }
-
-    @Test
-    public void generatedTransfeObjectAnnotationTest() {
-        final GeneratedTOBuilder genTypeBuilder = new GeneratedTOBuilderImpl(
-                "org.opendaylight.controller", "AnnotClassCache");
-
-        genTypeBuilder.addAnnotation("javax.management", "MBean");
-        final AnnotationTypeBuilder annotNotify = genTypeBuilder.addAnnotation(
-                "javax.management", "NotificationInfo");
-
-        final List<String> notifyList = new ArrayList<String>();
-        notifyList.add("\"my.notif.type\"");
-        annotNotify.addParameters("types", notifyList);
-        annotNotify.addParameter("description",
-                "@Description(\"my notification\")");
-
-        GeneratedTransferObject genTO = genTypeBuilder.toInstance();
-
-        assertNotNull(genTO);
-        assertNotNull(genTO.getAnnotations());
-        assertEquals(2, genTO.getAnnotations().size());
-
-        int annotCount = 0;
-        for (final AnnotationType annotation : genTO.getAnnotations()) {
-            if (annotation.getPackageName().equals("javax.management")
-                    && annotation.getName().equals("MBean")) {
-                annotCount++;
-                assertEquals(0, annotation.getParameters().size());
-            }
-            if (annotation.getPackageName().equals("javax.management")
-                    && annotation.getName().equals("NotificationInfo")) {
-                annotCount++;
-                assertEquals(2, annotation.getParameters().size());
-                AnnotationType.Parameter param = annotation
-                        .getParameter("types");
-                assertNotNull(param);
-                assertEquals("types", param.getName());
-                assertNull(param.getValue());
-                assertNotNull(param.getValues());
-                assertEquals(1, param.getValues().size());
-                assertEquals("\"my.notif.type\"", param.getValues().get(0));
-
-                param = annotation.getParameter("description");
-                assertNotNull(param);
-                assertEquals("description", param.getName());
-                assertNotNull(param.getValue());
-                assertEquals("@Description(\"my notification\")",
-                        param.getValue());
-            }
-        }
-        assertEquals(2, annotCount);
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/pom.xml b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/pom.xml
deleted file mode 100644 (file)
index afc16f6..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">\r
-\r
-    <parent>\r
-        <groupId>org.opendaylight.controller</groupId>\r
-        <artifactId>binding-generator</artifactId>\r
-        <version>0.5.5-SNAPSHOT</version>\r
-    </parent>\r
-\r
-    <modelVersion>4.0.0</modelVersion>\r
-    <artifactId>binding-java-api-generator</artifactId>\r
-\r
-    <build>\r
-        <plugins>\r
-            <plugin>\r
-                <groupId>org.eclipse.xtend</groupId>\r
-                <artifactId>xtend-maven-plugin</artifactId>\r
-                <version>2.4.2</version>\r
-                <executions>\r
-                    <execution>\r
-                        <goals>\r
-                            <goal>compile</goal>\r
-                        </goals>\r
-                        <configuration>\r
-                            <outputDirectory>${basedir}/src/main/xtend-gen</outputDirectory>\r
-                        </configuration>\r
-                    </execution>\r
-                </executions>\r
-            </plugin>\r
-            <plugin>\r
-                <artifactId>maven-clean-plugin</artifactId>\r
-                <version>2.4.1</version>\r
-                <configuration>\r
-                    <filesets>\r
-                        <fileset>\r
-                            <directory>${basedir}/src/main/xtend-gen</directory>\r
-                            <includes>\r
-                                <include>**</include>\r
-                            </includes>\r
-                        </fileset>\r
-                    </filesets>\r
-                </configuration>\r
-            </plugin>\r
-        </plugins>\r
-    </build>\r
-\r
-    <dependencies>\r
-        <dependency>\r
-            <groupId>org.opendaylight.controller</groupId>\r
-            <artifactId>binding-model-api</artifactId>\r
-        </dependency>\r
-        <dependency>\r
-            <groupId>org.opendaylight.controller</groupId>\r
-            <artifactId>binding-generator-impl</artifactId>\r
-            <scope>test</scope>\r
-        </dependency>\r
-        <dependency>\r
-            <groupId>org.opendaylight.controller</groupId>\r
-            <artifactId>binding-generator-util</artifactId>\r
-        </dependency>\r
-        <dependency>\r
-            <groupId>junit</groupId>\r
-            <artifactId>junit</artifactId>\r
-        </dependency>\r
-        <dependency>\r
-            <groupId>org.eclipse.xtend</groupId>\r
-            <artifactId>org.eclipse.xtend.lib</artifactId>\r
-            <version>2.4.2</version>\r
-        </dependency>\r
-    </dependencies>\r
-\r
-</project>\r
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/BuilderGenerator.java b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/BuilderGenerator.java
deleted file mode 100644 (file)
index ec99f1e..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-package org.opendaylight.controller.sal.java.api.generator;
-
-import java.io.IOException;
-import java.io.StringWriter;
-import java.io.Writer;
-
-import org.opendaylight.controller.sal.binding.model.api.CodeGenerator;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-
-public final class BuilderGenerator implements CodeGenerator {
-
-    public static final String FILE_NAME_SUFFIX = "Builder";
-
-    @Override
-    public Writer generate(Type type) throws IOException {
-        final Writer writer = new StringWriter();
-        if (type instanceof GeneratedType && !(type instanceof GeneratedTransferObject)) {
-            final GeneratedType genType = (GeneratedType) type;
-            final BuilderTemplate template = new BuilderTemplate(genType);
-            writer.write(template.generate().toString());
-        }
-        return writer;
-    }
-
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/BuilderTemplate.xtend b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/BuilderTemplate.xtend
deleted file mode 100644 (file)
index 6fe9c1b..0000000
+++ /dev/null
@@ -1,240 +0,0 @@
-package org.opendaylight.controller.sal.java.api.generator
-
-import java.util.LinkedHashSet
-import java.util.List
-import java.util.Map
-import java.util.Set
-import org.opendaylight.controller.binding.generator.util.ReferencedTypeImpl
-import org.opendaylight.controller.binding.generator.util.Types
-import org.opendaylight.controller.binding.generator.util.generated.type.builder.GeneratedTOBuilderImpl
-import org.opendaylight.controller.sal.binding.model.api.GeneratedProperty
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType
-import org.opendaylight.controller.sal.binding.model.api.MethodSignature
-import org.opendaylight.controller.sal.binding.model.api.Type
-import org.opendaylight.yangtools.yang.binding.Augmentable
-
-class BuilderTemplate {
-
-    val static GET_PREFIX = "get"
-    val static JAVA_UTIL = "java.util"
-    val static HASH_MAP = "HashMap"
-    val static MAP = "Map"
-    val static GET_AUGMENTATION_METHOD_NAME = "getAugmentation"
-    val static BUILDER = 'Builder'
-    val static IMPL = 'Impl'
-    
-    val GeneratedType genType
-    val Map<String, String> imports
-    var GeneratedProperty augmentField
-    val Set<GeneratedProperty> fields
-    
-    new(GeneratedType genType) {
-        if (genType == null) {
-            throw new IllegalArgumentException("Generated type reference cannot be NULL!")
-        }
-        
-        this.genType = genType
-        this.imports = GeneratorUtil.createChildImports(genType)
-        this.fields = createFieldsFromMethods(createMethods)
-    }
-    
-    def private Set<MethodSignature> createMethods() {
-        val Set<MethodSignature> methods = new LinkedHashSet
-        methods.addAll(genType.methodDefinitions)
-        storeMethodsOfImplementedIfcs(methods, genType.implements)
-        return methods
-    }
-    
-    def private void storeMethodsOfImplementedIfcs(Set<MethodSignature> methods, List<Type> implementedIfcs) {
-        if (implementedIfcs == null || implementedIfcs.empty) {
-            return
-        }
-        for (implementedIfc : implementedIfcs) {
-            if ((implementedIfc instanceof GeneratedType && !(implementedIfc instanceof GeneratedTransferObject))) {
-                val ifc = implementedIfc as GeneratedType
-                methods.addAll(ifc.methodDefinitions)
-                storeMethodsOfImplementedIfcs(methods, ifc.implements)
-            } else if (implementedIfc.fullyQualifiedName == Augmentable.name) {
-                for (m : Augmentable.methods) {
-                    if (m.name == GET_AUGMENTATION_METHOD_NAME) {
-                        addToImports(JAVA_UTIL, HASH_MAP)
-                        addToImports(JAVA_UTIL, MAP)
-                        val fullyQualifiedName = m.returnType.name
-                        val pkg = fullyQualifiedName.package
-                        val name = fullyQualifiedName.name
-                        addToImports(pkg, name)
-                        val tmpGenTO = new GeneratedTOBuilderImpl(pkg, name)
-                        val type = new ReferencedTypeImpl(pkg, name)
-                        val generic = new ReferencedTypeImpl(genType.packageName, genType.name)
-                        val parametrizedReturnType = Types.parameterizedTypeFor(type, generic)
-                        tmpGenTO.addMethod(m.name).setReturnType(parametrizedReturnType)
-                        augmentField = tmpGenTO.toInstance.methodDefinitions.first.createFieldFromGetter
-                    }
-                }
-            }
-        }
-    }
-    
-    def private void addToImports(String typePackageName,String typeName) {
-        if (typePackageName.startsWith("java.lang") || typePackageName.isEmpty()) {
-            return
-        }
-        if (!imports.containsKey(typeName)) {
-            imports.put(typeName, typePackageName)
-        }
-    }
-    
-    def private <E> first(List<E> elements) {
-        elements.get(0)
-    }
-    
-    def private String getPackage(String fullyQualifiedName) {
-        val lastDotIndex = fullyQualifiedName.lastIndexOf(Constants.DOT)
-        return if (lastDotIndex == -1) "" else fullyQualifiedName.substring(0, lastDotIndex)
-    }
-
-    def private String getName(String fullyQualifiedName) {
-        val lastDotIndex = fullyQualifiedName.lastIndexOf(Constants.DOT)
-        return if (lastDotIndex == -1) fullyQualifiedName else fullyQualifiedName.substring(lastDotIndex + 1)
-    }
-    
-    def private createFieldsFromMethods(Set<MethodSignature> methods) {
-        val Set<GeneratedProperty> result = new LinkedHashSet
-
-        if (methods == null || methods.isEmpty()) {
-            return result
-        }
-
-        for (m : methods) {
-            val createdField = m.createFieldFromGetter
-            if (createdField != null) {
-                result.add(createdField)
-            }
-        }
-        return result
-    }
-    
-    def private GeneratedProperty createFieldFromGetter(MethodSignature method) {
-        if (method == null || method.name == null || method.name.empty || method.returnType == null) {
-            throw new IllegalArgumentException("Method, method name, method return type reference cannot be NULL or empty!")
-        }
-        if (method.name.startsWith(GET_PREFIX)) {
-            val fieldName = method.getName().substring(GET_PREFIX.length()).toFirstLower
-            val tmpGenTO = new GeneratedTOBuilderImpl("foo", "foo")
-            tmpGenTO.addProperty(fieldName).setReturnType(method.returnType)
-            return tmpGenTO.toInstance.properties.first
-        }
-    }
-
-    def generate() {
-        val body = generateBody
-        val pkgAndImports = generatePkgAndImports
-        return pkgAndImports.toString + body.toString
-    }
-    
-    def private generateBody() '''
-        public class Â«genType.name»«BUILDER» {
-        
-            Â«generateFields»
-
-            Â«generateSetters»
-
-            public Â«genType.name» build() {
-                return new Â«genType.name»«IMPL»();
-            }
-
-            private class Â«genType.name»«IMPL» implements Â«genType.name» {
-
-                Â«generateFields»
-
-                Â«generateConstructor»
-
-                Â«generateGetters»
-
-            }
-
-        }
-    '''
-
-    def private generateFields() '''
-        Â«IF !fields.empty»
-            Â«FOR f : fields»
-                private Â«f.returnType.resolveName» Â«f.name»;
-            Â«ENDFOR»
-        Â«ENDIF»
-        Â«IF augmentField != null»
-            private Map<Class<? extends Â«augmentField.returnType.resolveName»>, Â«augmentField.returnType.resolveName»> Â«augmentField.name» = new HashMap<>();
-        Â«ENDIF»
-    '''
-
-    def private generateSetters() '''
-        Â«FOR field : fields SEPARATOR '\n'»
-            public Â«genType.name»«BUILDER» set«field.name.toFirstUpper»(«field.returnType.resolveName» Â«field.name») {
-                this.«field.name» = Â«field.name»;
-                return this;
-            }
-        Â«ENDFOR»
-        Â«IF augmentField != null»
-            
-            public Â«genType.name»«BUILDER» add«augmentField.name.toFirstUpper»(Class<? extends Â«augmentField.returnType.resolveName»> augmentationType, Â«augmentField.returnType.resolveName» augmentation) {
-                this.«augmentField.name».put(augmentationType, augmentation);
-                return this;
-            }
-        Â«ENDIF»
-    '''
-    
-    def private generateConstructor() '''
-        private Â«genType.name»«IMPL»() {
-            Â«IF !fields.empty»
-                Â«FOR field : fields»
-                    this.«field.name» = Â«genType.name»«BUILDER».this.«field.name»;
-                Â«ENDFOR»
-            Â«ENDIF»
-            Â«IF augmentField != null»
-                this.«augmentField.name».putAll(«genType.name»«BUILDER».this.«augmentField.name»);
-            Â«ENDIF»
-        }
-    '''
-    
-    def private generateGetters() '''
-        Â«IF !fields.empty»
-            Â«FOR field : fields SEPARATOR '\n'»
-                @Override
-                public Â«field.returnType.resolveName» get«field.name.toFirstUpper»() {
-                    return Â«field.name»;
-                }
-            Â«ENDFOR»
-        Â«ENDIF»
-        Â«IF augmentField != null»
-
-            @SuppressWarnings("unchecked")
-            @Override
-            public <E extends Â«augmentField.returnType.resolveName»> E get«augmentField.name.toFirstUpper»(Class<E> augmentationType) {
-                if (augmentationType == null) {
-                    throw new IllegalArgumentException("Augmentation Type reference cannot be NULL!");
-                }
-                return (E) Â«augmentField.name».get(augmentationType);
-            }
-        Â«ENDIF»
-    '''    
-    
-    def private generatePkgAndImports() '''
-        package Â«genType.packageName»;
-        
-        
-        Â«IF !imports.empty»
-            Â«FOR entry : imports.entrySet»
-                import Â«entry.value».«entry.key»;
-            Â«ENDFOR»
-        Â«ENDIF»
-        
-    '''
-    
-    def private resolveName(Type type) {
-        GeneratorUtil.putTypeIntoImports(genType, type, imports);
-        GeneratorUtil.getExplicitType(genType, type, imports)
-    }
-    
-}
-
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/ClassGenerator.java b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/ClassGenerator.java
deleted file mode 100644 (file)
index 17940a0..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.java.api.generator;
-
-import java.io.IOException;
-import java.io.StringWriter;
-import java.io.Writer;
-
-import org.opendaylight.controller.sal.binding.model.api.CodeGenerator;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-
-public final class ClassGenerator implements CodeGenerator {
-
-    @Override
-    public Writer generate(Type type) throws IOException {
-        final Writer writer = new StringWriter();
-        if (type instanceof GeneratedTransferObject) {
-            final GeneratedTransferObject genTO = (GeneratedTransferObject) type;
-            final ClassTemplate template = new ClassTemplate(genTO);
-            writer.write(template.generate().toString());
-        }
-        return writer;
-    }
-
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/ClassTemplate.xtend b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/ClassTemplate.xtend
deleted file mode 100644 (file)
index 47a94eb..0000000
+++ /dev/null
@@ -1,291 +0,0 @@
-package org.opendaylight.controller.sal.java.api.generator
-
-import java.util.List
-import java.util.Map
-import org.opendaylight.controller.binding.generator.util.TypeConstants
-import org.opendaylight.controller.sal.binding.model.api.Constant
-import org.opendaylight.controller.sal.binding.model.api.Enumeration
-import org.opendaylight.controller.sal.binding.model.api.GeneratedProperty
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject
-import org.opendaylight.controller.sal.binding.model.api.Type
-
-class ClassTemplate {
-    
-    val GeneratedTransferObject genTO
-    val Map<String, String> imports
-    val List<GeneratedProperty> fields
-    val List<Enumeration> enums
-    val List<Constant> consts
-    
-    new(GeneratedTransferObject genTO) {
-        if (genTO == null) {
-            throw new IllegalArgumentException("Generated transfer object reference cannot be NULL!")
-        }
-        
-        this.genTO = genTO
-        this.imports = GeneratorUtil.createImports(genTO)
-        this.fields = genTO.properties
-        this.enums = genTO.enumerations
-        this.consts = genTO.constantDefinitions
-    }
-    
-    def generate() {
-        val body = generateBody(false)
-        val pkgAndImports = generatePkgAndImports
-        return pkgAndImports.toString + body.toString
-    }
-    
-    def generateAsInnerClass() {
-        return generateBody(true)
-    }
-    
-    def private generateBody(boolean isInnerClass) '''
-        Â«genTO.comment.generateComment»
-        Â«generateClassDeclaration(isInnerClass)» {
-
-            Â«generateEnums»
-        
-            Â«generateConstants»
-        
-            Â«generateFields»
-        
-            Â«generateConstructor»
-        
-            Â«FOR field : fields SEPARATOR "\n"»
-                Â«field.generateGetter»
-                Â«IF !field.readOnly»
-                
-                    Â«field.generateSetter»
-                Â«ENDIF»
-            Â«ENDFOR»
-        
-            Â«generateHashCode»
-        
-            Â«generateEquals»
-        
-            Â«generateToString»
-        
-        }
-    '''
-    
-    def private generateComment(String comment) '''
-        Â«IF comment != null && !comment.empty»
-            /*
-            Â«comment»
-            */
-        Â«ENDIF»
-    '''
-    
-    def private generateClassDeclaration(boolean isInnerClass) '''
-        public«
-        IF (isInnerClass)»«
-            " static final "»«
-        ELSEIF (genTO.abstract)»«
-            " abstract "»«
-        ELSE»«
-            " "»«
-        ENDIF»class Â«genTO.name»«
-        IF (genTO.extends != null)»«
-            " extends "»«genTO.extends.resolveName»«
-        ENDIF»«
-        IF (!genTO.implements.empty)»«
-            " implements "»«
-            FOR type : genTO.implements SEPARATOR ", "»«
-                type.resolveName»«
-            ENDFOR»«
-        ENDIF
-    Â»'''
-    
-    def private generateEnums() '''
-        Â«IF !enums.empty»
-            Â«FOR e : enums SEPARATOR "\n"»
-                Â«val enumTemplate = new EnumTemplate(e)»
-                Â«enumTemplate.generateAsInnerClass»
-            Â«ENDFOR»
-        Â«ENDIF»
-    '''
-    
-    def private generateConstants() '''
-        Â«IF !consts.empty»
-            Â«FOR c : consts»
-                Â«IF c.name == TypeConstants.PATTERN_CONSTANT_NAME»
-                    Â«val cValue = c.value»
-                    Â«IF cValue instanceof List<?>»
-                        Â«val cValues = cValue as List<?>»
-                        private static final List<Pattern> Â«Constants.MEMBER_PATTERN_LIST» = new ArrayList<Pattern>();
-                        public static final List<String> Â«TypeConstants.PATTERN_CONSTANT_NAME» = Arrays.asList(«
-                        FOR v : cValues SEPARATOR ", "»«
-                            IF v instanceof String»"«
-                                v as String»"«
-                            ENDIF»«
-                        ENDFOR»);
-                        
-                        Â«generateStaticInicializationBlock»
-                    Â«ENDIF»
-                Â«ELSE»
-                    public static final Â«c.type.resolveName» Â«c.name» = Â«c.value»;
-                Â«ENDIF»
-            Â«ENDFOR»
-        Â«ENDIF»
-    '''
-    
-    def private generateStaticInicializationBlock() '''
-        static {
-            for (String regEx : Â«TypeConstants.PATTERN_CONSTANT_NAME») {
-                Â«Constants.MEMBER_PATTERN_LIST».add(Pattern.compile(regEx));
-            }
-        }
-    '''
-    def private generateFields() '''
-        Â«IF !fields.empty»
-            Â«FOR f : fields»
-                private Â«f.returnType.resolveName» Â«f.name»;
-            Â«ENDFOR»
-        Â«ENDIF»
-    '''
-    
-    def private generateConstructor() '''
-        Â«val genTOTopParent = GeneratorUtil.getTopParrentTransportObject(genTO)»
-        Â«val properties = GeneratorUtil.resolveReadOnlyPropertiesFromTO(genTO.properties)»
-        Â«val propertiesAllParents = GeneratorUtil.getPropertiesOfAllParents(genTO)»
-        Â«IF !genTO.unionType»
-«««            create constructor for every parent property
-            Â«IF genTOTopParent != genTO && genTOTopParent.unionType»
-                Â«FOR parentProperty : propertiesAllParents SEPARATOR "\n"»
-                    Â«val parentPropertyAndProperties = properties + #[parentProperty]»
-                    Â«if (genTO.abstract) "protected" else "public"» Â«genTO.name»(«parentPropertyAndProperties.generateParameters») {
-                        super(«#[parentProperty].generateParameterNames»);
-                        Â«FOR property : properties»
-                            this.«property.name» = Â«property.name»;
-                        Â«ENDFOR»
-                    }
-                Â«ENDFOR»
-«««            create one constructor
-            Â«ELSE»
-                Â«val propertiesAll = propertiesAllParents + properties»
-                Â«if (genTO.abstract) "protected" else "public"» Â«genTO.name»(«propertiesAll.generateParameters») {
-                    super(«propertiesAllParents.generateParameterNames()»);
-                    Â«FOR property : properties»
-                        this.«property.name» = Â«property.name»;
-                    Â«ENDFOR»
-                }
-            Â«ENDIF»
-«««        create constructor for every property
-        Â«ELSE»
-            Â«FOR property : properties SEPARATOR "\n"»
-                Â«val propertyAndTopParentProperties = propertiesAllParents + #[property]»
-                Â«if (genTO.abstract) "protected" else "public"» Â«genTO.name»(«propertyAndTopParentProperties.generateParameters») {
-                    super(«propertiesAllParents.generateParameterNames()»);
-                    this.«property.name» = Â«property.name»;
-                }
-            Â«ENDFOR»
-        Â«ENDIF»
-    '''
-    
-    def private generateGetter(GeneratedProperty field) '''
-        public Â«field.returnType.resolveName» get«field.name.toFirstUpper»() {
-            return Â«field.name»;
-        }
-    '''
-    
-    def private generateSetter(GeneratedProperty field) '''
-        Â«val type = field.returnType.resolveName»
-        public void set«field.name.toFirstUpper»(«type» Â«field.name») {
-            this.«field.name» = Â«field.name»;
-        }
-    '''
-    
-    def private generateParameters(Iterable<GeneratedProperty> parameters) '''«
-        IF !parameters.empty»«
-            FOR parameter : parameters SEPARATOR ", "»«
-                parameter.returnType.resolveName» Â«parameter.name»«
-            ENDFOR»«
-        ENDIF
-    Â»'''
-    
-    def private generateParameterNames(Iterable<GeneratedProperty> parameters) '''«
-        IF !parameters.empty»«
-            FOR parameter : parameters SEPARATOR ", "»«
-                parameter.name»«
-            ENDFOR»«
-        ENDIF
-    Â»'''
-    
-    def private generateHashCode() '''
-        Â«IF !genTO.hashCodeIdentifiers.empty»
-            @Override
-            public int hashCode() {
-                final int prime = 31;
-                int result = 1;
-                Â«FOR property : genTO.hashCodeIdentifiers»
-                    result = prime * result + ((«property.name» == null) ? 0 : Â«property.name».hashCode());
-                Â«ENDFOR»
-                return result;
-            }
-        Â«ENDIF»
-    '''
-    def private generateEquals() '''
-        Â«IF !genTO.equalsIdentifiers.empty»
-            @Override
-            public boolean equals(Object obj) {
-                if (this == obj) {
-                    return true;
-                }
-                if (obj == null) {
-                    return false;
-                }
-                if (getClass() != obj.getClass()) {
-                    return false;
-                }
-                Â«genTO.name» other = («genTO.name») obj;
-                Â«FOR property : genTO.equalsIdentifiers»
-                    Â«val fieldName = property.name»
-                    if («fieldName» == null) {
-                        if (other.«fieldName» != null) {
-                            return false;
-                        }
-                    } else if(!«fieldName».equals(other.«fieldName»)) {
-                        return false;
-                    }
-                Â«ENDFOR»
-                return true;
-            }
-        Â«ENDIF»
-    '''
-    
-    def private generateToString() '''
-        Â«IF !genTO.toStringIdentifiers.empty»
-            @Override
-            public String toString() {
-                StringBuilder builder = new StringBuilder();
-                Â«val properties = genTO.toStringIdentifiers»
-                builder.append("«genTO.name» [«properties.get(0).name»=");
-                builder.append(«properties.get(0).name»);
-                Â«FOR i : 1..<genTO.toStringIdentifiers.size»
-                    builder.append(", Â«properties.get(i).name»=");
-                    builder.append(«properties.get(i).name»);
-                Â«ENDFOR»
-                builder.append("]");
-                return builder.toString();
-            }
-        Â«ENDIF»
-    '''
-    
-    def private generatePkgAndImports() '''
-        package Â«genTO.packageName»;
-        
-        
-        Â«IF !imports.empty»
-            Â«FOR entry : imports.entrySet»
-                import Â«entry.value».«entry.key»;
-            Â«ENDFOR»
-        Â«ENDIF»
-        
-    '''
-    
-    def private resolveName(Type type) {
-        GeneratorUtil.putTypeIntoImports(genTO, type, imports);
-        GeneratorUtil.getExplicitType(genTO, type, imports)
-    }
-    
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/Constants.java b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/Constants.java
deleted file mode 100644 (file)
index 8f5c456..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.java.api.generator;
-
-final class Constants {
-    public static final String IFC = "interface";
-    public static final String CLASS = "class";
-    public static final String PKG = "package";
-    public static final String ENUM = "enum";
-
-    public static final String LCB = "{";
-    public static final String RCB = "}";
-
-    public static final String LB = "(";
-    public static final String RB = ")";
-
-    public static final String LSB = "[";
-    public static final String RSB = "]";
-
-    public static final String GAP = " ";
-    public static final String COMMA = ",";
-    public static final String DOT = ".";
-    public static final String ASTERISK = "*";
-    public static final String NL = "\n";
-    public static final String SC = ";";
-    public static final String TAB = "    ";
-    public static final String ASSIGN = "=";
-    public static final String DOUBLE_QUOTE = "\"";
-
-    public static final String PUBLIC = "public";
-    public static final String PRIVATE = "private";
-    public static final String PROTECTED = "protected";
-    public static final String STATIC = "static";
-    public static final String ABSTRACT = "abstract";
-    public static final String FINAL = "final";
-    public static final String EXTENDS = "extends";
-    public static final String IMPLEMENTS = "implements";
-
-    public static final String ENUMERATION_NAME = "value";
-    public static final String ENUMERATION_TYPE = "int";
-
-    public static final String STRING_PATTERN_LIST = "STRING_PATTERNS";
-    public static final String MEMBER_PATTERN_LIST = "patterns";
-
-    public static final String NO_INDENT = "";
-
-    private Constants() {
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/EnumGenerator.java b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/EnumGenerator.java
deleted file mode 100644 (file)
index f2acefd..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.java.api.generator;
-
-import java.io.IOException;
-import java.io.StringWriter;
-import java.io.Writer;
-
-import org.opendaylight.controller.sal.binding.model.api.CodeGenerator;
-import org.opendaylight.controller.sal.binding.model.api.Enumeration;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-
-public class EnumGenerator implements CodeGenerator {
-
-    @Override
-    public Writer generate(Type type) throws IOException {
-        final Writer writer = new StringWriter();
-        if (type instanceof Enumeration) {
-            final Enumeration enums = (Enumeration) type;
-            final EnumTemplate enumTemplate = new EnumTemplate(enums);
-            writer.write(enumTemplate.generate().toString());
-        }
-        return writer;
-    }
-
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/EnumTemplate.xtend b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/EnumTemplate.xtend
deleted file mode 100644 (file)
index 62e24ab..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-package org.opendaylight.controller.sal.java.api.generator
-
-import org.opendaylight.controller.sal.binding.model.api.Enumeration
-
-class EnumTemplate {
-    
-    val Enumeration enums
-    
-    new(Enumeration enums) {
-        this.enums = enums
-    }
-    
-    def generate() {
-        val body = generateBody
-        val pkg = generatePkg
-        return pkg.toString + body.toString
-    }
-    
-    def generateAsInnerClass() {
-        return generateBody
-    }
-    
-    def private generateBody() '''
-        public enum Â«enums.name» {
-        Â«FOR v : enums.values SEPARATOR ",\n"»
-            Â«"    "»«v.name»(«v.value»)«
-        ENDFOR»;
-        
-            int value;
-        
-            private Â«enums.name»(int value) {
-                this.value = value;
-            }
-        }
-    '''
-    
-    def private generatePkg() '''
-        package Â«enums.packageName»;
-        
-        
-    '''
-    
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/GeneratorJavaFile.java b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/GeneratorJavaFile.java
deleted file mode 100644 (file)
index a7496e8..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.java.api.generator;
-
-import java.io.*;
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.opendaylight.controller.sal.binding.model.api.*;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public final class GeneratorJavaFile {
-
-    private static final Logger log = LoggerFactory.getLogger(GeneratorJavaFile.class);
-    private final CodeGenerator interfaceGenerator;
-    private final ClassGenerator classGenerator;
-    private final EnumGenerator enumGenerator;
-    private final BuilderGenerator builderGenerator;
-
-    private final Set<GeneratedType> genTypes;
-    private final Set<GeneratedTransferObject> genTransferObjects;
-    private final Set<Enumeration> enumerations;
-
-    public GeneratorJavaFile(final CodeGenerator codeGenerator, final Set<GeneratedType> types) {
-        this.interfaceGenerator = codeGenerator;
-        this.genTypes = types;
-        this.genTransferObjects = new HashSet<>();
-        this.enumerations = new HashSet<>();
-        this.classGenerator = new ClassGenerator();
-        this.enumGenerator = new EnumGenerator();
-        this.builderGenerator = new BuilderGenerator();
-    }
-
-    public GeneratorJavaFile(final Set<GeneratedType> types, final Set<GeneratedTransferObject> genTransferObjects,
-            final Set<Enumeration> enumerations) {
-        this.interfaceGenerator = new InterfaceGenerator();
-        this.classGenerator = new ClassGenerator();
-        this.enumGenerator = new EnumGenerator();
-        this.builderGenerator = new BuilderGenerator();
-
-        this.genTypes = types;
-        this.genTransferObjects = genTransferObjects;
-        this.enumerations = enumerations;
-    }
-
-    public List<File> generateToFile(final File parentDirectory) throws IOException {
-        final List<File> result = new ArrayList<>();
-        for (GeneratedType type : genTypes) {
-            final File genFile = generateTypeToJavaFile(parentDirectory, type, interfaceGenerator, "");
-            final File genBuilderFile = generateTypeToJavaFile(parentDirectory, type, builderGenerator,
-                    BuilderGenerator.FILE_NAME_SUFFIX);
-
-            if (genFile != null) {
-                result.add(genFile);
-            }
-            if (genBuilderFile != null) {
-                result.add(genBuilderFile);
-            }
-        }
-        for (GeneratedTransferObject transferObject : genTransferObjects) {
-            final File genFile = generateTypeToJavaFile(parentDirectory, transferObject, classGenerator, "");
-
-            if (genFile != null) {
-                result.add(genFile);
-            }
-        }
-
-        for (Enumeration enumeration : enumerations) {
-            final File genFile = generateTypeToJavaFile(parentDirectory, enumeration, enumGenerator, "");
-
-            if (genFile != null) {
-                result.add(genFile);
-            }
-        }
-
-        return result;
-    }
-
-    private File generateTypeToJavaFile(final File parentDir, final Type type, final CodeGenerator generator, String fileNameSuffix)
-            throws IOException {
-        if (parentDir == null) {
-            log.warn("Parent Directory not specified, files will be generated "
-                    + "accordingly to generated Type package path.");
-        }
-        if (type == null) {
-            log.error("Cannot generate Type into Java File because " + "Generated Type is NULL!");
-            throw new IllegalArgumentException("Generated Type Cannot be NULL!");
-        }
-        if (generator == null) {
-            log.error("Cannot generate Type into Java File because " + "Code Generator instance is NULL!");
-            throw new IllegalArgumentException("Code Generator Cannot be NULL!");
-        }
-        final File packageDir = packageToDirectory(parentDir, type.getPackageName());
-
-        if (!packageDir.exists()) {
-            packageDir.mkdirs();
-        }
-        final File file = new File(packageDir, type.getName() + fileNameSuffix + ".java");
-        try (final FileWriter fw = new FileWriter(file)) {
-            file.createNewFile();
-
-            try (final BufferedWriter bw = new BufferedWriter(fw)) {
-                Writer writer = generator.generate(type);
-                bw.write(writer.toString());
-            }
-        } catch (IOException e) {
-            log.error(e.getMessage());
-            throw new IOException(e.getMessage());
-        }
-        return file;
-    }
-
-    private File packageToDirectory(final File parentDirectory, final String packageName) {
-        if (packageName == null) {
-            throw new IllegalArgumentException("Package Name cannot be NULL!");
-        }
-
-        final String[] subDirNames = packageName.split("\\.");
-        final StringBuilder dirPathBuilder = new StringBuilder();
-        dirPathBuilder.append(subDirNames[0]);
-        for (int i = 1; i < subDirNames.length; ++i) {
-            dirPathBuilder.append(File.separator);
-            dirPathBuilder.append(subDirNames[i]);
-        }
-        return new File(parentDirectory, dirPathBuilder.toString());
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/GeneratorUtil.java b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/GeneratorUtil.java
deleted file mode 100644 (file)
index 34e9abd..0000000
+++ /dev/null
@@ -1,313 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.java.api.generator;
-
-import static org.opendaylight.controller.sal.java.api.generator.Constants.COMMA;
-
-import java.util.ArrayList;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.opendaylight.controller.binding.generator.util.TypeConstants;
-import org.opendaylight.controller.binding.generator.util.Types;
-import org.opendaylight.controller.sal.binding.model.api.Constant;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedProperty;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType;
-import org.opendaylight.controller.sal.binding.model.api.MethodSignature;
-import org.opendaylight.controller.sal.binding.model.api.ParameterizedType;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.controller.sal.binding.model.api.WildcardType;
-
-
-public final class GeneratorUtil {
-
-    private GeneratorUtil() {
-    }
-    
-    public static Map<String, String> createImports(GeneratedType genType) {
-        if (genType == null) {
-            throw new IllegalArgumentException("Generated Type cannot be NULL!");
-        }
-        final Map<String, String> imports = new LinkedHashMap<>();
-        imports.put(genType.getName(), genType.getPackageName());
-        List<GeneratedType> childGeneratedTypes = genType.getEnclosedTypes();
-        if (!childGeneratedTypes.isEmpty()) {
-            for (GeneratedType genTypeChild : childGeneratedTypes) {
-                imports.putAll(createImports(genTypeChild));
-            }
-        }
-
-        final List<Constant> constants = genType.getConstantDefinitions();
-        final List<MethodSignature> methods = genType.getMethodDefinitions();
-        final List<Type> impl = genType.getImplements();
-
-        // IMPLEMENTATIONS
-        if (impl != null) {
-            for (final Type type : impl) {
-                putTypeIntoImports(genType, type, imports);
-            }
-        }
-
-        // CONSTANTS
-        if (constants != null) {
-            for (final Constant constant : constants) {
-                final Type constantType = constant.getType();
-                putTypeIntoImports(genType, constantType, imports);
-            }
-        }
-
-        // REGULAR EXPRESSION
-        if (genType instanceof GeneratedTransferObject) {
-            if (isConstantInTO(TypeConstants.PATTERN_CONSTANT_NAME, (GeneratedTransferObject) genType)) {
-                putTypeIntoImports(genType, Types.typeForClass(java.util.regex.Pattern.class), imports);
-                putTypeIntoImports(genType, Types.typeForClass(java.util.Arrays.class), imports);
-                putTypeIntoImports(genType, Types.typeForClass(java.util.ArrayList.class), imports);
-            }
-        }
-
-        // METHODS
-        if (methods != null) {
-            for (final MethodSignature method : methods) {
-                final Type methodReturnType = method.getReturnType();
-                putTypeIntoImports(genType, methodReturnType, imports);
-                for (final MethodSignature.Parameter methodParam : method.getParameters()) {
-                    putTypeIntoImports(genType, methodParam.getType(), imports);
-                }
-            }
-        }
-
-        // PROPERTIES
-        if (genType instanceof GeneratedTransferObject) {
-            final GeneratedTransferObject genTO = (GeneratedTransferObject) genType;
-            final List<GeneratedProperty> properties = genTO.getProperties();
-            if (properties != null) {
-                for (GeneratedProperty property : properties) {
-                    final Type propertyType = property.getReturnType();
-                    putTypeIntoImports(genType, propertyType, imports);
-                }
-            }
-        }
-
-        return imports;
-    }
-    
-    public static void putTypeIntoImports(final GeneratedType parentGenType, final Type type,
-            final Map<String, String> imports) {
-        if (parentGenType == null) {
-            throw new IllegalArgumentException("Parent Generated Type parameter MUST be specified and cannot be "
-                    + "NULL!");
-        }
-        if (parentGenType.getName() == null) {
-            throw new IllegalArgumentException("Parent Generated Type name cannot be NULL!");
-        }
-        if (parentGenType.getPackageName() == null) {
-            throw new IllegalArgumentException("Parent Generated Type cannot have Package Name referenced as NULL!");
-        }
-        if (type == null) {
-            throw new IllegalArgumentException("Type parameter MUST be specified and cannot be NULL!");
-        }
-        if (type.getName() == null) {
-            throw new IllegalArgumentException("Type name cannot be NULL!");
-        }
-        if (type.getPackageName() == null) {
-            throw new IllegalArgumentException("Type cannot have Package Name referenced as NULL!");
-        }
-
-        final String typeName = type.getName();
-        final String typePackageName = type.getPackageName();
-        final String parentTypeName = parentGenType.getName();
-        final String parentTypePackageName = parentGenType.getPackageName();
-        if (typeName.equals(parentTypeName) || typePackageName.startsWith("java.lang")
-                || typePackageName.equals(parentTypePackageName) || typePackageName.isEmpty()) {
-            return;
-        }
-        if (!imports.containsKey(typeName)) {
-            imports.put(typeName, typePackageName);
-        }
-        if (type instanceof ParameterizedType) {
-            final ParameterizedType paramType = (ParameterizedType) type;
-            final Type[] params = paramType.getActualTypeArguments();
-            for (Type param : params) {
-                putTypeIntoImports(parentGenType, param, imports);
-            }
-        }
-    }
-    
-    public static boolean isConstantInTO(String constName, GeneratedTransferObject genTO) {
-        if (constName == null || genTO == null)
-            throw new IllegalArgumentException();
-        List<Constant> consts = genTO.getConstantDefinitions();
-        for (Constant cons : consts) {
-            if (cons.getName().equals(constName)) {
-                return true;
-            }
-
-        }
-        return false;
-    }
-    
-    public static Map<String, String> createChildImports(GeneratedType genType) {
-        Map<String, String> childImports = new LinkedHashMap<>();
-        List<GeneratedType> childGeneratedTypes = genType.getEnclosedTypes();
-        if (!childGeneratedTypes.isEmpty()) {
-            for (GeneratedType genTypeChild : childGeneratedTypes) {
-                createChildImports(genTypeChild);
-                childImports.put(genTypeChild.getName(), genTypeChild.getPackageName());
-            }
-        }
-        return childImports;
-    }
-
-    public static String getExplicitType(final GeneratedType parentGenType, final Type type, final Map<String, String> imports) {
-        if (type == null) {
-            throw new IllegalArgumentException("Type parameter MUST be specified and cannot be NULL!");
-        }
-        if (type.getName() == null) {
-            throw new IllegalArgumentException("Type name cannot be NULL!");
-        }
-        if (type.getPackageName() == null) {
-            throw new IllegalArgumentException("Type cannot have Package Name referenced as NULL!");
-        }
-        if (imports == null) {
-            throw new IllegalArgumentException("Imports Map cannot be NULL!");
-        }
-
-        final String typePackageName = type.getPackageName();
-        final String typeName = type.getName();
-        final String importedPackageName = imports.get(typeName);
-        if (typePackageName.equals(importedPackageName) || typePackageName.equals(parentGenType.getPackageName())) {
-            final StringBuilder builder = new StringBuilder(type.getName());
-            if (type instanceof ParameterizedType) {
-                final ParameterizedType pType = (ParameterizedType) type;
-                final Type[] pTypes = pType.getActualTypeArguments();
-                builder.append("<");
-                builder.append(getParameters(parentGenType, pTypes, imports));
-                builder.append(">");
-            }
-            if (builder.toString().equals("Void")) {
-                return "void";
-            }
-            return builder.toString();
-        } else {
-            final StringBuilder builder = new StringBuilder();
-            if (typePackageName.startsWith("java.lang")) {
-                builder.append(type.getName());
-            } else {
-                if (!typePackageName.isEmpty()) {
-                    builder.append(typePackageName + Constants.DOT + type.getName());
-                } else {
-                    builder.append(type.getName());
-                }
-            }
-            if (type.equals(Types.voidType())) {
-                return "void";
-            }
-            if (type instanceof ParameterizedType) {
-                final ParameterizedType pType = (ParameterizedType) type;
-                final Type[] pTypes = pType.getActualTypeArguments();
-                builder.append("<");
-                builder.append(getParameters(parentGenType, pTypes, imports));
-                builder.append(">");
-            }
-            return builder.toString();
-        }
-    }
-    
-    private static String getParameters(final GeneratedType parentGenType, final Type[] pTypes, Map<String, String> availableImports) {
-        final StringBuilder builder = new StringBuilder();
-        for (int i = 0; i < pTypes.length; i++) {
-            final Type t = pTypes[i];
-
-            String separator = COMMA;
-            if (i == (pTypes.length - 1)) {
-                separator = "";
-            }
-
-            String wildcardParam = "";
-            if (t.equals(Types.voidType())) {
-                builder.append("java.lang.Void" + separator);
-                continue;
-            } else {
-
-                if (t instanceof WildcardType) {
-                    wildcardParam = "? extends ";
-                }
-
-                builder.append(wildcardParam + getExplicitType(parentGenType, t, availableImports) + separator);
-            }
-        }
-        return builder.toString();
-    }
-    
-    /**
-     * The method returns reference to highest (top parent) Generated Transfer
-     * Object.
-     * 
-     * @param childTransportObject
-     *            is generated transfer object which can be extended by other
-     *            generated transfer object
-     * @return in first case that <code>childTransportObject</code> isn't
-     *         extended then <code>childTransportObject</code> is returned. In
-     *         second case the method is recursive called until first case.
-     */
-    public static GeneratedTransferObject getTopParrentTransportObject(GeneratedTransferObject childTransportObject) {
-        if (childTransportObject == null) {
-            throw new IllegalArgumentException("Parameter childTransportObject can't be null.");
-        }
-        if (childTransportObject.getExtends() == null) {
-            return childTransportObject;
-        } else {
-            return getTopParrentTransportObject(childTransportObject.getExtends());
-        }
-    }
-    
-    /**
-     * The method selects from input list of properties only those which have
-     * read only attribute set to true.
-     * 
-     * @param properties
-     *            contains list of properties of generated transfer object
-     * @return subset of <code>properties</code> which have read only attribute
-     *         set to true
-     */
-    public static List<GeneratedProperty> resolveReadOnlyPropertiesFromTO(List<GeneratedProperty> properties) {
-        List<GeneratedProperty> readOnlyProperties = new ArrayList<GeneratedProperty>();
-        if (properties != null) {
-            for (final GeneratedProperty property : properties) {
-                if (property.isReadOnly()) {
-                    readOnlyProperties.add(property);
-                }
-            }
-        }
-        return readOnlyProperties;
-    }
-    
-    /**
-     * The method returns the list of the properties of all extending generated
-     * transfer object from <code>genTO</code> to highest parent generated
-     * transfer object
-     * 
-     * @param genTO
-     * @return the list of all properties from actual to highest parent
-     *         generated transfer object. In case when extension exists the
-     *         method is recursive called.
-     */
-    public static List<GeneratedProperty> getPropertiesOfAllParents(GeneratedTransferObject genTO) {
-        List<GeneratedProperty> propertiesOfAllParents = new ArrayList<GeneratedProperty>();
-        if (genTO.getExtends() != null) {
-            final List<GeneratedProperty> allPropertiesOfTO = genTO.getExtends().getProperties();
-            List<GeneratedProperty> readOnlyPropertiesOfTO = resolveReadOnlyPropertiesFromTO(allPropertiesOfTO);
-            propertiesOfAllParents.addAll(readOnlyPropertiesOfTO);
-            propertiesOfAllParents.addAll(getPropertiesOfAllParents(genTO.getExtends()));
-        }
-        return propertiesOfAllParents;
-    }
-    
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/InterfaceGenerator.java b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/InterfaceGenerator.java
deleted file mode 100644 (file)
index 381b157..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.java.api.generator;
-
-import java.io.IOException;
-import java.io.StringWriter;
-import java.io.Writer;
-
-import org.opendaylight.controller.sal.binding.model.api.CodeGenerator;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-
-public final class InterfaceGenerator implements CodeGenerator {
-
-    @Override
-    public Writer generate(Type type) throws IOException {
-        final Writer writer = new StringWriter();
-        if (type instanceof GeneratedType && !(type instanceof GeneratedTransferObject)) {
-            final GeneratedType genType = (GeneratedType) type;
-            final InterfaceTemplate interfaceTemplate = new InterfaceTemplate(genType);
-            writer.write(interfaceTemplate.generate().toString());
-        }
-        return writer;
-    }
-    
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/InterfaceTemplate.xtend b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/InterfaceTemplate.xtend
deleted file mode 100644 (file)
index fb9d606..0000000
+++ /dev/null
@@ -1,153 +0,0 @@
-package org.opendaylight.controller.sal.java.api.generator
-
-import java.util.List
-import java.util.Map
-import org.opendaylight.controller.binding.generator.util.TypeConstants
-import org.opendaylight.controller.sal.binding.model.api.Constant
-import org.opendaylight.controller.sal.binding.model.api.Enumeration
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType
-import org.opendaylight.controller.sal.binding.model.api.MethodSignature
-import org.opendaylight.controller.sal.binding.model.api.Type
-import java.util.LinkedHashMap
-
-class InterfaceTemplate {
-    
-    val GeneratedType genType
-    val Map<String, String> imports
-    val List<Constant> consts
-    val List<MethodSignature> methods
-    val List<Enumeration> enums
-    val List<GeneratedType> enclosedGeneratedTypes
-    
-    new(GeneratedType genType) {
-        if (genType == null) {
-            throw new IllegalArgumentException("Generated type reference cannot be NULL!")
-        }
-        
-        this.genType = genType
-        imports = GeneratorUtil.createImports(genType)
-        consts = genType.constantDefinitions
-        methods = genType.methodDefinitions
-        enums = genType.enumerations
-        enclosedGeneratedTypes = genType.enclosedTypes
-    }
-    
-    def generate() {
-        val body = generateBody
-        val pkgAndImports = generatePkgAndImports
-        return pkgAndImports.toString + body.toString
-    }
-    
-    def private generateBody() '''
-        Â«genType.comment.generateComment»
-        Â«generateIfcDeclaration» {
-        
-            Â«generateInnerClasses»
-        
-            Â«generateEnums»
-        
-            Â«generateConstants»
-        
-            Â«generateMethods»
-        
-        }
-        
-    '''
-    
-    def private generateComment(String comment) '''
-        Â«IF comment != null && !comment.empty»
-            /*
-            Â«comment»
-            */
-        Â«ENDIF»
-    '''
-    
-    def private generateIfcDeclaration() '''
-        public interface Â«genType.name»«
-        IF (!genType.implements.empty)»«
-            " extends "»«
-            FOR type : genType.implements SEPARATOR ", "»«
-                type.resolveName»«
-            ENDFOR»«
-        ENDIF
-    Â»'''
-    
-    def private generateInnerClasses() '''
-        Â«IF !enclosedGeneratedTypes.empty»
-            Â«FOR innerClass : enclosedGeneratedTypes SEPARATOR "\n"»
-                Â«IF (innerClass instanceof GeneratedTransferObject)»
-                    Â«val classTemplate = new ClassTemplate(innerClass as GeneratedTransferObject)»
-                    Â«classTemplate.generateAsInnerClass»
-                Â«ENDIF»
-            Â«ENDFOR»
-        Â«ENDIF»
-    '''
-    
-    def private generateEnums() '''
-        Â«IF !enums.empty»
-            Â«FOR e : enums SEPARATOR "\n"»
-                Â«val enumTemplate = new EnumTemplate(e)»
-                Â«enumTemplate.generateAsInnerClass»
-            Â«ENDFOR»
-        Â«ENDIF»
-    '''
-    
-    def private generateConstants() '''
-        Â«IF !consts.empty»
-            Â«FOR c : consts»
-                Â«IF c.name != TypeConstants.PATTERN_CONSTANT_NAME»
-                    public static final Â«c.type.resolveName» Â«c.name» = Â«c.value»;
-                Â«ENDIF»
-            Â«ENDFOR»
-        Â«ENDIF»
-    '''
-    
-    def private generateMethods() '''
-        Â«IF !methods.empty»
-            Â«FOR m : methods SEPARATOR "\n"»
-                Â«m.comment.generateComment»
-                Â«m.returnType.resolveName» Â«m.name»(«m.parameters.generateParameters»);
-            Â«ENDFOR»
-        Â«ENDIF»
-    '''
-    
-    def private generateParameters(List<MethodSignature.Parameter> parameters) '''«
-        IF !parameters.empty»«
-            FOR parameter : parameters SEPARATOR ", "»«
-                parameter.type.resolveName» Â«parameter.name»«
-            ENDFOR»«
-        ENDIF
-    Â»'''
-    
-    def private generatePkgAndImports() '''
-        package Â«genType.packageName»;
-        
-        
-        Â«IF !imports.empty»
-            Â«FOR entry : resolveImports.entrySet»
-                import Â«entry.value».«entry.key»;
-            Â«ENDFOR»
-        Â«ENDIF»
-        
-    '''
-    
-    def private Map<String, String> resolveImports() {
-        val innerTypeImports = GeneratorUtil.createChildImports(genType)
-        val Map<String, String> resolvedImports = new LinkedHashMap
-        for (Map.Entry<String, String> entry : imports.entrySet() + innerTypeImports.entrySet) {
-            val typeName = entry.getKey();
-            val packageName = entry.getValue();
-            if (packageName != genType.packageName && packageName != genType.fullyQualifiedName) {
-                resolvedImports.put(typeName, packageName);
-            }
-        }
-        return resolvedImports
-    }
-    
-    def private resolveName(Type type) {
-        GeneratorUtil.putTypeIntoImports(genType, type, imports);
-        GeneratorUtil.getExplicitType(genType, type, imports)
-    }
-    
-}   
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/package-info.java b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/package-info.java
deleted file mode 100644 (file)
index ac84b77..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-/*\r
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
- *\r
- * This program and the accompanying materials are made available under the\r
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
- * and is available at http://www.eclipse.org/legal/epl-v10.html\r
- */\r
-package org.opendaylight.controller.sal.java.api.generator;
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/java/org/opendaylight/controller/sal/java/api/generator/test/ClassCodeGeneratorTest.java b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/java/org/opendaylight/controller/sal/java/api/generator/test/ClassCodeGeneratorTest.java
deleted file mode 100644 (file)
index 3f41f1e..0000000
+++ /dev/null
@@ -1,161 +0,0 @@
-package org.opendaylight.controller.sal.java.api.generator.test;
-
-import static org.junit.Assert.*;
-
-import java.io.File;
-import java.io.IOException;
-import java.io.Writer;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.opendaylight.controller.binding.generator.util.Types;
-import org.opendaylight.controller.binding.generator.util.generated.type.builder.GeneratedTOBuilderImpl;
-import org.opendaylight.controller.sal.binding.generator.api.BindingGenerator;
-import org.opendaylight.controller.sal.binding.generator.impl.BindingGeneratorImpl;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedProperty;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.GeneratedPropertyBuilder;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.GeneratedTOBuilder;
-import org.opendaylight.controller.sal.java.api.generator.ClassGenerator;
-import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang.model.parser.api.YangModelParser;
-import org.opendaylight.yangtools.yang.parser.impl.YangParserImpl;
-
-public class ClassCodeGeneratorTest {
-
-    private final static List<File> testModels = new ArrayList<File>();
-
-    @BeforeClass
-    public static void loadTestResources() {
-        final File listModelFile = new File(ClassCodeGeneratorTest.class
-                .getResource("/list-composite-key.yang").getPath());
-        testModels.add(listModelFile);
-    }
-
-    @Test
-    public void compositeKeyClassTest() {
-        final YangModelParser parser = new YangParserImpl();
-        final Set<Module> modules = parser.parseYangModels(testModels);
-        final SchemaContext context = parser.resolveSchemaContext(modules);
-
-        assertNotNull(context);
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-
-        assertTrue(genTypes != null);
-        assertEquals(8, genTypes.size());
-
-        int genTypesCount = 0;
-        int genTOsCount = 0;
-        for (final Type type : genTypes) {
-            if (type instanceof GeneratedType
-                    && !(type instanceof GeneratedTransferObject)) {
-                genTypesCount++;
-            } else if (type instanceof GeneratedTransferObject) {
-                final GeneratedTransferObject genTO = (GeneratedTransferObject) type;
-
-                if (genTO.getName().equals("CompositeKeyListKey")) {
-                    final List<GeneratedProperty> properties = genTO
-                            .getProperties();
-                    int propertyCount = 0;
-                    for (final GeneratedProperty prop : properties) {
-                        if (prop.getName().equals("Key1")) {
-                            propertyCount++;
-                        } else if (prop.getName().equals("Key2")) {
-                            propertyCount++;
-                        }
-                    }
-
-                    final ClassGenerator clsGen = new ClassGenerator();
-                    try {
-                        final Writer writer = clsGen.generate(genTO);
-                        assertNotNull(writer);
-
-                        final String outputStr = writer.toString();
-                        writer.close();
-
-                        assertNotNull(outputStr);
-                        assertTrue(outputStr
-                                .contains("public CompositeKeyListKey(String Key2, "
-                                        + "Byte Key1)"));
-
-                    } catch (IOException e) {
-                        e.printStackTrace();
-                    }
-
-                    assertEquals(2, propertyCount);
-                    genTOsCount++;
-                } else if (genTO.getName().equals("InnerListKey")) {
-                    final List<GeneratedProperty> properties = genTO
-                            .getProperties();
-                    assertEquals(1, properties.size());
-                    genTOsCount++;
-                }
-            }
-        }
-
-        assertEquals(6, genTypesCount);
-        assertEquals(2, genTOsCount);
-    }
-
-    @Test
-    public void defaultConstructorTest() {
-        final GeneratedTOBuilder toBuilder = new GeneratedTOBuilderImpl(
-                "simple.pack", "DefCtor");
-
-        GeneratedPropertyBuilder propBuilder = toBuilder.addProperty("foo");
-        propBuilder.setReturnType(Types.typeForClass(String.class));
-        propBuilder.setReadOnly(false);
-
-        propBuilder = toBuilder.addProperty("bar");
-        propBuilder.setReturnType(Types.typeForClass(Integer.class));
-        propBuilder.setReadOnly(false);
-
-        final GeneratedTransferObject genTO = toBuilder.toInstance();
-
-        final ClassGenerator clsGen = new ClassGenerator();
-        try {
-            final Writer writer = clsGen.generate(genTO);
-            assertNotNull(writer);
-
-            final String outputStr = writer.toString();
-            writer.close();
-
-            assertNotNull(outputStr);
-            assertTrue(outputStr.contains("public DefCtor()"));
-
-        } catch (IOException e) {
-            e.printStackTrace();
-        }
-    }
-
-    @Test
-    public void toStringTest() {
-        final GeneratedTOBuilder toBuilder = new GeneratedTOBuilderImpl(
-                "simple.pack", "DefCtor");
-
-        GeneratedPropertyBuilder propBuilder = toBuilder.addProperty("foo");
-        propBuilder.setReturnType(Types.typeForClass(String.class));
-        propBuilder.setReadOnly(false);
-        toBuilder.addToStringProperty(propBuilder);
-
-        propBuilder = toBuilder.addProperty("bar");
-        propBuilder.setReturnType(Types.typeForClass(Integer.class));
-        propBuilder.setReadOnly(false);
-        toBuilder.addToStringProperty(propBuilder);
-        final GeneratedTransferObject genTO = toBuilder.toInstance();
-        final ClassGenerator clsGen = new ClassGenerator();
-        try {
-            final Writer writer = clsGen.generate(genTO);
-            assertNotNull(writer);
-        } catch (IOException e) {
-            e.printStackTrace();
-        }
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/java/org/opendaylight/controller/sal/java/api/generator/test/GenerateInnerClassForBitsAndUnionInLeavesTest.java b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/java/org/opendaylight/controller/sal/java/api/generator/test/GenerateInnerClassForBitsAndUnionInLeavesTest.java
deleted file mode 100644 (file)
index 6943dbf..0000000
+++ /dev/null
@@ -1,152 +0,0 @@
-package org.opendaylight.controller.sal.java.api.generator.test;
-
-import static org.junit.Assert.assertTrue;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-
-import org.junit.Test;
-import org.opendaylight.controller.sal.binding.generator.api.BindingGenerator;
-import org.opendaylight.controller.sal.binding.generator.impl.BindingGeneratorImpl;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedProperty;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang.model.parser.api.YangModelParser;
-import org.opendaylight.yangtools.yang.parser.impl.YangParserImpl;
-
-public class GenerateInnerClassForBitsAndUnionInLeavesTest {
-
-    private SchemaContext resolveSchemaContextFromFiles(final String... yangFiles) {
-        final YangModelParser parser = new YangParserImpl();
-
-        final List<File> inputFiles = new ArrayList<File>();
-        for (int i = 0; i < yangFiles.length; ++i) {
-            inputFiles.add(new File(yangFiles[i]));
-        }
-
-        final Set<Module> modules = parser.parseYangModels(inputFiles);
-        return parser.resolveSchemaContext(modules);
-    }
-
-    @Test
-    public void testInnerClassCreationForBitsAndUnionsInLeafes() {
-        final String yangTypesPath = getClass().getResource("/bit_and_union_in_leaf.yang").getPath();
-
-        final SchemaContext context = resolveSchemaContextFromFiles(yangTypesPath);
-        assertTrue(context != null);
-
-        final BindingGenerator bindingGen = new BindingGeneratorImpl();
-        final List<Type> genTypes = bindingGen.generateTypes(context);
-        assertTrue(genTypes != null);
-
-        boolean parentContainerFound = false;
-        boolean bitLeafTOFound = false;
-        boolean unionLeafTOFound = false;
-
-        boolean firstBitPropertyFound = false;
-        boolean secondBitPropertyFound = false;
-        boolean thirdBitPropertyFound = false;
-
-        boolean firstBitPropertyTypeOK = false;
-        boolean secondBitPropertyTypeOK = false;
-        boolean thirdBitPropertyTypeOK = false;
-
-        boolean int32UnionPropertyFound = false;
-        boolean int32UnionPropertyTypeOK = false;
-        boolean stringUnionPropertyFound = false;
-        boolean stringUnionPropertyTypeOK = false;
-        boolean uint8UnionPropertyFound = false;
-        boolean uint8UnionPropertyTypeOK = false;
-
-        for (Type type : genTypes) {
-            if (type instanceof GeneratedType && !(type instanceof GeneratedTransferObject)) {
-                if (type.getName().equals("ParentContainer")) {
-                    parentContainerFound = true;
-                    GeneratedType parentContainer = (GeneratedType) type;
-                    List<GeneratedType> enclosedTypes = parentContainer.getEnclosedTypes();
-                    for (GeneratedType genType : enclosedTypes) {
-                        if (genType instanceof GeneratedTransferObject) {
-                            if (genType.getName().equals("BitLeaf")) {
-                                bitLeafTOFound = true;
-                                GeneratedTransferObject bitLeafTO = (GeneratedTransferObject) genType;
-
-                                List<GeneratedProperty> bitLeafProperties = bitLeafTO.getProperties();
-                                for (GeneratedProperty bitLeafProperty : bitLeafProperties) {
-                                    String bitLeafPropertyType = bitLeafProperty.getReturnType().getName();
-                                    if (bitLeafProperty.getName().equals("firstBit")) {
-                                        firstBitPropertyFound = true;
-                                        if (bitLeafPropertyType.equals("Boolean")) {
-                                            firstBitPropertyTypeOK = true;
-                                        }
-                                    } else if (bitLeafProperty.getName().equals("secondBit")) {
-                                        secondBitPropertyFound = true;
-                                        if (bitLeafPropertyType.equals("Boolean")) {
-                                            secondBitPropertyTypeOK = true;
-                                        }
-                                    } else if (bitLeafProperty.getName().equals("thirdBit")) {
-                                        thirdBitPropertyFound = true;
-                                        if (bitLeafPropertyType.equals("Boolean")) {
-                                            thirdBitPropertyTypeOK = true;
-                                        }
-                                    }
-
-                                }
-
-                            } else if (genType.getName().equals("UnionLeaf")) {
-                                unionLeafTOFound = true;
-                                GeneratedTransferObject unionLeafTO = (GeneratedTransferObject) genType;
-
-                                List<GeneratedProperty> unionLeafProperties = unionLeafTO.getProperties();
-                                for (GeneratedProperty unionLeafProperty : unionLeafProperties) {
-                                    String unionLeafPropertyType = unionLeafProperty.getReturnType().getName();
-                                    if (unionLeafProperty.getName().equals("int32")) {
-                                        int32UnionPropertyFound = true;
-                                        if (unionLeafPropertyType.equals("Integer")) {
-                                            int32UnionPropertyTypeOK = true;
-                                        }
-                                    } else if (unionLeafProperty.getName().equals("string")) {
-                                        stringUnionPropertyFound = true;
-                                        if (unionLeafPropertyType.equals("String")) {
-                                            stringUnionPropertyTypeOK = true;
-                                        }
-                                    } else if (unionLeafProperty.getName().equals("uint8")) {
-                                        uint8UnionPropertyFound = true;
-                                        if (unionLeafPropertyType.equals("Short")) {
-                                            uint8UnionPropertyTypeOK = true;
-                                        }
-                                    }
-
-                                }
-
-                            }
-                        }
-                    }
-                }
-            }
-        }
-        assertTrue(parentContainerFound);
-
-        assertTrue(bitLeafTOFound);
-        assertTrue(firstBitPropertyFound);
-        assertTrue(secondBitPropertyFound);
-        assertTrue(thirdBitPropertyFound);
-
-        assertTrue(firstBitPropertyTypeOK);
-        assertTrue(secondBitPropertyTypeOK);
-        assertTrue(thirdBitPropertyTypeOK);
-
-        assertTrue(unionLeafTOFound);
-        assertTrue(int32UnionPropertyFound);
-        assertTrue(int32UnionPropertyTypeOK);
-        assertTrue(stringUnionPropertyFound);
-        assertTrue(stringUnionPropertyTypeOK);
-        assertTrue(uint8UnionPropertyFound);
-        assertTrue(uint8UnionPropertyTypeOK);
-
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/java/org/opendaylight/controller/sal/java/api/generator/test/GeneratorJavaFileTest.java b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/java/org/opendaylight/controller/sal/java/api/generator/test/GeneratorJavaFileTest.java
deleted file mode 100644 (file)
index 3b03a06..0000000
+++ /dev/null
@@ -1,199 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.java.api.generator.test;
-
-import static org.junit.Assert.*;
-
-import java.io.File;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import javax.tools.JavaCompiler;
-import javax.tools.JavaFileObject;
-import javax.tools.StandardJavaFileManager;
-import javax.tools.ToolProvider;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Ignore;
-import org.junit.Test;
-import org.opendaylight.controller.binding.generator.util.generated.type.builder.GeneratedTypeBuilderImpl;
-import org.opendaylight.controller.sal.binding.generator.api.BindingGenerator;
-import org.opendaylight.controller.sal.binding.generator.impl.BindingGeneratorImpl;
-import org.opendaylight.controller.sal.binding.model.api.Enumeration;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.controller.sal.binding.model.api.type.builder.GeneratedTypeBuilder;
-import org.opendaylight.controller.sal.java.api.generator.GeneratorJavaFile;
-import org.opendaylight.controller.sal.java.api.generator.InterfaceGenerator;
-import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang.parser.impl.YangParserImpl;
-
-public class GeneratorJavaFileTest {
-    private static final String FS = File.separator;
-    private static final String PATH = "target/test/test-dir";
-    private final File testDir = new File(PATH);
-
-    private static final String GENERATOR_OUTPUT_PATH = "target/test/src";
-    private static final File GENERATOR_OUTPUT = new File(GENERATOR_OUTPUT_PATH);
-    private static final String COMPILER_OUTPUT_PATH = "target/test/bin";
-    private static final File COMPILER_OUTPUT = new File(COMPILER_OUTPUT_PATH);
-
-    @Before
-    public void init() {
-        assertTrue(testDir.mkdirs());
-        assertTrue(COMPILER_OUTPUT.mkdirs());
-        assertTrue(GENERATOR_OUTPUT.mkdirs());
-    }
-
-    @After
-    public void cleanUp() {
-        if(testDir.exists()) {
-            deleteTestDir(testDir);
-        }
-        if(COMPILER_OUTPUT.exists()) {
-            deleteTestDir(COMPILER_OUTPUT);
-        }
-        if(GENERATOR_OUTPUT.exists()) {
-            deleteTestDir(GENERATOR_OUTPUT);
-        }
-    }
-
-    @Test
-    public void test() throws IOException {
-        final Set<GeneratedType> types = new HashSet<GeneratedType>();
-        GeneratedType t1 = createGeneratedType(
-                "org.opendaylight.controller.gen", "Type1");
-        GeneratedType t2 = createGeneratedType(
-                "org.opendaylight.controller.gen", "Type2");
-        GeneratedType t3 = createGeneratedType(
-                "org.opendaylight.controller.gen", "Type3");
-        types.add(t1);
-        types.add(t2);
-        types.add(t3);
-        GeneratorJavaFile generator = new GeneratorJavaFile(
-                new InterfaceGenerator(), types);
-        generator.generateToFile(new File(PATH));
-
-        String[] files = new File(PATH + FS + "org" + FS + "opendaylight" + FS
-                + "controller" + FS + "gen").list();
-        List<String> filesList = Arrays.asList(files);
-
-        assertEquals(6, files.length);
-        assertTrue(filesList.contains("Type1.java"));
-        assertTrue(filesList.contains("Type2.java"));
-        assertTrue(filesList.contains("Type3.java"));
-        assertTrue(filesList.contains("Type1Builder.java"));
-        assertTrue(filesList.contains("Type2Builder.java"));
-        assertTrue(filesList.contains("Type3Builder.java"));
-    }
-
-    @Ignore
-    @Test
-    public void compilationTest() throws Exception {
-        final YangParserImpl parser = new YangParserImpl();
-        final BindingGenerator bindingGenerator = new BindingGeneratorImpl();
-
-        final String resPath = getClass().getResource("/yang").getPath();
-        final File sourcesDir = new File(resPath);
-        final List<File> sourceFiles = new ArrayList<File>();
-        final File[] fileArray = sourcesDir.listFiles();
-
-        for (int i = 0; i < fileArray.length; ++i) {
-            sourceFiles.add(fileArray[i]);
-        }
-
-        final Set<Module> modulesToBuild = parser.parseYangModels(sourceFiles);
-
-        final SchemaContext context = parser
-                .resolveSchemaContext(modulesToBuild);
-        final List<Type> types = bindingGenerator.generateTypes(context);
-        final Set<GeneratedType> typesToGenerate = new HashSet<GeneratedType>();
-        final Set<GeneratedTransferObject> tosToGenerate = new HashSet<GeneratedTransferObject>();
-        final Set<Enumeration> enumerationToGenerate = new HashSet<Enumeration>();
-        for (Type type : types) {
-            if (type instanceof GeneratedType
-                    && !(type instanceof GeneratedTransferObject)) {
-                typesToGenerate.add((GeneratedType) type);
-            }
-
-            if (type instanceof GeneratedTransferObject) {
-                tosToGenerate.add((GeneratedTransferObject) type);
-            }
-            if (type instanceof Enumeration) {
-               enumerationToGenerate.add((Enumeration) type);
-            }
-        }
-
-        final GeneratorJavaFile generator = new GeneratorJavaFile(
-                typesToGenerate, tosToGenerate, enumerationToGenerate);
-        generator.generateToFile(new File(GENERATOR_OUTPUT_PATH));
-
-        JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
-        StandardJavaFileManager fileManager = compiler.getStandardFileManager(
-                null, null, null);
-
-        List<File> filesList = getJavaFiles(new File(GENERATOR_OUTPUT_PATH));
-        File current = new File(System.getProperty("user.dir"));
-        File parentPath = current.getParentFile().getParentFile();
-        File f = new File(parentPath,"yang/yang-binding/src/main/java/org/opendaylight/controller/yang/binding/DataObject.java"
-        );
-        filesList.add(f);
-
-        Iterable<? extends JavaFileObject> compilationUnits = fileManager
-                .getJavaFileObjectsFromFiles(filesList);
-        Iterable<String> options = Arrays.asList(new String[]{"-d", COMPILER_OUTPUT_PATH});
-        boolean compiled = compiler.getTask(null, null, null, options, null,
-                compilationUnits).call();
-        assertTrue(compiled);
-    }
-
-    private GeneratedType createGeneratedType(String pkgName, String name) {
-        GeneratedTypeBuilder builder = new GeneratedTypeBuilderImpl(pkgName,
-                name);
-        return builder.toInstance();
-    }
-
-    private void deleteTestDir(File file) {
-        if (file.isDirectory()) {
-            for (File f : file.listFiles()) {
-                deleteTestDir(f);
-            }
-        }
-        if (!file.delete()) {
-            throw new RuntimeException("Failed to clean up after test");
-        }
-    }
-
-    /**
-     * Search recursively given directory for *.java files.
-     *
-     * @param directory directory to search
-     * @return List of java files found
-     */
-    private List<File> getJavaFiles(File directory) {
-        List<File> result = new ArrayList<File>();
-        for (File file : directory.listFiles()) {
-            if (file.isDirectory()) {
-                result.addAll(getJavaFiles(file));
-            } else {
-                String absPath = file.getAbsolutePath();
-                if (absPath.endsWith(".java")) {
-                    result.add(file);
-                }
-            }
-        }
-        return result;
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/java/org/opendaylight/controller/sal/java/api/generator/test/package-info.java b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/java/org/opendaylight/controller/sal/java/api/generator/test/package-info.java
deleted file mode 100644 (file)
index 82d6668..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-/*\r
-  * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
-  *\r
-  * This program and the accompanying materials are made available under the\r
-  * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
-  * and is available at http://www.eclipse.org/legal/epl-v10.html\r
-  */\r
-package org.opendaylight.controller.sal.java.api.generator.test;
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/abstract-topology.yang b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/abstract-topology.yang
deleted file mode 100644 (file)
index 7e78f3b..0000000
+++ /dev/null
@@ -1,130 +0,0 @@
-// vi: set smarttab sw=4 tabstop=4:
-module abstract-topology {
-       yang-version 1;
-    namespace "";
-    prefix "tp";
-
-       import ietf-inet-types { prefix "inet"; }
-    import abstract-prefixes { prefix "abs-pref"; }
-    
-       organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    description "
-               This module contains the definitions of elements that creates network 
-               topology i.e. definition of network nodes and links. This module is
-               not designed to be used solely for network representation. This module
-               SHOULD be used as base module in defining the network topology.
-       ";
-
-    revision "2013-02-08" {
-               reference " WILL BE DEFINED LATER";
-       }
-
-    revision "2013-03-08" {
-        reference " WILL BE DEFINED LATER";
-    }
-    
-    revision "2012-02-08" {
-        reference " WILL BE DEFINED LATER";
-    }
-
-    typedef topology-id-ref {
-       type leafref {
-               path "/tp:topology/tp:topology-id";
-       }
-       description "This type is used for leafs that reference topology identifier instance.";
-    }
-
-       typedef network-node-id-ref {
-               type leafref {
-                       path "/tp:topology/tp:network-nodes/tp:network-node/tp:node-id";
-               }
-               description "This type is used for leafs that reference network node instance.";
-       }
-
-       typedef link-id-ref {
-               type leafref {
-                       path "/tp:topology/tp:network-links/tp:network-link/tp:link-id";
-               }
-               description "This type is used for leafs that reference network link instance.";
-       }
-
-       container topology {
-        description "
-                       This is the model of abstract topology which contains only Network
-                       Nodes and Network Links. Each topology MUST be identified by
-                       unique topology-id for reason that the store could contain many
-                       topologies.
-               ";
-
-        leaf topology-id {
-            type inet:uri;
-            description "
-                               It is presumed that datastore will contain many topologies. To
-                               distinguish between topologies it is vital to have UNIQUE
-                               topology identifier.
-                       ";
-        }
-
-        container network-nodes {
-               list network-node {
-                   description "The list of network nodes defined for topology.";
-
-                       key "node-id";
-
-                       leaf node-id {
-                               type inet:uri;
-                               description "The Topology identifier of network-node.";
-                       }
-
-                   container attributes {
-                                       description "
-                                               Additional attributes that can Network Node contains.
-                                       ";
-                               }
-               }
-        }
-        
-        container network-links {
-               list network-link {
-                   description "
-                                       The Network Link which is defined by Local (Source) and
-                                       Remote (Destination) Network Nodes. Every link MUST be
-                                       defined either by identifier and his local and remote
-                                       Network Nodes (in real applications it is common that many
-                                       links are originated from one node and end up in same
-                                       remote node). To ensure that we would always know to
-                                       distinguish between links, every link SHOULD have
-                                       identifier.
-                               ";
-                       key "link-id";
-
-                       leaf link-id {
-                               type inet:uri;
-                               description "";
-                       }
-
-                   container source {
-                                       leaf node-id {
-                                               type node-id-ref;
-                                               description "Source node identifier.";
-                                       }
-                               }
-
-                               container destination {
-                                       leaf node-id {
-                                               type node-id-ref;
-                                               description "Destination node identifier.";
-                                       }
-                               }
-
-                               container attributes {
-                                       description "Aditional attributes that can Network Link contains.";
-                               }
-                   }
-        }
-    }
-
-    //TODO: add base operations
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/bit_and_union_in_leaf.yang b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/bit_and_union_in_leaf.yang
deleted file mode 100644 (file)
index bf13c4f..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-module bit-and-union-in-leaf {
-    
-    namespace "urn:bit:union:in:leaf";
-    prefix "sbd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision 2013-06-26 {
-        
-    }
-    
-    typedef union-typedef {
-        type union {
-            type string {
-                pattern "[a-g]";
-            }
-            type int16;
-        }
-    }
-    
-    typedef union-typedef2 {
-        type union {
-            type string; 
-            type int16;
-        }
-    }    
-    
-    container parent-container {
-        leaf bit-leaf {
-            type bits {
-                bit first-bit;
-                bit second-bit;
-                bit third-bit;
-            }
-        }
-        
-        leaf union-leaf {
-            type union {
-                type int32;
-                type string {
-                    pattern "[a-z]";
-                }
-                type string {
-                    pattern "[0-9]*";
-                }
-                type string {
-                    pattern "[a-d]*";
-                    pattern "[0-5]*";
-                }
-                type uint8;
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/demo-topology.yang b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/demo-topology.yang
deleted file mode 100644 (file)
index 95de943..0000000
+++ /dev/null
@@ -1,121 +0,0 @@
-module demo-topology {
-       yang-version 1;
-    namespace "";
-    prefix "tp";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    description "
-               This module contains the definitions of elements that creates network 
-               topology i.e. definition of network nodes and links. This module is
-               not designed to be used solely for network representation. This module
-               SHOULD be used as base module in defining the network topology.
-       ";
-
-    revision "2013-02-08"{
-               reference " WILL BE DEFINED LATER";
-       }
-
-       container topology {
-        description "
-                       This is the model of abstract topology which contains only Network
-                       Nodes and Network Links. Each topology MUST be identified by
-                       unique topology-id for reason that the store could contain many
-                       topologies.
-               ";
-
-        leaf topology-id {
-            type string;
-            description "
-                               It is presumed that datastore will contain many topologies. To
-                               distinguish between topologies it is vital to have UNIQUE
-                               topology identifier.
-                       ";
-        }
-
-        container network-nodes {
-               list network-node {
-                   description "The list of network nodes defined for topology.";
-
-                       key "node-id";
-
-                       leaf node-id {
-                               type string;
-                               description "The Topology identifier of network-node.";
-                       }
-                
-                list network-interface {
-                    key "interface-id";
-                    
-                    leaf interface-id {
-                        type uint8;
-                    }
-                    
-                    leaf interface-address {
-                        type string;
-                    }
-                }
-                
-                   container node-attributes {
-                                       description "
-                                               Additional attributes that can Network Node contains.
-                                       ";
-
-                                       leaf geo-latitude {
-                                               type decimal64 {
-                                                       fraction-digits 2;
-                                               }
-                                               config true;
-                                       }
-
-                                       leaf geo-longitude {
-                                               type decimal64 {
-                                                       fraction-digits 2;
-                                               }
-                                               config true;
-                                       }
-                               }
-               }
-        }
-        
-        container network-links {
-               list network-link {
-                   description "
-                                       The Network Link which is defined by Local (Source) and
-                                       Remote (Destination) Network Nodes. Every link MUST be
-                                       defined either by identifier and his local and remote
-                                       Network Nodes (in real applications it is common that many
-                                       links are originated from one node and end up in same
-                                       remote node). To ensure that we would always know to
-                                       distinguish between links, every link SHOULD have
-                                       identifier.
-                               ";
-                       key "link-id";
-
-                       leaf link-id {
-                               type string;
-                               description "";
-                       }
-
-                   container source {
-                                       leaf node-id {
-                                               type string;
-                                               description "Source node identifier.";
-                                       }
-                               }
-
-                               container destination {
-                                       leaf node-id {
-                                               type string;
-                                               description "Destination node identifier.";
-                                       }
-                               }
-
-                               container link-attributes {
-                                       description "Aditional attributes that can Network Link contains.";
-                               }
-                   }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/list-composite-key.yang b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/list-composite-key.yang
deleted file mode 100644 (file)
index 07e1dc7..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-module list-composite-key {
-    yang-version 1;
-    namespace "urn:composite.key";
-    prefix "scd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    description "
-        This module contains the definitions of elements that creates network 
-        topology i.e. definition of network nodes and links. This module is
-        not designed to be used solely for network representation. This module
-        SHOULD be used as base module in defining the network topology.
-    ";
-
-    revision "2013-02-27" {
-        reference " WILL BE DEFINED LATER";
-    }
-
-    container list-parent-container {
-
-        list composite-key-list {
-            key "key1 key2";
-
-            leaf key1 {
-                type int8;
-            }
-            
-            leaf key2 {
-                type string;
-            }
-            
-            list inner-list {
-                key "key1";
-                
-                leaf key1 {
-                    type uint16;
-                }
-                
-                leaf foo {
-                    type int32;
-                }
-            }
-            
-            leaf foo {
-                type int32;
-            }
-        }
-        
-        list no-key-list {
-            leaf foo {
-                type int32;
-            }
-            
-            leaf bar {
-                type decimal64 {
-                    fraction-digits 2;
-                }
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/simple-container-demo.yang b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/simple-container-demo.yang
deleted file mode 100644 (file)
index 3962274..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-module simple-container-demo {
-       yang-version 1;
-    namespace "urn:simple.container.demo";
-    prefix "scd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    description "
-        This module contains the definitions of elements that creates network 
-        topology i.e. definition of network nodes and links. This module is
-        not designed to be used solely for network representation. This module
-        SHOULD be used as base module in defining the network topology.
-    ";
-
-    revision "2012-02-08" {
-        reference " WILL BE DEFINED LATER";
-    }
-
-    revision "2010-02-08" {
-        reference " WILL BE DEFINED LATER";
-    }
-
-    container simple-container {
-
-       leaf foo {
-               type int32;
-       }
-
-       leaf bar {
-               type string;
-               config true;
-       }
-
-       container nested-container {
-               leaf foo {
-                       type uint8;
-               }
-
-               leaf bar {
-                       type string;
-               }
-       }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/simple-leaf-list-demo.yang b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/simple-leaf-list-demo.yang
deleted file mode 100644 (file)
index c0e77ef..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-module simple-leaf-list-demo {
-    yang-version 1;
-    namespace "urn:simple.leaf-list.demo";
-    prefix "scd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    description "
-        This module contains the definitions of elements that creates network 
-        topology i.e. definition of network nodes and links. This module is
-        not designed to be used solely for network representation. This module
-        SHOULD be used as base module in defining the network topology.
-    ";
-
-    revision "2012-02-08" {
-        reference " WILL BE DEFINED LATER";
-    }
-
-    revision "2010-02-08" {
-        reference " WILL BE DEFINED LATER";
-    }
-
-    container simple-container {
-
-        leaf-list foo {
-            type int32;
-        }
-
-        leaf bar {
-            type string;
-            config true;
-        }
-
-        container nested-container {
-            leaf foo {
-                type uint8;
-            }
-
-            leaf-list bar {
-                type string;
-                config true;
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/simple-list-demo.yang b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/simple-list-demo.yang
deleted file mode 100644 (file)
index 69f7f5c..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-module simple-list-demo {
-       yang-version 1;
-    namespace "urn:simple.container.demo";
-    prefix "scd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    description "
-        This module contains the definitions of elements that creates network 
-        topology i.e. definition of network nodes and links. This module is
-        not designed to be used solely for network representation. This module
-        SHOULD be used as base module in defining the network topology.
-    ";
-
-    revision "2013-02-27" {
-        reference " WILL BE DEFINED LATER";
-    }
-
-    container list-parent-container {
-
-       list simple-list {
-               key "list-key";
-
-               leaf list-key {
-                       type int8;
-               }
-            
-            container list-child-container {
-                leaf foo {
-                    type uint8;
-                }
-            }
-            
-               leaf foo {
-                       type int32;
-               }
-            
-            leaf-list simple-leaf-list {
-                type int32;
-            }
-            
-               leaf bar {
-                       type string;
-                       config true;
-               }       
-       }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/yang/abstract-topology@2013-02-08.yang b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/yang/abstract-topology@2013-02-08.yang
deleted file mode 100644 (file)
index 8bdf327..0000000
+++ /dev/null
@@ -1,171 +0,0 @@
-module abstract-topology {
-    yang-version 1;
-    namespace "urn:model:abstract:topology";
-    prefix "tp";
-
-    import ietf-inet-types {
-        prefix "inet";
-        revision-date 2010-09-24;
-    }
-
-    import ietf-interfaces {
-        prefix "if";
-        revision-date 2012-11-15;
-    }
-
-    organization "Cisco";
-    contact "WILL-BE-DEFINED-LATER";
-
-    description
-        "This module contains the definitions of elements that creates network 
-    topology i.e. definition of network nodes and links. This module is not designed to be used solely for network representation. This module SHOULD be used as base module in defining the network topology.";
-
-    revision "2013-02-08" {
-        reference "~~~ WILL BE DEFINED LATER";
-    }
-    
-    revision "2013-01-01" {
-        reference "~~~ WILL BE DEFINED LATER";
-    }
-    
-    typedef node-id-ref {
-        type leafref {
-            path "/tp:topology/tp:network-nodes/tp:network-node/tp:node-id";
-        }
-        description "This type is used for leafs that reference network node instance.";
-    }
-
-    typedef link-id-ref {
-        type leafref {
-            path "/tp:topology/tp:network-links/tp:network-link/tp:link-id";
-        }
-        description "This type is used for leafs that reference network link instance.";
-    }
-
-    typedef interface-id-ref {
-        type leafref {
-            path "/tp:topology/tp:interfaces/tp:interface/tp:interface-id";
-        }
-    }
-
-    container topology {
-        description "This is the model of abstract topology which contains only Network Nodes and Network Links. Each topology MUST be identified by unique topology-id for reason that the store could contain many topologies.";
-
-        leaf topology-id {
-            type inet:uri;
-            description "It is presumed that datastore will contain many topologies. To distinguish between topologies it is vital to have
-            UNIQUE topology identifier.";
-        }
-
-        container network-nodes {
-            list network-node {
-                key "node-id";
-
-                leaf node-id {
-                    type inet:uri;
-                    description "The Topology identifier of network-node.";
-                }
-
-                container attributes {
-                    description "Aditional attributes that can Network Node contains.";
-                }
-                description "The list of network nodes defined for topology.";
-            }
-        }
-
-        container interfaces {
-            list interface {
-                key "interface-id";
-
-                leaf interface-id {
-                    type leafref {
-                        path "/if:interfaces/if:interface/if:name";
-                    }
-                }
-
-                leaf-list higher-layer-if {
-                    type leafref {
-                        path "/if:interfaces/if:interface/if:higher-layer-if";
-                    }
-                }
-            }
-        }
-        
-        container network-links {
-            list network-link {
-                key "link-id";
-
-                leaf link-id {
-                    type inet:uri;
-                    description "";
-                }
-
-                container source-node {
-                    leaf id {
-                        type node-id-ref;
-                        description "Source node identifier.";
-                    }
-                }
-
-                container destination-node {
-                    leaf id {
-                        type node-id-ref;
-                        description "Destination node identifier.";
-                    }
-                }
-
-                container tunnels {
-                    list tunnel {
-                        key "tunnel-id";
-
-                        leaf tunnel-id {
-                            type leafref {
-                                path "../../../link-id";
-                            }
-                        }
-                    }
-                }
-
-                leaf interface {
-                    type interface-id-ref;
-                }
-
-                container attributes {
-                    description "Aditional attributes that can Network Link contains.";
-                }
-                description "The Network Link which is defined by Local (Source) and Remote (Destination) Network Nodes. Every link MUST be defined either by identifier and
-                his local and remote Network Nodes (In real applications it is common that many links are originated from one node and end up in same remote node). To ensure that we would always know to distinguish between links, every link SHOULD have identifier.";
-            }
-        }
-    }
-    
-    identity crypto-base {
-        description "crypto-base description";
-    }
-    
-    identity crypto-alg {
-        base crypto-base;
-        description "crypto-alg description";
-    }
-    
-    grouping target {
-        container nodes {
-            leaf source {
-                type int8;
-            }
-            leaf target {
-                type int16;
-            }
-        }
-        leaf id {
-            type string;
-        }
-    }
-    
-    leaf idreftest {
-        type identityref {
-            base crypto-alg;
-        }
-    }
-    
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/yang/iana-if-type@2012-06-05.yang b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/yang/iana-if-type@2012-06-05.yang
deleted file mode 100644 (file)
index a7fa137..0000000
+++ /dev/null
@@ -1,1516 +0,0 @@
-module iana-if-type {
-  namespace "urn:ietf:params:xml:ns:yang:iana-if-type";
-  prefix ianaift;
-
-  organization "IANA";
-  contact
-    "        Internet Assigned Numbers Authority
-
-     Postal: ICANN
-             4676 Admiralty Way, Suite 330
-             Marina del Rey, CA 90292
-
-     Tel:    +1 310 823 9358
-     E-Mail: iana&iana.org";
-  description
-    "This YANG module defines the iana-if-type typedef, which
-     contains YANG definitions for IANA-registered interface types.
-
-     This YANG module is maintained by IANA, and reflects the
-     'ifType definitions' registry.
-
-     The latest revision of this YANG module can be obtained from
-     the IANA web site.
-
-     Copyright (c) 2011 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or
-     without modification, is permitted pursuant to, and subject
-     to the license terms contained in, the Simplified BSD License
-     set forth in Section 4.c of the IETF Trust's Legal Provisions
-     Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC XXXX; see
-     the RFC itself for full legal notices.";
-  // RFC Ed.: replace XXXX with actual RFC number and remove this
-  // note.
-
-  // RFC Ed.: update the date below with the date of RFC publication
-  // and remove this note.
-  revision 2012-06-05 {
-    description
-      "Initial revision.";
-    reference
-      "RFC XXXX: TITLE";
-  }
-
-  typedef iana-if-type {
-    type enumeration {
-      enum "other" {
-        value 1;
-        description
-          "None of the following";
-      }
-      enum "regular1822" {
-        value 2;
-      }
-      enum "hdh1822" {
-        value 3;
-      }
-      enum "ddnX25" {
-        value 4;
-      }
-      enum "rfc877x25" {
-        value 5;
-        reference
-          "RFC 1382 - SNMP MIB Extension for the X.25 Packet Layer";
-      }
-      enum "ethernetCsmacd" {
-        value 6;
-        description
-          "For all ethernet-like interfaces, regardless of speed,
-           as per RFC3635.";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "iso88023Csmacd" {
-        value 7;
-        status deprecated;
-        description
-          "Deprecated via RFC3635.
-           Use ethernetCsmacd(6) instead.";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "iso88024TokenBus" {
-        value 8;
-      }
-      enum "iso88025TokenRing" {
-        value 9;
-      }
-      enum "iso88026Man" {
-        value 10;
-      }
-      enum "starLan" {
-        value 11;
-        status deprecated;
-        description
-          "Deprecated via RFC3635.
-           Use ethernetCsmacd(6) instead.";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "proteon10Mbit" {
-        value 12;
-      }
-      enum "proteon80Mbit" {
-        value 13;
-      }
-      enum "hyperchannel" {
-        value 14;
-      }
-      enum "fddi" {
-        value 15;
-        reference
-          "RFC 1512 - FDDI Management Information Base";
-      }
-      enum "lapb" {
-        value 16;
-        reference
-          "RFC 1381 - SNMP MIB Extension for X.25 LAPB";
-      }
-      enum "sdlc" {
-        value 17;
-      }
-      enum "ds1" {
-        value 18;
-        description
-          "DS1-MIB";
-        reference
-          "RFC 4805 - Definitions of Managed Objects for the
-                      DS1, J1, E1, DS2, and E2 Interface Types";
-      }
-      enum "e1" {
-        value 19;
-        status obsolete;
-        description
-          "Obsolete see DS1-MIB";
-        reference
-          "RFC 4805 - Definitions of Managed Objects for the
-                      DS1, J1, E1, DS2, and E2 Interface Types";
-      }
-      enum "basicISDN" {
-        value 20;
-        description
-          "see also RFC2127";
-      }
-      enum "primaryISDN" {
-        value 21;
-      }
-      enum "propPointToPointSerial" {
-        value 22;
-        description
-          "proprietary serial";
-      }
-      enum "ppp" {
-        value 23;
-      }
-      enum "softwareLoopback" {
-        value 24;
-      }
-      enum "eon" {
-        value 25;
-        description
-          "CLNP over IP";
-      }
-      enum "ethernet3Mbit" {
-        value 26;
-      }
-      enum "nsip" {
-        value 27;
-        description
-          "XNS over IP";
-      }
-      enum "slip" {
-        value 28;
-        description
-          "generic SLIP";
-      }
-      enum "ultra" {
-        value 29;
-        description
-          "ULTRA technologies";
-      }
-      enum "ds3" {
-        value 30;
-        description
-          "DS3-MIB";
-        reference
-          "RFC 3896 - Definitions of Managed Objects for the
-                      DS3/E3 Interface Type";
-      }
-      enum "sip" {
-        value 31;
-        description
-          "SMDS, coffee";
-        reference
-          "RFC 1694 - Definitions of Managed Objects for SMDS
-                      Interfaces using SMIv2";
-      }
-      enum "frameRelay" {
-        value 32;
-        description
-          "DTE only.";
-        reference
-          "RFC 2115 - Management Information Base for Frame Relay
-                      DTEs Using SMIv2";
-      }
-      enum "rs232" {
-        value 33;
-        reference
-          "RFC 1659 - Definitions of Managed Objects for RS-232-like
-                      Hardware Devices using SMIv2";
-      }
-      enum "para" {
-        value 34;
-        description
-          "parallel-port";
-        reference
-          "RFC 1660 - Definitions of Managed Objects for
-                      Parallel-printer-like Hardware Devices using
-                      SMIv2";
-      }
-      enum "arcnet" {
-        value 35;
-        description
-          "arcnet";
-      }
-      enum "arcnetPlus" {
-        value 36;
-        description
-          "arcnet plus";
-      }
-      enum "atm" {
-        value 37;
-        description
-          "ATM cells";
-      }
-      enum "miox25" {
-        value 38;
-        reference
-          "RFC 1461 - SNMP MIB extension for Multiprotocol
-                      Interconnect over X.25";
-      }
-      enum "sonet" {
-        value 39;
-        description
-          "SONET or SDH";
-      }
-      enum "x25ple" {
-        value 40;
-        reference
-          "RFC 2127 - ISDN Management Information Base using SMIv2";
-      }
-      enum "iso88022llc" {
-        value 41;
-      }
-      enum "localTalk" {
-        value 42;
-      }
-      enum "smdsDxi" {
-        value 43;
-      }
-      enum "frameRelayService" {
-        value 44;
-        description
-          "FRNETSERV-MIB";
-        reference
-          "RFC 2954 - Definitions of Managed Objects for Frame
-                      Relay Service";
-      }
-      enum "v35" {
-        value 45;
-      }
-      enum "hssi" {
-        value 46;
-      }
-      enum "hippi" {
-        value 47;
-      }
-      enum "modem" {
-        value 48;
-        description
-          "Generic modem";
-      }
-      enum "aal5" {
-        value 49;
-        description
-          "AAL5 over ATM";
-      }
-      enum "sonetPath" {
-        value 50;
-      }
-      enum "sonetVT" {
-        value 51;
-      }
-      enum "smdsIcip" {
-        value 52;
-        description
-          "SMDS InterCarrier Interface";
-      }
-      enum "propVirtual" {
-        value 53;
-        description
-          "proprietary virtual/internal";
-        reference
-          "RFC 2863 - The Interfaces Group MIB";
-      }
-      enum "propMultiplexor" {
-        value 54;
-        description
-          "proprietary multiplexing";
-        reference
-          "RFC 2863 - The Interfaces Group MIB";
-      }
-      enum "ieee80212" {
-        value 55;
-        description
-          "100BaseVG";
-      }
-      enum "fibreChannel" {
-        value 56;
-        description
-          "Fibre Channel";
-      }
-      enum "hippiInterface" {
-        value 57;
-        description
-          "HIPPI interfaces";
-      }
-      enum "frameRelayInterconnect" {
-        value 58;
-        status obsolete;
-        description
-          "Obsolete use either
-           frameRelay(32) or frameRelayService(44).";
-      }
-      enum "aflane8023" {
-        value 59;
-        description
-          "ATM Emulated LAN for 802.3";
-      }
-      enum "aflane8025" {
-        value 60;
-        description
-          "ATM Emulated LAN for 802.5";
-      }
-      enum "cctEmul" {
-        value 61;
-        description
-         "ATM Emulated circuit";
-      }
-      enum "fastEther" {
-        value 62;
-        status deprecated;
-        description
-          "Obsoleted via RFC3635.
-          ethernetCsmacd(6) should be used instead";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "isdn" {
-        value 63;
-        description
-          "ISDN and X.25";
-        reference
-          "RFC 1356 - Multiprotocol Interconnect on X.25 and ISDN
-                      in the Packet Mode";
-      }
-      enum "v11" {
-        value 64;
-        description
-         "CCITT V.11/X.21";
-      }
-      enum "v36" {
-        value 65;
-        description
-          "CCITT V.36";
-      }
-      enum "g703at64k" {
-        value 66;
-        description
-          "CCITT G703 at 64Kbps";
-      }
-      enum "g703at2mb" {
-        value 67;
-        status obsolete;
-        description
-          "Obsolete see DS1-MIB";
-      }
-      enum "qllc" {
-        value 68;
-        description
-          "SNA QLLC";
-      }
-      enum "fastEtherFX" {
-        value 69;
-        status deprecated;
-        description
-          "Obsoleted via RFC3635
-          ethernetCsmacd(6) should be used instead";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "channel" {
-        value 70;
-        description
-          "channel";
-      }
-      enum "ieee80211" {
-        value 71;
-        description
-          "radio spread spectrum";
-      }
-      enum "ibm370parChan" {
-        value 72;
-        description
-          "IBM System 360/370 OEMI Channel";
-      }
-      enum "escon" {
-        value 73;
-        description
-          "IBM Enterprise Systems Connection";
-      }
-      enum "dlsw" {
-        value 74;
-        description
-          "Data Link Switching";
-      }
-      enum "isdns" {
-        value 75;
-        description
-          "ISDN S/T interface";
-      }
-      enum "isdnu" {
-        value 76;
-        description
-          "ISDN U interface";
-      }
-      enum "lapd" {
-        value 77;
-        description
-          "Link Access Protocol D";
-      }
-      enum "ipSwitch" {
-        value 78;
-        description
-          "IP Switching Objects";
-      }
-      enum "rsrb" {
-        value 79;
-        description
-          "Remote Source Route Bridging";
-      }
-      enum "atmLogical" {
-        value 80;
-        description
-          "ATM Logical Port";
-        reference
-          "RFC 3606 - Definitions of Supplemental Managed Objects
-                      for ATM Interface";
-      }
-      enum "ds0" {
-        value 81;
-        description
-          "Digital Signal Level 0";
-        reference
-          "RFC 2494 - Definitions of Managed Objects for the DS0
-                      and DS0 Bundle Interface Type";
-      }
-      enum "ds0Bundle" {
-        value 82;
-        description
-          "group of ds0s on the same ds1";
-        reference
-          "RFC 2494 - Definitions of Managed Objects for the DS0
-                      and DS0 Bundle Interface Type";
-      }
-      enum "bsc" {
-        value 83;
-        description
-          "Bisynchronous Protocol";
-      }
-      enum "async" {
-        value 84;
-        description
-          "Asynchronous Protocol";
-      }
-      enum "cnr" {
-        value 85;
-        description
-          "Combat Net Radio";
-      }
-      enum "iso88025Dtr" {
-        value 86;
-        description
-          "ISO 802.5r DTR";
-      }
-      enum "eplrs" {
-        value 87;
-        description
-          "Ext Pos Loc Report Sys";
-      }
-      enum "arap" {
-        value 88;
-        description
-          "Appletalk Remote Access Protocol";
-      }
-      enum "propCnls" {
-        value 89;
-        description
-          "Proprietary Connectionless Protocol";
-      }
-      enum "hostPad" {
-        value 90;
-        description
-          "CCITT-ITU X.29 PAD Protocol";
-      }
-      enum "termPad" {
-        value 91;
-        description
-          "CCITT-ITU X.3 PAD Facility";
-      }
-      enum "frameRelayMPI" {
-        value 92;
-        description
-          "Multiproto Interconnect over FR";
-      }
-      enum "x213" {
-        value 93;
-        description
-          "CCITT-ITU X213";
-      }
-      enum "adsl" {
-        value 94;
-        description
-          "Asymmetric Digital Subscriber Loop";
-      }
-      enum "radsl" {
-        value 95;
-        description
-          "Rate-Adapt. Digital Subscriber Loop";
-      }
-      enum "sdsl" {
-        value 96;
-        description
-          "Symmetric Digital Subscriber Loop";
-      }
-      enum "vdsl" {
-        value 97;
-        description
-          "Very H-Speed Digital Subscrib. Loop";
-      }
-      enum "iso88025CRFPInt" {
-        value 98;
-        description
-          "ISO 802.5 CRFP";
-      }
-      enum "myrinet" {
-        value 99;
-        description
-          "Myricom Myrinet";
-      }
-      enum "voiceEM" {
-        value 100;
-        description
-          "voice recEive and transMit";
-      }
-      enum "voiceFXO" {
-        value 101;
-        description
-          "voice Foreign Exchange Office";
-      }
-      enum "voiceFXS" {
-        value 102;
-        description
-          "voice Foreign Exchange Station";
-      }
-      enum "voiceEncap" {
-        value 103;
-        description
-          "voice encapsulation";
-      }
-      enum "voiceOverIp" {
-        value 104;
-        description
-          "voice over IP encapsulation";
-      }
-      enum "atmDxi" {
-        value 105;
-        description
-          "ATM DXI";
-      }
-      enum "atmFuni" {
-        value 106;
-        description
-          "ATM FUNI";
-      }
-      enum "atmIma" {
-        value 107;
-        description
-          "ATM IMA";
-      }
-      enum "pppMultilinkBundle" {
-        value 108;
-        description
-          "PPP Multilink Bundle";
-      }
-      enum "ipOverCdlc" {
-        value 109;
-        description
-          "IBM ipOverCdlc";
-      }
-      enum "ipOverClaw" {
-        value 110;
-        description
-          "IBM Common Link Access to Workstn";
-      }
-      enum "stackToStack" {
-        value 111;
-        description
-          "IBM stackToStack";
-      }
-      enum "virtualIpAddress" {
-        value 112;
-        description
-          "IBM VIPA";
-      }
-      enum "mpc" {
-        value 113;
-        description
-          "IBM multi-protocol channel support";
-      }
-      enum "ipOverAtm" {
-        value 114;
-        description
-          "IBM ipOverAtm";
-        reference
-          "RFC 2320 - Definitions of Managed Objects for Classical IP
-                      and ARP Over ATM Using SMIv2 (IPOA-MIB)";
-      }
-      enum "iso88025Fiber" {
-        value 115;
-        description
-          "ISO 802.5j Fiber Token Ring";
-      }
-      enum "tdlc" {
-        value 116;
-        description
-          "IBM twinaxial data link control";
-      }
-      enum "gigabitEthernet" {
-        value 117;
-        status deprecated;
-        description
-          "Obsoleted via RFC3635
-           ethernetCsmacd(6) should be used instead";
-        reference
-          "RFC 3635 - Definitions of Managed Objects for the
-                      Ethernet-like Interface Types.";
-      }
-      enum "hdlc" {
-        value 118;
-        description
-          "HDLC";
-      }
-      enum "lapf" {
-        value 119;
-        description
-          "LAP F";
-      }
-      enum "v37" {
-        value 120;
-        description
-          "V.37";
-      }
-      enum "x25mlp" {
-        value 121;
-        description
-          "Multi-Link Protocol";
-      }
-      enum "x25huntGroup" {
-        value 122;
-        description
-          "X25 Hunt Group";
-      }
-      enum "transpHdlc" {
-        value 123;
-        description
-          "Transp HDLC";
-      }
-      enum "interleave" {
-        value 124;
-        description
-          "Interleave channel";
-      }
-      enum "fast" {
-        value 125;
-        description
-          "Fast channel";
-      }
-      enum "ip" {
-        value 126;
-        description
-          "IP (for APPN HPR in IP networks)";
-      }
-      enum "docsCableMaclayer" {
-        value 127;
-        description
-          "CATV Mac Layer";
-      }
-      enum "docsCableDownstream" {
-        value 128;
-        description
-          "CATV Downstream interface";
-      }
-      enum "docsCableUpstream" {
-        value 129;
-        description
-          "CATV Upstream interface";
-      }
-      enum "a12MppSwitch" {
-        value 130;
-        description
-          "Avalon Parallel Processor";
-      }
-      enum "tunnel" {
-        value 131;
-        description
-          "Encapsulation interface";
-      }
-      enum "coffee" {
-        value 132;
-        description
-          "coffee pot";
-        reference
-          "RFC 2325 - Coffee MIB";
-      }
-      enum "ces" {
-        value 133;
-        description
-          "Circuit Emulation Service";
-      }
-      enum "atmSubInterface" {
-        value 134;
-        description
-          "ATM Sub Interface";
-      }
-      enum "l2vlan" {
-        value 135;
-        description
-          "Layer 2 Virtual LAN using 802.1Q";
-      }
-      enum "l3ipvlan" {
-        value 136;
-        description
-          "Layer 3 Virtual LAN using IP";
-      }
-      enum "l3ipxvlan" {
-        value 137;
-        description
-          "Layer 3 Virtual LAN using IPX";
-      }
-      enum "digitalPowerline" {
-        value 138;
-        description
-          "IP over Power Lines";
-      }
-      enum "mediaMailOverIp" {
-        value 139;
-        description
-          "Multimedia Mail over IP";
-      }
-      enum "dtm" {
-        value 140;
-        description
-          "Dynamic syncronous Transfer Mode";
-      }
-      enum "dcn" {
-        value 141;
-        description
-          "Data Communications Network";
-      }
-      enum "ipForward" {
-        value 142;
-        description
-          "IP Forwarding Interface";
-      }
-      enum "msdsl" {
-        value 143;
-        description
-          "Multi-rate Symmetric DSL";
-      }
-      enum "ieee1394" {
-        value 144;
-        description
-          "IEEE1394 High Performance Serial Bus";
-      }
-      enum "if-gsn" {
-        value 145;
-        description
-          "HIPPI-6400";
-      }
-      enum "dvbRccMacLayer" {
-        value 146;
-        description
-          "DVB-RCC MAC Layer";
-      }
-      enum "dvbRccDownstream" {
-        value 147;
-        description
-          "DVB-RCC Downstream Channel";
-      }
-      enum "dvbRccUpstream" {
-        value 148;
-        description
-          "DVB-RCC Upstream Channel";
-      }
-      enum "atmVirtual" {
-        value 149;
-        description
-          "ATM Virtual Interface";
-      }
-      enum "mplsTunnel" {
-        value 150;
-        description
-          "MPLS Tunnel Virtual Interface";
-      }
-      enum "srp" {
-        value 151;
-        description
-          "Spatial Reuse Protocol       ";
-      }
-      enum "voiceOverAtm" {
-        value 152;
-        description
-          "Voice Over ATM";
-      }
-      enum "voiceOverFrameRelay" {
-        value 153;
-        description
-          "Voice Over Frame Relay";
-      }
-      enum "idsl" {
-        value 154;
-        description
-          "Digital Subscriber Loop over ISDN";
-      }
-      enum "compositeLink" {
-        value 155;
-        description
-          "Avici Composite Link Interface";
-      }
-      enum "ss7SigLink" {
-        value 156;
-        description
-          "SS7 Signaling Link";
-      }
-      enum "propWirelessP2P" {
-        value 157;
-        description
-          "Prop. P2P wireless interface";
-      }
-      enum "frForward" {
-        value 158;
-        description
-          "Frame Forward Interface";
-      }
-      enum "rfc1483" {
-        value 159;
-        description
-          "Multiprotocol over ATM AAL5";
-        reference
-          "RFC 1483 - Multiprotocol Encapsulation over ATM
-                      Adaptation Layer 5";
-      }
-      enum "usb" {
-        value 160;
-        description
-          "USB Interface";
-      }
-      enum "ieee8023adLag" {
-        value 161;
-        description
-          "IEEE 802.3ad Link Aggregate";
-      }
-      enum "bgppolicyaccounting" {
-        value 162;
-        description
-          "BGP Policy Accounting";
-      }
-      enum "frf16MfrBundle" {
-        value 163;
-        description
-          "FRF .16 Multilink Frame Relay";
-      }
-      enum "h323Gatekeeper" {
-        value 164;
-        description
-          "H323 Gatekeeper";
-      }
-      enum "h323Proxy" {
-        value 165;
-        description
-          "H323 Voice and Video Proxy";
-      }
-      enum "mpls" {
-        value 166;
-        description
-          "MPLS";
-      }
-      enum "mfSigLink" {
-        value 167;
-        description
-          "Multi-frequency signaling link";
-      }
-      enum "hdsl2" {
-        value 168;
-        description
-          "High Bit-Rate DSL - 2nd generation";
-      }
-      enum "shdsl" {
-        value 169;
-        description
-          "Multirate HDSL2";
-      }
-      enum "ds1FDL" {
-        value 170;
-        description
-          "Facility Data Link 4Kbps on a DS1";
-      }
-      enum "pos" {
-        value 171;
-        description
-          "Packet over SONET/SDH Interface";
-      }
-      enum "dvbAsiIn" {
-        value 172;
-        description
-          "DVB-ASI Input";
-      }
-      enum "dvbAsiOut" {
-        value 173;
-        description
-          "DVB-ASI Output";
-      }
-      enum "plc" {
-        value 174;
-        description
-          "Power Line Communtications";
-      }
-      enum "nfas" {
-        value 175;
-        description
-          "Non Facility Associated Signaling";
-      }
-      enum "tr008" {
-        value 176;
-        description
-          "TR008";
-      }
-      enum "gr303RDT" {
-        value 177;
-        description
-          "Remote Digital Terminal";
-      }
-      enum "gr303IDT" {
-        value 178;
-        description
-          "Integrated Digital Terminal";
-      }
-      enum "isup" {
-        value 179;
-        description
-          "ISUP";
-      }
-      enum "propDocsWirelessMaclayer" {
-        value 180;
-        description
-          "Cisco proprietary Maclayer";
-      }
-      enum "propDocsWirelessDownstream" {
-        value 181;
-        description
-          "Cisco proprietary Downstream";
-      }
-      enum "propDocsWirelessUpstream" {
-        value 182;
-        description
-          "Cisco proprietary Upstream";
-      }
-      enum "hiperlan2" {
-        value 183;
-        description
-          "HIPERLAN Type 2 Radio Interface";
-      }
-      enum "propBWAp2Mp" {
-        value 184;
-        description
-          "PropBroadbandWirelessAccesspt2multipt use of this value
-           for IEEE 802.16 WMAN interfaces as per IEEE Std 802.16f
-           is deprecated and ieee80216WMAN(237) should be used
-           instead.";
-      }
-      enum "sonetOverheadChannel" {
-        value 185;
-        description
-          "SONET Overhead Channel";
-      }
-      enum "digitalWrapperOverheadChannel" {
-        value 186;
-        description
-          "Digital Wrapper";
-      }
-      enum "aal2" {
-        value 187;
-        description
-          "ATM adaptation layer 2";
-      }
-      enum "radioMAC" {
-        value 188;
-        description
-          "MAC layer over radio links";
-      }
-      enum "atmRadio" {
-        value 189;
-        description
-          "ATM over radio links";
-      }
-      enum "imt" {
-        value 190;
-        description
-          "Inter Machine Trunks";
-      }
-      enum "mvl" {
-        value 191;
-        description
-          "Multiple Virtual Lines DSL";
-      }
-      enum "reachDSL" {
-        value 192;
-        description
-          "Long Reach DSL";
-      }
-      enum "frDlciEndPt" {
-        value 193;
-        description
-          "Frame Relay DLCI End Point";
-      }
-      enum "atmVciEndPt" {
-        value 194;
-        description
-          "ATM VCI End Point";
-      }
-      enum "opticalChannel" {
-        value 195;
-        description
-          "Optical Channel";
-      }
-      enum "opticalTransport" {
-        value 196;
-        description
-          "Optical Transport";
-      }
-      enum "propAtm" {
-        value 197;
-        description
-          "Proprietary ATM";
-      }
-      enum "voiceOverCable" {
-        value 198;
-        description
-          "Voice Over Cable Interface";
-      }
-      enum "infiniband" {
-        value 199;
-        description
-          "Infiniband";
-      }
-      enum "teLink" {
-        value 200;
-        description
-          "TE Link";
-      }
-      enum "q2931" {
-        value 201;
-        description
-          "Q.2931";
-      }
-      enum "virtualTg" {
-        value 202;
-        description
-          "Virtual Trunk Group";
-      }
-      enum "sipTg" {
-        value 203;
-        description
-          "SIP Trunk Group";
-      }
-      enum "sipSig" {
-        value 204;
-        description
-          "SIP Signaling";
-      }
-      enum "docsCableUpstreamChannel" {
-        value 205;
-        description
-          "CATV Upstream Channel";
-      }
-      enum "econet" {
-        value 206;
-        description
-          "Acorn Econet";
-      }
-      enum "pon155" {
-        value 207;
-        description
-          "FSAN 155Mb Symetrical PON interface";
-      }
-      enum "pon622" {
-        value 208;
-        description
-          "FSAN622Mb Symetrical PON interface";
-      }
-      enum "bridge" {
-        value 209;
-        description
-          "Transparent bridge interface";
-      }
-      enum "linegroup" {
-        value 210;
-        description
-          "Interface common to multiple lines";
-      }
-      enum "voiceEMFGD" {
-        value 211;
-        description
-          "voice E&M Feature Group D";
-      }
-      enum "voiceFGDEANA" {
-        value 212;
-        description
-          "voice FGD Exchange Access North American";
-      }
-      enum "voiceDID" {
-        value 213;
-        description
-          "voice Direct Inward Dialing";
-      }
-      enum "mpegTransport" {
-        value 214;
-        description
-          "MPEG transport interface";
-      }
-      enum "sixToFour" {
-        value 215;
-        status deprecated;
-        description
-          "6to4 interface (DEPRECATED)";
-        reference
-          "RFC 4087 - IP Tunnel MIB";
-      }
-      enum "gtp" {
-        value 216;
-        description
-          "GTP (GPRS Tunneling Protocol)";
-      }
-      enum "pdnEtherLoop1" {
-        value 217;
-        description
-          "Paradyne EtherLoop 1";
-      }
-      enum "pdnEtherLoop2" {
-        value 218;
-        description
-          "Paradyne EtherLoop 2";
-      }
-      enum "opticalChannelGroup" {
-        value 219;
-        description
-          "Optical Channel Group";
-      }
-      enum "homepna" {
-        value 220;
-        description
-          "HomePNA ITU-T G.989";
-      }
-      enum "gfp" {
-        value 221;
-        description
-          "Generic Framing Procedure (GFP)";
-      }
-      enum "ciscoISLvlan" {
-        value 222;
-        description
-          "Layer 2 Virtual LAN using Cisco ISL";
-      }
-      enum "actelisMetaLOOP" {
-        value 223;
-        description
-          "Acteleis proprietary MetaLOOP High Speed Link";
-      }
-      enum "fcipLink" {
-        value 224;
-        description
-          "FCIP Link";
-      }
-      enum "rpr" {
-        value 225;
-        description
-          "Resilient Packet Ring Interface Type";
-      }
-      enum "qam" {
-        value 226;
-        description
-          "RF Qam Interface";
-      }
-      enum "lmp" {
-        value 227;
-        description
-          "Link Management Protocol";
-        reference
-          "RFC 4327 - Link Management Protocol (LMP) Management
-                      Information Base (MIB)";
-      }
-      enum "cblVectaStar" {
-        value 228;
-        description
-          "Cambridge Broadband Networks Limited VectaStar";
-      }
-      enum "docsCableMCmtsDownstream" {
-        value 229;
-        description
-          "CATV Modular CMTS Downstream Interface";
-      }
-      enum "adsl2" {
-        value 230;
-        status deprecated;
-        description
-          "Asymmetric Digital Subscriber Loop Version 2
-           (DEPRECATED/OBSOLETED - please use adsl2plus(238)
-           instead)";
-        reference
-          "RFC 4706 - Definitions of Managed Objects for Asymmetric
-                      Digital Subscriber Line 2 (ADSL2)";
-      }
-      enum "macSecControlledIF" {
-        value 231;
-        description
-          "MACSecControlled";
-      }
-      enum "macSecUncontrolledIF" {
-        value 232;
-        description
-          "MACSecUncontrolled";
-      }
-      enum "aviciOpticalEther" {
-        value 233;
-        description
-         "Avici Optical Ethernet Aggregate";
-      }
-      enum "atmbond" {
-        value 234;
-        description
-          "atmbond";
-      }
-      enum "voiceFGDOS" {
-        value 235;
-        description
-          "voice FGD Operator Services";
-      }
-      enum "mocaVersion1" {
-        value 236;
-        description
-          "MultiMedia over Coax Alliance (MoCA) Interface
-           as documented in information provided privately to IANA";
-      }
-      enum "ieee80216WMAN" {
-        value 237;
-        description
-          "IEEE 802.16 WMAN interface";
-      }
-      enum "adsl2plus" {
-        value 238;
-        description
-          "Asymmetric Digital Subscriber Loop Version 2,
-           Version 2 Plus and all variants";
-      }
-      enum "dvbRcsMacLayer" {
-        value 239;
-        description
-          "DVB-RCS MAC Layer";
-        reference
-          "RFC 5728 - The SatLabs Group DVB-RCS MIB";
-      }
-      enum "dvbTdm" {
-        value 240;
-        description
-          "DVB Satellite TDM";
-        reference
-          "RFC 5728 - The SatLabs Group DVB-RCS MIB";
-      }
-      enum "dvbRcsTdma" {
-        value 241;
-        description
-          "DVB-RCS TDMA";
-        reference
-          "RFC 5728 - The SatLabs Group DVB-RCS MIB";
-      }
-      enum "x86Laps" {
-        value 242;
-        description
-          "LAPS based on ITU-T X.86/Y.1323";
-      }
-      enum "wwanPP" {
-        value 243;
-        description
-          "3GPP WWAN";
-      }
-      enum "wwanPP2" {
-        value 244;
-        description
-          "3GPP2 WWAN";
-      }
-      enum "voiceEBS" {
-        value 245;
-        description
-          "voice P-phone EBS physical interface";
-      }
-      enum "ifPwType" {
-        value 246;
-        description
-          "Pseudowire interface type";
-        reference
-          "RFC 5601 - Pseudowire (PW) Management Information Base";
-      }
-      enum "ilan" {
-        value 247;
-        description
-          "Internal LAN on a bridge per IEEE 802.1ap";
-      }
-      enum "pip" {
-        value 248;
-        description
-          "Provider Instance Port on a bridge per IEEE 802.1ah PBB";
-      }
-      enum "aluELP" {
-        value 249;
-        description
-          "Alcatel-Lucent Ethernet Link Protection";
-      }
-      enum "gpon" {
-        value 250;
-        description
-          "Gigabit-capable passive optical networks (G-PON) as per
-           ITU-T G.948";
-      }
-      enum "vdsl2" {
-        value 251;
-        description
-          "Very high speed digital subscriber line Version 2
-           (as per ITU-T Recommendation G.993.2)";
-        reference
-          "RFC 5650 - Definitions of Managed Objects for Very High
-                      Speed Digital Subscriber Line 2 (VDSL2)";
-      }
-      enum "capwapDot11Profile" {
-        value 252;
-        description
-          "WLAN Profile Interface";
-        reference
-          "RFC 5834 - Control and Provisioning of Wireless Access
-                      Points (CAPWAP) Protocol Binding MIB for
-                      IEEE 802.11";
-      }
-      enum "capwapDot11Bss" {
-        value 253;
-        description
-          "WLAN BSS Interface";
-        reference
-          "RFC 5834 - Control and Provisioning of Wireless Access
-                      Points (CAPWAP) Protocol Binding MIB for
-                      IEEE 802.11";
-      }
-      enum "capwapWtpVirtualRadio" {
-        value 254;
-        description
-          "WTP Virtual Radio Interface";
-        reference
-          "RFC 5833 - Control and Provisioning of Wireless Access
-                      Points (CAPWAP) Protocol Base MIB";
-      }
-      enum "bits" {
-        value 255;
-        description
-          "bitsport";
-      }
-      enum "docsCableUpstreamRfPort" {
-        value 256;
-        description
-          "DOCSIS CATV Upstream RF Port";
-      }
-      enum "cableDownstreamRfPort" {
-        value 257;
-        description
-          "CATV downstream RF port";
-      }
-      enum "vmwareVirtualNic" {
-        value 258;
-        description
-          "VMware Virtual Network Interface";
-      }
-      enum "ieee802154" {
-        value 259;
-        description
-          "IEEE 802.15.4 WPAN interface";
-        reference
-          "IEEE 802.15.4-2006";
-      }
-      enum "otnOdu" {
-        value 260;
-        description
-          "OTN Optical Data Unit";
-      }
-      enum "otnOtu" {
-        value 261;
-        description
-          "OTN Optical channel Transport Unit";
-      }
-      enum "ifVfiType" {
-        value 262;
-        description
-          "VPLS Forwarding Instance Interface Type";
-      }
-      enum "g9981" {
-        value 263;
-        description
-          "G.998.1 bonded interface";
-      }
-      enum "g9982" {
-        value 264;
-        description
-          "G.998.2 bonded interface";
-      }
-      enum "g9983" {
-        value 265;
-        description
-          "G.998.3 bonded interface";
-      }
-      enum "aluEpon" {
-        value 266;
-        description
-          "Ethernet Passive Optical Networks (E-PON)";
-      }
-      enum "aluEponOnu" {
-        value 267;
-        description
-          "EPON Optical Network Unit";
-      }
-      enum "aluEponPhysicalUni" {
-        value 268;
-        description
-          "EPON physical User to Network interface";
-      }
-      enum "aluEponLogicalLink" {
-        value 269;
-        description
-          "The emulation of a point-to-point link over the EPON
-           layer";
-      }
-      enum "aluGponOnu" {
-        value 270;
-        description
-          "GPON Optical Network Unit";
-        reference
-          "ITU-T G.984.2";
-      }
-      enum "aluGponPhysicalUni" {
-        value 271;
-        description
-          "GPON physical User to Network interface";
-        reference
-          "ITU-T G.984.2";
-      }
-      enum "vmwareNicTeam" {
-        value 272;
-        description
-          "VMware NIC Team";
-      }
-    }
-    description
-      "This data type is used as the syntax of the 'type'
-       leaf in the 'interface' list in the YANG module
-       ietf-interface.
-
-       The definition of this typedef with the
-       addition of newly assigned values is published
-       periodically by the IANA, in either the Assigned
-       Numbers RFC, or some derivative of it specific to
-       Internet Network Management number assignments.  (The
-       latest arrangements can be obtained by contacting the
-       IANA.)
-
-       Requests for new values should be made to IANA via
-       email (iana&iana.org).";
-    reference
-      "ifType definitions registry.
-       <http://www.iana.org/assignments/smi-numbers>";
-  }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/yang/ietf-inet-types@2010-09-24.yang b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/yang/ietf-inet-types@2010-09-24.yang
deleted file mode 100644 (file)
index 6a6c748..0000000
+++ /dev/null
@@ -1,418 +0,0 @@
- module ietf-inet-types {
-
-   namespace "urn:ietf:params:xml:ns:yang:ietf-inet-types";
-   prefix "inet";
-
-   organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-   contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Partain
-               <mailto:david.partain@ericsson.com>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     Editor:   Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>";
-
-   description
-    "This module contains a collection of generally useful derived
-     YANG data types for Internet addresses and related things.
-
-     Copyright (c) 2010 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or without
-     modification, is permitted pursuant to, and subject to the license
-     terms contained in, the Simplified BSD License set forth in Section
-     4.c of the IETF Trust's Legal Provisions Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC 6021; see
-     the RFC itself for full legal notices.";
-
-   revision 2010-09-24 {
-     description
-      "Initial revision.";
-     reference
-      "RFC 6021: Common YANG Data Types";
-   }
-
-   /*** collection of protocol field related types ***/
-
-   typedef ip-version {
-     type enumeration {
-       enum unknown {
-         value "0";
-         description
-          "An unknown or unspecified version of the Internet protocol.";
-       }
-       enum ipv4 {
-         value "1";
-         description
-          "The IPv4 protocol as defined in RFC 791.";
-       }
-       enum ipv6 {
-         value "2";
-         description
-          "The IPv6 protocol as defined in RFC 2460.";
-       }
-     }
-     description
-      "This value represents the version of the IP protocol.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetVersion textual convention of the SMIv2.";
-     reference
-      "RFC  791: Internet Protocol
-       RFC 2460: Internet Protocol, Version 6 (IPv6) Specification
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   typedef dscp {
-     type uint8 {
-       range "0..63";
-     }
-     description
-      "The dscp type represents a Differentiated Services Code-Point
-       that may be used for marking packets in a traffic stream.
-
-       In the value set and its semantics, this type is equivalent
-       to the Dscp textual convention of the SMIv2.";
-     reference
-      "RFC 3289: Management Information Base for the Differentiated
-                 Services Architecture
-       RFC 2474: Definition of the Differentiated Services Field
-                 (DS Field) in the IPv4 and IPv6 Headers
-       RFC 2780: IANA Allocation Guidelines For Values In
-                 the Internet Protocol and Related Headers";
-   }
-
-   typedef ipv6-flow-label {
-     type uint32 {
-       range "0..1048575";
-     }
-     description
-      "The flow-label type represents flow identifier or Flow Label
-       in an IPv6 packet header that may be used to discriminate
-       traffic flows.
-
-       In the value set and its semantics, this type is equivalent
-       to the IPv6FlowLabel textual convention of the SMIv2.";
-     reference
-      "RFC 3595: Textual Conventions for IPv6 Flow Label
-       RFC 2460: Internet Protocol, Version 6 (IPv6) Specification";
-   }
-
-   typedef port-number {
-     type uint16 {
-       range "0..65535";
-     }
-     description
-      "The port-number type represents a 16-bit port number of an
-       Internet transport layer protocol such as UDP, TCP, DCCP, or
-       SCTP.  Port numbers are assigned by IANA.  A current list of
-       all assignments is available from <http://www.iana.org/>.
-
-       Note that the port number value zero is reserved by IANA.  In
-       situations where the value zero does not make sense, it can
-       be excluded by subtyping the port-number type.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetPortNumber textual convention of the SMIv2.";
-     reference
-      "RFC  768: User Datagram Protocol
-       RFC  793: Transmission Control Protocol
-       RFC 4960: Stream Control Transmission Protocol
-       RFC 4340: Datagram Congestion Control Protocol (DCCP)
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   /*** collection of autonomous system related types ***/
-
-   typedef as-number {
-     type uint32;
-     description
-      "The as-number type represents autonomous system numbers
-       which identify an Autonomous System (AS).  An AS is a set
-       of routers under a single technical administration, using
-       an interior gateway protocol and common metrics to route
-       packets within the AS, and using an exterior gateway
-       protocol to route packets to other ASs'.  IANA maintains
-       the AS number space and has delegated large parts to the
-       regional registries.
-
-       Autonomous system numbers were originally limited to 16
-       bits.  BGP extensions have enlarged the autonomous system
-       number space to 32 bits.  This type therefore uses an uint32
-       base type without a range restriction in order to support
-       a larger autonomous system number space.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetAutonomousSystemNumber textual convention of
-       the SMIv2.";
-     reference
-      "RFC 1930: Guidelines for creation, selection, and registration
-                 of an Autonomous System (AS)
-       RFC 4271: A Border Gateway Protocol 4 (BGP-4)
-       RFC 4893: BGP Support for Four-octet AS Number Space
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   /*** collection of IP address and hostname related types ***/
-
-   typedef ip-address {
-     type union {
-       type inet:ipv4-address;
-       type inet:ipv6-address;
-     }
-     description
-      "The ip-address type represents an IP address and is IP
-       version neutral.  The format of the textual representations
-       implies the IP version.";
-   }
-
-   typedef ipv4-address {
-     type string {
-       pattern
-         '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
-       +  '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
-       + '(%[\p{N}\p{L}]+)?';
-     }
-     description
-       "The ipv4-address type represents an IPv4 address in
-        dotted-quad notation.  The IPv4 address may include a zone
-        index, separated by a % sign.
-
-        The zone index is used to disambiguate identical address
-        values.  For link-local addresses, the zone index will
-        typically be the interface index number or the name of an
-        interface.  If the zone index is not present, the default
-        zone of the device will be used.
-
-        The canonical format for the zone index is the numerical
-        format";
-   }
-
-   typedef ipv6-address {
-     type string {
-       pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
-             + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
-             + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
-             + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
-             + '(%[\p{N}\p{L}]+)?';
-       pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
-             + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
-             + '(%.+)?';
-     }
-     description
-      "The ipv6-address type represents an IPv6 address in full,
-       mixed, shortened, and shortened-mixed notation.  The IPv6
-       address may include a zone index, separated by a % sign.
-
-       The zone index is used to disambiguate identical address
-       values.  For link-local addresses, the zone index will
-       typically be the interface index number or the name of an
-       interface.  If the zone index is not present, the default
-       zone of the device will be used.
-
-       The canonical format of IPv6 addresses uses the compressed
-       format described in RFC 4291, Section 2.2, item 2 with the
-       following additional rules: the :: substitution must be
-       applied to the longest sequence of all-zero 16-bit chunks
-       in an IPv6 address.  If there is a tie, the first sequence
-       of all-zero 16-bit chunks is replaced by ::.  Single
-       all-zero 16-bit chunks are not compressed.  The canonical
-       format uses lowercase characters and leading zeros are
-       not allowed.  The canonical format for the zone index is
-       the numerical format as described in RFC 4007, Section
-       11.2.";
-     reference
-      "RFC 4291: IP Version 6 Addressing Architecture
-       RFC 4007: IPv6 Scoped Address Architecture
-       RFC 5952: A Recommendation for IPv6 Address Text Representation";
-   }
-
-   typedef ip-prefix {
-     type union {
-       type inet:ipv4-prefix;
-       type inet:ipv6-prefix;
-     }
-     description
-      "The ip-prefix type represents an IP prefix and is IP
-       version neutral.  The format of the textual representations
-       implies the IP version.";
-   }
-
-   typedef ipv4-prefix {
-     type string {
-       pattern
-          '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
-        +  '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
-        + '/(([0-9])|([1-2][0-9])|(3[0-2]))';
-     }
-     description
-      "The ipv4-prefix type represents an IPv4 address prefix.
-       The prefix length is given by the number following the
-       slash character and must be less than or equal to 32.
-
-       A prefix length value of n corresponds to an IP address
-       mask that has n contiguous 1-bits from the most
-       significant bit (MSB) and all other bits set to 0.
-
-       The canonical format of an IPv4 prefix has all bits of
-       the IPv4 address set to zero that are not part of the
-       IPv4 prefix.";
-   }
-
-   typedef ipv6-prefix {
-     type string {
-       pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
-             + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
-             + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
-             + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
-             + '(/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))';
-       pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
-             + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
-             + '(/.+)';
-     }
-     description
-      "The ipv6-prefix type represents an IPv6 address prefix.
-       The prefix length is given by the number following the
-       slash character and must be less than or equal 128.
-
-       A prefix length value of n corresponds to an IP address
-       mask that has n contiguous 1-bits from the most
-       significant bit (MSB) and all other bits set to 0.
-
-       The IPv6 address should have all bits that do not belong
-       to the prefix set to zero.
-
-       The canonical format of an IPv6 prefix has all bits of
-       the IPv6 address set to zero that are not part of the
-       IPv6 prefix.  Furthermore, IPv6 address is represented
-       in the compressed format described in RFC 4291, Section
-       2.2, item 2 with the following additional rules: the ::
-       substitution must be applied to the longest sequence of
-       all-zero 16-bit chunks in an IPv6 address.  If there is
-       a tie, the first sequence of all-zero 16-bit chunks is
-       replaced by ::.  Single all-zero 16-bit chunks are not
-       compressed.  The canonical format uses lowercase
-       characters and leading zeros are not allowed.";
-     reference
-      "RFC 4291: IP Version 6 Addressing Architecture";
-   }
-
-   /*** collection of domain name and URI types ***/
-
-   typedef domain-name {
-     type string {
-       pattern '((([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.)*'
-            +  '([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.?)'
-            +  '|\.';
-       length "1..253";
-     }
-     description
-      "The domain-name type represents a DNS domain name.  The
-       name SHOULD be fully qualified whenever possible.
-
-       Internet domain names are only loosely specified.  Section
-       3.5 of RFC 1034 recommends a syntax (modified in Section
-       2.1 of RFC 1123).  The pattern above is intended to allow
-       for current practice in domain name use, and some possible
-       future expansion.  It is designed to hold various types of
-       domain names, including names used for A or AAAA records
-       (host names) and other records, such as SRV records.  Note
-       that Internet host names have a stricter syntax (described
-       in RFC 952) than the DNS recommendations in RFCs 1034 and
-       1123, and that systems that want to store host names in
-       schema nodes using the domain-name type are recommended to
-       adhere to this stricter standard to ensure interoperability.
-
-       The encoding of DNS names in the DNS protocol is limited
-       to 255 characters.  Since the encoding consists of labels
-       prefixed by a length bytes and there is a trailing NULL
-       byte, only 253 characters can appear in the textual dotted
-       notation.
-
-       The description clause of schema nodes using the domain-name
-       type MUST describe when and how these names are resolved to
-       IP addresses.  Note that the resolution of a domain-name value
-       may require to query multiple DNS records (e.g., A for IPv4
-       and AAAA for IPv6).  The order of the resolution process and
-       which DNS record takes precedence can either be defined
-       explicitely or it may depend on the configuration of the
-       resolver.
-
-       Domain-name values use the US-ASCII encoding.  Their canonical
-       format uses lowercase US-ASCII characters.  Internationalized
-       domain names MUST be encoded in punycode as described in RFC
-       3492";
-     reference
-      "RFC  952: DoD Internet Host Table Specification
-       RFC 1034: Domain Names - Concepts and Facilities
-       RFC 1123: Requirements for Internet Hosts -- Application
-                 and Support
-       RFC 2782: A DNS RR for specifying the location of services
-                 (DNS SRV)
-       RFC 3492: Punycode: A Bootstring encoding of Unicode for
-                 Internationalized Domain Names in Applications
-                 (IDNA)
-       RFC 5891: Internationalizing Domain Names in Applications
-                 (IDNA): Protocol";
-   }
-
-   typedef host {
-     type union {
-       type inet:ip-address;
-       type inet:domain-name;
-     }
-     description
-      "The host type represents either an IP address or a DNS
-       domain name.";
-   }
-
-   typedef uri {
-     type string;
-     description
-      "The uri type represents a Uniform Resource Identifier
-       (URI) as defined by STD 66.
-
-       Objects using the uri type MUST be in US-ASCII encoding,
-       and MUST be normalized as described by RFC 3986 Sections
-       6.2.1, 6.2.2.1, and 6.2.2.2.  All unnecessary
-       percent-encoding is removed, and all case-insensitive
-       characters are set to lowercase except for hexadecimal
-       digits, which are normalized to uppercase as described in
-       Section 6.2.2.1.
-
-       The purpose of this normalization is to help provide
-       unique URIs.  Note that this normalization is not
-       sufficient to provide uniqueness.  Two URIs that are
-       textually distinct after this normalization may still be
-       equivalent.
-
-       Objects using the uri type may restrict the schemes that
-       they permit.  For example, 'data:' and 'urn:' schemes
-       might not be appropriate.
-
-       A zero-length URI is not a valid URI.  This can be used to
-       express 'URI absent' where required.
-
-       In the value set and its semantics, this type is equivalent
-       to the Uri SMIv2 textual convention defined in RFC 5017.";
-     reference
-      "RFC 3986: Uniform Resource Identifier (URI): Generic Syntax
-       RFC 3305: Report from the Joint W3C/IETF URI Planning Interest
-                 Group: Uniform Resource Identifiers (URIs), URLs,
-                 and Uniform Resource Names (URNs): Clarifications
-                 and Recommendations
-       RFC 5017: MIB Textual Conventions for Uniform Resource
-                 Identifiers (URIs)";
-   }
-
- }
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/yang/ietf-interfaces@2012-11-15.yang b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/yang/ietf-interfaces@2012-11-15.yang
deleted file mode 100644 (file)
index 481a5d2..0000000
+++ /dev/null
@@ -1,469 +0,0 @@
-module ietf-interfaces {
-
-  namespace "urn:ietf:params:xml:ns:yang:ietf-interfaces";
-  prefix if;
-
-  import ietf-yang-types {
-    prefix yang;
-    revision-date 2010-09-24;
-  }
-
-  organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-  contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     WG Chair: Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>
-
-     Editor:   Martin Bjorklund
-               <mailto:mbj@tail-f.com>";
-
-  description
-    "This module contains a collection of YANG definitions for
-     managing network interfaces.
-
-     Copyright (c) 2012 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or
-     without modification, is permitted pursuant to, and subject
-     to the license terms contained in, the Simplified BSD License
-     set forth in Section 4.c of the IETF Trust's Legal Provisions
-     Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC XXXX; see
-     the RFC itself for full legal notices.";
-
-  // RFC Ed.: replace XXXX with actual RFC number and remove this
-  // note.
-
-  // RFC Ed.: update the date below with the date of RFC publication
-  // and remove this note.
-  revision 2012-11-15 {
-    description
-      "Initial revision.";
-    reference
-      "RFC XXXX: A YANG Data Model for Interface Management";
-  }
-
-  /* Typedefs */
-
-  typedef interface-ref {
-    type leafref {
-      path "/if:interfaces/if:interface/if:name";
-    }
-    description
-      "This type is used by data models that need to reference
-       interfaces.";
-  }
-
-  /* Features */
-
-  feature arbitrary-names {
-    description
-      "This feature indicates that the server allows interfaces to
-       be named arbitrarily.";
-  }
-
-  feature if-mib {
-    description
-      "This feature indicates that the server implements IF-MIB.";
-    reference
-      "RFC 2863: The Interfaces Group MIB";
-  }
-
-  /* Data nodes */
-
-  container interfaces {
-    description
-      "Interface parameters.";
-
-    list interface {
-      key "name";
-      unique "type location";
-
-      description
-        "The list of interfaces on the device.";
-
-      leaf name {
-        type string;
-        description
-          "The name of the interface.
-
-           A device MAY restrict the allowed values for this leaf,
-           possibly depending on the type and location.
-
-           If the device allows arbitrarily named interfaces, the
-           feature 'arbitrary-names' is advertised.
-
-           This leaf MAY be mapped to ifName by an implementation.
-           Such an implementation MAY restrict the allowed values for
-           this leaf so that it matches the restrictions of ifName.
-           If a NETCONF server that implements this restriction is
-           sent a value that doesn't match the restriction, it MUST
-           reply with an rpc-error with the error-tag
-           'invalid-value'.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifName";
-      }
-
-      leaf description {
-        type string;
-        description
-          "A textual description of the interface.
-
-           This leaf MAY be mapped to ifAlias by an implementation.
-           Such an implementation MAY restrict the allowed values for
-           this leaf so that it matches the restrictions of ifAlias.
-           If a NETCONF server that implements this restriction is
-           sent a value that doesn't match the restriction, it MUST
-           reply with an rpc-error with the error-tag
-           'invalid-value'.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifAlias";
-      }
-
-      leaf location {
-        type string;
-        description
-          "The device-specific location of the interface of a
-           particular type.  The format of the location string
-           depends on the interface type and the device.
-
-           If the interface's type represents a physical interface,
-           this leaf MUST be set.
-
-           When an interface entry is created, a server MAY
-           initialize the location leaf with a valid value, e.g., if
-           it is possible to derive the location from the name of
-           the interface.";
-      }
-
-      leaf enabled {
-        type boolean;
-        default "true";
-        description
-          "The desired state of the interface.
-
-           This leaf contains the configured, desired state of the
-           interface.  Systems that implement the IF-MIB use the
-           value of this leaf to set IF-MIB.ifAdminStatus to 'up' or
-           'down' after an ifEntry has been initialized, as described
-           in RFC 2863.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifAdminStatus";
-      }
-
-      leaf last-change {
-        type yang:date-and-time;
-        config false;
-        description
-          "The time the interface entered its current operational
-           state.  If the current state was entered prior to the
-           last re-initialization of the local network management
-           subsystem, then this node is not present.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifLastChange";
-      }
-
-      leaf if-index {
-        if-feature if-mib;
-        type int32 {
-          range "1..2147483647";
-        }
-        config false;
-        description
-          "The ifIndex value for the ifEntry represented by this
-           interface.
-
-           Media-specific modules must specify how the type is
-           mapped to entries in the ifTable.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifIndex";
-      }
-
-      leaf phys-address {
-        type yang:phys-address;
-        config false;
-        description
-          "The interface's address at its protocol sub-layer.  For
-          example, for an 802.x interface, this object normally
-          contains a MAC address.  The interface's media-specific
-          modules must define the bit and byte ordering and the
-          format of the value of this object.  For interfaces that do
-          not have such an address (e.g., a serial line), this node
-          is not present.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifPhysAddress";
-      }
-
-      leaf-list higher-layer-if {
-        type interface-ref;
-        config false;
-        description
-          "A list of references to interfaces layered on top of this
-           interface.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifStackTable";
-      }
-
-      leaf-list lower-layer-if {
-        type interface-ref;
-        config false;
-        description
-          "A list of references to interfaces layered underneath this
-           interface.";
-        reference
-          "RFC 2863: The Interfaces Group MIB - ifStackTable";
-      }
-
-      leaf speed {
-        type yang:gauge64;
-        units "bits / second";
-        config false;
-        description
-            "An estimate of the interface's current bandwidth in bits
-             per second.  For interfaces which do not vary in
-             bandwidth or for those where no accurate estimation can
-             be made, this node should contain the nominal bandwidth.
-             For interfaces that has no concept of bandwidth, this
-             node is not present.";
-        reference
-          "RFC 2863: The Interfaces Group MIB -
-                     ifSpeed, ifHighSpeed";
-      }
-
-      container statistics {
-        config false;
-        description
-          "A collection of interface-related statistics objects.";
-
-        leaf discontinuity-time {
-          type yang:date-and-time;
-          description
-            "The time on the most recent occasion at which any one or
-             more of this interface's counters suffered a
-             discontinuity.  If no such discontinuities have occurred
-             since the last re-initialization of the local management
-             subsystem, then this node contains the time the local
-             management subsystem re-initialized itself.";
-        }
-
-        leaf in-octets {
-          type yang:counter64;
-          description
-            "The total number of octets received on the interface,
-             including framing characters.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifHCInOctets";
-        }
-        leaf in-unicast-pkts {
-          type yang:counter64;
-          description
-            "The number of packets, delivered by this sub-layer to a
-             higher (sub-)layer, which were not addressed to a
-             multicast or broadcast address at this sub-layer.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifHCInUcastPkts";
-        }
-        leaf in-broadcast-pkts {
-          type yang:counter64;
-          description
-            "The number of packets, delivered by this sub-layer to a
-             higher (sub-)layer, which were addressed to a broadcast
-             address at this sub-layer.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB -
-                       ifHCInBroadcastPkts";
-        }
-        leaf in-multicast-pkts {
-          type yang:counter64;
-          description
-            "The number of packets, delivered by this sub-layer to a
-             higher (sub-)layer, which were addressed to a multicast
-             address at this sub-layer.  For a MAC layer protocol,
-             this includes both Group and Functional addresses.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB -
-                       ifHCInMulticastPkts";
-        }
-        leaf in-discards {
-          type yang:counter32;
-          description
-            "The number of inbound packets which were chosen to be
-             discarded even though no errors had been detected to
-             prevent their being deliverable to a higher-layer
-             protocol.  One possible reason for discarding such a
-             packet could be to free up buffer space.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifInDiscards";
-        }
-        leaf in-errors {
-          type yang:counter32;
-          description
-            "For packet-oriented interfaces, the number of inbound
-             packets that contained errors preventing them from being
-             deliverable to a higher-layer protocol.  For character-
-             oriented or fixed-length interfaces, the number of
-             inbound transmission units that contained errors
-             preventing them from being deliverable to a higher-layer
-             protocol.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifInErrors";
-        }
-        leaf in-unknown-protos {
-          type yang:counter32;
-          description
-            "For packet-oriented interfaces, the number of packets
-             received via the interface which were discarded because
-             of an unknown or unsupported protocol.  For
-             character-oriented or fixed-length interfaces that
-             support protocol multiplexing the number of transmission
-             units received via the interface which were discarded
-             because of an unknown or unsupported protocol.  For any
-             interface that does not support protocol multiplexing,
-             this counter is not present.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifInUnknownProtos";
-        }
-
-        leaf out-octets {
-          type yang:counter64;
-          description
-            "The total number of octets transmitted out of the
-             interface, including framing characters.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifHCOutOctets";
-        }
-        leaf out-unicast-pkts {
-          type yang:counter64;
-          description
-            "The total number of packets that higher-level protocols
-             requested be transmitted, and which were not addressed
-             to a multicast or broadcast address at this sub-layer,
-             including those that were discarded or not sent.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifHCOutUcastPkts";
-        }
-        leaf out-broadcast-pkts {
-          type yang:counter64;
-          description
-            "The total number of packets that higher-level protocols
-             requested be transmitted, and which were addressed to a
-             broadcast address at this sub-layer, including those
-             that were discarded or not sent.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB -
-                       ifHCOutBroadcastPkts";
-        }
-        leaf out-multicast-pkts {
-          type yang:counter64;
-          description
-            "The total number of packets that higher-level protocols
-             requested be transmitted, and which were addressed to a
-             multicast address at this sub-layer, including those
-             that were discarded or not sent.  For a MAC layer
-             protocol, this includes both Group and Functional
-             addresses.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB -
-                       ifHCOutMulticastPkts";
-        }
-        leaf out-discards {
-          type yang:counter32;
-          description
-            "The number of outbound packets which were chosen to be
-             discarded even though no errors had been detected to
-             prevent their being transmitted.  One possible reason
-             for discarding such a packet could be to free up buffer
-             space.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifOutDiscards";
-        }
-        leaf out-errors {
-          type yang:counter32;
-          description
-            "For packet-oriented interfaces, the number of outbound
-             packets that could not be transmitted because of errors.
-             For character-oriented or fixed-length interfaces, the
-             number of outbound transmission units that could not be
-             transmitted because of errors.
-
-             Discontinuities in the value of this counter can occur
-             at re-initialization of the management system, and at
-             other times as indicated by the value of
-             'discontinuity-time'.";
-          reference
-            "RFC 2863: The Interfaces Group MIB - ifOutErrors";
-        }
-      }
-    }
-  }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/yang/ietf-yang-types@2010-09-24.yang b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/resources/yang/ietf-yang-types@2010-09-24.yang
deleted file mode 100644 (file)
index e9d88ab..0000000
+++ /dev/null
@@ -1,396 +0,0 @@
- module ietf-yang-types {
-
-   namespace "urn:ietf:params:xml:ns:yang:ietf-yang-types";
-   prefix "yang";
-
-   organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-   contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Partain
-               <mailto:david.partain@ericsson.com>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     Editor:   Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>";
-
-   description
-    "This module contains a collection of generally useful derived
-     YANG data types.
-
-     Copyright (c) 2010 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or without
-     modification, is permitted pursuant to, and subject to the license
-     terms contained in, the Simplified BSD License set forth in Section
-     4.c of the IETF Trust's Legal Provisions Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC 6021; see
-     the RFC itself for full legal notices.";
-
-   revision 2010-09-24 {
-     description
-      "Initial revision.";
-     reference
-      "RFC 6021: Common YANG Data Types";
-   }
-
-   /*** collection of counter and gauge types ***/
-
-   typedef counter32 {
-     type uint32;
-     description
-      "The counter32 type represents a non-negative integer
-       that monotonically increases until it reaches a
-       maximum value of 2^32-1 (4294967295 decimal), when it
-       wraps around and starts increasing again from zero.
-
-       Counters have no defined 'initial' value, and thus, a
-       single value of a counter has (in general) no information
-       content.  Discontinuities in the monotonically increasing
-       value normally occur at re-initialization of the
-       management system, and at other times as specified in the
-       description of a schema node using this type.  If such
-       other times can occur, for example, the creation of
-       a schema node of type counter32 at times other than
-       re-initialization, then a corresponding schema node
-       should be defined, with an appropriate type, to indicate
-       the last discontinuity.
-
-       The counter32 type should not be used for configuration
-       schema nodes.  A default statement SHOULD NOT be used in
-       combination with the type counter32.
-
-       In the value set and its semantics, this type is equivalent
-       to the Counter32 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef zero-based-counter32 {
-     type yang:counter32;
-     default "0";
-     description
-      "The zero-based-counter32 type represents a counter32
-       that has the defined 'initial' value zero.
-
-       A schema node of this type will be set to zero (0) on creation
-       and will thereafter increase monotonically until it reaches
-       a maximum value of 2^32-1 (4294967295 decimal), when it
-       wraps around and starts increasing again from zero.
-
-       Provided that an application discovers a new schema node
-       of this type within the minimum time to wrap, it can use the
-       'initial' value as a delta.  It is important for a management
-       station to be aware of this minimum time and the actual time
-       between polls, and to discard data if the actual time is too
-       long or there is no defined minimum time.
-
-       In the value set and its semantics, this type is equivalent
-       to the ZeroBasedCounter32 textual convention of the SMIv2.";
-     reference
-       "RFC 4502: Remote Network Monitoring Management Information
-                  Base Version 2";
-   }
-
-   typedef counter64 {
-     type uint64;
-     description
-      "The counter64 type represents a non-negative integer
-       that monotonically increases until it reaches a
-       maximum value of 2^64-1 (18446744073709551615 decimal),
-       when it wraps around and starts increasing again from zero.
-
-       Counters have no defined 'initial' value, and thus, a
-       single value of a counter has (in general) no information
-       content.  Discontinuities in the monotonically increasing
-       value normally occur at re-initialization of the
-       management system, and at other times as specified in the
-       description of a schema node using this type.  If such
-       other times can occur, for example, the creation of
-       a schema node of type counter64 at times other than
-       re-initialization, then a corresponding schema node
-       should be defined, with an appropriate type, to indicate
-       the last discontinuity.
-
-       The counter64 type should not be used for configuration
-       schema nodes.  A default statement SHOULD NOT be used in
-       combination with the type counter64.
-
-       In the value set and its semantics, this type is equivalent
-       to the Counter64 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef zero-based-counter64 {
-     type yang:counter64;
-     default "0";
-     description
-      "The zero-based-counter64 type represents a counter64 that
-       has the defined 'initial' value zero.
-
-       A schema node of this type will be set to zero (0) on creation
-       and will thereafter increase monotonically until it reaches
-       a maximum value of 2^64-1 (18446744073709551615 decimal),
-       when it wraps around and starts increasing again from zero.
-
-       Provided that an application discovers a new schema node
-       of this type within the minimum time to wrap, it can use the
-       'initial' value as a delta.  It is important for a management
-       station to be aware of this minimum time and the actual time
-       between polls, and to discard data if the actual time is too
-       long or there is no defined minimum time.
-
-       In the value set and its semantics, this type is equivalent
-       to the ZeroBasedCounter64 textual convention of the SMIv2.";
-     reference
-      "RFC 2856: Textual Conventions for Additional High Capacity
-                 Data Types";
-   }
-
-   typedef gauge32 {
-     type uint32;
-     description
-      "The gauge32 type represents a non-negative integer, which
-       may increase or decrease, but shall never exceed a maximum
-       value, nor fall below a minimum value.  The maximum value
-       cannot be greater than 2^32-1 (4294967295 decimal), and
-       the minimum value cannot be smaller than 0.  The value of
-       a gauge32 has its maximum value whenever the information
-       being modeled is greater than or equal to its maximum
-       value, and has its minimum value whenever the information
-       being modeled is smaller than or equal to its minimum value.
-       If the information being modeled subsequently decreases
-       below (increases above) the maximum (minimum) value, the
-       gauge32 also decreases (increases).
-
-       In the value set and its semantics, this type is equivalent
-       to the Gauge32 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef gauge64 {
-     type uint64;
-     description
-      "The gauge64 type represents a non-negative integer, which
-       may increase or decrease, but shall never exceed a maximum
-       value, nor fall below a minimum value.  The maximum value
-       cannot be greater than 2^64-1 (18446744073709551615), and
-       the minimum value cannot be smaller than 0.  The value of
-       a gauge64 has its maximum value whenever the information
-       being modeled is greater than or equal to its maximum
-       value, and has its minimum value whenever the information
-       being modeled is smaller than or equal to its minimum value.
-       If the information being modeled subsequently decreases
-       below (increases above) the maximum (minimum) value, the
-       gauge64 also decreases (increases).
-
-       In the value set and its semantics, this type is equivalent
-       to the CounterBasedGauge64 SMIv2 textual convention defined
-       in RFC 2856";
-     reference
-      "RFC 2856: Textual Conventions for Additional High Capacity
-                 Data Types";
-   }
-
-   /*** collection of identifier related types ***/
-
-   typedef object-identifier {
-     type string {
-       pattern '(([0-1](\.[1-3]?[0-9]))|(2\.(0|([1-9]\d*))))'
-             + '(\.(0|([1-9]\d*)))*';
-     }
-     description
-      "The object-identifier type represents administratively
-       assigned names in a registration-hierarchical-name tree.
-
-       Values of this type are denoted as a sequence of numerical
-       non-negative sub-identifier values.  Each sub-identifier
-       value MUST NOT exceed 2^32-1 (4294967295).  Sub-identifiers
-       are separated by single dots and without any intermediate
-       whitespace.
-
-       The ASN.1 standard restricts the value space of the first
-       sub-identifier to 0, 1, or 2.  Furthermore, the value space
-       of the second sub-identifier is restricted to the range
-       0 to 39 if the first sub-identifier is 0 or 1.  Finally,
-       the ASN.1 standard requires that an object identifier
-       has always at least two sub-identifier.  The pattern
-       captures these restrictions.
-
-       Although the number of sub-identifiers is not limited,
-       module designers should realize that there may be
-       implementations that stick with the SMIv2 limit of 128
-       sub-identifiers.
-
-       This type is a superset of the SMIv2 OBJECT IDENTIFIER type
-       since it is not restricted to 128 sub-identifiers.  Hence,
-       this type SHOULD NOT be used to represent the SMIv2 OBJECT
-       IDENTIFIER type, the object-identifier-128 type SHOULD be
-       used instead.";
-     reference
-      "ISO9834-1: Information technology -- Open Systems
-       Interconnection -- Procedures for the operation of OSI
-       Registration Authorities: General procedures and top
-       arcs of the ASN.1 Object Identifier tree";
-   }
-
-
-
-
-   typedef object-identifier-128 {
-     type object-identifier {
-       pattern '\d*(\.\d*){1,127}';
-     }
-     description
-      "This type represents object-identifiers restricted to 128
-       sub-identifiers.
-
-       In the value set and its semantics, this type is equivalent
-       to the OBJECT IDENTIFIER type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   /*** collection of date and time related types ***/
-
-   typedef date-and-time {
-     type string {
-       pattern '\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?'
-             + '(Z|[\+\-]\d{2}:\d{2})';
-     }
-     description
-      "The date-and-time type is a profile of the ISO 8601
-       standard for representation of dates and times using the
-       Gregorian calendar.  The profile is defined by the
-       date-time production in Section 5.6 of RFC 3339.
-
-       The date-and-time type is compatible with the dateTime XML
-       schema type with the following notable exceptions:
-
-       (a) The date-and-time type does not allow negative years.
-
-       (b) The date-and-time time-offset -00:00 indicates an unknown
-           time zone (see RFC 3339) while -00:00 and +00:00 and Z all
-           represent the same time zone in dateTime.
-
-       (c) The canonical format (see below) of data-and-time values
-           differs from the canonical format used by the dateTime XML
-           schema type, which requires all times to be in UTC using the
-           time-offset 'Z'.
-
-       This type is not equivalent to the DateAndTime textual
-       convention of the SMIv2 since RFC 3339 uses a different
-       separator between full-date and full-time and provides
-       higher resolution of time-secfrac.
-
-       The canonical format for date-and-time values with a known time
-       zone uses a numeric time zone offset that is calculated using
-       the device's configured known offset to UTC time.  A change of
-       the device's offset to UTC time will cause date-and-time values
-       to change accordingly.  Such changes might happen periodically
-       in case a server follows automatically daylight saving time
-       (DST) time zone offset changes.  The canonical format for
-       date-and-time values with an unknown time zone (usually referring
-       to the notion of local time) uses the time-offset -00:00.";
-     reference
-      "RFC 3339: Date and Time on the Internet: Timestamps
-       RFC 2579: Textual Conventions for SMIv2
-       XSD-TYPES: XML Schema Part 2: Datatypes Second Edition";
-   }
-
-   typedef timeticks {
-     type uint32;
-     description
-      "The timeticks type represents a non-negative integer that
-       represents the time, modulo 2^32 (4294967296 decimal), in
-       hundredths of a second between two epochs.  When a schema
-       node is defined that uses this type, the description of
-       the schema node identifies both of the reference epochs.
-
-       In the value set and its semantics, this type is equivalent
-       to the TimeTicks type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef timestamp {
-     type yang:timeticks;
-     description
-      "The timestamp type represents the value of an associated
-       timeticks schema node at which a specific occurrence happened.
-       The specific occurrence must be defined in the description
-       of any schema node defined using this type.  When the specific
-       occurrence occurred prior to the last time the associated
-       timeticks attribute was zero, then the timestamp value is
-       zero.  Note that this requires all timestamp values to be
-       reset to zero when the value of the associated timeticks
-       attribute reaches 497+ days and wraps around to zero.
-
-       The associated timeticks schema node must be specified
-       in the description of any schema node using this type.
-
-       In the value set and its semantics, this type is equivalent
-       to the TimeStamp textual convention of the SMIv2.";
-     reference
-      "RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   /*** collection of generic address types ***/
-
-   typedef phys-address {
-     type string {
-       pattern '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?';
-     }
-     description
-      "Represents media- or physical-level addresses represented
-       as a sequence octets, each octet represented by two hexadecimal
-       numbers.  Octets are separated by colons.  The canonical
-       representation uses lowercase characters.
-
-       In the value set and its semantics, this type is equivalent
-       to the PhysAddress textual convention of the SMIv2.";
-     reference
-      "RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   typedef mac-address {
-     type string {
-       pattern '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}';
-     }
-     description
-      "The mac-address type represents an IEEE 802 MAC address.
-       The canonical representation uses lowercase characters.
-
-       In the value set and its semantics, this type is equivalent
-       to the MacAddress textual convention of the SMIv2.";
-     reference
-      "IEEE 802: IEEE Standard for Local and Metropolitan Area
-                 Networks: Overview and Architecture
-       RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   /*** collection of XML specific types ***/
-
-   typedef xpath1.0 {
-     type string;
-     description
-      "This type represents an XPATH 1.0 expression.
-
-       When a schema node is defined that uses this type, the
-       description of the schema node MUST specify the XPath
-       context in which the XPath expression is evaluated.";
-     reference
-      "XPATH: XML Path Language (XPath) Version 1.0";
-   }
-
- }
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/pom.xml b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/pom.xml
deleted file mode 100644 (file)
index 48e1b4d..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">\r
-\r
-    <parent>\r
-        <groupId>org.opendaylight.controller</groupId>\r
-        <artifactId>binding-generator</artifactId>\r
-        <version>0.5.5-SNAPSHOT</version>\r
-    </parent>\r
-\r
-    <modelVersion>4.0.0</modelVersion>\r
-    <artifactId>binding-model-api</artifactId>\r
-    <name>${project.artifactId}</name>\r
-    <description>${project.artifactId}</description>\r
-\r
-</project>\r
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/AccessModifier.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/AccessModifier.java
deleted file mode 100644 (file)
index 52529e2..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-/*\r
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
- *\r
- * This program and the accompanying materials are made available under the\r
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
- * and is available at http://www.eclipse.org/legal/epl-v10.html\r
- */\r
-package org.opendaylight.controller.sal.binding.model.api;\r
-\r
-/**\r
- * Enum definition which provides four access modifiers that are described\r
- * in Java programming language (Default, Private, Protected, Public).\r
- */\r
-public enum AccessModifier {\r
-    DEFAULT, PRIVATE, PUBLIC, PROTECTED\r
-}\r
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/AnnotationType.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/AnnotationType.java
deleted file mode 100644 (file)
index eec0339..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.model.api;
-
-import java.util.List;
-
-/**
- * The Annotation Type interface is designed to hold information about
- * annotation for any type that could be annotated in Java.
- * <br>
- * For sake of simplicity the Annotation Type is not designed to model exact
- * behaviour of annotation mechanism, but just to hold information needed to
- * model annotation over java Type definition.
- */
-public interface AnnotationType extends Type {
-
-    /**
-     * Returns the List of Annotations.
-     * <br>
-     * Each Annotation Type MAY have defined multiple Annotations.
-     *
-     * @return the List of Annotations.
-     */
-    public List<AnnotationType> getAnnotations();
-
-    /**
-     * Returns Parameter Definition assigned for given parameter name.
-     * <br>
-     * If Annotation does not contain parameter with specified param name,
-     * the method MAY return <code>null</code> value.
-     *
-     * @param paramName Parameter Name
-     * @return Parameter Definition assigned for given parameter name.
-     */
-    public Parameter getParameter(final String paramName);
-
-    /**
-     * Returns List of all parameters assigned to Annotation Type.
-     *
-     * @return List of all parameters assigned to Annotation Type.
-     */
-    public List<Parameter> getParameters();
-
-    /**
-     * Returns List of parameter names.
-     *
-     * @return List of parameter names.
-     */
-    public List<String> getParameterNames();
-
-    /**
-     * Returns <code>true</code> if annotation contains parameters.
-     *
-     * @return <code>true</code> if annotation contains parameters.
-     */
-    public boolean containsParameters();
-
-    /**
-     * Annotation Type parameter interface. For simplicity the Parameter
-     * contains values and value types as Strings. Every annotation which
-     * contains parameters could contain either single parameter or array of
-     * parameters. To model this purposes the by contract if the parameter
-     * contains single parameter the {@link #getValues()} method will return
-     * empty List and {@link #getValue()} MUST always return non-<code>null</code>
-     * parameter. If the Parameter holds List of values the singular {@link
-     * #getValue()} parameter MAY return <code>null</code> value.
-     */
-    interface Parameter {
-
-        /**
-         * Returns the Name of the parameter.
-         *
-         * @return the Name of the parameter.
-         */
-        public String getName();
-
-        /**
-         * Returns value in String format if Parameter contains singular value,
-         * otherwise MAY return <code>null</code>.
-         *
-         * @return value in String format if Parameter contains singular value.
-         */
-        public String getValue();
-
-        /**
-         * Returns List of Parameter assigned values in order in which they
-         * were assigned for given parameter name.
-         * <br>
-         * If there are multiple values assigned for given parameter name the
-         * method MUST NOT return empty List.
-         *
-         * @return List of Parameter assigned values in order in which they
-         * were assigned for given parameter name.
-         */
-        public List<String> getValues();
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/CodeGenerator.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/CodeGenerator.java
deleted file mode 100644 (file)
index 092efc0..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-/*\r
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
- *\r
- * This program and the accompanying materials are made available under the\r
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
- * and is available at http://www.eclipse.org/legal/epl-v10.html\r
- */\r
-package org.opendaylight.controller.sal.binding.model.api;\r
-\r
-import java.io.IOException;\r
-import java.io.Writer;\r
-\r
-/**\r
- *\r
- *\r
- */\r
-public interface CodeGenerator {\r
-\r
-    /**\r
-     *\r
-     * @param type\r
-     * @return\r
-     * @throws IOException\r
-     */\r
-    Writer generate(Type type) throws IOException;\r
-\r
-}\r
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/ConcreteType.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/ConcreteType.java
deleted file mode 100644 (file)
index 7af50a7..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.model.api;
-
-/**
- * The Concrete Type is marker interface that encapsulates definition of java
- * concrete type.
- */
-public interface ConcreteType extends Type {
-
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/Constant.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/Constant.java
deleted file mode 100644 (file)
index 921a473..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-/*\r
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
- *\r
- * This program and the accompanying materials are made available under the\r
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
- * and is available at http://www.eclipse.org/legal/epl-v10.html\r
- */\r
-package org.opendaylight.controller.sal.binding.model.api;\r
-\r
-/**\r
- * Interface Contact is designed to hold and model java constant. In Java\r
- * there are no constant keywords instead of the constant is defined as\r
- * static final field with assigned value. For this purpose the Constant\r
- * interface contains methods {@link #getType()} to provide wrapped return\r
- * Type of Constant, {@link #getName()} the Name of constant and the {@link\r
- * #getValue()} for providing of value assigned to Constant. To determine of\r
- * which type the constant value is it is recommended firstly to retrieve\r
- * Type from constant. The Type interface holds base information like java\r
- * package name and java type name (e.g. fully qualified name). From this\r
- * string user should be able to determine to which type can be {@link\r
- * #getValue()} type typecasted to unbox and provide value assigned to\r
- * constant.\r
- */\r
-public interface Constant {\r
-\r
-    /**\r
-     * Returns the Type that declares constant.\r
-     *\r
-     * @return the Type that declares constant.\r
-     */\r
-    public Type getDefiningType();\r
-\r
-    /**\r
-     * Returns the return Type (or just Type) of the Constant.\r
-     *\r
-     * @return the return Type (or just Type) of the Constant.\r
-     */\r
-    public Type getType();\r
-\r
-    /**\r
-     * Returns the name of constant.\r
-     * <br>\r
-     * By conventions the name SHOULD be in CAPITALS separated with\r
-     * underscores.\r
-     *\r
-     * @return the name of constant.\r
-     */\r
-    public String getName();\r
-\r
-    /**\r
-     * Returns boxed value that is assigned for context.\r
-     *\r
-     * @return boxed value that is assigned for context.\r
-     */\r
-    public Object getValue();\r
-\r
-    /**\r
-     * Returns Constant definition in formatted string.\r
-     * <br>\r
-     * <br>\r
-     * The expected string SHOULD be in format: <code>public final\r
-     * static [Type] CONSTANT_NAME = [value];</code>\r
-     *\r
-     * @return Constant definition in formatted string.\r
-     */\r
-    public String toFormattedString();\r
-}\r
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/Enumeration.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/Enumeration.java
deleted file mode 100644 (file)
index 4115424..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.model.api;
-
-import java.util.List;
-
-/**
- *
- */
-public interface Enumeration extends Type {
-
-    /**
-     *
-     * @return
-     */
-    public List<AnnotationType> getAnnotations();
-
-    /**
-     *
-     * @return
-     */
-    public Type getDefiningType();
-
-    /**
-     *
-     * @return
-     */
-    public List<Pair> getValues();
-
-    /**
-     *
-     * @return
-     */
-    public String toFormattedString();
-
-    /**
-     *
-     */
-    interface Pair {
-
-        public String getName();
-
-        public Integer getValue();
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/GeneratedProperty.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/GeneratedProperty.java
deleted file mode 100644 (file)
index 119823d..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-/*\r
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
- *\r
- * This program and the accompanying materials are made available under the\r
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
- * and is available at http://www.eclipse.org/legal/epl-v10.html\r
- */\r
-package org.opendaylight.controller.sal.binding.model.api;\r
-\r
-/**\r
- * Generated Property extends interface {@link MethodSignature} interface.\r
- * <br>\r
- * The Generated Property interface is designed to store information of\r
- * fields (or members) declared in Java Transfer Objects (or any java\r
- * classes) and their access counterparts (getters and setters).\r
- *\r
- * @see MethodSignature\r
- */\r
-public interface GeneratedProperty extends TypeMember {\r
-\r
-    /**\r
-     * Returns <code>true</code> if the property si declared as read-only.\r
-     * <br>\r
-     * If the property has flag <code>isReadOnly == true</code> the property\r
-     * SHOULD be generated as getter only.\r
-     *\r
-     * @return <code>true</code> if the property si declared as read-only.\r
-     */\r
-    public boolean isReadOnly();\r
-}\r
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/GeneratedTransferIdentityObject.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/GeneratedTransferIdentityObject.java
deleted file mode 100644 (file)
index 80bed83..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-package org.opendaylight.controller.sal.binding.model.api;
-
-public interface GeneratedTransferIdentityObject extends
-        GeneratedTransferObject {
-
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/GeneratedTransferObject.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/GeneratedTransferObject.java
deleted file mode 100644 (file)
index c848dcd..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.model.api;
-
-import java.util.List;
-
-/**
- * Generated Transfer Object extends {@link GeneratedType} and is designed to
- * represent Java Class. The Generated Transfer Object contains declarations of
- * member fields stored in List of Properties. The Generated Transfer Object can
- * be extended by exactly ONE Generated Transfer Object as Java don't allow
- * multiple inheritance. For retrieval of implementing Generated Types use
- * {@link #getImplements()} method. <br>
- * Every transfer object SHOULD contain equals, hashCode and toString
- * definitions. For this purpose retrieve definitions through
- * {@link #getEqualsIdentifiers ()}, {@link #getHashCodeIdentifiers()} and
- * {@link #getToStringIdentifiers ()}.
- * 
- */
-public interface GeneratedTransferObject extends GeneratedType {
-
-    /**
-     * Returns the extending Generated Transfer Object or <code>null</code> if
-     * there is no extending Generated Transfer Object.
-     * 
-     * @return the extending Generated Transfer Object or <code>null</code> if
-     *         there is no extending Generated Transfer Object.
-     */
-    public GeneratedTransferObject getExtends();
-
-    /**
-     * Returns List of Properties that are declared for Generated Transfer
-     * Object.
-     * 
-     * @return List of Properties that are declared for Generated Transfer
-     *         Object.
-     */
-    public List<GeneratedProperty> getProperties();
-
-    /**
-     * Returns List of Properties that are designated to define equality for
-     * Generated Transfer Object.
-     * 
-     * @return List of Properties that are designated to define equality for
-     *         Generated Transfer Object.
-     */
-    public List<GeneratedProperty> getEqualsIdentifiers();
-
-    /**
-     * Returns List of Properties that are designated to define identity for
-     * Generated Transfer Object.
-     * 
-     * @return List of Properties that are designated to define identity for
-     *         Generated Transfer Object.
-     */
-    public List<GeneratedProperty> getHashCodeIdentifiers();
-
-    /**
-     * Returns List of Properties that will be members of toString definition
-     * for Generated Transfer Object.
-     * 
-     * @return List of Properties that will be members of toString definition
-     *         for Generated Transfer Object.
-     */
-    public List<GeneratedProperty> getToStringIdentifiers();
-
-    /**
-     * Return boolean value which describe whether Generated Transfer Object
-     * was/wasn't created from union YANG type.
-     * 
-     * @return true value if Generated Transfer Object was created from union
-     *         YANG type.
-     */
-    @Deprecated
-    public boolean isUnionType();
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/GeneratedType.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/GeneratedType.java
deleted file mode 100644 (file)
index 7a1a8f4..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.model.api;
-
-import java.util.List;
-
-/**
- * Every Java interface has to be specified with:
- * <ul>
- * <li><code>package</code> that belongs into</li>
- * <li><code>interface</code> name (with commentary that <b>SHOULD</b> be
- * present to proper define interface and base <i>contracts</i> specified for
- * interface)</li>
- * <li>Each Generated Type can define list of types that Generated Type
- * can implement to extend it's definition (i.e. interface extends list of
- * interfaces or java class implements list of interfaces)</li>
- * <li>Each Generated Type can contain multiple enclosed definitions of
- * Generated Types (i.e. interface can contain N enclosed interface
- * definitions or enclosed classes)</li>
- * <li><code>enum</code> and <code>constant</code> definitions (i.e. each
- * constant definition is by default defined as <code>public static final</code>
- * + type (either primitive or object) and constant name</li>
- * <li><code>method definitions</code> with specified input parameters (with
- * types) and return values</li>
- * </ul>
- * 
- * By the definition of the interface constant, enum,
- * enclosed types and method definitions MUST
- * be public, so there is no need to specify the scope of visibility.
- */
-public interface GeneratedType extends Type {
-
-    /**
-     * Returns the parent type if Generated Type is defined as enclosing type,
-     * otherwise returns <code>null</code>
-     *
-     * @return the parent type if Generated Type is defined as enclosing type,
-     * otherwise returns <code>null</code>
-     */
-    public Type getParentType();
-
-    /**
-     * Returns comment string associated with Generated Type.
-     *
-     * @return comment string associated with Generated Type.
-     */
-    public String getComment();
-
-    /**
-     * Returns List of annotation definitions associated with generated type.
-     *
-     * @return List of annotation definitions associated with generated type.
-     */
-    public List<AnnotationType> getAnnotations();
-
-    /**
-     * Returns <code>true</code> if The Generated Type is defined as abstract.
-     *
-     * @return <code>true</code> if The Generated Type is defined as abstract.
-     */
-    public boolean isAbstract();
-
-    /**
-     * Returns List of Types that Generated Type will implement.
-     *
-     * @return List of Types that Generated Type will implement.
-     */
-    public List<Type> getImplements();
-
-    /**
-     * Returns List of enclosing Generated Types.
-     *
-     * @return List of enclosing Generated Types.
-     */
-    public List<GeneratedType> getEnclosedTypes();
-
-    /**
-     * Returns List of all Enumerator definitions associated with Generated
-     * Type.
-     * 
-     * @return List of all Enumerator definitions associated with Generated
-     * Type.
-     */
-    public List<Enumeration> getEnumerations();
-
-    /**
-     * Returns List of Constant definitions associated with Generated Type.
-     *
-     * @return List of Constant definitions associated with Generated Type.
-     */
-    public List<Constant> getConstantDefinitions();
-
-    /**
-     * Returns List of Method Definitions associated with Generated Type.
-     * 
-     * @return List of Method Definitions associated with Generated Type.
-     */
-    public List<MethodSignature> getMethodDefinitions();
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/MethodSignature.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/MethodSignature.java
deleted file mode 100644 (file)
index 88542e8..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.model.api;
-
-import java.util.List;
-
-/**
- * The Method Signature interface contains simplified meta model for java
- * method definition. Each method MUST be defined by name, return type,
- * parameters and access modifier.
- * <br>
- * Additionally method MAY contain associated annotations and comment. By
- * contract if method does not contain any comments or annotation definitions
- * the {@link #getComment()} SHOULD rather return empty string and {@link
- * #getAnnotations()} SHOULD rather return empty list than <code>null</code>
- * values.
- * <br>
- * The defining Type contains the reference to Generated Type that declares
- * Method Signature.
- */
-public interface MethodSignature extends TypeMember {
-
-    /**
-     * Returns <code>true</code> if the method signature is defined as abstract.
-     * <br>
-     * By default in java all method declarations in interface are defined as abstract,
-     * but the user don't need necessary to declare abstract keyword in front of each method.
-     * <br>
-     * The abstract methods are allowed in Class definitions but only when the class is declared as abstract.
-     *
-     * @return <code>true</code> if the method signature is defined as abstract.
-     */
-    public boolean isAbstract();
-
-    /**
-     * Returns the List of parameters that method declare. If the method does
-     * not contain any parameters, the method will return empty List.
-     *
-     * @return the List of parameters that method declare.
-     */
-    public List<Parameter> getParameters();
-
-    /**
-     * The Parameter interface is designed to hold the information of method
-     * Parameter(s). The parameter is defined by his Name which MUST be
-     * unique as java does not allow multiple parameters with same names for
-     * one method and Type that is associated with parameter.
-     */
-    interface Parameter {
-
-        /**
-         * Returns the parameter name.
-         *
-         * @return the parameter name.
-         */
-        public String getName();
-
-        /**
-         * Returns Type that is bounded to parameter name.
-         *
-         * @return Type that is bounded to parameter name.
-         */
-        public Type getType();
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/ParameterizedType.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/ParameterizedType.java
deleted file mode 100644 (file)
index 86c4f5a..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-/*\r
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
- *\r
- * This program and the accompanying materials are made available under the\r
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
- * and is available at http://www.eclipse.org/legal/epl-v10.html\r
- */\r
-package org.opendaylight.controller.sal.binding.model.api;\r
-\r
-/**\r
- * Represents an instance of simple parametrized type such as List<String>.\r
- *\r
- * The parametrized Type is designed to be used to store information of Java\r
- * Generic Type. The array of {@link #getActualTypeArguments()} holds\r
- * information of all generic parameters defined for Parameterized Type.\r
- */\r
-public interface ParameterizedType extends Type {\r
-\r
-    /**\r
-     * Returns array of Types that are defined for Parameterized Type.\r
-     * <br>\r
-     * (for example if ParameterizedType encapsulates java generic Map that\r
-     * specifies two parameters Map<K,V> and the K is java.lang.Integer and V\r
-     * is defined as GeneratedType the array will contain two Types to store\r
-     * the information of generic parameters.)\r
-     *\r
-     * @return array of Types that are defined for Parameterized Type.\r
-     */\r
-    Type[] getActualTypeArguments();\r
-\r
-    /**\r
-     * Returns the Raw Type definition of Parameterized Type.\r
-     *\r
-     * @return the Raw Type definition of Parameterized Type.\r
-     */\r
-    Type getRawType();\r
-}\r
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/Type.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/Type.java
deleted file mode 100644 (file)
index c564ab4..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-/*\r
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
- *\r
- * This program and the accompanying materials are made available under the\r
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
- * and is available at http://www.eclipse.org/legal/epl-v10.html\r
- */\r
-package org.opendaylight.controller.sal.binding.model.api;\r
-\r
-/**\r
- * The Type interface defines the base type for all types defined in java.\r
- * Each Type defined in java MUST contain name and package name,\r
- * except of primitive types like int, byte etc. In case of mapping of\r
- * primitive type the package name MUST be left as empty string.\r
- *\r
- */\r
-public interface Type {\r
-    /**\r
-     * Returns name of the package that interface belongs to.\r
-     * \r
-     * @return name of the package that interface belongs to\r
-     */\r
-    public String getPackageName();\r
-\r
-    /**\r
-     * Returns name of the interface.\r
-     * \r
-     * @return name of the interface.\r
-     */\r
-    public String getName();\r
-\r
-    /**\r
-     * Returns fully qualified name of Type.\r
-     * <br>\r
-     * The fully qualified name of Type MUST be returned in following format:\r
-     * <ul>\r
-     *     <li>If does not contains package name: [type name] (e.g. int, byte,\r
-     *     byte[],...)</li>\r
-     *     <li>If Type contains package name: [package name].[type name]\r
-     *     (e.g java.lang.Byte, org.opendaylight.controller.gen.GenType)</li>\r
-     * </ul>\r
-     *\r
-     * @return fully qualified name of Type.\r
-     */\r
-    public String getFullyQualifiedName();\r
-}\r
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/TypeMember.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/TypeMember.java
deleted file mode 100644 (file)
index e2176ff..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.model.api;
-
-import java.util.List;
-
-public interface TypeMember {
-
-    /**
-     * Returns List of annotation definitions associated with generated type.
-     *
-     * @return List of annotation definitions associated with generated type.
-     */
-    public List<AnnotationType> getAnnotations();
-
-    /**
-     * Returns the name of method.
-     *
-     * @return the name of method.
-     */
-    public String getName();
-
-    /**
-     * Returns comment string associated with method.
-     *
-     * @return comment string associated with method.
-     */
-    public String getComment();
-
-    /**
-     * Returns the Type that declares method.
-     *
-     * @return the Type that declares method.
-     */
-    public Type getDefiningType();
-
-    /**
-     * Returns the access modifier of method.
-     *
-     * @return the access modifier of method.
-     */
-    public AccessModifier getAccessModifier();
-
-    /**
-     * Returns the returning Type that methods returns.
-     *
-     * @return the returning Type that methods returns.
-     */
-    public Type getReturnType();
-
-    /**
-     * Returns <code>true</code> if method is declared as final.
-     *
-     * @return <code>true</code> if method is declared as final.
-     */
-    public boolean isFinal();
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/WildcardType.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/WildcardType.java
deleted file mode 100644 (file)
index ad08c2f..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-package org.opendaylight.controller.sal.binding.model.api;
-
-public interface WildcardType extends Type  {
-
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/package-info.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/package-info.java
deleted file mode 100644 (file)
index d969a6f..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.model.api;
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/AnnotationTypeBuilder.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/AnnotationTypeBuilder.java
deleted file mode 100644 (file)
index 543c47b..0000000
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.model.api.type.builder;
-
-import java.util.List;
-
-import org.opendaylight.controller.sal.binding.model.api.AnnotationType;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-
-/**
- * Annotation Type Builder Interface serves for creation and instantiation of
- * immutable copy of Annotation Type. The Annotation Type Builder extends
- * from {@link Type} interface. The Annotation Type contains set of methods
- * which are capable to provide information about other Annotation Types and
- * Annotation Parameters.
- *
- * @see AnnotationType
- */
-public interface AnnotationTypeBuilder extends Type {
-
-    /**
-     * The method creates new AnnotationTypeBuilder containing specified
-     * package name an annotation name.
-     * <br>
-     * Neither the package name or annotation name can contain
-     * <code>null</code> references. In case that
-     * any of parameters contains <code>null</code> the method SHOULD thrown
-     * {@link IllegalArgumentException}
-     *
-     * @param packageName Package Name of Annotation Type
-     * @param name Name of Annotation Type
-     * @return <code>new</code> instance of Annotation Type Builder.
-     */
-    public AnnotationTypeBuilder addAnnotation(final String packageName, final String name);
-
-    /**
-     * Adds the parameter into List of parameters for Annotation Type.
-     * <br>
-     * If there is already stored parameter with the same name as the new
-     * parameter, the value of the old one will be simply overwritten by the
-     * newer parameter.
-     * <br>
-     * Neither the param name or value can contain
-     * <code>null</code> references. In case that
-     * any of parameters contains <code>null</code> the method SHOULD thrown
-     * {@link IllegalArgumentException}
-     *
-     * @param paramName Parameter Name
-     * @param value Parameter Value
-     * @return <code>true</code> if the parameter has been successfully
-     * assigned for Annotation Type
-     */
-    public boolean addParameter(final String paramName, String value);
-
-    /**
-     * Adds the parameter with specified List of parameter values into List of
-     * parameters for Annotation Type.
-     * <br>
-     * If there is already stored parameter with the same name as the new
-     * parameter, the value of the old one will be simply overwritten by the
-     * newer parameter.
-     * <br>
-     * Neither the param name or value can contain
-     * <code>null</code> references. In case that
-     * any of parameters contains <code>null</code> the method SHOULD thrown
-     * {@link IllegalArgumentException}
-     *
-     * @param paramName Parameter Name
-     * @param values List of Values bounded to Parameter Name
-     * @return <code>true</code> if the parameter has been successfully
-     * assigned for Annotation Type
-     */
-    public boolean addParameters(final String paramName, List<String> values);
-
-    /**
-     * Returns <code>new</code> <i>immutable</i> instance of Annotation Type
-     * with values assigned in current instance of Annotation Type Builder.
-     * <br>
-     * The return Annotation Type instance is immutable thus no additional
-     * modification to Annotation Type Builder will have an impact to
-     * instantiated Annotation Type.
-     * <br>
-     * For this purpose call this method after
-     * all additions are complete.
-     *
-     * @return <code>new</code> <i>immutable</i> instance of Annotation Type.
-     */
-    public AnnotationType toInstance();
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/ConstantBuilder.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/ConstantBuilder.java
deleted file mode 100644 (file)
index fd64378..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-/*\r
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
- *\r
- * This program and the accompanying materials are made available under the\r
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
- * and is available at http://www.eclipse.org/legal/epl-v10.html\r
- */\r
-package org.opendaylight.controller.sal.binding.model.api.type.builder;\r
-\r
-import org.opendaylight.controller.sal.binding.model.api.Constant;\r
-import org.opendaylight.controller.sal.binding.model.api.Type;\r
-\r
-/**\r
- *\r
- */\r
-public interface ConstantBuilder {\r
-\r
-    public void assignValue(final Object value);\r
-\r
-    public Constant toInstance(Type definingType);\r
-}\r
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/EnumBuilder.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/EnumBuilder.java
deleted file mode 100644 (file)
index 5f3d84c..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.model.api.type.builder;
-
-import org.opendaylight.controller.sal.binding.model.api.Enumeration;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-
-/**
- * Enum Builder is interface that contains methods to build and instantiate
- * Enumeration definition.
- *
- * @see Enumeration
- */
-public interface EnumBuilder extends Type {
-
-    /**
-     * The method creates new AnnotationTypeBuilder containing specified
-     * package name an annotation name.
-     * <br>
-     * Neither the package name or annotation name can contain
-     * <code>null</code> references. In case that
-     * any of parameters contains <code>null</code> the method SHOULD thrown
-     * {@link IllegalArgumentException}
-     *
-     * @param packageName Package Name of Annotation Type
-     * @param name Name of Annotation Type
-     * @return <code>new</code> instance of Annotation Type Builder.
-     */
-    public AnnotationTypeBuilder addAnnotation(final String packageName, final String name);
-
-    /**
-     *
-     * @param name
-     * @param value
-     */
-    public void addValue(final String name, final Integer value);
-
-    /**
-     *
-     * @param definingType
-     * @return
-     */
-    public Enumeration toInstance(final Type definingType);
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/GeneratedPropertyBuilder.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/GeneratedPropertyBuilder.java
deleted file mode 100644 (file)
index f1df1fb..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
-  * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
-  *
-  * This program and the accompanying materials are made available under the
-  * 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.controller.sal.binding.model.api.type.builder;
-
-import org.opendaylight.controller.sal.binding.model.api.GeneratedProperty;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-
-/**
- * Generated Property Builder is interface that contains methods to build and
- * instantiate Generated Property definition.
- *
- * @see GeneratedProperty
- */
-public interface GeneratedPropertyBuilder extends TypeMemberBuilder {
-
-    /**
-     * Sets isReadOnly flag for property. If property is marked as read only
-     * it is the same as set property in java as final.
-     *
-     * @param isReadOnly Read Only property flag.
-     */
-    public void setReadOnly(final boolean isReadOnly);
-
-    /**
-     * Returns <code>new</code> <i>immutable</i> instance of Generated
-     * Property.
-     * <br>
-     * The <code>definingType</code> param cannot be <code>null</code>. The
-     * every member in Java MUST be declared and defined inside the scope of
-     * <code>class</code> definition. In case that
-     * defining Type will be passed as <code>null</code> reference the method
-     * SHOULD thrown {@link IllegalArgumentException}.
-     *
-     * @param definingType Defining Type of Generated Property
-     * @return <code>new</code> <i>immutable</i> instance of Generated
-     * Property.
-     */
-    public GeneratedProperty toInstance(final Type definingType);
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/GeneratedTOBuilder.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/GeneratedTOBuilder.java
deleted file mode 100644 (file)
index d6cc2f5..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.model.api.type.builder;
-
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;
-
-/**
- * Generated Transfer Object Builder is interface that contains methods to build
- * and instantiate Generated Transfer Object definition.
- * 
- * @see GeneratedTransferObject
- */
-public interface GeneratedTOBuilder extends GeneratedTypeBuilder {
-
-    /**
-     * Add Generated Transfer Object from which will be extended current
-     * Generated Transfer Object. <br>
-     * By definition Java does not allow multiple inheritance, hence if there is
-     * already definition of Generated Transfer Object the extending object will
-     * be overwritten by lastly added Generated Transfer Object. <br>
-     * If Generated Transfer Object is <code>null</code> the method SHOULD throw
-     * {@link IllegalArgumentException}
-     * 
-     * @param genTransObj
-     *            Generated Transfer Object
-     */
-    public void setExtendsType(final GeneratedTransferObject genTransObj);
-
-    /**
-     * Add new Generated Property definition for Generated Transfer Object
-     * Builder and returns Generated Property Builder for specifying Property. <br>
-     * Name of Property cannot be <code>null</code>, if it is <code>null</code>
-     * the method SHOULD throw {@link IllegalArgumentException}
-     * 
-     * @param name
-     *            Name of Property
-     * @return <code>new</code> instance of Generated Property Builder.
-     */
-    public GeneratedPropertyBuilder addProperty(final String name);
-
-    /**
-     * Check whether GeneratedTOBuilder contains property with name
-     * <code>name</code>
-     * 
-     * @param name
-     *            of property which existance is checked
-     * @return true if property <code>name</code> exists in list of properties.
-     */
-    public boolean containsProperty(final String name);
-
-    /**
-     * Add Property that will be part of <code>equals</code> definition. <br>
-     * If Generated Property Builder is <code>null</code> the method SHOULD
-     * throw {@link IllegalArgumentException}
-     * 
-     * @param property
-     *            Generated Property Builder
-     * @return <code>true</code> if addition of Generated Property into list of
-     *         <code>equals</code> properties is successful.
-     */
-    public boolean addEqualsIdentity(final GeneratedPropertyBuilder property);
-
-    /**
-     * Add Property that will be part of <code>hashCode</code> definition. <br>
-     * If Generated Property Builder is <code>null</code> the method SHOULD
-     * throw {@link IllegalArgumentException}
-     * 
-     * @param property
-     *            Generated Property Builder
-     * @return <code>true</code> if addition of Generated Property into list of
-     *         <code>hashCode</code> properties is successful.
-     */
-    public boolean addHashIdentity(final GeneratedPropertyBuilder property);
-
-    /**
-     * Add Property that will be part of <code>toString</code> definition. <br>
-     * If Generated Property Builder is <code>null</code> the method SHOULD
-     * throw {@link IllegalArgumentException}
-     * 
-     * @param property
-     *            Generated Property Builder
-     * @return <code>true</code> if addition of Generated Property into list of
-     *         <code>toString</code> properties is successful.
-     */
-    public boolean addToStringProperty(final GeneratedPropertyBuilder property);
-
-    @Override
-    public GeneratedTransferObject toInstance();
-
-    /**
-     * Set original YANG type for GeneratedTOBuilder. It is YANG type from which
-     * is this transport object created.
-     * 
-     * @param yangType
-     *            YangType enum value of original YANG type
-     */
-    public void setIsUnion(boolean isUnion);
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/GeneratedTypeBuilder.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/GeneratedTypeBuilder.java
deleted file mode 100644 (file)
index 5a0cc12..0000000
+++ /dev/null
@@ -1,180 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.sal.binding.model.api.type.builder;
-
-import org.opendaylight.controller.sal.binding.model.api.Constant;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-
-/**
- * Generated Type Builder interface is helper interface for building and
- * defining the GeneratedType.
- * 
- * @see GeneratedType
- */
-public interface GeneratedTypeBuilder extends Type {
-
-    /**
-     * Adds new Enclosing Type into definition of Generated Type and returns
-     * <code>new</code> Instance of Generated Type Builder. <br>
-     * There is no need of specifying of Package Name because enclosing Type is
-     * already defined inside Generated Type with specific package name. <br>
-     * The name of enclosing Type cannot be same as Name of parent type and if
-     * there is already defined enclosing type with the same name, the new
-     * enclosing type will simply overwrite the older definition. <br>
-     * If the name of enclosing type is <code>null</code> the method SHOULD
-     * throw {@link IllegalArgumentException}
-     * 
-     * @param name
-     *            Name of Enclosing Type
-     * @return <code>new</code> Instance of Generated Type Builder.
-     */
-    public GeneratedTypeBuilder addEnclosingType(final String name);
-
-    /**
-     * Adds new Enclosing Transfer Object into definition of Generated Type and
-     * returns <code>new</code> Instance of Generated TO Builder. <br>
-     * There is no need of specifying of Package Name because enclosing Type is
-     * already defined inside Generated Type with specific package name. <br>
-     * The name of enclosing Type cannot be same as Name of parent type and if
-     * there is already defined enclosing type with the same name, the new
-     * enclosing type will simply overwrite the older definition. <br>
-     * If the name of enclosing type is <code>null</code> the method SHOULD
-     * throw {@link IllegalArgumentException}
-     * 
-     * @param name
-     *            Name of Enclosing Type
-     * @return <code>new</code> Instance of Generated Type Builder.
-     */
-    public GeneratedTOBuilder addEnclosingTransferObject(final String name);
-
-    /**
-     * Adds new Enclosing Transfer Object <code>genTOBuilder</code> into
-     * definition of Generated Type
-     * 
-     * <br>
-     * There is no need of specifying of Package Name because enclosing Type is
-     * already defined inside Generated Type with specific package name. <br>
-     * The name of enclosing Type cannot be same as Name of parent type and if
-     * there is already defined enclosing type with the same name, the new
-     * enclosing type will simply overwrite the older definition. <br>
-     * If the parameter <code>genTOBuilder</code> of enclosing type is
-     * <code>null</code> the method SHOULD throw
-     * {@link IllegalArgumentException}
-     * 
-     * @param <code>genTOBuilder</code> Name of Enclosing Type
-     */
-    public void addEnclosingTransferObject(final GeneratedTOBuilder genTOBuilder);
-
-    /**
-     * Adds String definition of comment into Method Signature definition. <br>
-     * The comment String MUST NOT contain anny comment specific chars (i.e.
-     * "/**" or "//") just plain String text description.
-     * 
-     * @param comment
-     *            Comment String.
-     */
-    public void addComment(final String comment);
-
-    /**
-     * The method creates new AnnotationTypeBuilder containing specified package
-     * name an annotation name. <br>
-     * Neither the package name or annotation name can contain <code>null</code>
-     * references. In case that any of parameters contains <code>null</code> the
-     * method SHOULD thrown {@link IllegalArgumentException}
-     * 
-     * @param packageName
-     *            Package Name of Annotation Type
-     * @param name
-     *            Name of Annotation Type
-     * @return <code>new</code> instance of Annotation Type Builder.
-     */
-    public AnnotationTypeBuilder addAnnotation(final String packageName, final String name);
-
-    /**
-     * Sets the <code>abstract</code> flag to define Generated Type as
-     * <i>abstract</i> type.
-     * 
-     * @param isAbstract
-     *            abstract flag
-     */
-    public void setAbstract(boolean isAbstract);
-
-    /**
-     * Add Type to implements.
-     * 
-     * @param genType
-     *            Type to implement
-     * @return <code>true</code> if the addition of type is successful.
-     */
-    public boolean addImplementsType(final Type genType);
-
-    /**
-     * Adds Constant definition and returns <code>new</code> Constant instance. <br>
-     * By definition Constant MUST be defined by return Type, Name and assigned
-     * value. The name SHOULD be defined with cpaital letters. Neither of method
-     * parameters can be <code>null</code> and the method SHOULD throw
-     * {@link IllegalArgumentException} if the contract is broken.
-     * 
-     * @param type
-     *            Constant Type
-     * @param name
-     *            Name of Constant
-     * @param value
-     *            Assigned Value
-     * @return <code>new</code> Constant instance.
-     */
-    public Constant addConstant(final Type type, final String name, final Object value);
-
-    /**
-     * Adds new Enumeration definition for Generated Type Builder and returns
-     * Enum Builder for specifying all Enum parameters. <br>
-     * If there is already Enumeration stored with the same name, the old enum
-     * will be simply overwritten byt new enum definition. <br>
-     * Name of Enumeration cannot be <code>null</code>, if it is
-     * <code>null</code> the method SHOULD throw
-     * {@link IllegalArgumentException}
-     * 
-     * @param name
-     *            Enumeration Name
-     * @return <code>new</code> instance of Enumeration Builder.
-     */
-    public EnumBuilder addEnumeration(final String name);
-
-    /**
-     * Add new Method Signature definition for Generated Type Builder and
-     * returns Method Signature Builder for specifying all Method parameters. <br>
-     * Name of Method cannot be <code>null</code>, if it is <code>null</code>
-     * the method SHOULD throw {@link IllegalArgumentException} <br>
-     * By <i>Default</i> the MethodSignatureBuilder SHOULD be pre-set as
-     * {@link MethodSignatureBuilder#setAbstract(true)},
-     * {@link MethodSignatureBuilder#setFinal(false)} and
-     * {@link MethodSignatureBuilder#setAccessModifier(PUBLIC)}
-     * 
-     * @param name
-     *            Name of Method
-     * @return <code>new</code> instance of Method Signature Builder.
-     */
-    public MethodSignatureBuilder addMethod(final String name);
-
-    /**
-     * Checks if GeneratedTypeBuilder contains method with name
-     * <code>methodName</code>
-     * 
-     * @param methodName
-     *            is method name
-     */
-    public boolean containsMethod(final String methodName);
-
-    /**
-     * Returns the <code>new</code> <i>immutable</i> instance of Generated Type.
-     * 
-     * @return the <code>new</code> <i>immutable</i> instance of Generated Type.
-     */
-    public GeneratedType toInstance();
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/MethodSignatureBuilder.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/MethodSignatureBuilder.java
deleted file mode 100644 (file)
index 70ea9bb..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
-
- *
- * March 2013
- *
- * Copyright (c) 2013 by Cisco Systems, Inc.
- * All rights reserved.
- */
-package org.opendaylight.controller.sal.binding.model.api.type.builder;
-
-import org.opendaylight.controller.sal.binding.model.api.MethodSignature;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-
-/**
- * Method Signature Builder serves solely for building Method Signature and
- * returning the <code>new</code> instance of Method Signature.
- * <br>
- * By definition of {@link MethodSignature} the Method in java MUST contain
- * Name, Return Type and Access Modifier. By default the Access Modifier can
- * be set to public. The Method Signature builder does not contain method for
- * addName due to enforce reason that MethodSignatureBuilder SHOULD be
- * instantiated only once with defined method name.
- * <br>
- * The methods as {@link #addAnnotation(String, String)} and {@link #setComment(String)}
- * can be used as optional because not all methods MUST contain annotation or
- * comment definitions.
- *
- *
- * @see MethodSignature
- */
-public interface MethodSignatureBuilder extends TypeMemberBuilder {
-
-    /**
-     * Sets the flag for declaration of method as abstract or non abstract. If the flag <code>isAbstract == true</code>
-     * The instantiated Method Signature MUST have return value for {@link org.opendaylight.controller.sal.binding
-     * .model.api.MethodSignature#isAbstract()} also equals to <code>true</code>.
-     *
-     * @param isAbstract is abstract flag
-     */
-    public void setAbstract(boolean isAbstract);
-
-    /**
-     * Adds Parameter into the List of method parameters. Neither the Name or
-     * Type of parameter can be <code>null</code>.
-     *
-     * <br>
-     * In case that any of parameters are defined as <code>null</code> the
-     * method SHOULD throw an {@link IllegalArgumentException}
-     *
-     * @param type Parameter Type
-     * @param name Parameter Name
-     */
-    public void addParameter(final Type type, final String name);
-
-    /**
-     * Returns <code>new</code> <i>immutable</i> instance of Method Signature.
-     * <br>
-     * The <code>definingType</code> param cannot be <code>null</code>. The
-     * every method in Java MUST be declared and defined inside the scope of
-     * <code>class</code> or <code>interface</code> definition. In case that
-     * defining Type will be passed as <code>null</code> reference the method
-     * SHOULD thrown {@link IllegalArgumentException}.
-     *
-     * @param definingType Defining Type of Method Signature
-     * @return <code>new</code> <i>immutable</i> instance of Method Signature.
-     */
-    public MethodSignature toInstance(final Type definingType);
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/TypeMemberBuilder.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/TypeMemberBuilder.java
deleted file mode 100644 (file)
index de19360..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-package org.opendaylight.controller.sal.binding.model.api.type.builder;
-
-import org.opendaylight.controller.sal.binding.model.api.AccessModifier;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-
-/**
- *
- */
-public interface TypeMemberBuilder {
-
-    /**
-     * The method creates new AnnotationTypeBuilder containing specified
-     * package name an annotation name.
-     * <br>
-     * Neither the package name or annotation name can contain
-     * <code>null</code> references. In case that
-     * any of parameters contains <code>null</code> the method SHOULD thrown
-     * {@link IllegalArgumentException}
-     *
-     * @param packageName Package Name of Annotation Type
-     * @param name Name of Annotation Type
-     * @return <code>new</code> instance of Annotation Type Builder.
-     */
-    public AnnotationTypeBuilder addAnnotation(final String packageName, final String name);
-
-    /**
-     * Returns the name of property.
-     *
-     * @return the name of property.
-     */
-    public String getName();
-
-    /**
-     * Adds return Type into Builder definition for Generated Property.
-     * <br>
-     * The return Type MUST NOT be <code>null</code>,
-     * otherwise the method SHOULD throw {@link IllegalArgumentException}
-     *
-     * @param returnType Return Type of property.
-     */
-    public void setReturnType(final Type returnType);
-
-    /**
-     * Sets the access modifier of property.
-     *
-     * @param modifier Access Modifier value.
-     */
-    public void setAccessModifier(final AccessModifier modifier);
-
-    /**
-     * Adds String definition of comment into Method Signature definition.
-     * <br>
-     * The comment String MUST NOT contain anny comment specific chars (i.e.
-     * "/**" or "//") just plain String text description.
-     *
-     * @param comment Comment String.
-     */
-    public void setComment(final String comment);
-
-    /**
-     * Sets the flag final for method signature. If this is set the method will be prohibited from overriding.
-     * <br>
-     * This setting is irrelevant for methods designated to be defined in interface definitions because interface
-     * can't have final method.
-     *
-     * @param isFinal Is Final
-     */
-    public void setFinal(final boolean isFinal);
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/package-info.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/builder/package-info.java
deleted file mode 100644 (file)
index ff2c06e..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-/**\r
-\r
- *\r
- * March 2013\r
- *\r
- * Copyright (c) 2013 by Cisco Systems, Inc.\r
- * All rights reserved.\r
- */\r
-package org.opendaylight.controller.sal.binding.model.api.type.builder;
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/provider/package-info.java b/opendaylight/sal/yang-prototype/code-generator/binding-model-api/src/main/java/org/opendaylight/controller/sal/binding/model/api/type/provider/package-info.java
deleted file mode 100644 (file)
index 6fcb1a8..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-/**\r
-\r
- *\r
- * March 2013\r
- *\r
- * Copyright (c) 2013 by Cisco Systems, Inc.\r
- * All rights reserved.\r
- */\r
-package org.opendaylight.controller.sal.binding.model.api.type.provider;
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-sal-api-gen-plugin/pom.xml b/opendaylight/sal/yang-prototype/code-generator/maven-sal-api-gen-plugin/pom.xml
deleted file mode 100644 (file)
index 11ed764..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-    <parent>
-        <artifactId>binding-generator</artifactId>
-        <groupId>org.opendaylight.controller</groupId>
-        <version>0.5.5-SNAPSHOT</version>
-    </parent>
-
-    <modelVersion>4.0.0</modelVersion>
-    <artifactId>maven-sal-api-gen-plugin</artifactId>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.opendaylight.yangtools</groupId>
-            <artifactId>yang-maven-plugin-spi</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.opendaylight.controller</groupId>
-            <artifactId>binding-model-api</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.opendaylight.controller</groupId>
-            <artifactId>binding-generator-api</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.opendaylight.controller</groupId>
-            <artifactId>binding-generator-impl</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.opendaylight.controller</groupId>
-            <artifactId>binding-java-api-generator</artifactId>
-        </dependency>
-    </dependencies>
-
-</project>
diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-sal-api-gen-plugin/src/main/java/org/opendaylight/controller/maven/sal/api/gen/plugin/CodeGeneratorImpl.java b/opendaylight/sal/yang-prototype/code-generator/maven-sal-api-gen-plugin/src/main/java/org/opendaylight/controller/maven/sal/api/gen/plugin/CodeGeneratorImpl.java
deleted file mode 100644 (file)
index 4ce8adc..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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.controller.maven.sal.api.gen.plugin;
-
-import java.io.File;
-import java.io.IOException;
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.apache.maven.plugin.logging.Log;
-import org.apache.maven.project.MavenProject;
-import org.opendaylight.controller.sal.binding.generator.api.BindingGenerator;
-import org.opendaylight.controller.sal.binding.generator.impl.BindingGeneratorImpl;
-import org.opendaylight.controller.sal.binding.model.api.Enumeration;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;
-import org.opendaylight.controller.sal.binding.model.api.GeneratedType;
-import org.opendaylight.controller.sal.binding.model.api.Type;
-import org.opendaylight.controller.sal.java.api.generator.GeneratorJavaFile;
-import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang2sources.spi.CodeGenerator;
-
-public final class CodeGeneratorImpl implements CodeGenerator {
-
-    @Override
-    public Collection<File> generateSources(SchemaContext context, File outputBaseDir, Set<Module> yangModules)
-            throws IOException {
-        if (outputBaseDir == null) {
-            outputBaseDir = new File("target" + File.separator + "generated-sources" + File.separator + "maven-sal-api-gen");
-        }
-
-        final BindingGenerator bindingGenerator = new BindingGeneratorImpl();
-        final List<Type> types = bindingGenerator.generateTypes(context, yangModules);
-        final Set<GeneratedType> typesToGenerate = new HashSet<>();
-        final Set<GeneratedTransferObject> tosToGenerate = new HashSet<>();
-        final Set<Enumeration> enumsToGenerate = new HashSet<>();
-
-        for (Type type : types) {
-            if (type instanceof GeneratedTransferObject) {
-                tosToGenerate.add((GeneratedTransferObject) type);
-            } else if (type instanceof GeneratedType) {
-                typesToGenerate.add((GeneratedType) type);
-            } else if (type instanceof Enumeration) {
-                enumsToGenerate.add((Enumeration) type);
-            }
-        }
-
-        final GeneratorJavaFile generator = new GeneratorJavaFile(typesToGenerate, tosToGenerate, enumsToGenerate);
-
-        return generator.generateToFile(outputBaseDir);
-    }
-
-    @Override
-    public void setLog(Log log) {
-        // use maven logging if necessary
-
-    }
-
-    @Override
-    public void setAdditionalConfig(Map<String, String> additionalConfiguration) {
-        // no additional config utilized
-    }
-
-    @Override
-    public void setResourceBaseDir(File resourceBaseDir) {
-        // no resource processing necessary
-    }
-
-    @Override
-    public void setMavenProject(MavenProject project) {
-        // no additional information needed
-    }
-
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/pom.xml b/opendaylight/sal/yang-prototype/code-generator/pom.xml
deleted file mode 100644 (file)
index c0edbdd..0000000
+++ /dev/null
@@ -1,137 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-    <parent>
-        <groupId>org.opendaylight.controller</groupId>
-        <artifactId>yang-prototype</artifactId>
-        <version>0.5-SNAPSHOT</version>
-    </parent>
-
-    <modelVersion>4.0.0</modelVersion>
-    <version>0.5.5-SNAPSHOT</version>
-    <artifactId>binding-generator</artifactId>
-    <packaging>pom</packaging>
-    <name>${project.artifactId}</name>
-    <description>${project.artifactId}</description>
-
-    <properties>
-        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-    </properties>
-
-    <modules>
-        <module>binding-model-api</module>
-        <module>binding-generator-api</module>
-        <module>binding-generator-spi</module>
-        <module>binding-generator-util</module>
-        <module>binding-generator-impl</module>
-        <module>binding-java-api-generator</module>
-        <module>maven-sal-api-gen-plugin</module>
-    </modules>
-
-    <dependencyManagement>
-        <dependencies>
-            <dependency>
-                <groupId>org.opendaylight.controller</groupId>
-                <artifactId>binding-model-api</artifactId>
-                <version>${project.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.opendaylight.controller</groupId>
-                <artifactId>binding-generator-api</artifactId>
-                <version>${project.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.opendaylight.controller</groupId>
-                <artifactId>binding-generator-spi</artifactId>
-                <version>${project.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.opendaylight.controller</groupId>
-                <artifactId>binding-generator-util</artifactId>
-                <version>${project.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.opendaylight.controller</groupId>
-                <artifactId>binding-generator-impl</artifactId>
-                <version>${project.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.opendaylight.controller</groupId>
-                <artifactId>binding-java-api-generator</artifactId>
-                <version>${project.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.opendaylight.controller</groupId>
-                <artifactId>maven-sal-api-gen-plugin</artifactId>
-                <version>${project.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.opendaylight.yangtools</groupId>
-                <artifactId>yang-common</artifactId>
-                <version>${yangtools.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.opendaylight.yangtools</groupId>
-                <artifactId>yang-data-api</artifactId>
-                <version>${yangtools.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.opendaylight.yangtools</groupId>
-                <artifactId>yang-data-util</artifactId>
-                <version>${yangtools.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.opendaylight.yangtools</groupId>
-                <artifactId>yang-model-api</artifactId>
-                <version>${yangtools.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.opendaylight.yangtools</groupId>
-                <artifactId>yang-model-util</artifactId>
-                <version>${yangtools.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.opendaylight.yangtools</groupId>
-                <artifactId>yang-binding</artifactId>
-                <version>${yangtools.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.opendaylight.yangtools</groupId>
-                <artifactId>yang-model-parser-api</artifactId>
-                <version>${yangtools.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.opendaylight.yangtools</groupId>
-                <artifactId>yang-model-parser-impl
-                </artifactId>
-                <version>${yangtools.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.opendaylight.yangtools</groupId>
-                <artifactId>yang-maven-plugin</artifactId>
-                <version>${yangtools.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.opendaylight.yangtools</groupId>
-                <artifactId>yang-maven-plugin-spi</artifactId>
-                <version>${yangtools.version}</version>
-            </dependency>
-        </dependencies>
-    </dependencyManagement>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-compiler-plugin</artifactId>
-                <version>2.0</version>
-                <inherited>true</inherited>
-                <configuration>
-                    <source>1.7</source>
-                    <target>1.7</target>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
-
-</project>
diff --git a/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/pom.xml b/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/pom.xml
deleted file mode 100644 (file)
index a571443..0000000
+++ /dev/null
@@ -1,112 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <artifactId>binding-generator</artifactId>
-        <groupId>org.opendaylight.controller</groupId>
-        <version>0.5.5-SNAPSHOT</version>
-    </parent>
-    <artifactId>maven-code-gen-sample</artifactId>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.opendaylight.yangtools</groupId>
-                <artifactId>yang-maven-plugin</artifactId>
-                <version>${yangtools.version}</version>
-                <executions>
-                    <execution>
-                        <goals>
-                            <goal>generate-sources</goal>
-                        </goals>
-                        <configuration>
-                            <yangFilesRootDir>src/main/yang</yangFilesRootDir>
-                            <codeGenerators>
-                                <generator>
-                                    <codeGeneratorClass>
-                                        org.opendaylight.controller.maven.sal.api.gen.plugin.CodeGeneratorImpl
-                                    </codeGeneratorClass>
-                                    <outputBaseDir>
-                                        target/generated-sources/sal
-                                    </outputBaseDir>
-                                </generator>
-                            </codeGenerators>
-                            <inspectDependencies>false</inspectDependencies>
-                        </configuration>
-                    </execution>
-                </executions>
-
-                <dependencies>
-                    <dependency>
-                        <groupId>org.opendaylight.controller</groupId>
-                        <artifactId>maven-sal-api-gen-plugin</artifactId>
-                        <version>0.5.5-SNAPSHOT</version>
-                        <type>jar</type>
-                    </dependency>
-                </dependencies>
-            </plugin>
-            <plugin>
-                <groupId>org.codehaus.mojo</groupId>
-                <artifactId>build-helper-maven-plugin</artifactId>
-                <version>1.7</version>
-                <executions>
-                    <execution>
-                        <phase>generate-sources</phase>
-                        <goals>
-                            <goal>add-source</goal>
-                        </goals>
-                        <configuration>
-                            <sources>
-                                <source>target/generated-sources/sal</source>
-                            </sources>
-                        </configuration>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-        <pluginManagement>
-            <plugins>
-                <!--This plugin's configuration is used to store Eclipse 
-                    m2e settings only. It has no influence on the Maven build itself. -->
-                <plugin>
-                    <groupId>org.eclipse.m2e</groupId>
-                    <artifactId>lifecycle-mapping</artifactId>
-                    <version>1.0.0</version>
-                    <configuration>
-                        <lifecycleMappingMetadata>
-                            <pluginExecutions>
-                                <pluginExecution>
-                                    <pluginExecutionFilter>
-                                        <groupId>
-                                            org.opendaylight.yangtools
-                                        </groupId>
-                                        <artifactId>
-                                            yang-maven-plugin
-                                        </artifactId>
-                                        <versionRange>
-                                            [0.5,)
-                                        </versionRange>
-                                        <goals>
-                                            <goal>
-                                                generate-sources
-                                            </goal>
-                                        </goals>
-                                    </pluginExecutionFilter>
-                                    <action>
-                                        <ignore></ignore>
-                                    </action>
-                                </pluginExecution>
-                            </pluginExecutions>
-                        </lifecycleMappingMetadata>
-                    </configuration>
-                </plugin>
-            </plugins>
-        </pluginManagement>
-    </build>
-    <dependencies>
-        <dependency>
-            <groupId>org.opendaylight.yangtools</groupId>
-            <artifactId>yang-binding</artifactId>
-        </dependency>
-    </dependencies>
-</project>
diff --git a/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/java/Example.java b/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/java/Example.java
deleted file mode 100644 (file)
index b15c0e5..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-import java.util.List;
-
-import org.opendaylight.yang.gen.v1.urn.opendaylight.controller.network.rev2013520.ControllerNetworkData;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.controller.network.rev2013520.Network;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.controller.network.rev2013520.network.topologies.Topology;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.controller.network.rev2013520.network.topologies.topology.nodes.Node;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.controller.openflow.rev2013520.Node1;
-
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-public class Example {
-    
-
-    
-    void udpateTopology(ControllerNetworkData network) {
-        List<Topology> topologies = network.getNetwork().getTopologies().getTopology();
-        for (Topology topology : topologies) {
-            List<Node> nodes = topology.getNodes().getNode();
-            for (Node node : nodes) {
-                
-                
-                Node1 ofNode = node.getAugmentation(Node1.class);
-                ofNode.getDatapathId();
-            }
-        }
-        
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/augment-monitoring@2013-07-01.yang b/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/augment-monitoring@2013-07-01.yang
deleted file mode 100644 (file)
index 4683598..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-module augment-monitoring {
-    yang-version 1;
-    namespace "urn:ietf:params:xml:ns:yang:augment-monitoring";
-    prefix "amon";
-
-    import choice-monitoring { prefix nm; }
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision "2013-07-01" {
-            reference "NO REF";
-    }
-
-    augment "/nm:netconf-state/nm:datastores/nm:datastore/nm:locks/nm:lock-type" {
-        case autonomous-lock {
-            container autonomous-def {
-                leaf lock-id {
-                    type int32;
-                }
-
-                leaf lock-time {
-                    type uint32;
-                }
-            }
-        }
-
-        case anonymous-lock {
-            leaf lock-time {
-                type uint32;
-            }
-        }
-
-        leaf leaf-aug-case {
-            type string;
-        }
-    }
-
-    augment "/nm:netconf-state/nm:datastores/nm:datastore/nm:locks/nm:lock-type/nm:partial-lock" {
-        choice aug-case-by-choice {
-            case foo {
-                leaf foo {
-                    type string;
-                }
-            }
-
-            case bar {
-                leaf bar {
-                    type boolean;
-                }
-            }
-        }
-    }
-
-    augment "/nm:netconf-state/nm:datastores/nm:datastore" {
-        choice storage-format {
-            case xml {
-                container xml-def {
-                    leaf file-name {
-                        type string;
-                    }
-                }
-            }
-
-            case yang {
-                leaf yang-file-name {
-                    type string;
-                }
-            }
-
-            case unknown-files {
-                list files {
-                    key "file-name";
-
-                    leaf file-name {
-                        type string;
-                    }
-
-                    container file-data {
-                        leaf utf8-data {
-                            type string;
-                        }
-                    }
-                }
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/bit_and_union_in_leaf.yang b/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/bit_and_union_in_leaf.yang
deleted file mode 100644 (file)
index 2a7c366..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-module bit-and-union-in-leaf {
-
-    namespace "urn:bit:union:in:leaf";
-    prefix "sbd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision 2013-06-26 {
-        
-    }
-
-    typedef union-typedef {
-        type union {
-            type string {
-                pattern "[a-g]";
-            }
-            type int16;
-        }
-    }
-
-    typedef union-typedef2 {
-        type union {
-            type string; 
-            type int16;
-        }
-    }    
-
-    container parent-container {
-        leaf bit-leaf {
-            type bits {
-                bit first-bit;
-                bit second-bit;
-                bit third-bit;
-            }
-        }
-
-        leaf union-leaf {
-            type union {
-                type int32;
-                type string {
-                    pattern "[a-z]";
-                }
-                type string {
-                    pattern "[0-9]*"
-                }
-                type string {
-                    pattern "[a-d]*";
-                    pattern "[0-5]*";
-                }
-                type uint8;
-            }
-        }
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/choice-monitoring@2013-07-01.yang b/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/choice-monitoring@2013-07-01.yang
deleted file mode 100644 (file)
index 2362783..0000000
+++ /dev/null
@@ -1,129 +0,0 @@
-module choice-monitoring {
-  yang-version 1;
-  namespace "urn:ietf:params:xml:ns:yang:choice-monitoring";
-  prefix "ncm";
-
-  import ietf-yang-types { prefix yang; }
-  import ietf-inet-types { prefix inet; }
-
-  organization "OPEN DAYLIGHT";
-  contact "http://www.opendaylight.org/";
-
-  description
-    "Test model for testing of resolving choice, case nodes and generation types from them.";
-
-  revision 2013-07-01 {
-
-  }
-
-  typedef tls-fingerprint-type {
-    type string {
-      pattern '([0-9a-fA-F]){2}(:([0-9a-fA-F]){2})*';
-    }
-  }
-
-  typedef netconf-datastore-type {
-    type enumeration {
-      enum running;
-      enum candidate;
-      enum startup;
-    }
-  }
-
-  container netconf-state {
-    config false;
-
-    container datastores {
-      list datastore {
-        key name;
-
-        leaf name {
-          type netconf-datastore-type;
-        }
-        container locks {
-          choice lock-type {
-
-            case global-lock {
-                container global-lock {
-
-                leaf locked-by-session {
-                  type uint32;
-                  mandatory true;
-                }
-
-                leaf locked-time {
-                  type yang:date-and-time;
-                  mandatory true;
-                }
-
-                container capabilities {
-                  leaf-list capability {
-                      type inet:uri;
-                  }
-                }
-              }
-            }
-
-            case partial-lock {
-              list partial-lock {
-                  key lock-id;
-
-                  leaf lock-id {
-                    type uint32;
-                  }
-                  leaf-list select {
-                    type yang:xpath1.0;
-                    min-elements 1;
-                  }
-                  leaf-list locked-node {
-                    type string;
-                  }
-              }
-            }
-
-            case fingerprint {
-              choice algorithm-and-hash {
-                  mandatory true;
-                  case md5 {
-                    leaf md5 {
-                      type tls-fingerprint-type;
-                    }
-                  }
-
-                  case sha1 {
-                    leaf sha1 {
-                      type tls-fingerprint-type;
-                    }
-                  }
-                  
-                  case sha224 {
-                    leaf sha224 {
-                      type tls-fingerprint-type;
-                    }
-                  }
-                  
-                  case sha256 {
-                    leaf sha256 {
-                      type tls-fingerprint-type;
-                    }
-                  }
-                  
-                  case sha384 {
-                    leaf sha384 {
-                      type tls-fingerprint-type;
-                    }
-                  }                
-                  
-                  case sha512 {
-                    leaf sha512 {
-                      type tls-fingerprint-type;
-                    }
-                  }
-              }
-            }
-          }
-        }
-      }
-    }
-  }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/controller-network-ne.yang b/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/controller-network-ne.yang
deleted file mode 100644 (file)
index ca8507f..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-module controller-openflow-ne {
-    yang-version 1;
-    namespace "urn:opendaylight:controller:network:openflow";
-    prefix "of";
-    
-    import controller-network {
-        prefix cn;
-    }
-    import ietf-inet-types { prefix "inet"; }
-    
-    revision 2013-06-07 {
-       description "Initial demo";
-    }
-
-    augment "/cn:network/cn:network-elements/cn:network-element" {
-
-        container flow-tables2 {
-            list flow-table {
-
-                key "id";
-                leaf id {
-                    type int32;
-                }
-
-                container flows {
-                    list flow {
-                        key "name";
-                        leaf name {
-                            type string;
-                        }
-                        container match {
-                            leaf input-port {
-                                type cn:tp-ref;
-                            }
-                            leaf nl-src {
-                                type inet:ipv4-address;
-                            }
-                            leaf nl-dst {
-                                type inet:ipv4-address;
-                            }
-                        }
-                        container actions {
-                            list action {
-                                leaf type {
-                                    type string;
-                                }
-                            }
-                        }
-                    }
-                }
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/controller-network.yang b/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/controller-network.yang
deleted file mode 100644 (file)
index ce0b6b0..0000000
+++ /dev/null
@@ -1,167 +0,0 @@
-module controller-network {
-    yang-version 1;
-    namespace "urn:opendaylight:controller:network";
-    prefix "topos";
-    
-    import ietf-inet-types { prefix "inet"; }
-    
-    revision 2013-05-20 {
-       description "Initial demo";
-    }
-
-    typedef topology-id {
-        type string;
-    }
-
-    typedef node-id {
-        type string;
-    }
-
-    typedef link-id {
-        type string;
-    }
-
-    typedef tp-id {
-        type string;
-        description "identifier for termination points on a port";
-    }
-
-    typedef tp-ref {
-        type leafref {
-            path "/network/topologies/topology/nodes/node/termination-points/termination-point/tp-id";
-        }
-    }
-    typedef topology-ref {
-        type leafref {
-            path "/network/topologies/topology/topology-id";
-        }
-        description "This type is used for leafs that reference topology identifier instance.";
-        // currently not used
-    }
-
-    typedef node-ref {
-        type leafref {
-            path "/network/topologies/topology/nodes/node/node-id";
-        }
-        description "This type is used for leafs that reference a node instance.";
-    }
-
-    typedef link-ref {
-        type leafref {
-            path "/network/topologies/topology/links/link/link-id";
-        }
-        description "This type is used for leafs that reference a link instance.";
-        // currently not used
-    }
-    
-    typedef network-element-ref {
-        type leafref {
-            path "/network/network-elements/network-element/element-id";
-        }
-    }
-
-    typedef element-id {
-        type string;
-    }
-    
-    container network {
-        container topologies {
-            list topology {
-                description "
-                    This is the model of abstract topology which contains only Network
-                    Nodes and Network Links. Each topology MUST be identified by
-                    unique topology-id for reason that the store could contain many
-                    topologies.
-                ";
-                key "topology-id";
-                leaf topology-id {
-                    type topology-id; 
-                    description "
-                        It is presumed that datastore will contain many topologies. To
-                        distinguish between topologies it is vital to have UNIQUE
-                        topology identifier.
-                    ";
-                }
-
-                container types {
-                    description "
-                        The container for definition of topology types.
-                        The augmenting modules should add empty optional leaf 
-                        to this container to signalize topology type.";
-                }
-
-                container nodes {
-                    list node {
-                        description "The list of network nodes defined for topology.";
-
-                        key "node-id";
-                        leaf node-id {
-                            type node-id;
-                            description "The Topology identifier of network-node.";
-                        }
-
-                        leaf supporting-ne {
-                            type network-element-ref;
-                        }
-                        
-                        container termination-points {
-                            list termination-point {
-                                key "tp-id";
-                                leaf tp-id {
-                                    type tp-id;
-                                }
-                            }
-                        }
-                    }
-                }
-        
-                container links {
-                    list link {
-                        description "
-                            The Network Link which is defined by Local (Source) and
-                            Remote (Destination) Network Nodes. Every link MUST be
-                            defined either by identifier and his local and remote
-                            Network Nodes (in real applications it is common that many
-                            links are originated from one node and end up in same
-                            remote node). To ensure that we would always know to
-                            distinguish between links, every link SHOULD have
-                            identifier.
-                        ";
-                        key "link-id";
-        
-                        leaf link-id {
-                            type link-id;
-                        }
-                        container source { 
-                            leaf source-node {
-                                type node-ref;
-                                description "Source node identifier.";
-                            }
-                            leaf source-tp {
-                                type tp-ref;
-                            }
-                        }
-                        container destination { 
-                            leaf dest-node {
-                                type node-ref;
-                                description "Destination node identifier.";
-                            }
-                            leaf dest-tp {
-                                type tp-ref;
-                            }
-                        }
-                    }
-                }
-            }
-        }
-        container network-elements {
-            config true;
-            list network-element {
-                key "element-id";
-                leaf element-id {
-                    type element-id;
-                }
-            }
-        }
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/controller-openflow-ipv6.yang b/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/controller-openflow-ipv6.yang
deleted file mode 100644 (file)
index eec1909..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-module controller-openflow-ipv6 {
-       yang-version 1;
-       namespace "urn:opendaylight:controller:network:openflow:ipv6";
-       prefix "of6";
-
-       import controller-network {
-               prefix cn;
-       }
-       import ietf-inet-types { prefix "inet"; }
-       import controller-openflow-ne {prefix "of";}
-
-       revision 2013-06-07 {
-          description "Initial demo";
-       }
-}
-
-       
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/controller-openflow.yang b/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/controller-openflow.yang
deleted file mode 100644 (file)
index 83f69c4..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-module controller-openflow {
-
-    namespace "urn:opendaylight:controller:openflow";
-    prefix "of";
-    import controller-network {prefix cn;}
-
-    revision 2013-05-20 {
-       description "Initial demo";
-    }
-
-    typedef datapath-id {
-        type string {
-            length 16;
-        }
-    }
-
-
-    augment "/cn:network/cn:topologies/cn:topology/cn:types" {
-        leaf openflow {type string;}
-    }
-
-    augment "/cn:network/cn:topologies/cn:topology/cn:links/cn:link/cn:source" {
-        when "../../../cn:types/of:openflow";
-
-        leaf logical-port {
-            type int32;
-        }
-    }
-
-    augment "/cn:network/cn:topologies/cn:topology/cn:links/cn:link/cn:destination" {
-        when "../../../cn:types/of:openflow";
-
-        leaf logical-port {
-            type int32;
-        }
-    }
-
-    augment "/cn:network/cn:topologies/cn:topology/cn:nodes/cn:node/" {
-        when "../../../cn:types/of:openflow";
-        leaf datapath-id {
-            type datapath-id;
-        }
-    }
-    
-    augment "/cn:network/cn:network-elements/cn:network-element" {
-        leaf datapath-id {
-            type datapath-id;
-        }
-
-        container ports {
-            list port {
-                key "logical-port-id";
-                
-                leaf logical-port-id {
-                    type int32;
-                }
-
-                // Should be replaced with ref to interface
-                leaf physical-name {
-                    type string;
-                }
-            }
-        }
-        container flow-tables {
-            list flow-table {
-                key "flow-table-id";
-                leaf flow-table-id {
-                    type string;
-                }
-
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/demo-topology.yang b/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/demo-topology.yang
deleted file mode 100644 (file)
index 4fef1cd..0000000
+++ /dev/null
@@ -1,121 +0,0 @@
-module demo-topology {
-       yang-version 1;
-    namespace "urn:model.1demo-275topology.4.5.my";
-    prefix "tp";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    description "
-               This module contains the definitions of elements that creates network 
-               topology i.e. definition of network nodes and links. This module is
-               not designed to be used solely for network representation. This module
-               SHOULD be used as base module in defining the network topology.
-       ";
-
-    revision "2013-02-08"{
-               reference " WILL BE DEFINED LATER";
-       }
-
-       container topology {
-        description "
-                       This is the model of abstract topology which contains only Network
-                       Nodes and Network Links. Each topology MUST be identified by
-                       unique topology-id for reason that the store could contain many
-                       topologies.
-               ";
-
-        leaf topology-id {
-            type string;
-            description "
-                               It is presumed that datastore will contain many topologies. To
-                               distinguish between topologies it is vital to have UNIQUE
-                               topology identifier.
-                       ";
-        }
-
-        container network-nodes {
-               list network-node {
-                   description "The list of network nodes defined for topology.";
-
-                       key "node-id";
-
-                       leaf node-id {
-                               type string;
-                               description "The Topology identifier of network-node.";
-                       }
-                
-                list network-interface {
-                    key "interface-id";
-                    
-                    leaf interface-id {
-                        type uint8;
-                    }
-                    
-                    leaf interface-address {
-                        type string;
-                    }
-                }
-                
-                   container node-attributes {
-                                       description "
-                                               Additional attributes that can Network Node contains.
-                                       ";
-
-                                       leaf geo-latitude {
-                                               type decimal64 {
-                                                       fraction-digits 2;
-                                               }
-                                               config true;
-                                       }
-
-                                       leaf geo-longitude {
-                                               type decimal64 {
-                                                       fraction-digits 2;
-                                               }
-                                               config true;
-                                       }
-                               }
-               }
-        }
-        
-        container network-links {
-               list network-link {
-                   description "
-                                       The Network Link which is defined by Local (Source) and
-                                       Remote (Destination) Network Nodes. Every link MUST be
-                                       defined either by identifier and his local and remote
-                                       Network Nodes (in real applications it is common that many
-                                       links are originated from one node and end up in same
-                                       remote node). To ensure that we would always know to
-                                       distinguish between links, every link SHOULD have
-                                       identifier.
-                               ";
-                       key "link-id";
-
-                       leaf link-id {
-                               type string;
-                               description "";
-                       }
-
-                   container source {
-                                       leaf node-id {
-                                               type string;
-                                               description "Source node identifier.";
-                                       }
-                               }
-
-                               container destination {
-                                       leaf node-id {
-                                               type string;
-                                               description "Destination node identifier.";
-                                       }
-                               }
-
-                               container link-attributes {
-                                       description "Aditional attributes that can Network Link contains.";
-                               }
-                   }
-        }
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/ietf-inet-types@2010-09-24.yang b/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/ietf-inet-types@2010-09-24.yang
deleted file mode 100644 (file)
index de20feb..0000000
+++ /dev/null
@@ -1,418 +0,0 @@
- module ietf-inet-types {
-
-   namespace "urn:ietf:params:xml:ns:yang:ietf-inet-types";
-   prefix "inet";
-
-   organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-   contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Partain
-               <mailto:david.partain@ericsson.com>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     Editor:   Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>";
-
-   description
-    "This module contains a collection of generally useful derived
-     YANG data types for Internet addresses and related things.
-
-     Copyright (c) 2010 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or without
-     modification, is permitted pursuant to, and subject to the license
-     terms contained in, the Simplified BSD License set forth in Section
-     4.c of the IETF Trust's Legal Provisions Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC 6021; see
-     the RFC itself for full legal notices.";
-
-   revision 2010-09-24 {
-     description
-      "Initial revision.";
-     reference
-      "RFC 6021: Common YANG Data Types";
-   }
-
-   /*** collection of protocol field related types ***/
-
-   typedef ip-version {
-     type enumeration {
-       enum unknown {
-         value "0";
-         description
-          "An unknown or unspecified version of the Internet protocol.";
-       }
-       enum ipv4 {
-         value "1";
-         description
-          "The IPv4 protocol as defined in RFC 791.";
-       }
-       enum ipv6 {
-         value "2";
-         description
-          "The IPv6 protocol as defined in RFC 2460.";
-       }
-     }
-     description
-      "This value represents the version of the IP protocol.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetVersion textual convention of the SMIv2.";
-     reference
-      "RFC  791: Internet Protocol
-       RFC 2460: Internet Protocol, Version 6 (IPv6) Specification
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   typedef dscp {
-     type uint8 {
-       range "0..63";
-     }
-     description
-      "The dscp type represents a Differentiated Services Code-Point
-       that may be used for marking packets in a traffic stream.
-
-       In the value set and its semantics, this type is equivalent
-       to the Dscp textual convention of the SMIv2.";
-     reference
-      "RFC 3289: Management Information Base for the Differentiated
-                 Services Architecture
-       RFC 2474: Definition of the Differentiated Services Field
-                 (DS Field) in the IPv4 and IPv6 Headers
-       RFC 2780: IANA Allocation Guidelines For Values In
-                 the Internet Protocol and Related Headers";
-   }
-
-   typedef ipv6-flow-label {
-     type uint32 {
-       range "0..1048575";
-     }
-     description
-      "The flow-label type represents flow identifier or Flow Label
-       in an IPv6 packet header that may be used to discriminate
-       traffic flows.
-
-       In the value set and its semantics, this type is equivalent
-       to the IPv6FlowLabel textual convention of the SMIv2.";
-     reference
-      "RFC 3595: Textual Conventions for IPv6 Flow Label
-       RFC 2460: Internet Protocol, Version 6 (IPv6) Specification";
-   }
-
-   typedef port-number {
-     type uint16 {
-       range "0..65535";
-     }
-     description
-      "The port-number type represents a 16-bit port number of an
-       Internet transport layer protocol such as UDP, TCP, DCCP, or
-       SCTP.  Port numbers are assigned by IANA.  A current list of
-       all assignments is available from <http://www.iana.org/>.
-
-       Note that the port number value zero is reserved by IANA.  In
-       situations where the value zero does not make sense, it can
-       be excluded by subtyping the port-number type.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetPortNumber textual convention of the SMIv2.";
-     reference
-      "RFC  768: User Datagram Protocol
-       RFC  793: Transmission Control Protocol
-       RFC 4960: Stream Control Transmission Protocol
-       RFC 4340: Datagram Congestion Control Protocol (DCCP)
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   /*** collection of autonomous system related types ***/
-
-   typedef as-number {
-     type uint32;
-     description
-      "The as-number type represents autonomous system numbers
-       which identify an Autonomous System (AS).  An AS is a set
-       of routers under a single technical administration, using
-       an interior gateway protocol and common metrics to route
-       packets within the AS, and using an exterior gateway
-       protocol to route packets to other ASs'.  IANA maintains
-       the AS number space and has delegated large parts to the
-       regional registries.
-
-       Autonomous system numbers were originally limited to 16
-       bits.  BGP extensions have enlarged the autonomous system
-       number space to 32 bits.  This type therefore uses an uint32
-       base type without a range restriction in order to support
-       a larger autonomous system number space.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetAutonomousSystemNumber textual convention of
-       the SMIv2.";
-     reference
-      "RFC 1930: Guidelines for creation, selection, and registration
-                 of an Autonomous System (AS)
-       RFC 4271: A Border Gateway Protocol 4 (BGP-4)
-       RFC 4893: BGP Support for Four-octet AS Number Space
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   /*** collection of IP address and hostname related types ***/
-
-   typedef ip-address {
-     type union {
-       type inet:ipv4-address;
-       type inet:ipv6-address;
-     }
-     description
-      "The ip-address type represents an IP address and is IP
-       version neutral.  The format of the textual representations
-       implies the IP version.";
-   }
-
-   typedef ipv4-address {
-     type string {
-       pattern
-         '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
-       +  '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
-       + '(%[\p{N}\p{L}]+)?';
-     }
-     description
-       "The ipv4-address type represents an IPv4 address in
-        dotted-quad notation.  The IPv4 address may include a zone
-        index, separated by a % sign.
-
-        The zone index is used to disambiguate identical address
-        values.  For link-local addresses, the zone index will
-        typically be the interface index number or the name of an
-        interface.  If the zone index is not present, the default
-        zone of the device will be used.
-
-        The canonical format for the zone index is the numerical
-        format";
-   }
-
-   typedef ipv6-address {
-     type string {
-       pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
-             + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
-             + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
-             + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
-             + '(%[\p{N}\p{L}]+)?';
-       pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
-             + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
-             + '(%.+)?';
-     }
-     description
-      "The ipv6-address type represents an IPv6 address in full,
-       mixed, shortened, and shortened-mixed notation.  The IPv6
-       address may include a zone index, separated by a % sign.
-
-       The zone index is used to disambiguate identical address
-       values.  For link-local addresses, the zone index will
-       typically be the interface index number or the name of an
-       interface.  If the zone index is not present, the default
-       zone of the device will be used.
-
-       The canonical format of IPv6 addresses uses the compressed
-       format described in RFC 4291, Section 2.2, item 2 with the
-       following additional rules: the :: substitution must be
-       applied to the longest sequence of all-zero 16-bit chunks
-       in an IPv6 address.  If there is a tie, the first sequence
-       of all-zero 16-bit chunks is replaced by ::.  Single
-       all-zero 16-bit chunks are not compressed.  The canonical
-       format uses lowercase characters and leading zeros are
-       not allowed.  The canonical format for the zone index is
-       the numerical format as described in RFC 4007, Section
-       11.2.";
-     reference
-      "RFC 4291: IP Version 6 Addressing Architecture
-       RFC 4007: IPv6 Scoped Address Architecture
-       RFC 5952: A Recommendation for IPv6 Address Text Representation";
-   }
-
-   typedef ip-prefix {
-     type union {
-       type inet:ipv4-prefix;
-       type inet:ipv6-prefix;
-     }
-     description
-      "The ip-prefix type represents an IP prefix and is IP
-       version neutral.  The format of the textual representations
-       implies the IP version.";
-   }
-
-   typedef ipv4-prefix {
-     type string {
-       pattern
-          '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
-        +  '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
-        + '/(([0-9])|([1-2][0-9])|(3[0-2]))';
-     }
-     description
-      "The ipv4-prefix type represents an IPv4 address prefix.
-       The prefix length is given by the number following the
-       slash character and must be less than or equal to 32.
-
-       A prefix length value of n corresponds to an IP address
-       mask that has n contiguous 1-bits from the most
-       significant bit (MSB) and all other bits set to 0.
-
-       The canonical format of an IPv4 prefix has all bits of
-       the IPv4 address set to zero that are not part of the
-       IPv4 prefix.";
-   }
-
-   typedef ipv6-prefix {
-     type string {
-       pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
-             + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
-             + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
-             + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
-             + '(/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))';
-       pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
-             + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
-             + '(/.+)';
-     }
-     description
-      "The ipv6-prefix type represents an IPv6 address prefix.
-       The prefix length is given by the number following the
-       slash character and must be less than or equal 128.
-
-       A prefix length value of n corresponds to an IP address
-       mask that has n contiguous 1-bits from the most
-       significant bit (MSB) and all other bits set to 0.
-
-       The IPv6 address should have all bits that do not belong
-       to the prefix set to zero.
-
-       The canonical format of an IPv6 prefix has all bits of
-       the IPv6 address set to zero that are not part of the
-       IPv6 prefix.  Furthermore, IPv6 address is represented
-       in the compressed format described in RFC 4291, Section
-       2.2, item 2 with the following additional rules: the ::
-       substitution must be applied to the longest sequence of
-       all-zero 16-bit chunks in an IPv6 address.  If there is
-       a tie, the first sequence of all-zero 16-bit chunks is
-       replaced by ::.  Single all-zero 16-bit chunks are not
-       compressed.  The canonical format uses lowercase
-       characters and leading zeros are not allowed.";
-     reference
-      "RFC 4291: IP Version 6 Addressing Architecture";
-   }
-
-   /*** collection of domain name and URI types ***/
-
-   typedef domain-name {
-     type string {
-       pattern '((([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.)*'
-            +  '([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.?)'
-            +  '|\.';
-       length "1..253";
-     }
-     description
-      "The domain-name type represents a DNS domain name.  The
-       name SHOULD be fully qualified whenever possible.
-
-       Internet domain names are only loosely specified.  Section
-       3.5 of RFC 1034 recommends a syntax (modified in Section
-       2.1 of RFC 1123).  The pattern above is intended to allow
-       for current practice in domain name use, and some possible
-       future expansion.  It is designed to hold various types of
-       domain names, including names used for A or AAAA records
-       (host names) and other records, such as SRV records.  Note
-       that Internet host names have a stricter syntax (described
-       in RFC 952) than the DNS recommendations in RFCs 1034 and
-       1123, and that systems that want to store host names in
-       schema nodes using the domain-name type are recommended to
-       adhere to this stricter standard to ensure interoperability.
-
-       The encoding of DNS names in the DNS protocol is limited
-       to 255 characters.  Since the encoding consists of labels
-       prefixed by a length bytes and there is a trailing NULL
-       byte, only 253 characters can appear in the textual dotted
-       notation.
-
-       The description clause of schema nodes using the domain-name
-       type MUST describe when and how these names are resolved to
-       IP addresses.  Note that the resolution of a domain-name value
-       may require to query multiple DNS records (e.g., A for IPv4
-       and AAAA for IPv6).  The order of the resolution process and
-       which DNS record takes precedence can either be defined
-       explicitely or it may depend on the configuration of the
-       resolver.
-
-       Domain-name values use the US-ASCII encoding.  Their canonical
-       format uses lowercase US-ASCII characters.  Internationalized
-       domain names MUST be encoded in punycode as described in RFC
-       3492";
-     reference
-      "RFC  952: DoD Internet Host Table Specification
-       RFC 1034: Domain Names - Concepts and Facilities
-       RFC 1123: Requirements for Internet Hosts -- Application
-                 and Support
-       RFC 2782: A DNS RR for specifying the location of services
-                 (DNS SRV)
-       RFC 3492: Punycode: A Bootstring encoding of Unicode for
-                 Internationalized Domain Names in Applications
-                 (IDNA)
-       RFC 5891: Internationalizing Domain Names in Applications
-                 (IDNA): Protocol";
-   }
-
-   typedef host {
-     type union {
-       type inet:ip-address;
-       type inet:domain-name;
-     }
-     description
-      "The host type represents either an IP address or a DNS
-       domain name.";
-   }
-
-   typedef uri {
-     type string;
-     description
-      "The uri type represents a Uniform Resource Identifier
-       (URI) as defined by STD 66.
-
-       Objects using the uri type MUST be in US-ASCII encoding,
-       and MUST be normalized as described by RFC 3986 Sections
-       6.2.1, 6.2.2.1, and 6.2.2.2.  All unnecessary
-       percent-encoding is removed, and all case-insensitive
-       characters are set to lowercase except for hexadecimal
-       digits, which are normalized to uppercase as described in
-       Section 6.2.2.1.
-
-       The purpose of this normalization is to help provide
-       unique URIs.  Note that this normalization is not
-       sufficient to provide uniqueness.  Two URIs that are
-       textually distinct after this normalization may still be
-       equivalent.
-
-       Objects using the uri type may restrict the schemes that
-       they permit.  For example, 'data:' and 'urn:' schemes
-       might not be appropriate.
-
-       A zero-length URI is not a valid URI.  This can be used to
-       express 'URI absent' where required.
-
-       In the value set and its semantics, this type is equivalent
-       to the Uri SMIv2 textual convention defined in RFC 5017.";
-     reference
-      "RFC 3986: Uniform Resource Identifier (URI): Generic Syntax
-       RFC 3305: Report from the Joint W3C/IETF URI Planning Interest
-                 Group: Uniform Resource Identifiers (URIs), URLs,
-                 and Uniform Resource Names (URNs): Clarifications
-                 and Recommendations
-       RFC 5017: MIB Textual Conventions for Uniform Resource
-                 Identifiers (URIs)";
-   }
-
- }
diff --git a/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/ietf-yang-types@2010-09-24.yang b/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/ietf-yang-types@2010-09-24.yang
deleted file mode 100644 (file)
index 51d9f8b..0000000
+++ /dev/null
@@ -1,396 +0,0 @@
- module ietf-yang-types {
-
-   namespace "urn:ietf:params:xml:ns:yang:ietf-yang-types";
-   prefix "yang";
-
-   organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-   contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Partain
-               <mailto:david.partain@ericsson.com>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     Editor:   Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>";
-
-   description
-    "This module contains a collection of generally useful derived
-     YANG data types.
-
-     Copyright (c) 2010 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or without
-     modification, is permitted pursuant to, and subject to the license
-     terms contained in, the Simplified BSD License set forth in Section
-     4.c of the IETF Trust's Legal Provisions Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC 6021; see
-     the RFC itself for full legal notices.";
-
-   revision 2010-09-24 {
-     description
-      "Initial revision.";
-     reference
-      "RFC 6021: Common YANG Data Types";
-   }
-
-   /*** collection of counter and gauge types ***/
-
-   typedef counter32 {
-     type uint32;
-     description
-      "The counter32 type represents a non-negative integer
-       that monotonically increases until it reaches a
-       maximum value of 2^32-1 (4294967295 decimal), when it
-       wraps around and starts increasing again from zero.
-
-       Counters have no defined 'initial' value, and thus, a
-       single value of a counter has (in general) no information
-       content.  Discontinuities in the monotonically increasing
-       value normally occur at re-initialization of the
-       management system, and at other times as specified in the
-       description of a schema node using this type.  If such
-       other times can occur, for example, the creation of
-       a schema node of type counter32 at times other than
-       re-initialization, then a corresponding schema node
-       should be defined, with an appropriate type, to indicate
-       the last discontinuity.
-
-       The counter32 type should not be used for configuration
-       schema nodes.  A default statement SHOULD NOT be used in
-       combination with the type counter32.
-
-       In the value set and its semantics, this type is equivalent
-       to the Counter32 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef zero-based-counter32 {
-     type yang:counter32;
-     default "0";
-     description
-      "The zero-based-counter32 type represents a counter32
-       that has the defined 'initial' value zero.
-
-       A schema node of this type will be set to zero (0) on creation
-       and will thereafter increase monotonically until it reaches
-       a maximum value of 2^32-1 (4294967295 decimal), when it
-       wraps around and starts increasing again from zero.
-
-       Provided that an application discovers a new schema node
-       of this type within the minimum time to wrap, it can use the
-       'initial' value as a delta.  It is important for a management
-       station to be aware of this minimum time and the actual time
-       between polls, and to discard data if the actual time is too
-       long or there is no defined minimum time.
-
-       In the value set and its semantics, this type is equivalent
-       to the ZeroBasedCounter32 textual convention of the SMIv2.";
-     reference
-       "RFC 4502: Remote Network Monitoring Management Information
-                  Base Version 2";
-   }
-
-   typedef counter64 {
-     type uint64;
-     description
-      "The counter64 type represents a non-negative integer
-       that monotonically increases until it reaches a
-       maximum value of 2^64-1 (18446744073709551615 decimal),
-       when it wraps around and starts increasing again from zero.
-
-       Counters have no defined 'initial' value, and thus, a
-       single value of a counter has (in general) no information
-       content.  Discontinuities in the monotonically increasing
-       value normally occur at re-initialization of the
-       management system, and at other times as specified in the
-       description of a schema node using this type.  If such
-       other times can occur, for example, the creation of
-       a schema node of type counter64 at times other than
-       re-initialization, then a corresponding schema node
-       should be defined, with an appropriate type, to indicate
-       the last discontinuity.
-
-       The counter64 type should not be used for configuration
-       schema nodes.  A default statement SHOULD NOT be used in
-       combination with the type counter64.
-
-       In the value set and its semantics, this type is equivalent
-       to the Counter64 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef zero-based-counter64 {
-     type yang:counter64;
-     default "0";
-     description
-      "The zero-based-counter64 type represents a counter64 that
-       has the defined 'initial' value zero.
-
-       A schema node of this type will be set to zero (0) on creation
-       and will thereafter increase monotonically until it reaches
-       a maximum value of 2^64-1 (18446744073709551615 decimal),
-       when it wraps around and starts increasing again from zero.
-
-       Provided that an application discovers a new schema node
-       of this type within the minimum time to wrap, it can use the
-       'initial' value as a delta.  It is important for a management
-       station to be aware of this minimum time and the actual time
-       between polls, and to discard data if the actual time is too
-       long or there is no defined minimum time.
-
-       In the value set and its semantics, this type is equivalent
-       to the ZeroBasedCounter64 textual convention of the SMIv2.";
-     reference
-      "RFC 2856: Textual Conventions for Additional High Capacity
-                 Data Types";
-   }
-
-   typedef gauge32 {
-     type uint32;
-     description
-      "The gauge32 type represents a non-negative integer, which
-       may increase or decrease, but shall never exceed a maximum
-       value, nor fall below a minimum value.  The maximum value
-       cannot be greater than 2^32-1 (4294967295 decimal), and
-       the minimum value cannot be smaller than 0.  The value of
-       a gauge32 has its maximum value whenever the information
-       being modeled is greater than or equal to its maximum
-       value, and has its minimum value whenever the information
-       being modeled is smaller than or equal to its minimum value.
-       If the information being modeled subsequently decreases
-       below (increases above) the maximum (minimum) value, the
-       gauge32 also decreases (increases).
-
-       In the value set and its semantics, this type is equivalent
-       to the Gauge32 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef gauge64 {
-     type uint64;
-     description
-      "The gauge64 type represents a non-negative integer, which
-       may increase or decrease, but shall never exceed a maximum
-       value, nor fall below a minimum value.  The maximum value
-       cannot be greater than 2^64-1 (18446744073709551615), and
-       the minimum value cannot be smaller than 0.  The value of
-       a gauge64 has its maximum value whenever the information
-       being modeled is greater than or equal to its maximum
-       value, and has its minimum value whenever the information
-       being modeled is smaller than or equal to its minimum value.
-       If the information being modeled subsequently decreases
-       below (increases above) the maximum (minimum) value, the
-       gauge64 also decreases (increases).
-
-       In the value set and its semantics, this type is equivalent
-       to the CounterBasedGauge64 SMIv2 textual convention defined
-       in RFC 2856";
-     reference
-      "RFC 2856: Textual Conventions for Additional High Capacity
-                 Data Types";
-   }
-
-   /*** collection of identifier related types ***/
-
-   typedef object-identifier {
-     type string {
-       pattern '(([0-1](\.[1-3]?[0-9]))|(2\.(0|([1-9]\d*))))'
-             + '(\.(0|([1-9]\d*)))*';
-     }
-     description
-      "The object-identifier type represents administratively
-       assigned names in a registration-hierarchical-name tree.
-
-       Values of this type are denoted as a sequence of numerical
-       non-negative sub-identifier values.  Each sub-identifier
-       value MUST NOT exceed 2^32-1 (4294967295).  Sub-identifiers
-       are separated by single dots and without any intermediate
-       whitespace.
-
-       The ASN.1 standard restricts the value space of the first
-       sub-identifier to 0, 1, or 2.  Furthermore, the value space
-       of the second sub-identifier is restricted to the range
-       0 to 39 if the first sub-identifier is 0 or 1.  Finally,
-       the ASN.1 standard requires that an object identifier
-       has always at least two sub-identifier.  The pattern
-       captures these restrictions.
-
-       Although the number of sub-identifiers is not limited,
-       module designers should realize that there may be
-       implementations that stick with the SMIv2 limit of 128
-       sub-identifiers.
-
-       This type is a superset of the SMIv2 OBJECT IDENTIFIER type
-       since it is not restricted to 128 sub-identifiers.  Hence,
-       this type SHOULD NOT be used to represent the SMIv2 OBJECT
-       IDENTIFIER type, the object-identifier-128 type SHOULD be
-       used instead.";
-     reference
-      "ISO9834-1: Information technology -- Open Systems
-       Interconnection -- Procedures for the operation of OSI
-       Registration Authorities: General procedures and top
-       arcs of the ASN.1 Object Identifier tree";
-   }
-
-
-
-
-   typedef object-identifier-128 {
-     type object-identifier {
-       pattern '\d*(\.\d*){1,127}';
-     }
-     description
-      "This type represents object-identifiers restricted to 128
-       sub-identifiers.
-
-       In the value set and its semantics, this type is equivalent
-       to the OBJECT IDENTIFIER type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   /*** collection of date and time related types ***/
-
-   typedef date-and-time {
-     type string {
-       pattern '\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?'
-             + '(Z|[\+\-]\d{2}:\d{2})';
-     }
-     description
-      "The date-and-time type is a profile of the ISO 8601
-       standard for representation of dates and times using the
-       Gregorian calendar.  The profile is defined by the
-       date-time production in Section 5.6 of RFC 3339.
-
-       The date-and-time type is compatible with the dateTime XML
-       schema type with the following notable exceptions:
-
-       (a) The date-and-time type does not allow negative years.
-
-       (b) The date-and-time time-offset -00:00 indicates an unknown
-           time zone (see RFC 3339) while -00:00 and +00:00 and Z all
-           represent the same time zone in dateTime.
-
-       (c) The canonical format (see below) of data-and-time values
-           differs from the canonical format used by the dateTime XML
-           schema type, which requires all times to be in UTC using the
-           time-offset 'Z'.
-
-       This type is not equivalent to the DateAndTime textual
-       convention of the SMIv2 since RFC 3339 uses a different
-       separator between full-date and full-time and provides
-       higher resolution of time-secfrac.
-
-       The canonical format for date-and-time values with a known time
-       zone uses a numeric time zone offset that is calculated using
-       the device's configured known offset to UTC time.  A change of
-       the device's offset to UTC time will cause date-and-time values
-       to change accordingly.  Such changes might happen periodically
-       in case a server follows automatically daylight saving time
-       (DST) time zone offset changes.  The canonical format for
-       date-and-time values with an unknown time zone (usually referring
-       to the notion of local time) uses the time-offset -00:00.";
-     reference
-      "RFC 3339: Date and Time on the Internet: Timestamps
-       RFC 2579: Textual Conventions for SMIv2
-       XSD-TYPES: XML Schema Part 2: Datatypes Second Edition";
-   }
-
-   typedef timeticks {
-     type uint32;
-     description
-      "The timeticks type represents a non-negative integer that
-       represents the time, modulo 2^32 (4294967296 decimal), in
-       hundredths of a second between two epochs.  When a schema
-       node is defined that uses this type, the description of
-       the schema node identifies both of the reference epochs.
-
-       In the value set and its semantics, this type is equivalent
-       to the TimeTicks type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef timestamp {
-     type yang:timeticks;
-     description
-      "The timestamp type represents the value of an associated
-       timeticks schema node at which a specific occurrence happened.
-       The specific occurrence must be defined in the description
-       of any schema node defined using this type.  When the specific
-       occurrence occurred prior to the last time the associated
-       timeticks attribute was zero, then the timestamp value is
-       zero.  Note that this requires all timestamp values to be
-       reset to zero when the value of the associated timeticks
-       attribute reaches 497+ days and wraps around to zero.
-
-       The associated timeticks schema node must be specified
-       in the description of any schema node using this type.
-
-       In the value set and its semantics, this type is equivalent
-       to the TimeStamp textual convention of the SMIv2.";
-     reference
-      "RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   /*** collection of generic address types ***/
-
-   typedef phys-address {
-     type string {
-       pattern '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?';
-     }
-     description
-      "Represents media- or physical-level addresses represented
-       as a sequence octets, each octet represented by two hexadecimal
-       numbers.  Octets are separated by colons.  The canonical
-       representation uses lowercase characters.
-
-       In the value set and its semantics, this type is equivalent
-       to the PhysAddress textual convention of the SMIv2.";
-     reference
-      "RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   typedef mac-address {
-     type string {
-       pattern '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}';
-     }
-     description
-      "The mac-address type represents an IEEE 802 MAC address.
-       The canonical representation uses lowercase characters.
-
-       In the value set and its semantics, this type is equivalent
-       to the MacAddress textual convention of the SMIv2.";
-     reference
-      "IEEE 802: IEEE Standard for Local and Metropolitan Area
-                 Networks: Overview and Architecture
-       RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   /*** collection of XML specific types ***/
-
-   typedef xpath1.0 {
-     type string;
-     description
-      "This type represents an XPATH 1.0 expression.
-
-       When a schema node is defined that uses this type, the
-       description of the schema node MUST specify the XPath
-       context in which the XPath expression is evaluated.";
-     reference
-      "XPATH: XML Path Language (XPath) Version 1.0";
-   }
-
- }
diff --git a/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/simple-string-demo.yang b/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/simple-string-demo.yang
deleted file mode 100644 (file)
index c0f87dd..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-module simple-string-demo {
-
-    namespace "urn:simple:string:demo";
-    prefix "sbd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision 2013-06-18 {
-        
-    }
-
-    typedef typedef-string {
-        type string {
-            length "40";
-            pattern "[0-9A-F]\.*";
-            pattern "[B-D]*";
-            pattern "[4-7]*";
-        }
-    }
-
-}
diff --git a/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/typedef_of_typedef.yang b/opendaylight/sal/yang-prototype/code-generator/samples/maven-code-gen-sample/src/main/yang/typedef_of_typedef.yang
deleted file mode 100644 (file)
index 3aa6770..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-module typedef_typedef {
-    
-    namespace "urn:typedef:typedef";
-    prefix "sbd";
-
-    organization "OPEN DAYLIGHT";
-    contact "http://www.opendaylight.org/";
-
-    revision 2013-07-09 {
-        
-    }
-
-   typedef byte-type {
-        type bits {
-            bit first-bit {
-                position 10;
-            }
-            bit second-bit {
-                position 20;
-            }
-         }
-    }    
-    
-    
-  typedef typedef-enum-fruit {
-    type enumeration {
-      enum "apple" {
-        value 1;
-        description "gold";
-      }
-      enum "pear" {
-        value 2;
-      }
-    }
-  }    
-    
-    typedef simple-typedef1 {
-       type uint8;
-    }
-    
-    typedef simple-typedef2 {
-        type simple-typedef1;
-    }
-    
-    typedef simple-typedef3 {
-        type simple-typedef2;
-    }
-    
-    typedef simple-typedef4 {
-        type simple-typedef3;
-    }
-    
-    typedef simple-typedef1-1 {
-        type uint16;
-    }    
-
-    
-    typedef union-typedef {
-        type union {
-            type simple-typedef1;
-            type simple-typedef4;
-            type byte-type;
-            type typedef-enum-fruit;
-        }
-    }    
-    
-    typedef extended-typedef-union {
-        type union-typedef;
-    }
-    
-    
-    typedef extended-typedef-simple {
-        type simple-typedef1;
-    }
-    
-    typedef extended-typedef-enum {
-        type typedef-enum-fruit;
-    }
-}
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/code-generator/samples/modeling-sample/pom.xml b/opendaylight/sal/yang-prototype/code-generator/samples/modeling-sample/pom.xml
deleted file mode 100644 (file)
index 6d89539..0000000
+++ /dev/null
@@ -1,116 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <artifactId>binding-generator</artifactId>
-        <groupId>org.opendaylight.controller</groupId>
-        <version>0.5.5-SNAPSHOT</version>
-    </parent>
-    <artifactId>modeling-sample</artifactId>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.opendaylight.yangtools</groupId>
-                <artifactId>yang-maven-plugin</artifactId>
-                <version>${yangtools.version}</version>
-                <executions>
-                    <execution>
-                        <goals>
-                            <goal>generate-sources</goal>
-                        </goals>
-                        <configuration>
-                            <yangFilesRootDir>src/main/yang</yangFilesRootDir>
-                            <codeGenerators>
-                                <generator>
-                                    <codeGeneratorClass>
-                                        org.opendaylight.controller.maven.sal.api.gen.plugin.CodeGeneratorImpl
-                                    </codeGeneratorClass>
-                                    <outputBaseDir>
-                                        target/generated-sources/sal
-                                    </outputBaseDir>
-                                </generator>
-                            </codeGenerators>
-                            <inspectDependencies>false</inspectDependencies>
-                        </configuration>
-                    </execution>
-                </executions>
-
-                <dependencies>
-                    <dependency>
-                        <groupId>org.opendaylight.controller</groupId>
-                        <artifactId>maven-sal-api-gen-plugin</artifactId>
-                        <version>0.5.5-SNAPSHOT</version>
-                        <type>jar</type>
-                    </dependency>
-                </dependencies>
-            </plugin>
-            <plugin>
-                <groupId>org.codehaus.mojo</groupId>
-                <artifactId>build-helper-maven-plugin</artifactId>
-                <version>1.7</version>
-                <executions>
-                    <execution>
-                        <phase>generate-sources</phase>
-                        <goals>
-                            <goal>add-source</goal>
-                        </goals>
-                        <configuration>
-                            <sources>
-                                <source>target/generated-sources/sal</source>
-                            </sources>
-                        </configuration>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-        <pluginManagement>
-            <plugins>
-                <!--This plugin's configuration is used to store Eclipse 
-                    m2e settings only. It has no influence on the Maven build itself. -->
-                <plugin>
-                    <groupId>org.eclipse.m2e</groupId>
-                    <artifactId>lifecycle-mapping</artifactId>
-                    <version>1.0.0</version>
-                    <configuration>
-                        <lifecycleMappingMetadata>
-                            <pluginExecutions>
-                                <pluginExecution>
-                                    <pluginExecutionFilter>
-                                        <groupId>
-                                            org.opendaylight.yangtools
-                                        </groupId>
-                                        <artifactId>
-                                            yang-maven-plugin
-                                        </artifactId>
-                                        <versionRange>
-                                            [0.5,)
-                                        </versionRange>
-                                        <goals>
-                                            <goal>
-                                                generate-sources
-                                            </goal>
-                                        </goals>
-                                    </pluginExecutionFilter>
-                                    <action>
-                                        <ignore></ignore>
-                                    </action>
-                                </pluginExecution>
-                            </pluginExecutions>
-                        </lifecycleMappingMetadata>
-                    </configuration>
-                </plugin>
-            </plugins>
-        </pluginManagement>
-    </build>
-    <dependencies>
-        <dependency>
-            <groupId>org.opendaylight.yangtools</groupId>
-            <artifactId>yang-binding</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.opendaylight.yangtools</groupId>
-            <artifactId>yang-common</artifactId>
-        </dependency>
-    </dependencies>
-</project>
diff --git a/opendaylight/sal/yang-prototype/code-generator/samples/modeling-sample/src/main/yang/toaster.yang b/opendaylight/sal/yang-prototype/code-generator/samples/modeling-sample/src/main/yang/toaster.yang
deleted file mode 100644 (file)
index fc9b665..0000000
+++ /dev/null
@@ -1,187 +0,0 @@
-module toaster {
-
-    yang-version 1;
-
-    namespace
-      "http://netconfcentral.org/ns/toaster";
-
-    prefix toast;
-
-    organization "Netconf Central";
-
-    contact
-      "Andy Bierman <andy@netconfcentral.org>";
-
-    description
-      "YANG version of the TOASTER-MIB.";
-
-    revision "2009-11-20" {
-      description
-        "Toaster module in progress.";
-    }
-
-
-    identity toast-type {
-      description
-          "Base for all bread types supported by the toaster.
-           New bread types not listed here nay be added in the 
-           future.";
-    }
-
-    identity white-bread {
-      base toast:toast-type;
-      description "White bread.";
-    }
-
-    identity wheat-bread {
-      base toast-type;
-      description "Wheat bread.";
-    }
-
-    identity wonder-bread {
-      base toast-type;
-      description "Wonder bread.";
-    }
-
-    identity frozen-waffle {
-      base toast-type;
-      description "Frozen waffle.";
-    }
-
-    identity frozen-bagel {
-      base toast-type;
-      description "Frozen bagel.";
-    }
-
-    identity hash-brown {
-      base toast-type;
-      description "Hash browned potatos.";
-    }
-
-    typedef DisplayString {
-      type string;
-      description
-        "YANG version of the SMIv2 DisplayString TEXTUAL-CONVENTION.";
-      reference
-        "RFC 2579, section 2.";
-
-    }
-
-    container toaster {
-      presence
-        "Indicates the toaster service is available";
-      description
-        "Top-level container for all toaster database objects.";
-      leaf toasterManufacturer {
-        type DisplayString;
-        config false;
-        mandatory true;
-        description
-          "The name of the toaster's manufacturer. For instance, 
-                Microsoft Toaster.";
-      }
-
-      leaf toasterModelNumber {
-        type DisplayString;
-        config false;
-        mandatory true;
-        description
-          "The name of the toaster's model. For instance,
-               Radiant Automatic.";
-      }
-
-      leaf toasterStatus {
-        type enumeration {
-          enum "up" {
-            value 1;
-            description
-              "The toaster knob position is up.
-                      No toast is being made now.";
-          }
-          enum "down" {
-            value 2;
-            description
-              "The toaster knob position is down.
-                      Toast is being made now.";
-          }
-        }
-        config false;
-        mandatory true;
-        description
-          "This variable indicates the current state of 
-               the toaster.";
-      }
-    }  // container toaster
-
-    rpc make-toast {
-      description
-        "Make some toast.
-           The toastDone notification will be sent when 
-           the toast is finished.
-           An 'in-use' error will be returned if toast
-           is already being made.
-           A 'resource-denied' error will be returned 
-           if the toaster service is disabled.";
-      input {
-        leaf toasterDoneness {
-          type uint32 {
-            range "1 .. 10";
-          }
-          default '5';
-          description
-            "This variable controls how well-done is the 
-                   ensuing toast. It should be on a scale of 1 to 10.
-                   Toast made at 10 generally is considered unfit 
-                   for human consumption; toast made at 1 is warmed 
-                   lightly.";
-        }
-
-        leaf toasterToastType {
-          type identityref {
-            base toast:toast-type;
-          }
-          default 'wheat-bread';
-          description
-            "This variable informs the toaster of the type of 
-                   material that is being toasted. The toaster 
-                   uses this information, combined with 
-                   toasterDoneness, to compute for how 
-                   long the material must be toasted to achieve 
-                   the required doneness.";
-        }
-      }
-    }  // rpc make-toast
-
-    rpc cancel-toast {
-      description
-        "Stop making toast, if any is being made.
-           A 'resource-denied' error will be returned 
-           if the toaster service is disabled.";
-    }  // rpc cancel-toast
-
-    notification toastDone {
-      description
-        "Indicates that the toast in progress has completed.";
-      leaf toastStatus {
-        type enumeration {
-          enum "done" {
-            value 0;
-            description "The toast is done.";
-          }
-          enum "cancelled" {
-            value 1;
-            description
-              "The toast was cancelled.";
-          }
-          enum "error" {
-            value 2;
-            description
-              "The toaster service was disabled or
-                     the toaster is broken.";
-          }
-        }
-        description
-          "Indicates the final toast status";
-      }
-    }  // notification toastDone
-  }  // module toaster
diff --git a/opendaylight/sal/yang-prototype/code-generator/src/site/site.xml b/opendaylight/sal/yang-prototype/code-generator/src/site/site.xml
deleted file mode 100644 (file)
index 80ff3a4..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<project name="${project.name}">
-
-    <skin>
-        <groupId>org.apache.maven.skins</groupId>
-        <artifactId>maven-fluido-skin</artifactId>
-        <version>1.3.0</version>
-    </skin>
-
-    <body>
-        <menu ref="parent"/>
-        <menu ref="modules"/>
-        <menu ref="reports"/>
-    </body>
-
-</project>
-
diff --git a/opendaylight/sal/yang-prototype/model/ietf/ietf-inet-types/pom.xml b/opendaylight/sal/yang-prototype/model/ietf/ietf-inet-types/pom.xml
deleted file mode 100644 (file)
index 06d1189..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-    <parent>
-        <artifactId>model-ietf</artifactId>
-        <groupId>org.opendaylight.controller</groupId>
-        <version>0.5-SNAPSHOT</version>
-    </parent>
-
-    <modelVersion>4.0.0</modelVersion>
-    <artifactId>ietf-inet-types</artifactId>
-    <version>2010.09.24-SNAPSHOT</version>
-    <name>${project.artifactId}</name>
-    <description>${project.artifactId}</description>
-
-</project>
diff --git a/opendaylight/sal/yang-prototype/model/ietf/ietf-inet-types/src/main/yang/ietf-inet-types.yang b/opendaylight/sal/yang-prototype/model/ietf/ietf-inet-types/src/main/yang/ietf-inet-types.yang
deleted file mode 100644 (file)
index de20feb..0000000
+++ /dev/null
@@ -1,418 +0,0 @@
- module ietf-inet-types {
-
-   namespace "urn:ietf:params:xml:ns:yang:ietf-inet-types";
-   prefix "inet";
-
-   organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-   contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Partain
-               <mailto:david.partain@ericsson.com>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     Editor:   Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>";
-
-   description
-    "This module contains a collection of generally useful derived
-     YANG data types for Internet addresses and related things.
-
-     Copyright (c) 2010 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or without
-     modification, is permitted pursuant to, and subject to the license
-     terms contained in, the Simplified BSD License set forth in Section
-     4.c of the IETF Trust's Legal Provisions Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC 6021; see
-     the RFC itself for full legal notices.";
-
-   revision 2010-09-24 {
-     description
-      "Initial revision.";
-     reference
-      "RFC 6021: Common YANG Data Types";
-   }
-
-   /*** collection of protocol field related types ***/
-
-   typedef ip-version {
-     type enumeration {
-       enum unknown {
-         value "0";
-         description
-          "An unknown or unspecified version of the Internet protocol.";
-       }
-       enum ipv4 {
-         value "1";
-         description
-          "The IPv4 protocol as defined in RFC 791.";
-       }
-       enum ipv6 {
-         value "2";
-         description
-          "The IPv6 protocol as defined in RFC 2460.";
-       }
-     }
-     description
-      "This value represents the version of the IP protocol.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetVersion textual convention of the SMIv2.";
-     reference
-      "RFC  791: Internet Protocol
-       RFC 2460: Internet Protocol, Version 6 (IPv6) Specification
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   typedef dscp {
-     type uint8 {
-       range "0..63";
-     }
-     description
-      "The dscp type represents a Differentiated Services Code-Point
-       that may be used for marking packets in a traffic stream.
-
-       In the value set and its semantics, this type is equivalent
-       to the Dscp textual convention of the SMIv2.";
-     reference
-      "RFC 3289: Management Information Base for the Differentiated
-                 Services Architecture
-       RFC 2474: Definition of the Differentiated Services Field
-                 (DS Field) in the IPv4 and IPv6 Headers
-       RFC 2780: IANA Allocation Guidelines For Values In
-                 the Internet Protocol and Related Headers";
-   }
-
-   typedef ipv6-flow-label {
-     type uint32 {
-       range "0..1048575";
-     }
-     description
-      "The flow-label type represents flow identifier or Flow Label
-       in an IPv6 packet header that may be used to discriminate
-       traffic flows.
-
-       In the value set and its semantics, this type is equivalent
-       to the IPv6FlowLabel textual convention of the SMIv2.";
-     reference
-      "RFC 3595: Textual Conventions for IPv6 Flow Label
-       RFC 2460: Internet Protocol, Version 6 (IPv6) Specification";
-   }
-
-   typedef port-number {
-     type uint16 {
-       range "0..65535";
-     }
-     description
-      "The port-number type represents a 16-bit port number of an
-       Internet transport layer protocol such as UDP, TCP, DCCP, or
-       SCTP.  Port numbers are assigned by IANA.  A current list of
-       all assignments is available from <http://www.iana.org/>.
-
-       Note that the port number value zero is reserved by IANA.  In
-       situations where the value zero does not make sense, it can
-       be excluded by subtyping the port-number type.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetPortNumber textual convention of the SMIv2.";
-     reference
-      "RFC  768: User Datagram Protocol
-       RFC  793: Transmission Control Protocol
-       RFC 4960: Stream Control Transmission Protocol
-       RFC 4340: Datagram Congestion Control Protocol (DCCP)
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   /*** collection of autonomous system related types ***/
-
-   typedef as-number {
-     type uint32;
-     description
-      "The as-number type represents autonomous system numbers
-       which identify an Autonomous System (AS).  An AS is a set
-       of routers under a single technical administration, using
-       an interior gateway protocol and common metrics to route
-       packets within the AS, and using an exterior gateway
-       protocol to route packets to other ASs'.  IANA maintains
-       the AS number space and has delegated large parts to the
-       regional registries.
-
-       Autonomous system numbers were originally limited to 16
-       bits.  BGP extensions have enlarged the autonomous system
-       number space to 32 bits.  This type therefore uses an uint32
-       base type without a range restriction in order to support
-       a larger autonomous system number space.
-
-       In the value set and its semantics, this type is equivalent
-       to the InetAutonomousSystemNumber textual convention of
-       the SMIv2.";
-     reference
-      "RFC 1930: Guidelines for creation, selection, and registration
-                 of an Autonomous System (AS)
-       RFC 4271: A Border Gateway Protocol 4 (BGP-4)
-       RFC 4893: BGP Support for Four-octet AS Number Space
-       RFC 4001: Textual Conventions for Internet Network Addresses";
-   }
-
-   /*** collection of IP address and hostname related types ***/
-
-   typedef ip-address {
-     type union {
-       type inet:ipv4-address;
-       type inet:ipv6-address;
-     }
-     description
-      "The ip-address type represents an IP address and is IP
-       version neutral.  The format of the textual representations
-       implies the IP version.";
-   }
-
-   typedef ipv4-address {
-     type string {
-       pattern
-         '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
-       +  '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
-       + '(%[\p{N}\p{L}]+)?';
-     }
-     description
-       "The ipv4-address type represents an IPv4 address in
-        dotted-quad notation.  The IPv4 address may include a zone
-        index, separated by a % sign.
-
-        The zone index is used to disambiguate identical address
-        values.  For link-local addresses, the zone index will
-        typically be the interface index number or the name of an
-        interface.  If the zone index is not present, the default
-        zone of the device will be used.
-
-        The canonical format for the zone index is the numerical
-        format";
-   }
-
-   typedef ipv6-address {
-     type string {
-       pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
-             + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
-             + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
-             + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
-             + '(%[\p{N}\p{L}]+)?';
-       pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
-             + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
-             + '(%.+)?';
-     }
-     description
-      "The ipv6-address type represents an IPv6 address in full,
-       mixed, shortened, and shortened-mixed notation.  The IPv6
-       address may include a zone index, separated by a % sign.
-
-       The zone index is used to disambiguate identical address
-       values.  For link-local addresses, the zone index will
-       typically be the interface index number or the name of an
-       interface.  If the zone index is not present, the default
-       zone of the device will be used.
-
-       The canonical format of IPv6 addresses uses the compressed
-       format described in RFC 4291, Section 2.2, item 2 with the
-       following additional rules: the :: substitution must be
-       applied to the longest sequence of all-zero 16-bit chunks
-       in an IPv6 address.  If there is a tie, the first sequence
-       of all-zero 16-bit chunks is replaced by ::.  Single
-       all-zero 16-bit chunks are not compressed.  The canonical
-       format uses lowercase characters and leading zeros are
-       not allowed.  The canonical format for the zone index is
-       the numerical format as described in RFC 4007, Section
-       11.2.";
-     reference
-      "RFC 4291: IP Version 6 Addressing Architecture
-       RFC 4007: IPv6 Scoped Address Architecture
-       RFC 5952: A Recommendation for IPv6 Address Text Representation";
-   }
-
-   typedef ip-prefix {
-     type union {
-       type inet:ipv4-prefix;
-       type inet:ipv6-prefix;
-     }
-     description
-      "The ip-prefix type represents an IP prefix and is IP
-       version neutral.  The format of the textual representations
-       implies the IP version.";
-   }
-
-   typedef ipv4-prefix {
-     type string {
-       pattern
-          '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
-        +  '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
-        + '/(([0-9])|([1-2][0-9])|(3[0-2]))';
-     }
-     description
-      "The ipv4-prefix type represents an IPv4 address prefix.
-       The prefix length is given by the number following the
-       slash character and must be less than or equal to 32.
-
-       A prefix length value of n corresponds to an IP address
-       mask that has n contiguous 1-bits from the most
-       significant bit (MSB) and all other bits set to 0.
-
-       The canonical format of an IPv4 prefix has all bits of
-       the IPv4 address set to zero that are not part of the
-       IPv4 prefix.";
-   }
-
-   typedef ipv6-prefix {
-     type string {
-       pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
-             + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
-             + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
-             + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
-             + '(/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))';
-       pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
-             + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
-             + '(/.+)';
-     }
-     description
-      "The ipv6-prefix type represents an IPv6 address prefix.
-       The prefix length is given by the number following the
-       slash character and must be less than or equal 128.
-
-       A prefix length value of n corresponds to an IP address
-       mask that has n contiguous 1-bits from the most
-       significant bit (MSB) and all other bits set to 0.
-
-       The IPv6 address should have all bits that do not belong
-       to the prefix set to zero.
-
-       The canonical format of an IPv6 prefix has all bits of
-       the IPv6 address set to zero that are not part of the
-       IPv6 prefix.  Furthermore, IPv6 address is represented
-       in the compressed format described in RFC 4291, Section
-       2.2, item 2 with the following additional rules: the ::
-       substitution must be applied to the longest sequence of
-       all-zero 16-bit chunks in an IPv6 address.  If there is
-       a tie, the first sequence of all-zero 16-bit chunks is
-       replaced by ::.  Single all-zero 16-bit chunks are not
-       compressed.  The canonical format uses lowercase
-       characters and leading zeros are not allowed.";
-     reference
-      "RFC 4291: IP Version 6 Addressing Architecture";
-   }
-
-   /*** collection of domain name and URI types ***/
-
-   typedef domain-name {
-     type string {
-       pattern '((([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.)*'
-            +  '([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.?)'
-            +  '|\.';
-       length "1..253";
-     }
-     description
-      "The domain-name type represents a DNS domain name.  The
-       name SHOULD be fully qualified whenever possible.
-
-       Internet domain names are only loosely specified.  Section
-       3.5 of RFC 1034 recommends a syntax (modified in Section
-       2.1 of RFC 1123).  The pattern above is intended to allow
-       for current practice in domain name use, and some possible
-       future expansion.  It is designed to hold various types of
-       domain names, including names used for A or AAAA records
-       (host names) and other records, such as SRV records.  Note
-       that Internet host names have a stricter syntax (described
-       in RFC 952) than the DNS recommendations in RFCs 1034 and
-       1123, and that systems that want to store host names in
-       schema nodes using the domain-name type are recommended to
-       adhere to this stricter standard to ensure interoperability.
-
-       The encoding of DNS names in the DNS protocol is limited
-       to 255 characters.  Since the encoding consists of labels
-       prefixed by a length bytes and there is a trailing NULL
-       byte, only 253 characters can appear in the textual dotted
-       notation.
-
-       The description clause of schema nodes using the domain-name
-       type MUST describe when and how these names are resolved to
-       IP addresses.  Note that the resolution of a domain-name value
-       may require to query multiple DNS records (e.g., A for IPv4
-       and AAAA for IPv6).  The order of the resolution process and
-       which DNS record takes precedence can either be defined
-       explicitely or it may depend on the configuration of the
-       resolver.
-
-       Domain-name values use the US-ASCII encoding.  Their canonical
-       format uses lowercase US-ASCII characters.  Internationalized
-       domain names MUST be encoded in punycode as described in RFC
-       3492";
-     reference
-      "RFC  952: DoD Internet Host Table Specification
-       RFC 1034: Domain Names - Concepts and Facilities
-       RFC 1123: Requirements for Internet Hosts -- Application
-                 and Support
-       RFC 2782: A DNS RR for specifying the location of services
-                 (DNS SRV)
-       RFC 3492: Punycode: A Bootstring encoding of Unicode for
-                 Internationalized Domain Names in Applications
-                 (IDNA)
-       RFC 5891: Internationalizing Domain Names in Applications
-                 (IDNA): Protocol";
-   }
-
-   typedef host {
-     type union {
-       type inet:ip-address;
-       type inet:domain-name;
-     }
-     description
-      "The host type represents either an IP address or a DNS
-       domain name.";
-   }
-
-   typedef uri {
-     type string;
-     description
-      "The uri type represents a Uniform Resource Identifier
-       (URI) as defined by STD 66.
-
-       Objects using the uri type MUST be in US-ASCII encoding,
-       and MUST be normalized as described by RFC 3986 Sections
-       6.2.1, 6.2.2.1, and 6.2.2.2.  All unnecessary
-       percent-encoding is removed, and all case-insensitive
-       characters are set to lowercase except for hexadecimal
-       digits, which are normalized to uppercase as described in
-       Section 6.2.2.1.
-
-       The purpose of this normalization is to help provide
-       unique URIs.  Note that this normalization is not
-       sufficient to provide uniqueness.  Two URIs that are
-       textually distinct after this normalization may still be
-       equivalent.
-
-       Objects using the uri type may restrict the schemes that
-       they permit.  For example, 'data:' and 'urn:' schemes
-       might not be appropriate.
-
-       A zero-length URI is not a valid URI.  This can be used to
-       express 'URI absent' where required.
-
-       In the value set and its semantics, this type is equivalent
-       to the Uri SMIv2 textual convention defined in RFC 5017.";
-     reference
-      "RFC 3986: Uniform Resource Identifier (URI): Generic Syntax
-       RFC 3305: Report from the Joint W3C/IETF URI Planning Interest
-                 Group: Uniform Resource Identifiers (URIs), URLs,
-                 and Uniform Resource Names (URNs): Clarifications
-                 and Recommendations
-       RFC 5017: MIB Textual Conventions for Uniform Resource
-                 Identifiers (URIs)";
-   }
-
- }
diff --git a/opendaylight/sal/yang-prototype/model/ietf/ietf-yang-types/pom.xml b/opendaylight/sal/yang-prototype/model/ietf/ietf-yang-types/pom.xml
deleted file mode 100644 (file)
index 1ad4e4a..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-    <parent>
-        <artifactId>model-ietf</artifactId>
-        <groupId>org.opendaylight.controller</groupId>
-        <version>0.5-SNAPSHOT</version>
-    </parent>
-
-    <modelVersion>4.0.0</modelVersion>
-    <artifactId>ietf-yang-types</artifactId>
-    <version>2010.09.24-SNAPSHOT</version>
-    <name>${project.artifactId}</name>
-    <description>${project.artifactId}</description>
-
-</project>
diff --git a/opendaylight/sal/yang-prototype/model/ietf/ietf-yang-types/src/main/yang/ietf-yang-types.yang b/opendaylight/sal/yang-prototype/model/ietf/ietf-yang-types/src/main/yang/ietf-yang-types.yang
deleted file mode 100644 (file)
index 51d9f8b..0000000
+++ /dev/null
@@ -1,396 +0,0 @@
- module ietf-yang-types {
-
-   namespace "urn:ietf:params:xml:ns:yang:ietf-yang-types";
-   prefix "yang";
-
-   organization
-    "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
-
-   contact
-    "WG Web:   <http://tools.ietf.org/wg/netmod/>
-     WG List:  <mailto:netmod@ietf.org>
-
-     WG Chair: David Partain
-               <mailto:david.partain@ericsson.com>
-
-     WG Chair: David Kessens
-               <mailto:david.kessens@nsn.com>
-
-     Editor:   Juergen Schoenwaelder
-               <mailto:j.schoenwaelder@jacobs-university.de>";
-
-   description
-    "This module contains a collection of generally useful derived
-     YANG data types.
-
-     Copyright (c) 2010 IETF Trust and the persons identified as
-     authors of the code.  All rights reserved.
-
-     Redistribution and use in source and binary forms, with or without
-     modification, is permitted pursuant to, and subject to the license
-     terms contained in, the Simplified BSD License set forth in Section
-     4.c of the IETF Trust's Legal Provisions Relating to IETF Documents
-     (http://trustee.ietf.org/license-info).
-
-     This version of this YANG module is part of RFC 6021; see
-     the RFC itself for full legal notices.";
-
-   revision 2010-09-24 {
-     description
-      "Initial revision.";
-     reference
-      "RFC 6021: Common YANG Data Types";
-   }
-
-   /*** collection of counter and gauge types ***/
-
-   typedef counter32 {
-     type uint32;
-     description
-      "The counter32 type represents a non-negative integer
-       that monotonically increases until it reaches a
-       maximum value of 2^32-1 (4294967295 decimal), when it
-       wraps around and starts increasing again from zero.
-
-       Counters have no defined 'initial' value, and thus, a
-       single value of a counter has (in general) no information
-       content.  Discontinuities in the monotonically increasing
-       value normally occur at re-initialization of the
-       management system, and at other times as specified in the
-       description of a schema node using this type.  If such
-       other times can occur, for example, the creation of
-       a schema node of type counter32 at times other than
-       re-initialization, then a corresponding schema node
-       should be defined, with an appropriate type, to indicate
-       the last discontinuity.
-
-       The counter32 type should not be used for configuration
-       schema nodes.  A default statement SHOULD NOT be used in
-       combination with the type counter32.
-
-       In the value set and its semantics, this type is equivalent
-       to the Counter32 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef zero-based-counter32 {
-     type yang:counter32;
-     default "0";
-     description
-      "The zero-based-counter32 type represents a counter32
-       that has the defined 'initial' value zero.
-
-       A schema node of this type will be set to zero (0) on creation
-       and will thereafter increase monotonically until it reaches
-       a maximum value of 2^32-1 (4294967295 decimal), when it
-       wraps around and starts increasing again from zero.
-
-       Provided that an application discovers a new schema node
-       of this type within the minimum time to wrap, it can use the
-       'initial' value as a delta.  It is important for a management
-       station to be aware of this minimum time and the actual time
-       between polls, and to discard data if the actual time is too
-       long or there is no defined minimum time.
-
-       In the value set and its semantics, this type is equivalent
-       to the ZeroBasedCounter32 textual convention of the SMIv2.";
-     reference
-       "RFC 4502: Remote Network Monitoring Management Information
-                  Base Version 2";
-   }
-
-   typedef counter64 {
-     type uint64;
-     description
-      "The counter64 type represents a non-negative integer
-       that monotonically increases until it reaches a
-       maximum value of 2^64-1 (18446744073709551615 decimal),
-       when it wraps around and starts increasing again from zero.
-
-       Counters have no defined 'initial' value, and thus, a
-       single value of a counter has (in general) no information
-       content.  Discontinuities in the monotonically increasing
-       value normally occur at re-initialization of the
-       management system, and at other times as specified in the
-       description of a schema node using this type.  If such
-       other times can occur, for example, the creation of
-       a schema node of type counter64 at times other than
-       re-initialization, then a corresponding schema node
-       should be defined, with an appropriate type, to indicate
-       the last discontinuity.
-
-       The counter64 type should not be used for configuration
-       schema nodes.  A default statement SHOULD NOT be used in
-       combination with the type counter64.
-
-       In the value set and its semantics, this type is equivalent
-       to the Counter64 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef zero-based-counter64 {
-     type yang:counter64;
-     default "0";
-     description
-      "The zero-based-counter64 type represents a counter64 that
-       has the defined 'initial' value zero.
-
-       A schema node of this type will be set to zero (0) on creation
-       and will thereafter increase monotonically until it reaches
-       a maximum value of 2^64-1 (18446744073709551615 decimal),
-       when it wraps around and starts increasing again from zero.
-
-       Provided that an application discovers a new schema node
-       of this type within the minimum time to wrap, it can use the
-       'initial' value as a delta.  It is important for a management
-       station to be aware of this minimum time and the actual time
-       between polls, and to discard data if the actual time is too
-       long or there is no defined minimum time.
-
-       In the value set and its semantics, this type is equivalent
-       to the ZeroBasedCounter64 textual convention of the SMIv2.";
-     reference
-      "RFC 2856: Textual Conventions for Additional High Capacity
-                 Data Types";
-   }
-
-   typedef gauge32 {
-     type uint32;
-     description
-      "The gauge32 type represents a non-negative integer, which
-       may increase or decrease, but shall never exceed a maximum
-       value, nor fall below a minimum value.  The maximum value
-       cannot be greater than 2^32-1 (4294967295 decimal), and
-       the minimum value cannot be smaller than 0.  The value of
-       a gauge32 has its maximum value whenever the information
-       being modeled is greater than or equal to its maximum
-       value, and has its minimum value whenever the information
-       being modeled is smaller than or equal to its minimum value.
-       If the information being modeled subsequently decreases
-       below (increases above) the maximum (minimum) value, the
-       gauge32 also decreases (increases).
-
-       In the value set and its semantics, this type is equivalent
-       to the Gauge32 type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef gauge64 {
-     type uint64;
-     description
-      "The gauge64 type represents a non-negative integer, which
-       may increase or decrease, but shall never exceed a maximum
-       value, nor fall below a minimum value.  The maximum value
-       cannot be greater than 2^64-1 (18446744073709551615), and
-       the minimum value cannot be smaller than 0.  The value of
-       a gauge64 has its maximum value whenever the information
-       being modeled is greater than or equal to its maximum
-       value, and has its minimum value whenever the information
-       being modeled is smaller than or equal to its minimum value.
-       If the information being modeled subsequently decreases
-       below (increases above) the maximum (minimum) value, the
-       gauge64 also decreases (increases).
-
-       In the value set and its semantics, this type is equivalent
-       to the CounterBasedGauge64 SMIv2 textual convention defined
-       in RFC 2856";
-     reference
-      "RFC 2856: Textual Conventions for Additional High Capacity
-                 Data Types";
-   }
-
-   /*** collection of identifier related types ***/
-
-   typedef object-identifier {
-     type string {
-       pattern '(([0-1](\.[1-3]?[0-9]))|(2\.(0|([1-9]\d*))))'
-             + '(\.(0|([1-9]\d*)))*';
-     }
-     description
-      "The object-identifier type represents administratively
-       assigned names in a registration-hierarchical-name tree.
-
-       Values of this type are denoted as a sequence of numerical
-       non-negative sub-identifier values.  Each sub-identifier
-       value MUST NOT exceed 2^32-1 (4294967295).  Sub-identifiers
-       are separated by single dots and without any intermediate
-       whitespace.
-
-       The ASN.1 standard restricts the value space of the first
-       sub-identifier to 0, 1, or 2.  Furthermore, the value space
-       of the second sub-identifier is restricted to the range
-       0 to 39 if the first sub-identifier is 0 or 1.  Finally,
-       the ASN.1 standard requires that an object identifier
-       has always at least two sub-identifier.  The pattern
-       captures these restrictions.
-
-       Although the number of sub-identifiers is not limited,
-       module designers should realize that there may be
-       implementations that stick with the SMIv2 limit of 128
-       sub-identifiers.
-
-       This type is a superset of the SMIv2 OBJECT IDENTIFIER type
-       since it is not restricted to 128 sub-identifiers.  Hence,
-       this type SHOULD NOT be used to represent the SMIv2 OBJECT
-       IDENTIFIER type, the object-identifier-128 type SHOULD be
-       used instead.";
-     reference
-      "ISO9834-1: Information technology -- Open Systems
-       Interconnection -- Procedures for the operation of OSI
-       Registration Authorities: General procedures and top
-       arcs of the ASN.1 Object Identifier tree";
-   }
-
-
-
-
-   typedef object-identifier-128 {
-     type object-identifier {
-       pattern '\d*(\.\d*){1,127}';
-     }
-     description
-      "This type represents object-identifiers restricted to 128
-       sub-identifiers.
-
-       In the value set and its semantics, this type is equivalent
-       to the OBJECT IDENTIFIER type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   /*** collection of date and time related types ***/
-
-   typedef date-and-time {
-     type string {
-       pattern '\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?'
-             + '(Z|[\+\-]\d{2}:\d{2})';
-     }
-     description
-      "The date-and-time type is a profile of the ISO 8601
-       standard for representation of dates and times using the
-       Gregorian calendar.  The profile is defined by the
-       date-time production in Section 5.6 of RFC 3339.
-
-       The date-and-time type is compatible with the dateTime XML
-       schema type with the following notable exceptions:
-
-       (a) The date-and-time type does not allow negative years.
-
-       (b) The date-and-time time-offset -00:00 indicates an unknown
-           time zone (see RFC 3339) while -00:00 and +00:00 and Z all
-           represent the same time zone in dateTime.
-
-       (c) The canonical format (see below) of data-and-time values
-           differs from the canonical format used by the dateTime XML
-           schema type, which requires all times to be in UTC using the
-           time-offset 'Z'.
-
-       This type is not equivalent to the DateAndTime textual
-       convention of the SMIv2 since RFC 3339 uses a different
-       separator between full-date and full-time and provides
-       higher resolution of time-secfrac.
-
-       The canonical format for date-and-time values with a known time
-       zone uses a numeric time zone offset that is calculated using
-       the device's configured known offset to UTC time.  A change of
-       the device's offset to UTC time will cause date-and-time values
-       to change accordingly.  Such changes might happen periodically
-       in case a server follows automatically daylight saving time
-       (DST) time zone offset changes.  The canonical format for
-       date-and-time values with an unknown time zone (usually referring
-       to the notion of local time) uses the time-offset -00:00.";
-     reference
-      "RFC 3339: Date and Time on the Internet: Timestamps
-       RFC 2579: Textual Conventions for SMIv2
-       XSD-TYPES: XML Schema Part 2: Datatypes Second Edition";
-   }
-
-   typedef timeticks {
-     type uint32;
-     description
-      "The timeticks type represents a non-negative integer that
-       represents the time, modulo 2^32 (4294967296 decimal), in
-       hundredths of a second between two epochs.  When a schema
-       node is defined that uses this type, the description of
-       the schema node identifies both of the reference epochs.
-
-       In the value set and its semantics, this type is equivalent
-       to the TimeTicks type of the SMIv2.";
-     reference
-      "RFC 2578: Structure of Management Information Version 2 (SMIv2)";
-   }
-
-   typedef timestamp {
-     type yang:timeticks;
-     description
-      "The timestamp type represents the value of an associated
-       timeticks schema node at which a specific occurrence happened.
-       The specific occurrence must be defined in the description
-       of any schema node defined using this type.  When the specific
-       occurrence occurred prior to the last time the associated
-       timeticks attribute was zero, then the timestamp value is
-       zero.  Note that this requires all timestamp values to be
-       reset to zero when the value of the associated timeticks
-       attribute reaches 497+ days and wraps around to zero.
-
-       The associated timeticks schema node must be specified
-       in the description of any schema node using this type.
-
-       In the value set and its semantics, this type is equivalent
-       to the TimeStamp textual convention of the SMIv2.";
-     reference
-      "RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   /*** collection of generic address types ***/
-
-   typedef phys-address {
-     type string {
-       pattern '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?';
-     }
-     description
-      "Represents media- or physical-level addresses represented
-       as a sequence octets, each octet represented by two hexadecimal
-       numbers.  Octets are separated by colons.  The canonical
-       representation uses lowercase characters.
-
-       In the value set and its semantics, this type is equivalent
-       to the PhysAddress textual convention of the SMIv2.";
-     reference
-      "RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   typedef mac-address {
-     type string {
-       pattern '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}';
-     }
-     description
-      "The mac-address type represents an IEEE 802 MAC address.
-       The canonical representation uses lowercase characters.
-
-       In the value set and its semantics, this type is equivalent
-       to the MacAddress textual convention of the SMIv2.";
-     reference
-      "IEEE 802: IEEE Standard for Local and Metropolitan Area
-                 Networks: Overview and Architecture
-       RFC 2579: Textual Conventions for SMIv2";
-   }
-
-   /*** collection of XML specific types ***/
-
-   typedef xpath1.0 {
-     type string;
-     description
-      "This type represents an XPATH 1.0 expression.
-
-       When a schema node is defined that uses this type, the
-       description of the schema node MUST specify the XPath
-       context in which the XPath expression is evaluated.";
-     reference
-      "XPATH: XML Path Language (XPath) Version 1.0";
-   }
-
- }
diff --git a/opendaylight/sal/yang-prototype/model/ietf/pom.xml b/opendaylight/sal/yang-prototype/model/ietf/pom.xml
deleted file mode 100644 (file)
index a5b87b0..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-    <parent>
-        <artifactId>model-parent</artifactId>
-        <groupId>org.opendaylight.controller</groupId>
-        <version>0.5-SNAPSHOT</version>
-    </parent>
-
-    <modelVersion>4.0.0</modelVersion>
-    <artifactId>model-ietf</artifactId>
-    <packaging>pom</packaging>
-    <name>${project.artifactId}</name>
-    <description>${project.artifactId}</description>
-
-    <modules>
-        <module>ietf-inet-types</module>
-        <module>ietf-yang-types</module>
-    </modules>
-
-</project>
diff --git a/opendaylight/sal/yang-prototype/model/ietf/src/main/yang/.gitignore b/opendaylight/sal/yang-prototype/model/ietf/src/main/yang/.gitignore
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/opendaylight/sal/yang-prototype/model/model-openflow/pom.xml b/opendaylight/sal/yang-prototype/model/model-openflow/pom.xml
deleted file mode 100644 (file)
index 76337cd..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <artifactId>model-parent</artifactId>
-        <groupId>org.opendaylight.controller</groupId>
-        <version>0.5-SNAPSHOT</version>
-    </parent>
-    <artifactId>model-openflow</artifactId>
-</project>
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/model/model-openflow/src/main/yang/.gitignore b/opendaylight/sal/yang-prototype/model/model-openflow/src/main/yang/.gitignore
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/opendaylight/sal/yang-prototype/model/model-topology-bgp/pom.xml b/opendaylight/sal/yang-prototype/model/model-topology-bgp/pom.xml
deleted file mode 100644 (file)
index f3b6ad9..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <artifactId>model-parent</artifactId>
-        <groupId>org.opendaylight.controller</groupId>
-        <version>0.5-SNAPSHOT</version>
-    </parent>
-    <artifactId>model-topology-bgp</artifactId>
-</project>
\ No newline at end of file
diff --git a/opendaylight/sal/yang-prototype/model/model-topology/pom.xml b/opendaylight/sal/yang-prototype/model/model-topology/pom.xml
deleted file mode 100644 (file)
index f1c3235..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-    <parent>
-        <artifactId>model-parent</artifactId>
-        <groupId>org.opendaylight.controller</groupId>
-        <version>0.5-SNAPSHOT</version>
-    </parent>
-
-    <modelVersion>4.0.0</modelVersion>
-    <artifactId>model-topology</artifactId>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.opendaylight.controller</groupId>
-            <artifactId>ietf-inet-types</artifactId>
-            <version>2010.09.24-SNAPSHOT</version>
-        </dependency>
-    </dependencies>
-
-</project>
diff --git a/opendaylight/sal/yang-prototype/model/model-topology/src/main/yang/topology.yang b/opendaylight/sal/yang-prototype/model/model-topology/src/main/yang/topology.yang
deleted file mode 100644 (file)
index ad382c8..0000000
+++ /dev/null
@@ -1,160 +0,0 @@
-module topology {
-    yang-version 1;
-    namespace "urn:ietf:params:xml:ns:yang:topology";
-    prefix "tp";
-
-    import ietf-inet-types { prefix "inet"; }
-    
-    organization "TBD";
-
-    contact "WILL-BE-DEFINED-LATER";
-
-    description "";
-    
-    revision 2013-06-11 {
-        description "Updated model with review comments. 
-            Removed top-level container network.
-            Moved network elements to separate module.";
-    }
-
-    typedef topology-id {
-        type inet:uri;
-    }
-
-    typedef node-id {
-        description "Node abstract identifier, schema for URI will be defined by augmentation";
-        type inet:uri;
-    }
-
-    typedef link-id {
-        description "Node abstract identifier, schema for URI will be defined by augmentation";
-        type inet:uri;
-    }
-
-    typedef tp-id {
-        type inet:uri;
-        description "identifier for termination points on a port";
-    }
-
-    typedef tp-ref {
-        type leafref {
-            path "/topologies/topology/nodes/node/termination-points/termination-point/tp-id";
-        }
-    }
-    typedef topology-ref {
-        type leafref {
-            path "/topologies/topology/topology-id";
-        }
-        description "This type is used for leafs that reference topology identifier instance.";
-        // currently not used
-    }
-
-    typedef node-ref {
-        type leafref {
-            path "/topologies/topology/nodes/node/node-id";
-        }
-        description "This type is used for leafs that reference a node instance.";
-    }
-
-    typedef link-ref {
-        type leafref {
-            path "/topologies/topology/links/link/link-id";
-        }
-        description "This type is used for leafs that reference a link instance.";
-        // currently not used
-    }
-
-    container topologies {
-        list topology {
-            description "
-                This is the model of abstract topology which contains only Network
-                Nodes and Network Links. Each topology MUST be identified by
-                unique topology-id for reason that the store could contain many
-                topologies.
-            ";
-            key "topology-id";
-            leaf topology-id {
-                type topology-id; 
-                description "
-                    It is presumed that datastore will contain many topologies. To
-                    distinguish between topologies it is vital to have UNIQUE
-                    topology identifier.
-                ";
-            }
-
-            container types {
-                description "
-                    The container for definition of topology types.
-                    The augmenting modules should add empty optional leaf 
-                    to this container to signalize topology type.
-                ";
-            }
-
-            container nodes {
-                list node {
-                    description "The list of network nodes defined for topology.";
-
-                    key "node-id";
-                    leaf node-id {
-                        type node-id;
-                        description "The Topology identifier of network-node.";
-                    }
-
-                    //leaf supporting-ne {
-                    //  type network-element-ref;
-                    //}
-                    
-                    container termination-points {
-                        list termination-point {
-                            key "tp-id";
-                            leaf tp-id {
-                                type tp-id;
-                            }
-                        }
-                    }
-                }
-            }
-    
-            container links {
-                list link {
-                    description "
-                        The Network Link which is defined by Local (Source) and
-                        Remote (Destination) Network Nodes. Every link MUST be
-                        defined either by identifier and his local and remote
-                        Network Nodes (in real applications it is common that many
-                        links are originated from one node and end up in same
-                        remote node). To ensure that we would always know to
-                        distinguish between links, every link SHOULD have
-                        identifier.
-                    ";
-                    key "link-id";
-    
-                    leaf link-id {
-                        type link-id;
-                        description "";
-                    }
-
-                    container source { 
-                        leaf source-node {
-                            type node-ref;
-                            description "Source node identifier.";
-                        }
-                        leaf source-tp {
-                            type tp-ref;
-                        }
-                    }
-                
-                    container destination { 
-                        leaf dest-node {
-                            type node-ref;
-                            description "Destination node identifier.";
-                        }
-                        leaf dest-tp {
-                            type tp-ref;
-                        }
-                    }
-                }
-            }
-        }
-    }
-}
diff --git a/opendaylight/sal/yang-prototype/model/pom.xml b/opendaylight/sal/yang-prototype/model/pom.xml
deleted file mode 100644 (file)
index 1bbc2f6..0000000
+++ /dev/null
@@ -1,131 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-    <parent>
-        <artifactId>yang-prototype</artifactId>
-        <groupId>org.opendaylight.controller</groupId>
-        <version>0.5-SNAPSHOT</version>
-    </parent>
-
-    <modelVersion>4.0.0</modelVersion>
-    <artifactId>model-parent</artifactId>
-    <packaging>pom</packaging>
-    <name>${project.artifactId}</name>
-    <description>${project.artifactId}</description>
-
-    <modules>
-        <module>ietf</module>
-        <module>model-topology</module>
-        <module>model-openflow</module>
-        <!-- <module>model-topology-bgp</module> -->
-    </modules>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.opendaylight.yangtools</groupId>
-                <artifactId>yang-maven-plugin</artifactId>
-                <version>${yangtools.version}</version>
-                <executions>
-                    <execution>
-                        <goals>
-                            <goal>generate-sources</goal>
-                        </goals>
-                        <configuration>
-                            <yangFilesRootDir>src/main/yang</yangFilesRootDir>
-                            <codeGenerators>
-                                <generator>
-                                    <codeGeneratorClass>
-                                        org.opendaylight.controller.maven.sal.api.gen.plugin.CodeGeneratorImpl
-                                    </codeGeneratorClass>
-                                    <outputBaseDir>
-                                        target/generated-sources/sal
-                                    </outputBaseDir>
-                                </generator>
-                            </codeGenerators>
-                            <inspectDependencies>true</inspectDependencies>
-                        </configuration>
-                    </execution>
-                </executions>
-                <dependencies>
-                    <dependency>
-                        <groupId>org.opendaylight.controller</groupId>
-                        <artifactId>maven-sal-api-gen-plugin</artifactId>
-                        <version>0.5.5-SNAPSHOT</version>
-                        <type>jar</type>
-                    </dependency>
-                </dependencies>
-            </plugin>
-            <plugin>
-                <groupId>org.codehaus.mojo</groupId>
-                <artifactId>build-helper-maven-plugin</artifactId>
-                <version>1.7</version>
-                <executions>
-                    <execution>
-                        <phase>generate-sources</phase>
-                        <goals>
-                            <goal>add-source</goal>
-                        </goals>
-                        <configuration>
-                            <sources>
-                                <source>target/generated-sources/sal</source>
-                            </sources>
-                        </configuration>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-        <pluginManagement>
-            <plugins>
-                <!--This plugin's configuration is used to store Eclipse 
-                    m2e settings only. It has no influence on the Maven build itself. -->
-                <plugin>
-                    <groupId>org.eclipse.m2e</groupId>
-                    <artifactId>lifecycle-mapping</artifactId>
-                    <version>1.0.0</version>
-                    <configuration>
-                        <lifecycleMappingMetadata>
-                            <pluginExecutions>
-                                <pluginExecution>
-                                    <pluginExecutionFilter>
-                                        <groupId>
-                                            org.opendaylight.controller
-                                        </groupId>
-                                        <artifactId>
-                                            yang-maven-plugin
-                                        </artifactId>
-                                        <versionRange>
-                                            [0.5,)
-                                        </versionRange>
-                                        <goals>
-                                            <goal>
-                                                generate-sources
-                                            </goal>
-                                        </goals>
-                                    </pluginExecutionFilter>
-                                    <action>
-                                        <ignore></ignore>
-                                    </action>
-                                </pluginExecution>
-                            </pluginExecutions>
-                        </lifecycleMappingMetadata>
-                    </configuration>
-                </plugin>
-            </plugins>
-        </pluginManagement>
-    </build>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.opendaylight.yangtools</groupId>
-            <artifactId>yang-binding</artifactId>
-            <version>${yangtools.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.opendaylight.yangtools</groupId>
-            <artifactId>yang-common</artifactId>
-            <version>${yangtools.version}</version>
-        </dependency>
-    </dependencies>
-
-</project>
diff --git a/opendaylight/sal/yang-prototype/model/src/main/yang/.gitignore b/opendaylight/sal/yang-prototype/model/src/main/yang/.gitignore
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/opendaylight/sal/yang-prototype/model/src/site/site.xml b/opendaylight/sal/yang-prototype/model/src/site/site.xml
deleted file mode 100644 (file)
index 80ff3a4..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<project name="${project.name}">
-
-    <skin>
-        <groupId>org.apache.maven.skins</groupId>
-        <artifactId>maven-fluido-skin</artifactId>
-        <version>1.3.0</version>
-    </skin>
-
-    <body>
-        <menu ref="parent"/>
-        <menu ref="modules"/>
-        <menu ref="reports"/>
-    </body>
-
-</project>
-
index 23e207c39a1a9d89ba6e427e067bf9b139b5cda9..6cd785cc2584638d4d08a380d55a3177f848f36c 100644 (file)
@@ -8,61 +8,11 @@
     <packaging>pom</packaging>
     <name>${project.artifactId}</name>
     <description>
-        YANG Tools is a infrastructure project aiming to develop necessary tooling and libraries providing support of
-        NETCONF and YANG for Java (JVM-language based) projects and applications, such as Model Driven SAL for 
-        Controller (which uses YANG as it's modeling language) and Netconf / OFConfig plugins. 
+        yang-prototype
     </description>
 
-    <developers>
-        <developer>
-            <id>ttkacik</id>
-            <name>Tony Tkacik</name>
-            <email>ttkacik@cisco.com</email>
-            <organization>OpenDaylight</organization>
-        </developer>
-        <developer>
-            <id>rovarga</id>
-            <name>Robert Varga</name>
-            <email>rovarga@cisco.com</email>
-            <organization>OpenDaylight</organization>
-        </developer>
-        <developer>
-            <id>lsedlak</id>
-            <name>Lukas Sedlak</name>
-            <email>lsedlak@cisco.com</email>
-            <organization>OpenDaylight</organization>
-        </developer>
-        <developer>
-            <id>mvitez</id>
-            <name>Martin Vitez</name>
-            <email>mvitez@cisco.com</email>
-            <organization>OpenDaylight</organization>
-        </developer>
-        <developer>
-            <id>jmedved</id>
-            <name>Jan Medved</name>
-            <email>jmedved@cisco.com</email>
-            <organization>OpenDaylight</organization>
-        </developer>
-        <developer>
-            <id>jgloncak</id>
-            <name>Jozef Gloncak</name>
-            <email>jgloncak@cisco.com</email>
-            <organization>OpenDaylight</organization>
-        </developer>
-        <developer>
-            <id>mirehak</id>
-            <name>Michal Rehak</name>
-            <email>mirehak@cisco.com</email>
-            <organization>OpenDaylight</organization>
-        </developer>
-    </developers>
-
     <modules>
         <module>concepts-lang</module>
-        <!-- <module>yang</module> -->
-        <module>code-generator</module>
-        <module>model</module>
     </modules>
 
     <properties>
index 1faff043e15092244c2183b4c266d89b9d5201c6..ac77a3ed32c841733a3ee25e8012c266bb8aaa30 100644 (file)
@@ -1,4 +1,4 @@
-YANG tools
+SAL
 ====================
 
 Project documentation
@@ -6,19 +6,9 @@ Project documentation
 
 ### Description
 
-YANG Tools is a infrastructure project aiming to develop necessary tooling and libraries providing support of NETCONF and YANG for Java (JVM-language based) projects and applications, such as Model Driven SAL for Controller (which uses YANG as it's modeling language) and Netconf / OFConfig plugins. 
+
 
 ### Scope
 
-The scope of YANG Tools includes:
 
-* Parser of YANG files
-* Java meta-model for YANG
-* Java binding for YANG
-* Maven plugin for processing YANG files
-* Infrastructure for code generators based on YANG
-* Validation of instance data (XML) based on YANG to RelaxNG mapping - RFC6110
-* Proof-of-concept, research and support for new YANG extensions, which are meant to be reused by other projects.
-* IDE related tools to assist in writing, using and developing YANG models
-* Libraries and supporting functionality for YANG API (REST APIs defined by the YANG model).