Update MRI projects for Aluminium
[netconf.git] / restconf / restconf-common / src / main / java / org / opendaylight / restconf / common / util / AbstractOperationsModule.java
1 /*
2  * Copyright (c) 2020 PANTHEON.tech, 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.restconf.common.util;
9
10 import java.util.Collections;
11 import java.util.List;
12 import java.util.Map;
13 import java.util.Optional;
14 import java.util.Set;
15 import org.opendaylight.yangtools.concepts.SemVer;
16 import org.opendaylight.yangtools.yang.common.QNameModule;
17 import org.opendaylight.yangtools.yang.common.YangVersion;
18 import org.opendaylight.yangtools.yang.model.api.AugmentationSchemaNode;
19 import org.opendaylight.yangtools.yang.model.api.Deviation;
20 import org.opendaylight.yangtools.yang.model.api.ExtensionDefinition;
21 import org.opendaylight.yangtools.yang.model.api.FeatureDefinition;
22 import org.opendaylight.yangtools.yang.model.api.GroupingDefinition;
23 import org.opendaylight.yangtools.yang.model.api.IdentitySchemaNode;
24 import org.opendaylight.yangtools.yang.model.api.Module;
25 import org.opendaylight.yangtools.yang.model.api.ModuleImport;
26 import org.opendaylight.yangtools.yang.model.api.NotificationDefinition;
27 import org.opendaylight.yangtools.yang.model.api.RpcDefinition;
28 import org.opendaylight.yangtools.yang.model.api.TypeDefinition;
29 import org.opendaylight.yangtools.yang.model.api.UsesNode;
30 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
31 import org.opendaylight.yangtools.yang.model.api.meta.IdentifierNamespace;
32 import org.opendaylight.yangtools.yang.model.api.meta.StatementDefinition;
33 import org.opendaylight.yangtools.yang.model.api.meta.StatementSource;
34 import org.opendaylight.yangtools.yang.model.api.stmt.ModuleEffectiveStatement;
35 import org.opendaylight.yangtools.yang.model.api.stmt.ModuleStatement;
36
37 abstract class AbstractOperationsModule implements Module, ModuleEffectiveStatement {
38     @Override
39     public final ModuleStatement getDeclared() {
40         return null;
41     }
42
43     @Override
44     public final StatementDefinition statementDefinition() {
45         return YangStmtMapping.MODULE;
46     }
47
48     @Override
49     public final StatementSource getStatementSource() {
50         return StatementSource.CONTEXT;
51     }
52
53     @Override
54     public final <K, V, N extends IdentifierNamespace<K, V>> Optional<? extends V> get(final Class<N> namespace,
55             final K identifier) {
56         return Optional.empty();
57     }
58
59     @Override
60     public final <K, V, N extends IdentifierNamespace<K, V>> Map<K, V> getAll(final Class<N> namespace) {
61         return Map.of();
62     }
63
64     @Override
65     public final String argument() {
66         return getName();
67     }
68
69     @Override
70     public final QNameModule localQNameModule() {
71         return getQNameModule();
72     }
73
74     @Override
75     public final Set<ModuleImport> getImports() {
76         // Yeah, not accurate, but this should not be needed
77         return Collections.emptySet();
78     }
79
80     @Override
81     public final YangVersion getYangVersion() {
82         return YangVersion.VERSION_1;
83     }
84
85     @Override
86     public final Set<TypeDefinition<?>> getTypeDefinitions() {
87         return Collections.emptySet();
88     }
89
90     @Override
91     public final Set<GroupingDefinition> getGroupings() {
92         return Collections.emptySet();
93     }
94
95     @Override
96     public final Set<UsesNode> getUses() {
97         return Collections.emptySet();
98     }
99
100     @Override
101     public final Optional<String> getDescription() {
102         return Optional.empty();
103     }
104
105     @Override
106     public final Optional<String> getReference() {
107         return Optional.empty();
108     }
109
110     @Override
111     public final Set<NotificationDefinition> getNotifications() {
112         return Collections.emptySet();
113     }
114
115     @Override
116     public final Optional<SemVer> getSemanticVersion() {
117         return Optional.empty();
118     }
119
120     @Override
121     public final Optional<String> getOrganization() {
122         return Optional.empty();
123     }
124
125     @Override
126     public final Optional<String> getContact() {
127         return Optional.empty();
128     }
129
130     @Override
131     public final Set<Module> getSubmodules() {
132         return Collections.emptySet();
133     }
134
135     @Override
136     public final Set<FeatureDefinition> getFeatures() {
137         return Collections.emptySet();
138     }
139
140     @Override
141     public final Set<AugmentationSchemaNode> getAugmentations() {
142         return Collections.emptySet();
143     }
144
145     @Override
146     public final Set<RpcDefinition> getRpcs() {
147         return Collections.emptySet();
148     }
149
150     @Override
151     public final Set<Deviation> getDeviations() {
152         return Collections.emptySet();
153     }
154
155     @Override
156     public final Set<IdentitySchemaNode> getIdentities() {
157         return Collections.emptySet();
158     }
159
160     @Override
161     public final List<ExtensionDefinition> getExtensionSchemaNodes() {
162         return Collections.emptyList();
163     }
164 }