[
https://issues.apache.org/activemq/browse/CAMEL-743?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=44627#action_44627
]
James Strachan commented on CAMEL-743:
--------------------------------------
Agreed on putting it into the camel distro; it should only depend on some
gshell stuff which shouldn't change very much.
How about we start by adding the easy stuff; like listing all routes,
endpoints.
Something like an ls command?
Maybe we should make a kinda virtual camel file system - kinda like unix. e.g.
{code}
camel> ls
routes endpoints
camel> cd endpoints
camel> ls
direct:foo mock:cheese
camel> ls -l
direct:foo org.apache.camel.component.direct.DirectEndpoint
mock:cheese org.apache.camel.component.mock.MockEndpoint
camel> cd ../routes
camel> ls
route1 route2 route3
camel> cd route1
camel> ls -al
from1 to1 to2
camel> ls -al
from1 direct:foo
to1 mock:cheese
camel> cd mock:cheese
camel> ls
properties exchanges
camel> cd exchanges
camel> ls
exchangeId1 exchangeId2 exchangeId3
camel> cd exchangeId1
camel> ls
properties in out
{code}
You get the idea :)
i.e. maybe we write a little generic kinda cd / ls file system shell which can
be really easy to extend can then navigate around all the available endpoints &
routes showing a summary listing or a detail listing etc.
(Maybe we can just make this a kinda JMX browser really - not sure).
Then other things we'd need to add are things like [turning on / off
tracing|http://activemq.apache.org/camel/tracer.html], or enable/disable the
the [delayer to really slow down the processing of routes so its easy to
watch|http://issues.apache.org/activemq/browse/CAMEL-640] - or even allowing
stepping through routes maybe via the
[debugger|http://activemq.apache.org/camel/debugger.html] and showing the
contents of endpoints (i.e. showing what the tracer has collected).
To answer your question on how to add new routes via a shell - maybe we just
have a separate camel-scala shell that lets you type in the [scala
DSL|http://activemq.apache.org/camel/scala-dsl.html]?
> create a command line console for Camel for use in ServiceMix
> -------------------------------------------------------------
>
> Key: CAMEL-743
> URL: https://issues.apache.org/activemq/browse/CAMEL-743
> Project: Apache Camel
> Issue Type: New Feature
> Reporter: James Strachan
> Assignee: Willem Jiang
> Fix For: 1.5.0
>
>
> for more background see...
> * [console and commands|http://servicemix.apache.org/SMX4KNL/41-commands.html]
> * [extending the
> console|http://servicemix.apache.org/SMX4KNL/7-extending-the-console.html]
> some ideas for what the console can do
> * listing routes and the steps in routes
> * dynamically add some simple routes. e.g. type in "from uri to uri". Maybe
> the Scala DSL could be its own shell?
> * enable/disable tracing
> * debugging? e.g. stepping through, setting breakpoints
> * enable/disable a 'go slow dial' for easier debugging etc
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.