package com.supcon.hcc.connector;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.Socket;
public class HccConnector {
boolean flag;
Socket socket;
long lastTime = 0;
BufferedReader input;
BufferedWriter out;
int buffSize;
public HccConnector(Socket socket,int buffSize){
this.socket = socket;
this.buffSize = buffSize;
try {
input = new BufferedReader(new InputStreamReader(socket.getInputStream()));
out = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));
lastTime = System.currentTimeMillis();
flag = true;
} catch (IOException e) {
e.printStackTrace();
}
}
public String getMSG(){
boolean ready = false;
char[] msg = new char[1024];
try {
ready = input.ready();
if(ready){
input.read(msg);
}
if(ready){
lastTime = System.currentTimeMillis();
}else{
if((System.currentTimeMillis() - lastTime) > 5000){
flag = false;
}
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return new String(msg);
}
public void sendMSG(String msg){
try {
out.write(msg);
out.flush();
} catch (IOException e) {
e.printStackTrace();
}
}
public void close(){
System.out.println("close");
try {
input.close();
out.close();
socket.close();
} catch (IOException e) {
e.printStackTrace();
}finally{
input = null;
out = null;
socket = null;
}
}
public boolean getFlag(){
return flag;
}
}