Move ReadData.READ_TX_TYPE 83/93083/2
authorRobert Varga <robert.varga@pantheon.tech>
Thu, 15 Oct 2020 15:28:34 +0000 (17:28 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Thu, 15 Oct 2020 15:35:39 +0000 (17:35 +0200)
This is a private constant, which ends up being misused in tests,
move it to its proper place and update tests accordingly. This
ends up simplifying callers.

Change-Id: I13eaf5d4c37b38efd87cc6542c0814858846d117
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
restconf/restconf-nb-rfc8040/src/main/java/org/opendaylight/restconf/nb/rfc8040/rests/utils/ReadDataTransactionUtil.java
restconf/restconf-nb-rfc8040/src/main/java/org/opendaylight/restconf/nb/rfc8040/rests/utils/RestconfDataServiceConstant.java
restconf/restconf-nb-rfc8040/src/test/java/org/opendaylight/restconf/nb/rfc8040/rests/utils/ReadDataTransactionUtilTest.java

index 086ed2aaafba203d76dc851bcc4d95f32056ecb0..d75898dbe9fb4c2306968480f6e2d1d8bb6a6691 100644 (file)
@@ -76,9 +76,9 @@ import org.opendaylight.yangtools.yang.model.api.SchemaContext;
  * <li>state
  * <li>all (config + state)
  * </ul>
- *
  */
 public final class ReadDataTransactionUtil {
+    private static final String READ_TYPE_TX = "READ";
 
     private ReadDataTransactionUtil() {
         throw new UnsupportedOperationException("Util class.");
@@ -100,8 +100,7 @@ public final class ReadDataTransactionUtil {
         }
 
         // check only allowed parameters
-        checkParametersTypes(RestconfDataServiceConstant.ReadData.READ_TYPE_TX,
-                uriInfo.getQueryParameters().keySet(),
+        checkParametersTypes(uriInfo.getQueryParameters().keySet(),
                 RestconfDataServiceConstant.ReadData.CONTENT,
                 RestconfDataServiceConstant.ReadData.DEPTH,
                 RestconfDataServiceConstant.ReadData.FIELDS, RestconfDataServiceConstant.ReadData.WITH_DEFAULTS);
@@ -232,13 +231,11 @@ public final class ReadDataTransactionUtil {
     /**
      * Check if URI does not contain not allowed parameters for specified operation.
      *
-     * @param operationType type of operation (READ, POST, PUT, DELETE...)
      * @param usedParameters parameters used in URI request
      * @param allowedParameters allowed parameters for operation
      */
     @VisibleForTesting
-    static void checkParametersTypes(final @NonNull String operationType,
-                                     final @NonNull Set<String> usedParameters,
+    static void checkParametersTypes(final @NonNull Set<String> usedParameters,
                                      final @NonNull String... allowedParameters) {
         // FIXME: there should be a speedier way to do this
         final Set<String> notAllowedParameters = Sets.newHashSet(usedParameters);
@@ -246,7 +243,7 @@ public final class ReadDataTransactionUtil {
 
         if (!notAllowedParameters.isEmpty()) {
             throw new RestconfDocumentedException(
-                    "Not allowed parameters for " + operationType + " operation: " + notAllowedParameters,
+                    "Not allowed parameters for " + READ_TYPE_TX + " operation: " + notAllowedParameters,
                     RestconfError.ErrorType.PROTOCOL,
                     RestconfError.ErrorTag.INVALID_VALUE);
         }
@@ -391,11 +388,9 @@ public final class ReadDataTransactionUtil {
         final ListenableFuture<Optional<NormalizedNode<?, ?>>> listenableFuture = strategy.read(store, path);
         if (closeTransactionChain) {
             //Method close transactionChain if any
-            FutureCallbackTx.addCallback(listenableFuture, RestconfDataServiceConstant.ReadData.READ_TYPE_TX,
-                    dataFactory, strategy.getTransactionChain());
+            FutureCallbackTx.addCallback(listenableFuture, READ_TYPE_TX, dataFactory, strategy.getTransactionChain());
         } else {
-            FutureCallbackTx.addCallback(listenableFuture, RestconfDataServiceConstant.ReadData.READ_TYPE_TX,
-                    dataFactory);
+            FutureCallbackTx.addCallback(listenableFuture, READ_TYPE_TX, dataFactory);
         }
         return dataFactory.build();
     }
index b336b8a7691d668efc60005f16d4e66992246587..27fabd4619699441ad76d63020d07e03d10838ba 100644 (file)
@@ -48,7 +48,6 @@ public final class RestconfDataServiceConstant {
         public static final int MIN_DEPTH = 1;
         public static final int MAX_DEPTH = 65535;
 
-        public static final String READ_TYPE_TX = "READ";
         public static final String WITH_DEFAULTS = "with-defaults";
         public static final String REPORT_ALL_DEFAULT_VALUE = "report-all";
         public static final String REPORT_ALL_TAGGED_DEFAULT_VALUE = "report-all-tagged";
index be7f0a475ef4d2eec154108d2c6635ceb1233669..428496125b29e898adadaf1aad0c8dd5ef551464 100644 (file)
@@ -340,7 +340,7 @@ public class ReadDataTransactionUtilTest {
 
     @Test(expected = RestconfDocumentedException.class)
     public void readDataFailTest() {
-        final String valueOfContent = RestconfDataServiceConstant.ReadData.READ_TYPE_TX;
+        final String valueOfContent = "nonsense";
         NormalizedNode<?, ?> normalizedNode = readData(valueOfContent, null, mdsalStrategy);
         assertNull(normalizedNode);
 
@@ -585,8 +585,7 @@ public class ReadDataTransactionUtilTest {
      */
     @Test
     public void checkParametersTypesTest() {
-        ReadDataTransactionUtil.checkParametersTypes(RestconfDataServiceConstant.ReadData.READ_TYPE_TX,
-                Set.of("content"),
+        ReadDataTransactionUtil.checkParametersTypes(Set.of("content"),
                 RestconfDataServiceConstant.ReadData.CONTENT, RestconfDataServiceConstant.ReadData.DEPTH);
     }
 
@@ -596,8 +595,7 @@ public class ReadDataTransactionUtilTest {
     @Test
     public void checkParametersTypesNegativeTest() {
         final RestconfDocumentedException ex = assertThrows(RestconfDocumentedException.class,
-            () -> ReadDataTransactionUtil.checkParametersTypes(RestconfDataServiceConstant.ReadData.READ_TYPE_TX,
-                    Set.of("not-allowed-parameter"),
+            () -> ReadDataTransactionUtil.checkParametersTypes(Set.of("not-allowed-parameter"),
                     RestconfDataServiceConstant.ReadData.CONTENT, RestconfDataServiceConstant.ReadData.DEPTH));
         assertEquals("Error type is not correct", ErrorType.PROTOCOL, ex.getErrors().get(0).getErrorType());
         assertEquals("Error tag is not correct", ErrorTag.INVALID_VALUE, ex.getErrors().get(0).getErrorTag());