Updated Branches:
  refs/heads/master 67f562cf0 -> 07a0b9e1b

Upgraded to Avro 1.7.5 and Snappy-Java 1.1.0.1 (which itself is already an OSGi 
bundle, so no need for a SMX bundle anymore). Fixed and enabled the 
camel-infinispan Karaf feature. Also fixed and enabled the two Karaf Tests 
CamelDisruptorTest and CamelInfinispanTest.

Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/07a0b9e1
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/07a0b9e1
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/07a0b9e1

Branch: refs/heads/master
Commit: 07a0b9e1b7cb356a1ce0aac58c026e25cfe230c6
Parents: 67f562c
Author: Babak Vahdat <bvah...@apache.org>
Authored: Thu Nov 28 17:52:46 2013 +0100
Committer: Babak Vahdat <bvah...@apache.org>
Committed: Thu Nov 28 17:52:46 2013 +0100

----------------------------------------------------------------------
 .../camel/component/avro/AvroListener.java      | 418 +++++++++----------
 .../component/avro/AvroReflectResponder.java    |  72 ++--
 .../component/avro/AvroSpecificResponder.java   |   2 +-
 parent/pom.xml                                  |   6 +-
 .../features/src/main/resources/features.xml    |   8 +-
 .../camel/itest/karaf/AbstractFeatureTest.java  |   1 +
 .../camel/itest/karaf/CamelDisruptorTest.java   |   2 -
 .../camel/itest/karaf/CamelInfinispanTest.java  |   2 -
 8 files changed, 252 insertions(+), 259 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/07a0b9e1/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroListener.java
----------------------------------------------------------------------
diff --git 
a/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroListener.java
 
