Remove unused builders for union types generated by yangtools
authorMarek Gradzki <[email protected]>
Thu, 20 Oct 2016 14:27:47 +0000 (16:27 +0200)
committerMarek Gradzki <[email protected]>
Fri, 21 Oct 2016 06:56:10 +0000 (06:56 +0000)
Generated builders are not used in the runtime.

Starting from ODL boron, strings that represent union types,
are processed according to YANG RFC, that is in the order
they are specified in the "type" statement,
unitl a match is found. That makes
builders for union types obsolete.

Change-Id: If9289a0dde34f345a672103d2461a3acd00e2afd
Signed-off-by: Marek Gradzki <[email protected]>
lisp/api/src/main/java/org/opendaylight/yang/gen/v1/urn/ietf/params/xml/ns/yang/ietf/lisp/address/types/rev151105/Ipv4Matcher.java [deleted file]
lisp/api/src/main/java/org/opendaylight/yang/gen/v1/urn/ietf/params/xml/ns/yang/ietf/lisp/address/types/rev151105/Ipv6Matcher.java [deleted file]
lisp/api/src/main/java/org/opendaylight/yang/gen/v1/urn/ietf/params/xml/ns/yang/ietf/lisp/address/types/rev151105/MacMatcher.java [deleted file]
lisp/api/src/main/java/org/opendaylight/yang/gen/v1/urn/ietf/params/xml/ns/yang/ietf/lisp/address/types/rev151105/SimpleAddressBuilder.java [deleted file]
v3po/api/src/main/java/org/opendaylight/yang/gen/v1/urn/ieee/params/xml/ns/yang/dot1q/types/rev150626/dot1q/tag/or/any/Dot1qTagVlanIdBuilder.java [deleted file]
v3po/api/src/main/java/org/opendaylight/yang/gen/v1/urn/ieee/params/xml/ns/yang/dot1q/types/rev150626/dot1q/tag/ranges/or/any/Dot1qTagVlanIdBuilder.java [deleted file]
v3po/api/src/main/java/org/opendaylight/yang/gen/v1/urn/opendaylight/params/xml/ns/yang/v3po/rev161214/InterfaceNameOrIndexBuilder.java [deleted file]
v3po/api/src/main/java/org/opendaylight/yang/gen/v1/urn/opendaylight/params/xml/ns/yang/vpp/classifier/rev161214/OpaqueIndexBuilder.java [deleted file]
v3po/api/src/main/java/org/opendaylight/yang/gen/v1/urn/opendaylight/params/xml/ns/yang/vpp/classifier/rev161214/VppNodeBuilder.java [deleted file]
v3po/v3po2vpp/src/test/java/org/opendaylight/yang/gen/v1/urn/ieee/params/xml/ns/yang/dot1q/types/rev150626/dot1q/tag/or/any/Dot1qTagVlanIdBuilderTest.java [deleted file]

