view flys-artifacts/src/main/java/de/intevation/flys/wsplgen/WSPLGENFuture.java @ 4031:e4e345d81a65

issue889/2
author Felix Wolfsteller <felix.wolfsteller@intevation.de>
date Thu, 04 Oct 2012 14:54:44 +0200
parents 368040e5c400
children
line wrap: on
line source
package de.intevation.flys.wsplgen;

import java.util.concurrent.FutureTask;

import org.apache.log4j.Logger;


/**
 * This FutureTask overrides the <i>cancel()</i> method. Before super.cancel()
 * is called, WSPLGENCallable.cancelWSPLGEN() is executed to kill a running
 * WSPLGEN process.
 *
 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
 */
public class WSPLGENFuture extends FutureTask {

    private static final Logger logger = Logger.getLogger(WSPLGENFuture.class);

    protected WSPLGENCallable wsplgenCallable;


    public WSPLGENFuture(WSPLGENCallable callable) {
        super(callable);
        this.wsplgenCallable = callable;
    }


    public WSPLGENCallable getWSPLGENCallable() {
        return wsplgenCallable;
    }


    @Override
    public boolean cancel(boolean mayInterruptIfRunning) {
        logger.debug("WSPLGENFuture.cancel");

        wsplgenCallable.cancelWSPLGEN();
        return super.cancel(mayInterruptIfRunning);
    }
}
// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org