Remove JSR305 annotations from yang-data-util
[yangtools.git] / yang / yang-data-util / src / main / java / org / opendaylight / yangtools / yang / data / util / RpcAsContainer.java
index a2735e2ef5a644884581f70b12b528eef3150481..ee9a00352924198389c0f6342360cef87c540bbe 100644 (file)
@@ -7,35 +7,37 @@
  */
 package org.opendaylight.yangtools.yang.data.util;
 
+import com.google.common.collect.ImmutableSet;
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.List;
+import java.util.Optional;
 import java.util.Set;
 import org.opendaylight.yangtools.yang.common.QName;
-import org.opendaylight.yangtools.yang.model.api.AugmentationSchema;
-import org.opendaylight.yangtools.yang.model.api.ConstraintDefinition;
+import org.opendaylight.yangtools.yang.model.api.ActionDefinition;
+import org.opendaylight.yangtools.yang.model.api.AugmentationSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.DataSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.GroupingDefinition;
+import org.opendaylight.yangtools.yang.model.api.MustDefinition;
+import org.opendaylight.yangtools.yang.model.api.NotificationDefinition;
+import org.opendaylight.yangtools.yang.model.api.RevisionAwareXPath;
 import org.opendaylight.yangtools.yang.model.api.RpcDefinition;
 import org.opendaylight.yangtools.yang.model.api.SchemaPath;
 import org.opendaylight.yangtools.yang.model.api.Status;
 import org.opendaylight.yangtools.yang.model.api.TypeDefinition;
-import org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.UsesNode;
 
 public final class RpcAsContainer implements ContainerSchemaNode {
-
     private final RpcDefinition delegate;
 
     @Override
-    public String getDescription() {
+    public Optional<String> getDescription() {
         return delegate.getDescription();
     }
 
     @Override
-    public String getReference() {
+    public Optional<String> getReference() {
         return delegate.getReference();
     }
 
@@ -77,35 +79,26 @@ public final class RpcAsContainer implements ContainerSchemaNode {
     }
 
     @Override
-    public List<UnknownSchemaNode> getUnknownSchemaNodes() {
-        return Collections.emptyList();
-    }
-
-    @Override
-    public DataSchemaNode getDataChildByName(final QName name) {
-        return getDataChildByName(name.getLocalName());
-    }
-
-    @Override
-    public DataSchemaNode getDataChildByName(final String name) {
-        switch (name) {
+    public Optional<DataSchemaNode> findDataChildByName(final QName name) {
+        // FIXME: check QNameModule
+        switch (name.getLocalName()) {
             case "input":
-                return delegate.getInput();
+                return Optional.of(delegate.getInput());
             case "output":
-                return delegate.getOutput();
+                return Optional.of(delegate.getOutput());
             default:
-                return null;
+                return Optional.empty();
         }
     }
 
     @Override
     public Set<UsesNode> getUses() {
-        return Collections.emptySet();
+        return ImmutableSet.of();
     }
 
     @Override
-    public Set<AugmentationSchema> getAvailableAugmentations() {
-        return Collections.emptySet();
+    public Set<AugmentationSchemaNode> getAvailableAugmentations() {
+        return ImmutableSet.of();
     }
 
     @Override
@@ -127,11 +120,13 @@ public final class RpcAsContainer implements ContainerSchemaNode {
         return ret;
     }
 
+    @Deprecated
     @Override
     public boolean isAugmenting() {
         return false;
     }
 
+    @Deprecated
     @Override
     public boolean isAddedByUses() {
         return false;
@@ -143,9 +138,22 @@ public final class RpcAsContainer implements ContainerSchemaNode {
     }
 
     @Override
-    public ConstraintDefinition getConstraints() {
-        // TODO Auto-generated method stub
-        return null;
+    public Set<ActionDefinition> getActions() {
+        return ImmutableSet.of();
     }
 
+    @Override
+    public Set<NotificationDefinition> getNotifications() {
+        return ImmutableSet.of();
+    }
+
+    @Override
+    public Collection<MustDefinition> getMustConstraints() {
+        return ImmutableSet.of();
+    }
+
+    @Override
+    public Optional<RevisionAwareXPath> getWhenCondition() {
+        return Optional.empty();
+    }
 }