com.sun.pdfview.Watchable Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pdf-renderer Show documentation
Show all versions of pdf-renderer Show documentation
PDF renderer implementation supporting the subset of PDF 1.4 specification.
The newest version!
/*
* $Id: Watchable.java,v 1.3 2009-01-16 16:26:15 tomoke Exp $
*
* Copyright 2004 Sun Microsystems, Inc., 4150 Network Circle,
* Santa Clara, California 95054, U.S.A. All rights reserved.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
package com.sun.pdfview;
/**
* An interface for rendering or parsing, which can be stopped and started.
*/
public interface Watchable {
/** the possible statuses */
public static final int UNKNOWN = 0;
public static final int NOT_STARTED = 1;
public static final int PAUSED = 2;
public static final int NEEDS_DATA = 3;
public static final int RUNNING = 4;
public static final int STOPPED = 5;
public static final int COMPLETED = 6;
public static final int ERROR = 7;
/**
* Get the status of this watchable
*
* @return one of the well-known statuses
*/
public int getStatus();
/**
* Stop this watchable. Stop will cause all processing to cease,
* and the watchable to be destroyed.
*/
public void stop();
/**
* Start this watchable and run until it is finished or stopped.
* Note the watchable may be stopped if go() with a
* different time is called during execution.
*/
public void go();
/**
* Start this watchable and run for the given number of steps or until
* finished or stopped.
*
* @param steps the number of steps to run for
*/
public void go(int steps);
/**
* Start this watchable and run for the given amount of time, or until
* finished or stopped.
*
* @param millis the number of milliseconds to run for
*/
public void go(long millis);
}