add support for switchable transports