try {
final String endpointUri = ComponentNameComposer.composeComponentUri(serviceName);
final List<RouteDefinition> routeDefinitions = getRouteDefinition(ccim);
verifyRouteDefinitions(routeDefinitions, ccim);
getCamelContext().addRouteDefinitions(routeDefinitions);
final SwitchYardEndpoint endpoint = getCamelContext().getEndpoint(endpointUri, SwitchYardEndpoint.class);
endpoint.setMessageComposer(CamelComposition.getMessageComposer());
final SwitchYardConsumer consumer = endpoint.getConsumer();
consumer.setComponentName(config.getComponent().getQName());
consumer.setNamespace(serviceName.getNamespaceURI());
return consumer;
} catch (final Exception e) {
throw new SwitchYardException(e.getMessage(), e);