forked from LupusNobilis/java-org.hwo
71 lines
1.8 KiB
Java
71 lines
1.8 KiB
Java
package org.hwo.thread;
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.EventListener;
|
|
import java.util.List;
|
|
|
|
public abstract class ThreadedOperation extends Thread{
|
|
|
|
List<ThreadedOperationUpdateListener> updateListeners;
|
|
private String operationName;
|
|
|
|
|
|
public ThreadedOperation()
|
|
{
|
|
updateListeners = new ArrayList<ThreadedOperationUpdateListener>();
|
|
operationName = "AktivitŠt...";
|
|
}
|
|
|
|
public void addThreadedOperationUpdateListener(ThreadedOperationUpdateListener listener)
|
|
{
|
|
updateListeners.add(listener);
|
|
}
|
|
public void removeThreadedOperationUpdateListener(ThreadedOperationUpdateListener listener)
|
|
{
|
|
updateListeners.remove(listener);
|
|
}
|
|
|
|
protected void fireUpdate(ThreadedOperationUpdateArgs updateArgs)
|
|
{
|
|
for (ThreadedOperationUpdateListener listener:updateListeners)
|
|
listener.threadedOperationUpdate(updateArgs);
|
|
}
|
|
protected void fireUpdate(Integer progressOperation,Integer progressStep)
|
|
{
|
|
fireUpdate(new ThreadedOperationUpdateArgs(progressOperation,progressStep));
|
|
}
|
|
|
|
protected void fireUpdate(Integer progressOperation,Integer progressStep,String statusText)
|
|
{
|
|
fireUpdate(new ThreadedOperationUpdateArgs(progressOperation,progressStep,statusText));
|
|
}
|
|
|
|
protected void fireUpdate(Integer progressOperation,Integer progressStep,String statusText,String stepLabel)
|
|
{
|
|
fireUpdate(new ThreadedOperationUpdateArgs(progressOperation,progressStep,statusText,stepLabel));
|
|
}
|
|
|
|
protected void fireFinished(int code)
|
|
{
|
|
for (ThreadedOperationUpdateListener listener:updateListeners)
|
|
listener.threadedOperationFinished(code);
|
|
}
|
|
protected void fireFinished()
|
|
{
|
|
fireFinished(0);
|
|
}
|
|
|
|
public abstract void run();
|
|
|
|
public String getOperationName() {
|
|
return operationName;
|
|
}
|
|
|
|
public void setOperationName(String operationName) {
|
|
this.operationName = operationName;
|
|
}
|
|
|
|
|
|
|
|
}
|