diff --git a/lisp/api/src/main/java/org/opendaylight/yang/gen/v1/urn/ietf/params/xml/ns/yang/ietf/lisp/address/types/rev151105/Ipv4Matcher.java b/lisp/api/src/main/java/org/opendaylight/yang/gen/v1/urn/ietf/params/xml/ns/yang/ietf/lisp/address/types/rev151105/Ipv4Matcher.java
deleted file mode 100755 (executable)
index 1e70fe1..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Copyright (c) 2016 Cisco and/or its affiliates.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at:
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105;
-
-import java.util.List;
-import java.util.regex.Pattern;
-import java.util.stream.Collectors;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4Address;
-
-
-/**
- * Class that checks whether {@link String} can represent Ipv4Address.
- */
-public final class Ipv4Matcher {
-
-    private static final List<Pattern> PATTERNS =
-            Ipv4Address.PATTERN_CONSTANTS.stream().map(a -> Pattern.compile(a)).collect(Collectors.toList());
-
-    public static boolean matches(String candidate) {
-        return PATTERNS.stream().anyMatch(pattern -> pattern.matcher(candidate).matches());
-    }
-}
diff --git a/lisp/api/src/main/java/org/opendaylight/yang/gen/v1/urn/ietf/params/xml/ns/yang/ietf/lisp/address/types/rev151105/Ipv6Matcher.java b/lisp/api/src/main/java/org/opendaylight/yang/gen/v1/urn/ietf/params/xml/ns/yang/ietf/lisp/address/types/rev151105/Ipv6Matcher.java
deleted file mode 100755 (executable)
index 74d9c2b..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright (c) 2016 Cisco and/or its affiliates.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at:
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105;
-
-import java.util.List;
-import java.util.regex.Pattern;
-import java.util.stream.Collectors;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv6Address;
-
-/**
- * Class that checks whether {@link String} can represent Ipv6Address
- */
-public final class Ipv6Matcher {
-
-    private static final List<Pattern> PATTERNS =
-            Ipv6Address.PATTERN_CONSTANTS.stream().map(a -> Pattern.compile(a)).collect(Collectors.toList());
-
-    public static boolean matches(String candidate) {
-        return PATTERNS.stream().anyMatch(pattern -> pattern.matcher(candidate).matches());
-    }
-}
diff --git a/lisp/api/src/main/java/org/opendaylight/yang/gen/v1/urn/ietf/params/xml/ns/yang/ietf/lisp/address/types/rev151105/MacMatcher.java b/lisp/api/src/main/java/org/opendaylight/yang/gen/v1/urn/ietf/params/xml/ns/yang/ietf/lisp/address/types/rev151105/MacMatcher.java
deleted file mode 100755 (executable)
index ac58622..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright (c) 2016 Cisco and/or its affiliates.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at:
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105;
-
-import java.util.List;
-import java.util.regex.Pattern;
-import java.util.stream.Collectors;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress;
-
-/**
- * Class that checks whether {@link String} can represent MacAddress
- */
-public class MacMatcher {
-
-    private static final List<Pattern> PATTERNS =
-            MacAddress.PATTERN_CONSTANTS.stream().map(a -> Pattern.compile(a)).collect(Collectors.toList());
-
-    public static boolean matches(String candidate) {
-        return PATTERNS.stream().anyMatch(pattern -> pattern.matcher(candidate).matches());
-    }
-}
diff --git a/lisp/api/src/main/java/org/opendaylight/yang/gen/v1/urn/ietf/params/xml/ns/yang/ietf/lisp/address/types/rev151105/SimpleAddressBuilder.java b/lisp/api/src/main/java/org/opendaylight/yang/gen/v1/urn/ietf/params/xml/ns/yang/ietf/lisp/address/types/rev151105/SimpleAddressBuilder.java
deleted file mode 100644 (file)
index aad92c0..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * Copyright (c) 2015 Cisco and/or its affiliates.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at:
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105;
-
-
-import static com.google.common.base.Preconditions.checkNotNull;
-
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4Address;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv6Address;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress;
-
-/**
- * The purpose of generated class in src/main/java for Union types is to create new instances of unions from a string
- * representation. In some cases it is very difficult to automate it since there can be unions such as (uint32 -
- * uint16), or (string - uint32).
- * <p/>
- * The reason behind putting it under src/main/java is: This class is generated in form of a stub and needs to be
- * finished by the user. This class is generated only once to prevent loss of user code.
- */
-public final class SimpleAddressBuilder {
-
-    public static SimpleAddress getDefaultInstance(String defaultValue) {
-        checkNotNull(defaultValue, "Cannot convert null address");
-
-        if (Ipv4Matcher.matches(defaultValue)) {
-            return new SimpleAddress(new IpAddress(new Ipv4Address(defaultValue)));
-        } else if (Ipv6Matcher.matches(defaultValue)) {
-            return new SimpleAddress(new IpAddress(new Ipv6Address(defaultValue)));
-        } else if (MacMatcher.matches(defaultValue)) {
-            return new SimpleAddress(new MacAddress(defaultValue));
-        } else {
-            throw new IllegalArgumentException("Unknown type");
-        }
-    }
-
-}
diff --git a/v3po/api/src/main/java/org/opendaylight/yang/gen/v1/urn/ieee/params/xml/ns/yang/dot1q/types/rev150626/dot1q/tag/or/any/Dot1qTagVlanIdBuilder.java b/v3po/api/src/main/java/org/opendaylight/yang/gen/v1/urn/ieee/params/xml/ns/yang/dot1q/types/rev150626/dot1q/tag/or/any/Dot1qTagVlanIdBuilder.java
deleted file mode 100644 (file)
index e9304e2..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-package org.opendaylight.yang.gen.v1.urn.ieee.params.xml.ns.yang.dot1q.types.rev150626.dot1q.tag.or.any;
-
-import org.opendaylight.yang.gen.v1.urn.ieee.params.xml.ns.yang.dot1q.types.rev150626.Dot1qVlanId;
-import org.opendaylight.yang.gen.v1.urn.ieee.params.xml.ns.yang.dot1q.types.rev150626.dot1q.tag.or.any.Dot1qTag.VlanId;
-
-
-/**
- * The purpose of generated class in src/main/java for Union types is to create new instances of unions from a string representation.
- * In some cases it is very difficult to automate it since there can be unions such as (uint32 - uint16), or (string - uint32).
- *
- * The reason behind putting it under src/main/java is:
- * This class is generated in form of a stub and needs to be finished by the user. This class is generated only once to prevent
- * loss of user code.
- *
- */
-public class Dot1qTagVlanIdBuilder {
-
-    private final static String ANY = "any";
-
-    public static VlanId getDefaultInstance(java.lang.String defaultValue) {
-        if (ANY.equals(defaultValue)) {
-            return new VlanId(VlanId.Enumeration.Any);
-        } else {
-            return new VlanId(new Dot1qVlanId(Integer.valueOf(defaultValue)));
-        }
-    }
-
-}
diff --git a/v3po/api/src/main/java/org/opendaylight/yang/gen/v1/urn/ieee/params/xml/ns/yang/dot1q/types/rev150626/dot1q/tag/ranges/or/any/Dot1qTagVlanIdBuilder.java b/v3po/api/src/main/java/org/opendaylight/yang/gen/v1/urn/ieee/params/xml/ns/yang/dot1q/types/rev150626/dot1q/tag/ranges/or/any/Dot1qTagVlanIdBuilder.java
deleted file mode 100644 (file)
index 685f609..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-package org.opendaylight.yang.gen.v1.urn.ieee.params.xml.ns.yang.dot1q.types.rev150626.dot1q.tag.ranges.or.any;
-import org.opendaylight.yang.gen.v1.urn.ieee.params.xml.ns.yang.dot1q.types.rev150626.dot1q.tag.ranges.or.any.Dot1qTag.VlanId;
-
-
-/**
- * The purpose of generated class in src/main/java for Union types is to create new instances of unions from a string representation.
- * In some cases it is very difficult to automate it since there can be unions such as (uint32 - uint16), or (string - uint32).
- *
- * The reason behind putting it under src/main/java is:
- * This class is generated in form of a stub and needs to be finished by the user. This class is generated only once to prevent
- * loss of user code.
- *
- */
-public class Dot1qTagVlanIdBuilder {
-
-    public static VlanId getDefaultInstance(java.lang.String defaultValue) {
-        throw new java.lang.UnsupportedOperationException("Not yet implemented");
-    }
-
-}
diff --git a/v3po/api/src/main/java/org/opendaylight/yang/gen/v1/urn/opendaylight/params/xml/ns/yang/v3po/rev161214/InterfaceNameOrIndexBuilder.java b/v3po/api/src/main/java/org/opendaylight/yang/gen/v1/urn/opendaylight/params/xml/ns/yang/v3po/rev161214/InterfaceNameOrIndexBuilder.java
deleted file mode 100644 (file)
index 5151320..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-package org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.v3po.rev161214;
-
-
-/**
- * The purpose of generated class in src/main/java for Union types is to create new instances of unions from a string representation.
- * In some cases it is very difficult to automate it since there can be unions such as (uint32 - uint16), or (string - uint32).
- *
- * The reason behind putting it under src/main/java is:
- * This class is generated in form of a stub and needs to be finished by the user. This class is generated only once to prevent
- * loss of user code.
- *
- */
-public class InterfaceNameOrIndexBuilder {
-
-    public static InterfaceNameOrIndex getDefaultInstance(java.lang.String defaultValue) {
-        throw new java.lang.UnsupportedOperationException("Not yet implemented");
-    }
-
-}
diff --git a/v3po/api/src/main/java/org/opendaylight/yang/gen/v1/urn/opendaylight/params/xml/ns/yang/vpp/classifier/rev161214/OpaqueIndexBuilder.java b/v3po/api/src/main/java/org/opendaylight/yang/gen/v1/urn/opendaylight/params/xml/ns/yang/vpp/classifier/rev161214/OpaqueIndexBuilder.java
deleted file mode 100644 (file)
index 2ff7f82..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-package org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.classifier.rev161214;
-
-
-/**
- * The purpose of generated class in src/main/java for Union types is to create new instances of unions from a string representation.
- * In some cases it is very difficult to automate it since there can be unions such as (uint32 - uint16), or (string - uint32).
- *
- * The reason behind putting it under src/main/java is:
- * This class is generated in form of a stub and needs to be finished by the user. This class is generated only once to prevent
- * loss of user code.
- *
- */
-public class OpaqueIndexBuilder {
-
-    public static OpaqueIndex getDefaultInstance(java.lang.String defaultValue) {
-        throw new java.lang.UnsupportedOperationException("Not yet implemented");
-    }
-
-}
diff --git a/v3po/api/src/main/java/org/opendaylight/yang/gen/v1/urn/opendaylight/params/xml/ns/yang/vpp/classifier/rev161214/VppNodeBuilder.java b/v3po/api/src/main/java/org/opendaylight/yang/gen/v1/urn/opendaylight/params/xml/ns/yang/vpp/classifier/rev161214/VppNodeBuilder.java
deleted file mode 100644 (file)
index b339435..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-package org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.classifier.rev161214;
-
-
-/**
- * The purpose of generated class in src/main/java for Union types is to create new instances of unions from a string representation.
- * In some cases it is very difficult to automate it since there can be unions such as (uint32 - uint16), or (string - uint32).
- *
- * The reason behind putting it under src/main/java is:
- * This class is generated in form of a stub and needs to be finished by the user. This class is generated only once to prevent
- * loss of user code.
- *
- */
-public class VppNodeBuilder {
-
-    public static VppNode getDefaultInstance(java.lang.String defaultValue) {
-        throw new java.lang.UnsupportedOperationException("Not yet implemented");
-    }
-
-}
diff --git a/v3po/v3po2vpp/src/test/java/org/opendaylight/yang/gen/v1/urn/ieee/params/xml/ns/yang/dot1q/types/rev150626/dot1q/tag/or/any/Dot1qTagVlanIdBuilderTest.java b/v3po/v3po2vpp/src/test/java/org/opendaylight/yang/gen/v1/urn/ieee/params/xml/ns/yang/dot1q/types/rev150626/dot1q/tag/or/any/Dot1qTagVlanIdBuilderTest.java
deleted file mode 100644 (file)
index 7d17d78..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright (c) 2016 Cisco and/or its affiliates.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at:
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.opendaylight.yang.gen.v1.urn.ieee.params.xml.ns.yang.dot1q.types.rev150626.dot1q.tag.or.any;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNull;
-
-import org.junit.Test;
-
-public class Dot1qTagVlanIdBuilderTest {
-
-    @Test
-    public void testGetDefaultInstanceEnumeration() {
-        final Dot1qTag.VlanId any = Dot1qTagVlanIdBuilder.getDefaultInstance("any");
-        assertEquals(Dot1qTag.VlanId.Enumeration.Any, any.getEnumeration());
-        assertNull(any.getDot1qVlanId());
-    }
-
-    @Test
-    public void testGetDefaultInstanceVlanId() {
-        final Dot1qTag.VlanId any = Dot1qTagVlanIdBuilder.getDefaultInstance("123");
-        assertEquals(Integer.valueOf(123), any.getDot1qVlanId().getValue());
-        assertNull(any.getEnumeration());
-    }
-
-    @Test(expected = NumberFormatException.class)
-    public void testGetDefaultInstanceFailed() {
-        final Dot1qTag.VlanId any = Dot1qTagVlanIdBuilder.getDefaultInstance("anny");
-    }
-}
\ No newline at end of file