2 * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved.
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
8 package org.opendaylight.netconf.sal.restconf.impl;
10 import com.google.common.base.Preconditions;
11 import com.google.common.collect.ForwardingObject;
12 import com.google.common.collect.ImmutableList;
13 import com.google.common.collect.ImmutableSet;
15 import java.util.Collection;
16 import java.util.List;
17 import java.util.Optional;
19 import org.opendaylight.yangtools.concepts.SemVer;
20 import org.opendaylight.yangtools.yang.common.QName;
21 import org.opendaylight.yangtools.yang.common.QNameModule;
22 import org.opendaylight.yangtools.yang.common.Revision;
23 import org.opendaylight.yangtools.yang.common.YangVersion;
24 import org.opendaylight.yangtools.yang.model.api.AugmentationSchemaNode;
25 import org.opendaylight.yangtools.yang.model.api.DataSchemaNode;
26 import org.opendaylight.yangtools.yang.model.api.Deviation;
27 import org.opendaylight.yangtools.yang.model.api.ExtensionDefinition;
28 import org.opendaylight.yangtools.yang.model.api.FeatureDefinition;
29 import org.opendaylight.yangtools.yang.model.api.GroupingDefinition;
30 import org.opendaylight.yangtools.yang.model.api.IdentitySchemaNode;
31 import org.opendaylight.yangtools.yang.model.api.Module;
32 import org.opendaylight.yangtools.yang.model.api.ModuleImport;
33 import org.opendaylight.yangtools.yang.model.api.NotificationDefinition;
34 import org.opendaylight.yangtools.yang.model.api.RpcDefinition;
35 import org.opendaylight.yangtools.yang.model.api.TypeDefinition;
36 import org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode;
37 import org.opendaylight.yangtools.yang.model.api.UsesNode;
39 final class FakeImportedModule extends ForwardingObject implements Module {
41 private final Module delegate;
43 FakeImportedModule(final Module delegate) {
44 this.delegate = Preconditions.checkNotNull(delegate);
48 protected Module delegate() {
53 public Set<TypeDefinition<?>> getTypeDefinitions() {
54 return ImmutableSet.of();
58 public Collection<DataSchemaNode> getChildNodes() {
59 return ImmutableList.of();
63 public Set<GroupingDefinition> getGroupings() {
64 return ImmutableSet.of();
68 public Set<UsesNode> getUses() {
69 return ImmutableSet.of();
73 public QNameModule getQNameModule() {
74 return delegate.getQNameModule();
78 public String getName() {
79 return delegate.getName();
83 public URI getNamespace() {
84 return delegate.getNamespace();
88 public Optional<Revision> getRevision() {
89 return delegate.getRevision();
93 public String getPrefix() {
94 return delegate.getPrefix();
98 public YangVersion getYangVersion() {
99 return delegate.getYangVersion();
103 public Optional<String> getDescription() {
104 return delegate.getDescription();
108 public Optional<String> getReference() {
109 return delegate.getReference();
113 public Optional<String> getOrganization() {
114 return delegate.getOrganization();
118 public Optional<String> getContact() {
119 return delegate.getContact();
123 public Set<ModuleImport> getImports() {
124 return ImmutableSet.of();
128 public Set<Module> getSubmodules() {
129 return ImmutableSet.of();
133 public Set<FeatureDefinition> getFeatures() {
134 return ImmutableSet.of();
138 public Set<AugmentationSchemaNode> getAugmentations() {
139 return ImmutableSet.of();
143 public Set<RpcDefinition> getRpcs() {
144 return ImmutableSet.of();
148 public Set<Deviation> getDeviations() {
149 return ImmutableSet.of();
153 public Set<IdentitySchemaNode> getIdentities() {
154 return ImmutableSet.of();
158 public List<ExtensionDefinition> getExtensionSchemaNodes() {
159 return ImmutableList.of();
163 public List<UnknownSchemaNode> getUnknownSchemaNodes() {
164 return ImmutableList.of();
168 public Optional<DataSchemaNode> findDataChildByName(final QName name) {
169 return Optional.empty();
173 public Set<NotificationDefinition> getNotifications() {
174 return delegate.getNotifications();
178 public Optional<SemVer> getSemanticVersion() {
179 return delegate.getSemanticVersion();