You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by js...@apache.org on 2007/03/20 20:52:39 UTC
svn commit: r520539 - in /activemq/camel/trunk:
camel-core/src/main/java/org/apache/camel/
camel-core/src/main/java/org/apache/camel/builder/
camel-core/src/main/java/org/apache/camel/impl/
camel-core/src/main/java/org/apache/camel/pojo/ camel-core/src...
Author: jstrachan
Date: Tue Mar 20 12:52:38 2007
New Revision: 520539
URL: http://svn.apache.org/viewvc?view=rev&rev=520539
Log:
some minor refactoring
Modified:
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/Component.java
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/builder/PredicateBuilder.java
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/builder/ValueBuilder.java
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/pojo/PojoComponent.java
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/RecipientList.java
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/Splitter.java
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/queue/QueueComponent.java
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/util/ObjectHelper.java
activemq/camel/trunk/camel-jms/src/main/java/org/apache/camel/jms/JmsComponent.java
Modified: activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/Component.java
URL: http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/Component.java?view=diff&rev=520539&r1=520538&r2=520539
==============================================================================
--- activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/Component.java (original)
+++ activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/Component.java Tue Mar 20 12:52:38 2007
@@ -24,9 +24,9 @@
public interface Component<E> {
/**
- * The CamelContainer is injected into the component when it is added to it
+ * The {@link CamelContext} is injected into the component when it is added to it
*/
- void setContainer(CamelContext container);
+ void setContext(CamelContext context);
}
Modified: activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/builder/PredicateBuilder.java
URL: http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/builder/PredicateBuilder.java?view=diff&rev=520539&r1=520538&r2=520539
==============================================================================
--- activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/builder/PredicateBuilder.java (original)
+++ activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/builder/PredicateBuilder.java Tue Mar 20 12:52:38 2007
@@ -144,4 +144,41 @@
}
};
}
+
+ public static <E extends Exchange> Predicate<E> isNull(final Expression<E> expression) {
+ notNull(expression, "expression");
+
+ return new Predicate<E>() {
+ public boolean evaluate(E exchange) {
+ Object value = expression.evaluate(exchange);
+ return value == null;
+ }
+ };
+ }
+
+ public static <E extends Exchange> Predicate<E> isNotNull(final Expression<E> expression) {
+ notNull(expression, "expression");
+
+ return new Predicate<E>() {
+ public boolean evaluate(E exchange) {
+ Object value = expression.evaluate(exchange);
+ return value != null;
+ }
+ };
+ }
+
+ public static <E extends Exchange> Predicate<E> contains(final Expression<E> left, final Expression<E> right) {
+ notNull(left, "left");
+ notNull(right, "right");
+
+ return new Predicate<E>() {
+ public boolean evaluate(E exchange) {
+ Object value1 = left.evaluate(exchange);
+ Object value2 = right.evaluate(exchange);
+ return ObjectHelper.contains(value1, value2);
+ }
+ };
+ }
+
+
}
Modified: activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/builder/ValueBuilder.java
URL: http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/builder/ValueBuilder.java?view=diff&rev=520539&r1=520538&r2=520539
==============================================================================
--- activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/builder/ValueBuilder.java (original)
+++ activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/builder/ValueBuilder.java Tue Mar 20 12:52:38 2007
@@ -66,6 +66,15 @@
return PredicateBuilder.isInstanceOf(expression, type);
}
+ public Predicate<E> isNull() {
+ return PredicateBuilder.isNull(expression);
+ }
+
+ public Predicate<E> isNotNull() {
+ return PredicateBuilder.isNotNull(expression);
+ }
+
+
public Expression<E> getExpression() {
return expression;
}
Modified: activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
URL: http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java?view=diff&rev=520539&r1=520538&r2=520539
==============================================================================
--- activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java (original)
+++ activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java Tue Mar 20 12:52:38 2007
@@ -54,6 +54,7 @@
if( components.containsKey(componentName) ) {
throw new IllegalArgumentException("Component previously added: "+componentName);
}
+ component.setContext(this);
components.put(componentName, component);
}
}
@@ -93,7 +94,7 @@
throw new IllegalArgumentException("Factory failed to create the " + componentName + " component, it returned null.");
}
components.put(componentName, component);
- component.setContainer(this);
+ component.setContext(this);
}
catch (Exception e) {
throw new IllegalArgumentException("Factory failed to create the " + componentName + " component", e);
Modified: activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/pojo/PojoComponent.java
URL: http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/pojo/PojoComponent.java?view=diff&rev=520539&r1=520538&r2=520539
==============================================================================
--- activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/pojo/PojoComponent.java (original)
+++ activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/pojo/PojoComponent.java Tue Mar 20 12:52:38 2007
@@ -52,7 +52,7 @@
}
- public void setContainer(CamelContext container) {
+ public void setContext(CamelContext container) {
this.container = container;
}
public CamelContext getContainer() {
Modified: activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/RecipientList.java
URL: http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/RecipientList.java?view=diff&rev=520539&r1=520538&r2=520539
==============================================================================
--- activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/RecipientList.java (original)
+++ activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/RecipientList.java Tue Mar 20 12:52:38 2007
@@ -48,7 +48,7 @@
public void onExchange(E exchange) {
Object receipientList = expression.evaluate(exchange);
- Iterator iter = ObjectHelper.createIterator(receipientList);
+ Iterator iter = ObjectHelper.iterator(receipientList);
while (iter.hasNext()) {
Object recipient = iter.next();
Endpoint<E> endpoint = resolveEndpoint(exchange, recipient);
Modified: activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/Splitter.java
URL: http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/Splitter.java?view=diff&rev=520539&r1=520538&r2=520539
==============================================================================
--- activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/Splitter.java (original)
+++ activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/Splitter.java Tue Mar 20 12:52:38 2007
@@ -48,7 +48,7 @@
public void onExchange(E exchange) {
Object value = expression.evaluate(exchange);
- Iterator iter = createIterator(value);
+ Iterator iter = iterator(value);
while (iter.hasNext()) {
Object part = iter.next();
E newExchange = (E) exchange.copy();
Modified: activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/queue/QueueComponent.java
URL: http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/queue/QueueComponent.java?view=diff&rev=520539&r1=520538&r2=520539
==============================================================================
--- activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/queue/QueueComponent.java (original)
+++ activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/queue/QueueComponent.java Tue Mar 20 12:52:38 2007
@@ -35,7 +35,7 @@
private HashMap<String, BlockingQueue<E>> registry = new HashMap<String, BlockingQueue<E>>();
private CamelContext container;
- public void setContainer(CamelContext container) {
+ public void setContext(CamelContext container) {
this.container = container;
}
Modified: activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/util/ObjectHelper.java
URL: http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/util/ObjectHelper.java?view=diff&rev=520539&r1=520538&r2=520539
==============================================================================
--- activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/util/ObjectHelper.java (original)
+++ activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/util/ObjectHelper.java Tue Mar 20 12:52:38 2007
@@ -20,7 +20,6 @@
import java.util.Collection;
import java.util.Arrays;
import java.util.Collections;
-import java.lang.reflect.Array;
/**
* @version $Revision$
@@ -90,7 +89,7 @@
* Creates an iterator over the value if the value is a collection, an Object[] or a primitive type array; otherwise
* to simplify the caller's code, we just create a singleton collection iterator over a single value
*/
- public static Iterator createIterator(Object value) {
+ public static Iterator iterator(Object value) {
if (value == null) {
return Collections.EMPTY_LIST.iterator();
}
@@ -103,6 +102,25 @@
}
else {
return Collections.singletonList(value).iterator();
+ }
+ }
+
+ /**
+ * Returns true if the collection contains the specified value
+ */
+ public static boolean contains(Object collectionOrArray, Object value) {
+ if (collectionOrArray instanceof Collection) {
+ Collection collection = (Collection) collectionOrArray;
+ return collection.contains(value);
+ }
+ else {
+ Iterator iter = iterator(value);
+ while (iter.hasNext()) {
+ if (equals(value, iter.next())) {
+ return true;
+ }
+ }
+ return false;
}
}
}
Modified: activemq/camel/trunk/camel-jms/src/main/java/org/apache/camel/jms/JmsComponent.java
URL: http://svn.apache.org/viewvc/activemq/camel/trunk/camel-jms/src/main/java/org/apache/camel/jms/JmsComponent.java?view=diff&rev=520539&r1=520538&r2=520539
==============================================================================
--- activemq/camel/trunk/camel-jms/src/main/java/org/apache/camel/jms/JmsComponent.java (original)
+++ activemq/camel/trunk/camel-jms/src/main/java/org/apache/camel/jms/JmsComponent.java Tue Mar 20 12:52:38 2007
@@ -140,7 +140,7 @@
return container;
}
- public void setContainer(CamelContext container) {
+ public void setContext(CamelContext container) {
this.container = container;
}