class WebSocketTransportFactory extends AbstractTransportFactory implements ConduitInitiator,
    DestinationFactory {

    public Destination getDestination(EndpointInfo endpointInfo, Bus bus) throws IOException {
        if (endpointInfo == null) {
            throw new IllegalArgumentException("EndpointInfo cannot be null");
        }
        synchronized (registry) {
            AbstractHTTPDestination d = registry.getDestinationForPath(endpointInfo.getAddress());
            if (d == null) {
                d = factory.createDestination(endpointInfo, bus, registry);
                if (d == null) {
                    String error = "No destination available. The CXF websocket transport needs either the "
                        + "Jetty WebSocket or Atmosphere dependencies to be available";
                    throw new IOException(error);
                }
                registry.addDestination(d);
                configure(bus, d);
                d.finalizeConfig();
            }
            return d;
        }
    }

    public  WebSocketTransportFactory();
    public  WebSocketTransportFactory(DestinationRegistry registry);

}