I need to programmatically start or stop a flow or endpoint from another flow. Can this be done? Is there risk of message loss?
After some research I've found that the best option in my case is to start/stop the connectors associated with the endpoints I want to control.
muleContext.getRegistry().lookupConnector('connectorName').start() // or stop()
A disadvantage of this approach is that all the endpoints associated with the connector will be affected. If this is a problem, every endpoint should have its own connector.