mirror of
https://github.com/happyfish100/fastdfs-client-java.git
synced 2026-09-17 09:20:46 +00:00
90 lines
1.5 KiB
Java
90 lines
1.5 KiB
Java
/**
|
|
* Copyright (C) 2008 Happy Fish / YuQing
|
|
*
|
|
* FastDFS Java Client may be copied only under the terms of the GNU Lesser
|
|
* General Public License (LGPL).
|
|
* Please visit the FastDFS Home Page http://www.csource.org/ for more detail.
|
|
*/
|
|
|
|
package org.csource.fastdfs;
|
|
|
|
import java.io.*;
|
|
import java.util.*;
|
|
import java.net.*;
|
|
import org.csource.common.*;
|
|
|
|
/**
|
|
* Tracker Server Info
|
|
* @author Happy Fish / YuQing
|
|
* @version Version 1.11
|
|
*/
|
|
public class TrackerServer
|
|
{
|
|
protected Socket sock;
|
|
protected InetSocketAddress inetSockAddr;
|
|
|
|
/**
|
|
* Constructor
|
|
* @param sock Socket of server
|
|
* @param inetSockAddr the server info
|
|
*/
|
|
public TrackerServer(Socket sock, InetSocketAddress inetSockAddr)
|
|
{
|
|
this.sock = sock;
|
|
this.inetSockAddr = inetSockAddr;
|
|
}
|
|
|
|
/**
|
|
* get the connected socket
|
|
* @return the socket
|
|
*/
|
|
public Socket getSocket() throws IOException
|
|
{
|
|
if (this.sock == null)
|
|
{
|
|
this.sock = ClientGlobal.getSocket(this.inetSockAddr);
|
|
}
|
|
|
|
return this.sock;
|
|
}
|
|
|
|
/**
|
|
* get the server info
|
|
* @return the server info
|
|
*/
|
|
public InetSocketAddress getInetSocketAddress()
|
|
{
|
|
return this.inetSockAddr;
|
|
}
|
|
|
|
public OutputStream getOutputStream() throws IOException
|
|
{
|
|
return this.sock.getOutputStream();
|
|
}
|
|
|
|
public InputStream getInputStream() throws IOException
|
|
{
|
|
return this.sock.getInputStream();
|
|
}
|
|
|
|
public void close() throws IOException
|
|
{
|
|
if (this.sock != null)
|
|
{
|
|
try
|
|
{
|
|
ProtoCommon.closeSocket(this.sock);
|
|
}
|
|
finally
|
|
{
|
|
this.sock = null;
|
|
}
|
|
}
|
|
}
|
|
|
|
protected void finalize() throws Throwable
|
|
{
|
|
this.close();
|
|
}
|
|
}
|