You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2023/09/18 05:31:14 UTC

[camel] branch main updated: CAMEL-19870 Camel AS2: Should accept MDN field name Disposition as case insensitive (#11431)

This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/main by this push:
     new 816a42a1b41 CAMEL-19870 Camel AS2: Should accept MDN field name Disposition as case insensitive (#11431)
816a42a1b41 is described below

commit 816a42a1b410dc34b7377166a2bc96f7f4ce2f06
Author: isakkirajan Perumal <is...@gmail.com>
AuthorDate: Mon Sep 18 11:01:08 2023 +0530

    CAMEL-19870 Camel AS2: Should accept MDN field name Disposition as case insensitive (#11431)
---
 .../camel/component/as2/api/entity/DispositionMode.java    | 10 +++++-----
 .../api/util/DispositionNotificationContentUtilsTest.java  | 14 ++++++++++++++
 2 files changed, 19 insertions(+), 5 deletions(-)

diff --git a/components/camel-as2/camel-as2-api/src/main/java/org/apache/camel/component/as2/api/entity/DispositionMode.java b/components/camel-as2/camel-as2-api/src/main/java/org/apache/camel/component/as2/api/entity/DispositionMode.java
index d4d961e35b4..e73162e4c3c 100644
--- a/components/camel-as2/camel-as2-api/src/main/java/org/apache/camel/component/as2/api/entity/DispositionMode.java
+++ b/components/camel-as2/camel-as2-api/src/main/java/org/apache/camel/component/as2/api/entity/DispositionMode.java
@@ -44,14 +44,14 @@ public enum DispositionMode {
     }
 
     public static DispositionMode parseDispositionMode(String dispositionModeString) {
-        switch (dispositionModeString) {
-            case "manual-action/MDN-sent-manually":
+        switch (dispositionModeString.toLowerCase()) {
+            case "manual-action/mdn-sent-manually":
                 return MANUAL_ACTION_MDN_SENT_MANUALLY;
-            case "manual-actionMDN-sent-automatically":
+            case "manual-action/mdn-sent-automatically":
                 return MANUAL_ACTION_MDN_SENT_AUTOMATICALLY;
-            case "automatic-action/MDN-sent-manually":
+            case "automatic-action/mdn-sent-manually":
                 return AUTOMATIC_ACTION_MDN_SENT_MANUALLY;
-            case "automatic-action/MDN-sent-automatically":
+            case "automatic-action/mdn-sent-automatically":
                 return AUTOMATIC_ACTION_MDN_SENT_AUTOMATICALLY;
             default:
                 return null;
diff --git a/components/camel-as2/camel-as2-api/src/test/java/org/apache/camel/component/as2/api/util/DispositionNotificationContentUtilsTest.java b/components/camel-as2/camel-as2-api/src/test/java/org/apache/camel/component/as2/api/util/DispositionNotificationContentUtilsTest.java
index 53c71ec5d6c..e5f7b483c74 100644
--- a/components/camel-as2/camel-as2-api/src/test/java/org/apache/camel/component/as2/api/util/DispositionNotificationContentUtilsTest.java
+++ b/components/camel-as2/camel-as2-api/src/test/java/org/apache/camel/component/as2/api/util/DispositionNotificationContentUtilsTest.java
@@ -118,4 +118,18 @@ public class DispositionNotificationContentUtilsTest {
                 "Unexpected Digest Algorithm ID");
     }
 
+    @Test
+    public void testDispoistionTypeCaseSensitivity() throws Exception {
+        String dispoistionTypeMixedCase = "automatic-action/MDN-Sent-automatically";
+        String dispoistionTypeLowerCase = "automatic-action/mdn-sent-automatically";
+
+        DispositionMode resultMixedCase = DispositionMode.parseDispositionMode(dispoistionTypeMixedCase);
+        DispositionMode resultLowerCase = DispositionMode.parseDispositionMode(dispoistionTypeLowerCase);
+
+        assertEquals(DispositionMode.AUTOMATIC_ACTION_MDN_SENT_AUTOMATICALLY, resultMixedCase,
+                "DispositionMode should be case insensitive");
+        assertEquals(DispositionMode.AUTOMATIC_ACTION_MDN_SENT_AUTOMATICALLY, resultLowerCase,
+                "DispositionMode should be case insensitive");
+    }
+
 }