a7a8e9d35df4d568d3ddfd7cff85bb1113f44941
[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.Restrictions;
13 import org.opendaylight.mdsal.binding.model.api.type.builder.GeneratedPropertyBuilder;
14 import org.opendaylight.yangtools.yang.common.QName;
15 import org.opendaylight.yangtools.yang.model.api.SchemaPath;
16
17 public final class RuntimeGeneratedTOBuilder extends AbstractGeneratedTOBuilder {
18
19     public RuntimeGeneratedTOBuilder(final String packageName, final String name) {
20         super(packageName, name);
21     }
22
23     @Override
24     public void setRestrictions(final Restrictions restrictions) {
25         // No-op
26     }
27
28     @Override
29     public void setSUID(final GeneratedPropertyBuilder suid) {
30         // No-op
31     }
32
33     @Override
34     public void setDescription(final String description) {
35         // No-op
36     }
37
38     @Override
39     public void setModuleName(final String moduleName) {
40         // No-op
41     }
42
43     @Override
44     public void setSchemaPath(final SchemaPath schemaPath) {
45         // No-op
46     }
47
48     @Override
49     public void setReference(final String reference) {
50         // No-op
51     }
52
53     @Override
54     public GeneratedTransferObject build() {
55         return new GTO(this);
56     }
57
58     @Override
59     AbstractEnumerationBuilder newEnumerationBuilder(final String packageName, final String name) {
60         return new RuntimeEnumerationBuilder(packageName, name);
61     }
62
63     private static final class GTO extends AbstractGeneratedTransferObject {
64         GTO(final RuntimeGeneratedTOBuilder builder) {
65             super(builder);
66         }
67
68         @Override
69         public Restrictions getRestrictions() {
70             throw new UnsupportedOperationException("Not available at runtime");
71         }
72
73         @Override
74         public GeneratedProperty getSUID() {
75             throw new UnsupportedOperationException("Not available at runtime");
76         }
77
78         @Override
79         public String getDescription() {
80             throw new UnsupportedOperationException("Not available at runtime");
81         }
82
83         @Override
84         public String getReference() {
85             throw new UnsupportedOperationException("Not available at runtime");
86         }
87
88         @Override
89         public Iterable<QName> getSchemaPath() {
90             throw new UnsupportedOperationException("Not available at runtime");
91         }
92
93         @Override
94         public String getModuleName() {
95             throw new UnsupportedOperationException("Not available at runtime");
96         }
97     }
98 }