class IO::Endpoint::CompositeEndpoint

def connect(wrapper = Wrapper.default, &block)

def connect(wrapper = Wrapper.default, &block)
	last_error = nil
	
	@endpoints.each do |endpoint|
		begin
			return endpoint.connect(wrapper, &block)
		rescue => last_error
		end
	end
	
	raise last_error
end