Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 /*
  * Pyx4j framework
  * Copyright (C) 2006 pyx4.com.
  *
  * @author vlads
  * @version $Id: StopableRunnable.java 1 2007-03-09 04:03:48Z vlads $
  */
 package com.pyx4j.utils;
 
TODO Add docs Created on 9-Dec-2005 Contributing Author(s): Vlad Skarzhevskyy <vlad at unilore.com> (Inital implementation)

Author(s):
vlads
Version:
$Revision: 1 $ ($Author: vlads $) $Date: 2007-03-08 23:03:48 -0500 (Thu, 08 Mar 2007) $
public abstract class StopableRunnable implements Runnable {
    private static final Logger log = Logger.getLogger();
    
    protected String name = "";
    
    protected boolean isStoped = false;
    
    protected boolean isFinished = false;
    
	public void setName(String name) {
		this. = name;
	}
	public String getName() {
		return ;
	}
    public void stop() {
        this. = true;
    }
    public boolean isStoped() {
        return ;
    }
    public boolean isFinished() {
        return ;
    }
    
    public long getSleepTime() {
        return 200;
    }
    
    public abstract void execute() throws Exception;
    
    public boolean sleep(long msec) {
    	return ThreadUtils.sleep(msec);
    }
    
    public void run() {
        .debug("work started");
        while (!this.) {
            
            try {
                execute();
            } catch (Throwable e) {
                .error( + " fatal error"e);
                break;
            }
            if (!sleep(getSleepTime())) {
                break;
            }
        }   
        .debug("work finished");
         = true;
    }
New to GrepCode? Check out our FAQ X