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

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


The following commit(s) were added to refs/heads/master by this push:
     new 27cbab0  [CAMEL-13128] Cannot install camel-jms Karaf feature
27cbab0 is described below

commit 27cbab03017f509454baa19fe916cef354f026e9
Author: Guillaume Nodet <gno...@gmail.com>
AuthorDate: Mon Jan 28 14:00:13 2019 +0100

    [CAMEL-13128] Cannot install camel-jms Karaf feature
---
 .../apache/camel/util/IntrospectionSupport.java    | 13 +++++++++-
 .../java/org/apache/camel/util/ObjectHelper.java   | 28 ++++++++++++++++++++++
 2 files changed, 40 insertions(+), 1 deletion(-)

diff --git 
a/components/camel-jms/src/main/java/org/apache/camel/util/IntrospectionSupport.java
 b/camel-util/src/main/java/org/apache/camel/util/IntrospectionSupport.java
similarity index 68%
rename from 
components/camel-jms/src/main/java/org/apache/camel/util/IntrospectionSupport.java
rename to 
camel-util/src/main/java/org/apache/camel/util/IntrospectionSupport.java
index b44fee6..47da9fa 100644
--- 
a/components/camel-jms/src/main/java/org/apache/camel/util/IntrospectionSupport.java
+++ b/camel-util/src/main/java/org/apache/camel/util/IntrospectionSupport.java
@@ -16,6 +16,7 @@
  */
 package org.apache.camel.util;
 
+import java.lang.reflect.Method;
 import java.util.Map;
 
 /**
@@ -26,7 +27,17 @@ public final class IntrospectionSupport {
     private IntrospectionSupport() {
     }
 
+    /**
+     * @deprecated use {@link 
org.apache.camel.support.IntrospectionSupport#extractProperties} instead
+     */
+    @Deprecated
     public static Map<String, Object> extractProperties(Map<String, Object> 
properties, String optionPrefix) {
-        return 
org.apache.camel.support.IntrospectionSupport.extractProperties(properties, 
optionPrefix);
+        try {
+            Class<?> clazz = 
Class.forName("org.apache.camel.support.IntrospectionSupport");
+            Method method = clazz.getMethod("extractProperties", Map.class, 
String.class);
+            return (Map) method.invoke(properties, optionPrefix);
+        } catch (Throwable t) {
+            throw new RuntimeException(t);
+        }
     }
 }
diff --git a/camel-util/src/main/java/org/apache/camel/util/ObjectHelper.java 
b/camel-util/src/main/java/org/apache/camel/util/ObjectHelper.java
index 68f0c0a..0427fc7 100644
--- a/camel-util/src/main/java/org/apache/camel/util/ObjectHelper.java
+++ b/camel-util/src/main/java/org/apache/camel/util/ObjectHelper.java
@@ -1134,4 +1134,32 @@ public final class ObjectHelper {
             && (FLOAT_NAN.equals(value) || DOUBLE_NAN.equals(value));
     }
 
+    /**
+     * Wraps the caused exception in a {@link RuntimeException} if its not
+     * already such an exception.
+     *
+     * @param e the caused exception
+     * @return the wrapper exception
+     * @deprecated Use {@link 
org.apache.camel.CamelRuntimeException#wrapRuntimeCamelException} instead
+     */
+    @Deprecated
+    public static RuntimeException wrapRuntimeCamelException(Throwable e) {
+        try {
+            Class<? extends RuntimeException> clazz = (Class) 
Class.forName("org.apache.camel.RuntimeException");
+            if (clazz.isInstance(e)) {
+                // don't double wrap
+                return clazz.cast(e);
+            } else {
+                return clazz.getConstructor(Throwable.class).newInstance(e);
+            }
+        } catch (Throwable t) {
+            // ignore
+        }
+        if (e instanceof RuntimeException) {
+            // don't double wrap
+            return (RuntimeException) e;
+        } else {
+            return new RuntimeException(e);
+        }
+    }
 }

Reply via email to