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 254336707f0 camel-core: Polished and fixed a TODO
254336707f0 is described below

commit 254336707f031b10e3be37de2f5162a6321355e9
Author: Claus Ibsen <[email protected]>
AuthorDate: Fri Aug 30 15:38:28 2024 +0200

    camel-core: Polished and fixed a TODO
---
 .../src/main/java/org/apache/camel/builder/Builder.java          | 4 ++--
 .../src/main/java/org/apache/camel/processor/ContractAdvice.java | 1 -
 .../src/main/java/org/apache/camel/support/ObjectHelper.java     | 9 +++++++--
 .../src/test/java/org/apache/camel/support/ObjectHelperTest.java | 7 +++++--
 4 files changed, 14 insertions(+), 7 deletions(-)

diff --git 
a/core/camel-core-model/src/main/java/org/apache/camel/builder/Builder.java 
b/core/camel-core-model/src/main/java/org/apache/camel/builder/Builder.java
index 39bdf7fec5a..56962d3f727 100644
--- a/core/camel-core-model/src/main/java/org/apache/camel/builder/Builder.java
+++ b/core/camel-core-model/src/main/java/org/apache/camel/builder/Builder.java
@@ -333,7 +333,7 @@ public final class Builder {
     }
 
     /**
-     * Wasm TODO.
+     * Call a wasm (web assembly) function.
      */
     public static ValueBuilder wasm(String value) {
         WasmExpression exp = new WasmExpression(value);
@@ -341,7 +341,7 @@ public final class Builder {
     }
 
     /**
-     * Wasm TODO.
+     * Call a wasm (web assembly) function.
      */
     public static ValueBuilder wasm(String value, Class<?> resultType) {
         WasmExpression exp = new WasmExpression(value);
diff --git 
a/core/camel-core-processor/src/main/java/org/apache/camel/processor/ContractAdvice.java
 
b/core/camel-core-processor/src/main/java/org/apache/camel/processor/ContractAdvice.java
index 1de209d8cdb..6d6e698df5e 100644
--- 
a/core/camel-core-processor/src/main/java/org/apache/camel/processor/ContractAdvice.java
+++ 
b/core/camel-core-processor/src/main/java/org/apache/camel/processor/ContractAdvice.java
@@ -84,7 +84,6 @@ public class ContractAdvice implements 
CamelInternalProcessorAdvice<Object> {
     @Override
     public void after(Exchange exchange, Object data) throws Exception {
         if (exchange.isFailed()) {
-            // TODO can we add FAULT_TYPE processing?
             return;
         }
 
diff --git 
a/core/camel-support/src/main/java/org/apache/camel/support/ObjectHelper.java 
b/core/camel-support/src/main/java/org/apache/camel/support/ObjectHelper.java
index 3bc8b75b28c..43ac378788f 100644
--- 
a/core/camel-support/src/main/java/org/apache/camel/support/ObjectHelper.java
+++ 
b/core/camel-support/src/main/java/org/apache/camel/support/ObjectHelper.java
@@ -422,8 +422,10 @@ public final class ObjectHelper {
         }
 
         boolean dots = false;
+        boolean digits = false;
+        char ch = 0;
         for (int i = startPos; i < text.length(); i++) {
-            char ch = text.charAt(i);
+            ch = text.charAt(i);
             if (!Character.isDigit(ch)) {
                 if (ch == '.') {
                     if (dots) {
@@ -433,9 +435,12 @@ public final class ObjectHelper {
                 } else {
                     return false;
                 }
+            } else {
+                digits = true;
             }
         }
-        return true;
+        // there must be digits and not start or end with a dot
+        return digits && text.charAt(startPos) != '.' && ch != '.';
     }
 
     /**
diff --git 
a/core/camel-support/src/test/java/org/apache/camel/support/ObjectHelperTest.java
 
b/core/camel-support/src/test/java/org/apache/camel/support/ObjectHelperTest.java
index 2f9ae2bf9a4..9727f0c80af 100644
--- 
a/core/camel-support/src/test/java/org/apache/camel/support/ObjectHelperTest.java
+++ 
b/core/camel-support/src/test/java/org/apache/camel/support/ObjectHelperTest.java
@@ -79,9 +79,12 @@ class ObjectHelperTest {
         assertFalse(ObjectHelper.isFloatingNumber("ABC.0"));
         assertFalse(ObjectHelper.isFloatingNumber("-ABC.0"));
         assertFalse(ObjectHelper.isFloatingNumber("!@#$#$%@#$%"));
-        // TODO: fix ... currently it returns true for this
-        //assertFalse(ObjectHelper.isFloatingNumber("."));
+        assertFalse(ObjectHelper.isFloatingNumber("."));
+        assertFalse(ObjectHelper.isFloatingNumber(".0"));
+        assertFalse(ObjectHelper.isFloatingNumber(".."));
+        assertFalse(ObjectHelper.isFloatingNumber("...0"));
         assertFalse(ObjectHelper.isFloatingNumber("-"));
+        assertFalse(ObjectHelper.isFloatingNumber("1."));
     }
 
     @Test

Reply via email to