Bump to odlparent-9.0.0/yangtools-7.0.1-SNAPSHOT
[mdsal.git] / binding / mdsal-binding-generator-util / src / main / java / org / opendaylight / mdsal / binding / model / util / generated / type / builder / RuntimeGeneratedTOBuilder.java
1 /*
2  * Copyright (c) 2018 Pantheon Technologies, s.r.o. and others.  All rights reserved.
3  *
4  * This program and the accompanying materials are made available under the
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6  * and is available at http://www.eclipse.org/legal/epl-v10.html
7  */
8 package org.opendaylight.mdsal.binding.model.util.generated.type.builder;
9
10 import org.opendaylight.mdsal.binding.model.api.GeneratedProperty;
11 import org.opendaylight.mdsal.binding.model.api.GeneratedTransferObject;
12 import org.opendaylight.mdsal.binding.model.api.JavaTypeName;
13 import org.opendaylight.mdsal.binding.model.api.Restrictions;
14 import org.opendaylight.mdsal.binding.model.api.type.builder.GeneratedPropertyBuilder;
15 import org.opendaylight.yangtools.yang.common.QName;
16 import org.opendaylight.yangtools.yang.model.api.SchemaPath;
17
18 public class RuntimeGeneratedTOBuilder extends AbstractGeneratedTOBuilder {
19     public RuntimeGeneratedTOBuilder(final JavaTypeName identifier) {
20         super(identifier);
21     }
22
23     @Override
24     public final void setRestrictions(final Restrictions restrictions) {
25         // No-op
26     }
27
28     @Override
29     public final void setSUID(final GeneratedPropertyBuilder suid) {
30         // No-op
31     }
32
33     @Override
34     public final void setDescription(final String description) {
35         // No-op
36     }
37
38     @Override
39     public final void setModuleName(final String moduleName) {
40         // No-op
41     }
42
43     @Override
44     public final void setSchemaPath(final SchemaPath schemaPath) {
45         // No-op
46     }
47
48     @Override
49     public final void setReference(final String reference) {
50         // No-op
51     }
52
53     @Override
54     public GeneratedTransferObject build() {
55         return new GTO(this);
56     }
57
58     protected static class GTO extends AbstractGeneratedTransferObject {
59         protected GTO(final RuntimeGeneratedTOBuilder builder) {
60             super(builder);
61         }
62
63         @Override
64         public final Restrictions getRestrictions() {
65             throw unsupported();
66         }
67
68         @Override
69         public final GeneratedProperty getSUID() {
70             throw unsupported();
71         }
72
73         @Override
74         public final String getDescription() {
75             throw unsupported();
76         }
77
78         @Override
79         public final String getReference() {
80             throw unsupported();
81         }
82
83         @Override
84         public final Iterable<QName> getSchemaPath() {
85             throw unsupported();
86         }
87
88         @Override
89         public final String getModuleName() {
90             throw unsupported();
91         }
92
93         private static UnsupportedOperationException unsupported() {
94             return new UnsupportedOperationException("Not available at runtime");
95         }
96     }
97 }