Skip to content

Instantly share code, notes, and snippets.

@ti24horas
Created October 5, 2012 15:21
Show Gist options
  • Save ti24horas/3840458 to your computer and use it in GitHub Desktop.
Save ti24horas/3840458 to your computer and use it in GitHub Desktop.
Exemplo async task java
abstract class Task extends Handler implements Runnable{
public abstract void executeTask();
public Task(int beginMessage, int endMessage){
}
public bool setRunning(){
}
public void run(){
if(this.getRunning())
{
sendMessage(beginMessage);
executeTask();
sendMessage(endMessage);
}
}
}
class RefreshOfertaTask extends Task
{
public final int BEGIN = 128;
public final int END = 129;
public RefreshOfertaTask(){
super(BEGIN, END);
}
@override
public void executeTask(){
//TODO: fazer coisas do websevice
}
}
class Handle{
public Handle(Tela t){
}
void handleMessage(int what){
switch(what)
{
case RefreshOfertaTask.BEGIN:
t.esconderTela();
break;
case RefreshOfertaTask.END:
t.mostrarTela();
break;
default:
super.handleMessage(what);
break;
}
}
}
class Tela{
Task tsk = new RefreshOfertaTask();
Timer t = new Timer(tsk, 120000);
Handle hwnd;
public Tela(){
super();
hwnd = new Handle(this);
t.start();
tsk.setRunning(true);
}
void mostrarTela(){
}
void esconderTela() {
}
public void onStop(){
tsk.setRunning(false);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment