Select Git revision
backTasks.java
-
Sofiane Lasri authoredSofiane Lasri authored
backTasks.java 2.14 KiB
package com.slprojects.pizzeria;
import android.os.AsyncTask;
import android.util.Log;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;
public class backTasks extends AsyncTask<String, Void, Void> {
private Socket socket;
private PrintWriter output;
private BufferedReader input;
private MainActivity activity;
public backTasks (MainActivity activity){
this.activity = activity;
}
@Override
protected Void doInBackground(String... message) {
int serverPort = 9874;
String address = "chadok.info";
try {
Log.i("backTasks:", "Connecting to " + address + ":"+ serverPort + "...");
socket = new Socket(address, serverPort);
Log.i("backTasks:", "Connected");
output = new PrintWriter(socket.getOutputStream(), true);
input = new BufferedReader(new InputStreamReader(socket.getInputStream()));
registerCommand(message[0]);
// Ici on va tout simplement lire les messages du serveur
// Et arrêter la boucle avec un flag
String receviedMsg = "";
Integer receivedFlag = 0;
while(receivedFlag < 2){
receviedMsg = input.readLine();
if (receviedMsg != null){ // Si le message n'est pas null
Log.i("backTasks", "received message: " + receviedMsg);
receivedFlag++; // On incrémente le flag
}
}
String finalReceviedMsg = receviedMsg; // On stocke le message dans une variable final
activity.runOnUiThread(() -> { // On lance le code sur l'UI Thread
activity.createAlertMessage(finalReceviedMsg, "Message de la cuisine"); // On affiche le message reçu
});
} catch (Exception x) {
x.printStackTrace();
}
return null;
}
public void registerCommand(String command){
if(output != null){
Log.i("backTasks", "registered command: "+command);
output.write(command);
output.flush();
}
}
}