Como parte de mi requisito del proyecto, yo estaba pasando por los Apache Camel Docs para eliminar Ruta desde el contexto de camello antes de actualizarlo.
Aquí estoy confundido con removeRouteDefinition que elimina una definición de la ruta de la CamelContext - parando cualquier rutas previamente en marcha y removeRoute , stopRoute la que hace el mismo trabajo que los primeros.
¿Cuál es exactamente la diferencia entre estos métodos?
La principal diferencia es, que CamelContext#removeRouteDefinition
detiene ruta gracia, y luego lo elimina de Context
.
El método CamelContext#removeRoute
puede eliminar ruta sólo se detuvo. Si intenta quitar corriendo ruta, el método devuelve false y no pasa nada.
Por lo que estos dos fragmentos son equivalentes:
removeRouteDefinition
getContext().removeRouteDefinition(getContext().getRouteDefinition("routeId"));
removeRoute
getContext().stopRoute("routeId");
getContext().removeRoute("routeId");