/**
*
*/
package org.openntf.domino.thread;
import java.io.Serializable;
import java.util.Observable;
import java.util.logging.Logger;
import org.openntf.domino.session.ISessionFactory;
import org.openntf.domino.utils.Factory;
import org.openntf.domino.xots.Tasklet;
/**
* @author Nathan T. Freeman
*
*
*/
public abstract class AbstractDominoRunnable extends Observable implements Tasklet.Interface, Runnable, Serializable {
@SuppressWarnings("unused")
private static final Logger log_ = Logger.getLogger(AbstractDominoRunnable.class.getName());
private static final long serialVersionUID = 1L;
private volatile boolean shouldStop_ = false;
private ISessionFactory sessionFactory_;
@Override
public ISessionFactory getSessionFactory() {
return sessionFactory_;
}
@Override
public Tasklet.Context getContext() {
return null;
}
@Override
public Tasklet.Scope getScope() {
return null;
}
@Override
public String[] getDynamicSchedule() {
return null;
}
/**
* Method should be queried in loops to determine if we should stop
*
* @return
*/
protected synchronized boolean shouldStop() {
return shouldStop_;
}
@Override
public String getDescription() {
return getClass().getSimpleName();
}
@Override
public synchronized void stop() {
shouldStop_ = true;
}
@Override
public Factory.ThreadConfig getThreadConfig() {
return null;
}
}