diff options
Diffstat (limited to 'client/src/com/macaroon/piztor/Transam.java')
-rw-r--r-- | client/src/com/macaroon/piztor/Transam.java | 139 |
1 files changed, 0 insertions, 139 deletions
diff --git a/client/src/com/macaroon/piztor/Transam.java b/client/src/com/macaroon/piztor/Transam.java deleted file mode 100644 index 3410502..0000000 --- a/client/src/com/macaroon/piztor/Transam.java +++ /dev/null @@ -1,139 +0,0 @@ -package com.macaroon.piztor; - -import java.io.IOException; -import java.net.UnknownHostException; -import java.util.LinkedList; -import java.util.Queue; -import java.util.Timer; -import java.util.TimerTask; - -import android.annotation.SuppressLint; -import android.os.Handler; -import android.os.Message; - -public class Transam implements Runnable { - - public Timer timer; - public Timer mtimer; - public boolean running = false; - public boolean flag = true; - public int cnt = 4; - Res res; - Req req; - public int p; // port - public String i; // ip - Thread thread; - Handler core; - Handler recall; // recall - Queue<Req> reqtask; // request task - - Transam(String ip, int port, Handler Recall) { - p = port; - i = ip; - recall = Recall; - reqtask = new LinkedList<Req>(); - } - - public void send(Req r) { - reqtask.offer(r); - - } - - public void setHandler(Handler Recall) { - recall = Recall; - reqtask.clear(); - } - - public void run() { // start the main timer - // TimerTask tmain = new Timertk(); - // mtimer = new Timer(); - // mtimer.schedule(tmain, 100, 100); //check the queue for every 100 - // msec - - while (true) { - if (running == false) { - - if (!reqtask.isEmpty()) { // poll the head request - req = reqtask.poll(); - if (req.time + req.alive < System.currentTimeMillis()) { // time - // out! - Message ret = new Message(); - ret.obj = "Time out!"; - ret.what = 100; - recall.sendMessage(ret); - } else { // run the request - final thd t = new thd(); - flag = false; - thread = new Thread(t); - cnt = 4; - running = true; - thread.start(); - timer = new Timer(); - TimerTask task = new Timertk(); - timer.schedule(task, 2000, 2000); - } - } - } - } - } - - class tmain extends TimerTask { - public void run() { - - } - }; - - class thd implements Runnable { - public void run() { - try { - SocketClient client = new SocketClient(i, p); - client.sendMsg(req, recall); - Message msg = new Message(); - msg.what = 1; - handler.sendMessage(msg); - client.closeSocket(); - } catch (UnknownHostException e) { - e.printStackTrace(); - System.out.println("UnknownHostException"); - } catch (IOException e) { - e.printStackTrace(); - System.out.println("IOException"); - } - - } - } - - @SuppressLint("HandlerLeak") - Handler handler = new Handler() { - public void handleMessage(Message msg) { - switch (msg.what) { - case 1: - flag = true; - break; - case 2: - final thd t = new thd(); - thread = new Thread(t); - thread.start(); - break; - } - super.handleMessage(msg); - } - }; - - class Timertk extends TimerTask { - public void run() { - if (flag == false && cnt > 0) { - cnt--; - } else if (cnt == 0) { - Message msg = new Message(); - msg.obj = "connecting failed"; - msg.what = 101; - recall.sendMessage(msg); - timer.cancel(); - } else if (flag == true) { - timer.cancel(); - running = false; - } - } - }; -}
\ No newline at end of file |