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 2015/03/06 10:26:34 UTC
[1/2] camel git commit: CAMEL-8443: Added routeDescription to java
dsl to make it easier to set it. And use that for route description over JMX.
Repository: camel
Updated Branches:
refs/heads/master 5cddef75f -> 4a0dfd0b6
CAMEL-8443: Added routeDescription to java dsl to make it easier to set it. And use that for route description over JMX.
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/d43d1028
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/d43d1028
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/d43d1028
Branch: refs/heads/master
Commit: d43d1028d1b12be5f749b7c4c1f4eaa7a1568317
Parents: 5cddef7
Author: Claus Ibsen <da...@apache.org>
Authored: Fri Mar 6 09:49:45 2015 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Fri Mar 6 09:49:45 2015 +0100
----------------------------------------------------------------------
.../src/main/java/org/apache/camel/Route.java | 10 ++++++++++
.../org/apache/camel/impl/DefaultRoute.java | 5 +++++
.../apache/camel/impl/DefaultRouteContext.java | 1 +
.../camel/management/mbean/ManagedRoute.java | 2 +-
.../apache/camel/model/ProcessorDefinition.java | 20 ++++++++++++++++++++
.../org/apache/camel/model/RouteDefinition.java | 13 +++++++++++++
.../ManagedRouteStopAndStartTest.java | 8 +++++++-
7 files changed, 57 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/d43d1028/camel-core/src/main/java/org/apache/camel/Route.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/Route.java b/camel-core/src/main/java/org/apache/camel/Route.java
index e53c42c..162f07a 100644
--- a/camel-core/src/main/java/org/apache/camel/Route.java
+++ b/camel-core/src/main/java/org/apache/camel/Route.java
@@ -36,6 +36,7 @@ public interface Route extends EndpointAware {
String PARENT_PROPERTY = "parent";
String GROUP_PROPERTY = "group";
String REST_PROPERTY = "rest";
+ String DESCRIPTION_PROPERTY = "description";
/**
* Gets the route id
@@ -66,6 +67,15 @@ public interface Route extends EndpointAware {
Map<String, Object> getProperties();
/**
+ * Gets the route description (if any has been configured).
+ * <p/>
+ * The description is configured using the {@link #DESCRIPTION_PROPERTY} as key in the {@link #getProperties()}.
+ *
+ * @return the description, or <tt>null</tt> if no description has been configured.
+ */
+ String getDescription();
+
+ /**
* Gets the route context
*
* @return the route context
http://git-wip-us.apache.org/repos/asf/camel/blob/d43d1028/camel-core/src/main/java/org/apache/camel/impl/DefaultRoute.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/impl/DefaultRoute.java b/camel-core/src/main/java/org/apache/camel/impl/DefaultRoute.java
index 61b1e62..0d214c0 100644
--- a/camel-core/src/main/java/org/apache/camel/impl/DefaultRoute.java
+++ b/camel-core/src/main/java/org/apache/camel/impl/DefaultRoute.java
@@ -76,6 +76,11 @@ public abstract class DefaultRoute extends ServiceSupport implements Route {
return properties;
}
+ public String getDescription() {
+ Object value = properties.get(Route.DESCRIPTION_PROPERTY);
+ return value != null ? value.toString() : null;
+ }
+
public void onStartingServices(List<Service> services) throws Exception {
addServices(services);
}
http://git-wip-us.apache.org/repos/asf/camel/blob/d43d1028/camel-core/src/main/java/org/apache/camel/impl/DefaultRouteContext.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/impl/DefaultRouteContext.java b/camel-core/src/main/java/org/apache/camel/impl/DefaultRouteContext.java
index 39b6089..52e4328 100644
--- a/camel-core/src/main/java/org/apache/camel/impl/DefaultRouteContext.java
+++ b/camel-core/src/main/java/org/apache/camel/impl/DefaultRouteContext.java
@@ -196,6 +196,7 @@ public class DefaultRouteContext implements RouteContext {
Route edcr = new EventDrivenConsumerRoute(this, getEndpoint(), internal);
edcr.getProperties().put(Route.ID_PROPERTY, routeId);
edcr.getProperties().put(Route.PARENT_PROPERTY, Integer.toHexString(route.hashCode()));
+ edcr.getProperties().put(Route.DESCRIPTION_PROPERTY, route.getDescriptionText());
if (route.getGroup() != null) {
edcr.getProperties().put(Route.GROUP_PROPERTY, route.getGroup());
}
http://git-wip-us.apache.org/repos/asf/camel/blob/d43d1028/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedRoute.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedRoute.java b/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedRoute.java
index 631a0e0..3bd1dad 100644
--- a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedRoute.java
+++ b/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedRoute.java
@@ -63,7 +63,7 @@ public class ManagedRoute extends ManagedPerformanceCounter implements TimerList
public ManagedRoute(ModelCamelContext context, Route route) {
this.route = route;
this.context = context;
- this.description = route.toString();
+ this.description = route.getDescription();
boolean enabled = context.getManagementStrategy().getStatisticsLevel() != ManagementStatisticsLevel.Off;
setStatisticsEnabled(enabled);
}
http://git-wip-us.apache.org/repos/asf/camel/blob/d43d1028/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java b/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java
index 3a114a8..7d440f8 100644
--- a/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java
+++ b/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java
@@ -960,6 +960,26 @@ public abstract class ProcessorDefinition<Type extends ProcessorDefinition<Type>
}
/**
+ * Set the route description for this route
+ *
+ * @param description the route description
+ * @return the builder
+ */
+ @SuppressWarnings("unchecked")
+ public Type routeDescription(String description) {
+ ProcessorDefinition<?> def = this;
+
+ RouteDefinition route = ProcessorDefinitionHelper.getRoute(def);
+ if (route != null) {
+ DescriptionDefinition desc = new DescriptionDefinition();
+ desc.setText(description);
+ route.setDescription(desc);
+ }
+
+ return (Type) this;
+ }
+
+ /**
* <a href="http://camel.apache.org/multicast.html">Multicast EIP:</a>
* Multicasts messages to all its child outputs; so that each processor and
* destination gets a copy of the original message to avoid the processors
http://git-wip-us.apache.org/repos/asf/camel/blob/d43d1028/camel-core/src/main/java/org/apache/camel/model/RouteDefinition.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/model/RouteDefinition.java b/camel-core/src/main/java/org/apache/camel/model/RouteDefinition.java
index 5533090..54e7e55 100644
--- a/camel-core/src/main/java/org/apache/camel/model/RouteDefinition.java
+++ b/camel-core/src/main/java/org/apache/camel/model/RouteDefinition.java
@@ -364,6 +364,19 @@ public class RouteDefinition extends ProcessorDefinition<RouteDefinition> {
}
/**
+ * Set the route description for this route
+ *
+ * @param description the route description
+ * @return the builder
+ */
+ public RouteDefinition routeDescription(String description) {
+ DescriptionDefinition desc = new DescriptionDefinition();
+ desc.setText(description);
+ setDescription(desc);
+ return this;
+ }
+
+ /**
* Disable stream caching for this route.
*
* @return the builder
http://git-wip-us.apache.org/repos/asf/camel/blob/d43d1028/camel-core/src/test/java/org/apache/camel/management/ManagedRouteStopAndStartTest.java
----------------------------------------------------------------------
diff --git a/camel-core/src/test/java/org/apache/camel/management/ManagedRouteStopAndStartTest.java b/camel-core/src/test/java/org/apache/camel/management/ManagedRouteStopAndStartTest.java
index 3f08854..b6d6aa7 100644
--- a/camel-core/src/test/java/org/apache/camel/management/ManagedRouteStopAndStartTest.java
+++ b/camel-core/src/test/java/org/apache/camel/management/ManagedRouteStopAndStartTest.java
@@ -56,6 +56,12 @@ public class ManagedRouteStopAndStartTest extends ManagementTestSupport {
String state = (String) mbeanServer.getAttribute(on, "State");
assertEquals("Should be started", ServiceStatus.Started.name(), state);
+ String id = (String) mbeanServer.getAttribute(on, "RouteId");
+ assertEquals("foo", id);
+
+ String description = (String) mbeanServer.getAttribute(on, "Description");
+ assertEquals("This is the foo route", description);
+
// stop
mbeanServer.invoke(on, "stop", null, null);
@@ -98,7 +104,7 @@ public class ManagedRouteStopAndStartTest extends ManagementTestSupport {
return new RouteBuilder() {
@Override
public void configure() throws Exception {
- from("file://target/managed")
+ from("file://target/managed").routeId("foo").routeDescription("This is the foo route")
.convertBodyTo(String.class)
.to("mock:result");
}
[2/2] camel git commit: CAMEL-8443: Added routeDescription to java
dsl to make it easier to set it. And use that for route description over JMX.
Posted by da...@apache.org.
CAMEL-8443: Added routeDescription to java dsl to make it easier to set it. And use that for route description over JMX.
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/4a0dfd0b
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/4a0dfd0b
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/4a0dfd0b
Branch: refs/heads/master
Commit: 4a0dfd0b6731b70453e46d2fe48f035991a070f7
Parents: d43d102
Author: Claus Ibsen <da...@apache.org>
Authored: Fri Mar 6 10:27:53 2015 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Fri Mar 6 10:27:53 2015 +0100
----------------------------------------------------------------------
.../src/main/resources/META-INF/spring/camel-context.xml | 3 +++
1 file changed, 3 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/4a0dfd0b/examples/camel-example-management/src/main/resources/META-INF/spring/camel-context.xml
----------------------------------------------------------------------
diff --git a/examples/camel-example-management/src/main/resources/META-INF/spring/camel-context.xml b/examples/camel-example-management/src/main/resources/META-INF/spring/camel-context.xml
index fb9a263..56e1f7e 100644
--- a/examples/camel-example-management/src/main/resources/META-INF/spring/camel-context.xml
+++ b/examples/camel-example-management/src/main/resources/META-INF/spring/camel-context.xml
@@ -32,12 +32,14 @@
<jmxAgent id="agent" createConnector="true" loadStatisticsEnabled="true"/>
<route>
+ <description>Route that creates input files</description>
<from uri="timer://inbox?period=5000"/>
<bean beanType="org.apache.camel.example.management.StockService" method="createRandomStocks"/>
<to uri="file://target/inbox"/>
</route>
<route>
+ <description>Route that pickup incoming files and split into messages with stock prices</description>
<from uri="file://target/inbox"/>
<split>
<xpath>/stocks/stock</xpath>
@@ -50,6 +52,7 @@
</route>
<route>
+ <description>Route that process stock prices and logs</description>
<from uri="activemq:queue:stock"/>
<delay>
<constant>100</constant>