This fixes a subtle (but rare) bug. client.getTransports() creates an immutable *view* of the
list of transports that's set via setTransports( ). Since it's just a view, the underlying List can change
out from under us and this copy is necessary to make sure it doesn't change during the lifetime of this
connection.