Add RestconfQueryParam
[netconf.git] / restconf / restconf-nb-rfc8040 / src / main / java / org / opendaylight / restconf / nb / rfc8040 / ContentParam.java
similarity index 76%
rename from restconf/restconf-nb-rfc8040/src/main/java/org/opendaylight/restconf/nb/rfc8040/ContentParameter.java
rename to restconf/restconf-nb-rfc8040/src/main/java/org/opendaylight/restconf/nb/rfc8040/ContentParam.java
index b55bcfa5a624c7adbcfa9c4e9767f3cdd70ee48b..f4f6fa54380b2e22c769afed6d90865b970536ac 100644 (file)
@@ -16,7 +16,7 @@ import org.eclipse.jdt.annotation.Nullable;
  * Enumeration of possible {@code content} values as defined by
  * <a href="https://datatracker.ietf.org/doc/html/rfc8040#section-4.8.1">RFC8040, section 4.8.1</a>.
  */
-public enum ContentParameter {
+public enum ContentParam implements RestconfQueryParam<ContentParam> {
     /**
      * Return all descendant data nodes.
      */
@@ -32,11 +32,22 @@ public enum ContentParameter {
 
     private final @NonNull String uriValue;
 
-    ContentParameter(final String uriValue) {
+    ContentParam(final String uriValue) {
         this.uriValue = requireNonNull(uriValue);
     }
 
-    public @NonNull String uriValue() {
+    @Override
+    public final Class<@NonNull ContentParam> javaClass() {
+        return ContentParam.class;
+    }
+
+    @Override
+    public final String paramName() {
+        return uriName();
+    }
+
+    @Override
+    public String paramValue() {
         return uriValue;
     }
 
@@ -45,7 +56,7 @@ public enum ContentParameter {
     }
 
     // Note: returns null of unknowns
-    public static @Nullable ContentParameter forUriValue(final String uriValue) {
+    public static @Nullable ContentParam forUriValue(final String uriValue) {
         switch (uriValue) {
             case "all":
                 return ALL;