b/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroListener.java
index c593080..60aedcf 100644
--- 
a/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroListener.java
+++ 
b/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroListener.java
@@ -1,210 +1,208 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.component.avro;
-
-import java.net.InetSocketAddress;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.ConcurrentMap;
-
-import org.apache.avro.Protocol;
-import org.apache.avro.Schema;
-import org.apache.avro.ipc.HttpServer;
-import org.apache.avro.ipc.NettyServer;
-import org.apache.avro.ipc.Server;
-import org.apache.avro.ipc.specific.SpecificResponder;
-import org.apache.avro.specific.SpecificData;
-import org.apache.camel.Exchange;
-import org.apache.camel.util.ExchangeHelper;
-import org.apache.commons.lang.StringUtils;
-import org.mortbay.log.Log;
-
-import static 
org.apache.camel.component.avro.AvroConstants.AVRO_HTTP_TRANSPORT;
-import static 
org.apache.camel.component.avro.AvroConstants.AVRO_NETTY_TRANSPORT;
-
-
-/**
- * This class holds server that listen to given protocol:host:port combination 
and dispatches messages to
- * different routes mapped.
- */
-public class AvroListener {
-
-    private ConcurrentMap<String, AvroConsumer> consumerRegistry = new 
ConcurrentHashMap<String, AvroConsumer>();
-    private AvroConsumer defaultConsumer;
-    private final Server server;
-    private final AvroConfiguration configuration;
-
-    public AvroListener(AvroEndpoint endpoint)  throws Exception {
-        configuration = endpoint.getConfiguration();
-        server = initAndStartServer(endpoint.getConfiguration());
-    }
-
-    /**
-     * Initializes and starts http or netty server on basis of transport 
protocol from configuration.
-     *
-     *
-     * @param configuration
-     * @return Initialized and started server
-     * @throws java.io.IOException
-     */
-    private Server initAndStartServer(AvroConfiguration configuration) throws 
Exception {
-        SpecificResponder responder;
-        Server server;
-
-        if (configuration.isReflectionProtocol()) {
-            responder = new AvroReflectResponder(configuration.getProtocol(), 
this);
-        } else {
-            responder = new AvroSpecificResponder(configuration.getProtocol(), 
this);
-        }
-
-
-        if 
(AVRO_HTTP_TRANSPORT.equalsIgnoreCase(configuration.getTransport())) {
-            server = new HttpServer(responder, configuration.getPort());
-        } else if 
(AVRO_NETTY_TRANSPORT.equalsIgnoreCase(configuration.getTransport())) {
-            server = new NettyServer(responder, new 
InetSocketAddress(configuration.getHost(), configuration.getPort()));
-        } else {
-            throw new IllegalArgumentException("Unknown transport " + 
configuration.getTransport());
-        }
-
-        server.start();
-
-        return server;
-    }
-
-    /**
-     * Registers consumer by appropriate message name as key in registry.
-     *
-     * @param messageName message name
-     * @param consumer avro consumer
-     * @throws AvroComponentException
-     */
-    public void register(String messageName, AvroConsumer consumer) throws 
AvroComponentException {
-        if (messageName == null) {
-            if (this.defaultConsumer != null) {
-                throw new AvroComponentException("Default consumer already 
registered for uri: " + consumer.getEndpoint().getEndpointUri());
-            }    
-            this.defaultConsumer = consumer;
-        } else {
-            if (consumerRegistry.putIfAbsent(messageName, consumer) != null) {
-                throw new AvroComponentException("Consumer already registered 
for message: " + messageName + " and uri: " + 
consumer.getEndpoint().getEndpointUri());
-            }
-        }
-    }
-
-    /**
-     * Unregisters consumer by message name.
-     * Stops server in case if all consumers are unregistered and default 
consumer is absent or stopped.
-     *
-     * @param messageName message name
-     * @return true if all consumers are unregistered and defaultConsumer is 
absent or null.
-     *         It means that this responder can be unregistered.
-     */
-    public boolean unregister(String messageName) {
-        if (!StringUtils.isEmpty(messageName)) {
-            if (consumerRegistry.remove(messageName) == null) {
-                Log.warn("Consumer with message name " + messageName + " was 
already unregistered.");
-            }
-        } else {
-            defaultConsumer = null;
-        }
-
-        if ((defaultConsumer == null) && (consumerRegistry.isEmpty())) {
-            if (server != null) {
-                server.close();
-            }
-            return true;
-        }
-        return false;
-    }
-
-    public Object respond(Protocol.Message message, Object request, 
SpecificData data) throws Exception {
-        AvroConsumer consumer = this.defaultConsumer;
-        if (this.consumerRegistry.containsKey(message.getName())) {
-            consumer = this.consumerRegistry.get(message.getName());
-        }
-
-        if (consumer == null) {
-            throw new AvroComponentException("No consumer defined for message: 
" + message.getName());
-        }
-
-        Object params = extractParams(message, request, 
consumer.getEndpoint().getConfiguration().isSingleParameter(), data);
-
-        return processExchange(consumer, message, params);
-    }
-
-    /**
-     * Extracts parameters from RPC call to List or converts to object of 
appropriate type
-     * if only one parameter set.
-     *
-     * @param message Avro message
-     * @param request Avro request
-     * @param singleParameter Indicates that called method has single parameter
-     * @param dataResolver Extracts type of parameters in call
-     * @return Parameters of RPC method invocation
-     */
-    private static Object extractParams(Protocol.Message message, Object 
request, boolean singleParameter, SpecificData dataResolver) {
-
-        if (singleParameter) {
-            Schema.Field field = message.getRequest().getFields().get(0);
-            return dataResolver.getField(request, field.name(), field.pos());
-        } else {
-            int i = 0;
-            Object[] params =  new 
Object[message.getRequest().getFields().size()];
-            for (Schema.Field param : message.getRequest().getFields()) {
-                params[i] = dataResolver.getField(request, param.name(), 
param.pos());
-                i++;
-            }
-            return params;
-        }
-    }
-
-    /**
-     * Creates exchange and processes it.
-     *
-     * @param consumer Holds processor and exception handler
-     * @param message Message on which exchange is created
-     * @param params Params of exchange
-     * @return Response of exchange processing
-     * @throws Exception
-     */
-    private static Object processExchange(AvroConsumer consumer, 
Protocol.Message message, Object params) throws Exception {
-        Object response;
-        Exchange exchange = consumer.getEndpoint().createExchange(message, 
params);
-
-        try {
-            consumer.getProcessor().process(exchange);
-        } catch (Throwable e) {
-            consumer.getExceptionHandler().handleException(e);
-        }
-
-        if (ExchangeHelper.isOutCapable(exchange)) {
-            response = exchange.getOut().getBody();
-        } else {
-            response = null;
-        }
-
-        boolean failed = exchange.isFailed();
-        if (failed) {
-            if (exchange.getException() != null) {
-                throw exchange.getException();
-            } else {
-                // failed and no exception, must be a fault
-                throw new AvroComponentException("Camel processing error.");
-            }
-        }
-        return response;
-    }
-}
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.component.avro;
+
+import java.net.InetSocketAddress;
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.ConcurrentMap;
+
+import org.apache.avro.Protocol;
+import org.apache.avro.Schema;
+import org.apache.avro.ipc.HttpServer;
+import org.apache.avro.ipc.NettyServer;
+import org.apache.avro.ipc.Server;
+import org.apache.avro.ipc.specific.SpecificResponder;
+import org.apache.avro.specific.SpecificData;
+import org.apache.camel.Exchange;
+import org.apache.camel.util.ExchangeHelper;
+import org.apache.commons.lang.StringUtils;
+import org.mortbay.log.Log;
+
+import static 
org.apache.camel.component.avro.AvroConstants.AVRO_HTTP_TRANSPORT;
+import static 
org.apache.camel.component.avro.AvroConstants.AVRO_NETTY_TRANSPORT;
+
+
+/**
+ * This class holds server that listen to given protocol:host:port combination 
and dispatches messages to
+ * different routes mapped.
+ */
+public class AvroListener {
+
+    private ConcurrentMap<String, AvroConsumer> consumerRegistry = new 
ConcurrentHashMap<String, AvroConsumer>();
+    private AvroConsumer defaultConsumer;
+    private final Server server;
+
+    public AvroListener(AvroEndpoint endpoint)  throws Exception {
+        server = initAndStartServer(endpoint.getConfiguration());
+    }
+
+    /**
+     * Initializes and starts http or netty server on basis of transport 
protocol from configuration.
+     *
+     *
+     * @param configuration
+     * @return Initialized and started server
+     * @throws java.io.IOException
+     */
+    private Server initAndStartServer(AvroConfiguration configuration) throws 
Exception {
+        SpecificResponder responder;
+        Server server;
+
+        if (configuration.isReflectionProtocol()) {
+            responder = new AvroReflectResponder(configuration.getProtocol(), 
this);
+        } else {
+            responder = new AvroSpecificResponder(configuration.getProtocol(), 
this);
+        }
+
+
+        if 
(AVRO_HTTP_TRANSPORT.equalsIgnoreCase(configuration.getTransport())) {
+            server = new HttpServer(responder, configuration.getPort());
+        } else if 
(AVRO_NETTY_TRANSPORT.equalsIgnoreCase(configuration.getTransport())) {
+            server = new NettyServer(responder, new 
InetSocketAddress(configuration.getHost(), configuration.getPort()));
+        } else {
+            throw new IllegalArgumentException("Unknown transport " + 
configuration.getTransport());
+        }
+
+        server.start();
+
+        return server;
+    }
+
+    /**
+     * Registers consumer by appropriate message name as key in registry.
+     *
+     * @param messageName message name
+     * @param consumer avro consumer
+     * @throws AvroComponentException
+     */
+    public void register(String messageName, AvroConsumer consumer) throws 
AvroComponentException {
+        if (messageName == null) {
+            if (this.defaultConsumer != null) {
+                throw new AvroComponentException("Default consumer already 
registered for uri: " + consumer.getEndpoint().getEndpointUri());
+            }    
+            this.defaultConsumer = consumer;
+        } else {
+            if (consumerRegistry.putIfAbsent(messageName, consumer) != null) {
+                throw new AvroComponentException("Consumer already registered 
for message: " + messageName + " and uri: " + 
consumer.getEndpoint().getEndpointUri());
+            }
+        }
+    }
+
+    /**
+     * Unregisters consumer by message name.
+     * Stops server in case if all consumers are unregistered and default 
consumer is absent or stopped.
+     *
+     * @param messageName message name
+     * @return true if all consumers are unregistered and defaultConsumer is 
absent or null.
+     *         It means that this responder can be unregistered.
+     */
+    public boolean unregister(String messageName) {
+        if (!StringUtils.isEmpty(messageName)) {
+            if (consumerRegistry.remove(messageName) == null) {
+                Log.warn("Consumer with message name " + messageName + " was 
already unregistered.");
+            }
+        } else {
+            defaultConsumer = null;
+        }
+
+        if ((defaultConsumer == null) && (consumerRegistry.isEmpty())) {
+            if (server != null) {
+                server.close();
+            }
+            return true;
+        }
+        return false;
+    }
+
+    public Object respond(Protocol.Message message, Object request, 
SpecificData data) throws Exception {
+        AvroConsumer consumer = this.defaultConsumer;
+        if (this.consumerRegistry.containsKey(message.getName())) {
+            consumer = this.consumerRegistry.get(message.getName());
+        }
+
+        if (consumer == null) {
+            throw new AvroComponentException("No consumer defined for message: 
" + message.getName());
+        }
+
+        Object params = extractParams(message, request, 
consumer.getEndpoint().getConfiguration().isSingleParameter(), data);
+
+        return processExchange(consumer, message, params);
+    }
+
+    /**
+     * Extracts parameters from RPC call to List or converts to object of 
appropriate type
+     * if only one parameter set.
+     *
+     * @param message Avro message
+     * @param request Avro request
+     * @param singleParameter Indicates that called method has single parameter
+     * @param dataResolver Extracts type of parameters in call
+     * @return Parameters of RPC method invocation
+     */
+    private static Object extractParams(Protocol.Message message, Object 
request, boolean singleParameter, SpecificData dataResolver) {
+
+        if (singleParameter) {
+            Schema.Field field = message.getRequest().getFields().get(0);
+            return dataResolver.getField(request, field.name(), field.pos());
+        } else {
+            int i = 0;
+            Object[] params =  new 
Object[message.getRequest().getFields().size()];
+            for (Schema.Field param : message.getRequest().getFields()) {
+                params[i] = dataResolver.getField(request, param.name(), 
param.pos());
+                i++;
+            }
+            return params;
+        }
+    }
+
+    /**
+     * Creates exchange and processes it.
+     *
+     * @param consumer Holds processor and exception handler
+     * @param message Message on which exchange is created
+     * @param params Params of exchange
+     * @return Response of exchange processing
+     * @throws Exception
+     */
+    private static Object processExchange(AvroConsumer consumer, 
Protocol.Message message, Object params) throws Exception {
+        Object response;
+        Exchange exchange = consumer.getEndpoint().createExchange(message, 
params);
+
+        try {
+            consumer.getProcessor().process(exchange);
+        } catch (Throwable e) {
+            consumer.getExceptionHandler().handleException(e);
+        }
+
+        if (ExchangeHelper.isOutCapable(exchange)) {
+            response = exchange.getOut().getBody();
+        } else {
+            response = null;
+        }
+
+        boolean failed = exchange.isFailed();
+        if (failed) {
+            if (exchange.getException() != null) {
+                throw exchange.getException();
+            } else {
+                // failed and no exception, must be a fault
+                throw new AvroComponentException("Camel processing error.");
+            }
+        }
+        return response;
+    }
+}

http://git-wip-us.apache.org/repos/asf/camel/blob/07a0b9e1/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroReflectResponder.java
----------------------------------------------------------------------
diff --git 
a/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroReflectResponder.java
 
b/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroReflectResponder.java
index 16fd712..0b45738 100644
--- 
a/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroReflectResponder.java
+++ 
b/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroReflectResponder.java
@@ -1,36 +1,36 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.component.avro;
-
-import org.apache.avro.Protocol;
-import org.apache.avro.ipc.reflect.ReflectResponder;
-import org.apache.avro.reflect.ReflectData;
-
-public class AvroReflectResponder extends ReflectResponder {
-    private AvroListener listener;
-
-    public AvroReflectResponder(Protocol protocol, AvroListener listener) 
throws Exception {
-        super(protocol, null);
-        this.listener = listener;
-    }
-
-    @Override
-    public Object respond(Protocol.Message message, Object request) throws 
Exception {
-        return listener.respond(message, request, ReflectData.get());
-    }
-
-}
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.component.avro;
+
+import org.apache.avro.Protocol;
+import org.apache.avro.ipc.reflect.ReflectResponder;
+import org.apache.avro.reflect.ReflectData;
+
+public class AvroReflectResponder extends ReflectResponder {
+    private AvroListener listener;
+
+    public AvroReflectResponder(Protocol protocol, AvroListener listener) 
throws Exception {
+        super(protocol, listener);
+        this.listener = listener;
+    }
+
+    @Override
+    public Object respond(Protocol.Message message, Object request) throws 
Exception {
+        return listener.respond(message, request, ReflectData.get());
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/camel/blob/07a0b9e1/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroSpecificResponder.java
----------------------------------------------------------------------
diff --git 
a/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroSpecificResponder.java
 
b/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroSpecificResponder.java
index 98a5d82..3387ef2 100644
--- 
a/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroSpecificResponder.java
+++ 
b/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroSpecificResponder.java
@@ -25,7 +25,7 @@ public class AvroSpecificResponder extends SpecificResponder {
 
 
     public AvroSpecificResponder(Protocol protocol, AvroListener listener)  
throws Exception {
-        super(protocol, null);
+        super(protocol, listener);
         this.listener = listener;
     }
 

http://git-wip-us.apache.org/repos/asf/camel/blob/07a0b9e1/parent/pom.xml
----------------------------------------------------------------------
diff --git a/parent/pom.xml b/parent/pom.xml
index 6dbbde3..ed0c32f 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -58,8 +58,8 @@
     <atomikos-transactions-version>3.8.0</atomikos-transactions-version>
     <avalon-bundle-version>4.3.1_1</avalon-bundle-version>
     <avalon-version>4.3.1</avalon-version>
-    <avro-version>1.7.3</avro-version>
-    <avro-bundle-version>1.7.3_1</avro-bundle-version>
+    <avro-version>1.7.5</avro-version>
+    <avro-bundle-version>1.7.5_1</avro-bundle-version>
     <aws-java-sdk-bundle-version>1.6.3_1</aws-java-sdk-bundle-version>
     <aws-java-sdk-version>1.6.3</aws-java-sdk-version>
     <axiom-version>1.2.14</axiom-version>
@@ -366,7 +366,7 @@
     <slf4j-version>1.7.5</slf4j-version>
     <smack-bundle-version>3.2.1_1</smack-bundle-version>
     <smack-version>3.2.1</smack-version>
-    <snappy-bundle-version>1.0.4.1_1</snappy-bundle-version>
+    <snappy-version>1.1.0.1</snappy-version>
     <snmp4j-version>2.2.2_1</snmp4j-version>
     <solr-bundle-version>4.5.1_1</solr-bundle-version>
     <solr-version>4.5.1</solr-version>

http://git-wip-us.apache.org/repos/asf/camel/blob/07a0b9e1/platforms/karaf/features/src/main/resources/features.xml
----------------------------------------------------------------------
diff --git a/platforms/karaf/features/src/main/resources/features.xml 
b/platforms/karaf/features/src/main/resources/features.xml
index 98623a3..e8c6c43 100644
--- a/platforms/karaf/features/src/main/resources/features.xml
+++ b/platforms/karaf/features/src/main/resources/features.xml
@@ -91,13 +91,13 @@
     <bundle 
dependency='true'>mvn:org.codehaus.jackson/jackson-core-asl/${jackson-version}</bundle>
     <bundle 
dependency='true'>mvn:org.codehaus.jackson/jackson-mapper-asl/${jackson-version}</bundle>
     <bundle dependency='true'>mvn:io.netty/netty/${netty3-version}</bundle>
-    <bundle 
dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.snappy-java/${snappy-bundle-version}</bundle>
     <bundle 
dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.paranamer/${paranamer-bundle-version}</bundle>
     <bundle 
dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.avro/${avro-bundle-version}</bundle>
     <bundle 
dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.avro-ipc/${avro-bundle-version}</bundle>
     <bundle 
dependency='true'>mvn:org.apache.commons/commons-compress/${commons-compress-version}</bundle>
     <bundle 
dependency='true'>mvn:commons-lang/commons-lang/${commons-lang-version}</bundle>
     <bundle 
dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jetty/${jetty6-bundle-version}</bundle>
+    <bundle 
dependency='true'>mvn:org.xerial.snappy/snappy-java/${snappy-version}</bundle>
     <bundle>mvn:org.apache.camel/camel-avro/${project.version}</bundle>
   </feature>
   <feature name='camel-aws' version='${project.version}' resolver='(obr)' 
start-level='50'>
@@ -424,7 +424,6 @@
     <bundle 
dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.xmlresolver/${xmlresolver-bundle-version}</bundle>
     <bundle 
dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jsch/${jsch-bundle-version}</bundle>
     <bundle 
dependency='true'>mvn:org.codehaus.jettison/jettison/${jettison-version}</bundle>
-    <bundle 
dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.snappy-java/${snappy-bundle-version}</bundle>
     <bundle 
dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.paranamer/${paranamer-bundle-version}</bundle>
     <bundle 
dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.avro/${avro-bundle-version}</bundle>
     <bundle 
dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.avro-ipc/${avro-bundle-version}</bundle>
@@ -436,6 +435,7 @@
     <bundle 
dependency='true'>mvn:org.apache.geronimo.specs/geronimo-servlet_3.0_spec/${geronimo-servlet-spec-version}</bundle>
     <bundle 
dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jets3t/0.9.0_2</bundle>
     <bundle 
dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jopt-simple/4.3_1</bundle>
+    <bundle 
dependency='true'>mvn:org.xerial.snappy/snappy-java/${snappy-version}</bundle>
     <bundle dependency='true'>wrap:mvn:bsf/bsf/2.4.0</bundle>
   </feature>
   <feature name='camel-hdfs' version='${project.version}' resolver='(obr)' 
start-level='50'>
@@ -511,7 +511,6 @@
     <feature version='${project.version}'>camel-core</feature>
     <bundle>mvn:org.apache.camel/camel-ical/${project.version}</bundle>
   </feature>
-  <!-- TODO: infinispan-client-hotrod has flawed MANIFEST.MF
   <feature name='camel-infinispan' version='${project.version}' 
resolver='(obr)' start-level='50'>
     <bundle 
dependency='true'>mvn:org.infinispan/infinispan-core/${infinispan-version}</bundle>
     <bundle 
dependency='true'>mvn:org.infinispan/infinispan-commons/${infinispan-version}</bundle>
@@ -521,10 +520,9 @@
     <bundle 
dependency='true'>wrap:mvn:org.jboss.marshalling/jboss-marshalling/${jboss-marshalling-version}</bundle>
     <bundle 
dependency='true'>wrap:mvn:org.jboss.marshalling/jboss-marshalling-river/${jboss-marshalling-version}</bundle>
     <bundle 
dependency='true'>mvn:commons-pool/commons-pool/${commons-pool-version}</bundle>
-    <feature version='${project.version}'>camel-core</feature>
+    <feature version='${project.version}'>camel-avro</feature>
     <bundle>mvn:org.apache.camel/camel-infinispan/${project.version}</bundle>
   </feature>  
--->
   <feature name='camel-irc' version='${project.version}' resolver='(obr)' 
start-level='50'>
     <bundle 
dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.irclib/${irclib-bundle-version}</bundle>
     <feature version='${project.version}'>camel-core</feature>

http://git-wip-us.apache.org/repos/asf/camel/blob/07a0b9e1/tests/camel-itest-karaf/src/test/java/org/apache/camel/itest/karaf/AbstractFeatureTest.java
----------------------------------------------------------------------
diff --git 
a/tests/camel-itest-karaf/src/test/java/org/apache/camel/itest/karaf/AbstractFeatureTest.java
 
b/tests/camel-itest-karaf/src/test/java/org/apache/camel/itest/karaf/AbstractFeatureTest.java
index bc1987a..1495218 100644
--- 
a/tests/camel-itest-karaf/src/test/java/org/apache/camel/itest/karaf/AbstractFeatureTest.java
+++ 
b/tests/camel-itest-karaf/src/test/java/org/apache/camel/itest/karaf/AbstractFeatureTest.java
@@ -163,6 +163,7 @@ public abstract class AbstractFeatureTest {
                 // override the config.properties (to fix pax-exam bug)
                 replaceConfigurationFile("etc/config.properties", new 
File("src/test/resources/org/apache/camel/itest/karaf/config.properties")),
                 replaceConfigurationFile("etc/custom.properties", new 
File("src/test/resources/org/apache/camel/itest/karaf/custom.properties")),
+                replaceConfigurationFile("etc/jre.properties", new 
File("../../platforms/karaf/features/src/main/resources/config.properties")),
                 // we need INFO logging otherwise we cannot see what happens
                 logLevel(LogLevelOption.LogLevel.INFO),
                  // install the cxf jaxb spec as the karaf doesn't provide it 
by default

http://git-wip-us.apache.org/repos/asf/camel/blob/07a0b9e1/tests/camel-itest-karaf/src/test/java/org/apache/camel/itest/karaf/CamelDisruptorTest.java
----------------------------------------------------------------------
diff --git 
a/tests/camel-itest-karaf/src/test/java/org/apache/camel/itest/karaf/CamelDisruptorTest.java
 
b/tests/camel-itest-karaf/src/test/java/org/apache/camel/itest/karaf/CamelDisruptorTest.java
index 728d894..5b56939 100644
--- 
a/tests/camel-itest-karaf/src/test/java/org/apache/camel/itest/karaf/CamelDisruptorTest.java
+++ 
b/tests/camel-itest-karaf/src/test/java/org/apache/camel/itest/karaf/CamelDisruptorTest.java
@@ -16,7 +16,6 @@
  */
 package org.apache.camel.itest.karaf;
 
-import org.junit.Ignore;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.Option;
@@ -24,7 +23,6 @@ import org.ops4j.pax.exam.junit.Configuration;
 import org.ops4j.pax.exam.junit.JUnit4TestRunner;
 
 @RunWith(JUnit4TestRunner.class)
-@Ignore("disruptor requries sun.misc package")
 public class CamelDisruptorTest extends AbstractFeatureTest {
 
     @Test

http://git-wip-us.apache.org/repos/asf/camel/blob/07a0b9e1/tests/camel-itest-karaf/src/test/java/org/apache/camel/itest/karaf/CamelInfinispanTest.java
----------------------------------------------------------------------
diff --git 
a/tests/camel-itest-karaf/src/test/java/org/apache/camel/itest/karaf/CamelInfinispanTest.java
 
b/tests/camel-itest-karaf/src/test/java/org/apache/camel/itest/karaf/CamelInfinispanTest.java
index 3e7624d..d11c400 100644
--- 
a/tests/camel-itest-karaf/src/test/java/org/apache/camel/itest/karaf/CamelInfinispanTest.java
+++ 
b/tests/camel-itest-karaf/src/test/java/org/apache/camel/itest/karaf/CamelInfinispanTest.java
@@ -16,7 +16,6 @@
  */
 package org.apache.camel.itest.karaf;
 
-import org.junit.Ignore;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.Option;
@@ -24,7 +23,6 @@ import org.ops4j.pax.exam.junit.Configuration;
 import org.ops4j.pax.exam.junit.JUnit4TestRunner;
 
 @RunWith(JUnit4TestRunner.class)
-@Ignore("infinispan-client-hotrod has invalid MANIFEST.MF")
 public class CamelInfinispanTest extends AbstractFeatureTest {
     public static final String COMPONENT = 
extractName(CamelInfinispanTest.class);
 

Reply via email to