throws Exception {
RouteboxEndpoint blackboxRouteEndpoint = null;
config.parseURI(new URI(uri), parameters, this);
if (config.getInnerProtocol().equalsIgnoreCase("direct")) {
blackboxRouteEndpoint = new RouteboxDirectEndpoint(uri, this, config);
setProperties(blackboxRouteEndpoint.getConfig(), parameters);
} else {
String baseUri = getQueueKey(uri);
blackboxRouteEndpoint = new RouteboxSedaEndpoint(uri, this, config, createQueue(baseUri, parameters));
setProperties(blackboxRouteEndpoint.getConfig(), parameters);