View Javadoc

1   package org.sourceforge.jemm.comm.connection.socket;
2   
3   import java.io.IOException;
4   import java.io.InputStream;
5   import java.io.OutputStream;
6   import java.net.Socket;
7   
8   import org.sourceforge.jemm.comm.connection.ClientConnectionFactory;
9   import org.sourceforge.jemm.comm.connection.Connection;
10  import org.sourceforge.jemm.comm.connection.ConnectionException;
11  
12  public class SocketClientConnectionFactory implements ClientConnectionFactory {
13  
14  	private final String hostname;
15  	private final int port;
16  	
17  	public SocketClientConnectionFactory(String hostname,int port) {
18  		this.hostname = hostname;
19  		this.port = port;
20  	}
21  	
22  	@Override
23  	public Connection connect() throws ConnectionException {
24  		
25  		
26  		Socket socket = null;
27  		try {
28  			socket  = new Socket(hostname,port);
29  			InputStream is = socket.getInputStream();
30  			OutputStream os = socket.getOutputStream();
31  			return new SocketConnection(socket,is,os,hostname,port);
32  		}catch(IOException ioe) {
33  			throw new ConnectionException("Error connection to " + hostname + ":" + port,ioe);
34  		}
35  	}
36  
37  	@Override
38  	public String getConnectionAddress() {
39  		return "socket:"+ hostname + ":" + port;
40  	}
41  }