Thanks for your work on this.
Can you use a non scheduled thread pool, as a scheduled thread pool cannot shrink, so it just keep 1 thread alive all the time, which is really not needed. We essentially need a thread pool that has 0-1 in size, so the thread can terminate when no longer needed. Also as a good citizen you ought to shutdown the pool when the consumer is shutting down in its doShutdown method. Albeit Camel has a fallback mehanishm, so it will shutdown thread pools when it shutdown itself. But still being a good citizen is a good idea.
Also if you use maven from the command line, you may want to check about building with checkstyle, so the source code is formatted correct.