001package ca.uhn.hl7v2.util;
002
003import java.io.IOException;
004import java.net.ServerSocket;
005import java.net.Socket;
006
007/**
008 * Pluggable socket factory interface
009 */
010public interface SocketFactory {
011
012        /**
013         * Create a standard client socket
014         */
015        Socket createSocket() throws IOException;
016        
017        /**
018         * Create a TLS client socket
019         */
020        Socket createTlsSocket() throws IOException;
021        
022        /**
023         * Create a standard server socket
024         */     
025        ServerSocket createServerSocket() throws IOException;
026        
027        /**
028         * Create a TLS server socket
029         */
030        ServerSocket createTlsServerSocket() throws IOException;
031        
032}