Implementing a fallback mechanism over Connection Interface

Specialized Server provides four interfaces to connect - HTTP, HTTPS, Telnet and SSH. We have a specific priority to connect with the server. e.g. Following sequence to be followed to connect to the server - HTTPS, HTTP, Telnet and SSH. It means that first the client will try to connect with HTTPS. If it fails then it will retry it again with HTTPS. If this fails again then it will try with HTTP and so on. I will get the respective connection object one's it will success. e.g. if connection with HTTP get success then it will return an HTTP connection object. 

Can you please help me to findout any pattern which can be helpful here?

Currently I am thinking to implement it using proxy. I will have a ConnectionProxy Class and this class will find the first successful connection protocol.

Implementing a fallback mechanism over Connection Interface
===


Specialized Server provides four interfaces to connect - HTTP, HTTPS, Telnet and SSH. We have a specific priority to connect with the server. e.g. Following sequence to be followed to connect to the server - HTTPS, HTTP, Telnet and SSH. It means that first the client will try to connect with HTTPS. If it fails then it will retry it again with HTTPS. If this fails again then it will try with HTTP and so on. I will get the respective connection object one's it will success. e.g. if connection with HTTP get success then it will return an HTTP connection object. 

Can you please help me to findout any pattern which can be helpful here?

Currently I am thinking to implement it using proxy. I will have a ConnectionProxy Class and this class will find the first successful connection protocol.
