it.geosolutions.tools.commons.listener
Interface Progress<T extends Serializable>

All Known Implementing Classes:
DefaultProgress, ProgressList

public interface Progress<T extends Serializable>

Monitor the progress of some lengthly operation, and allows cancelation. This interface makes no assumption about the output device. Additionnaly, this interface provides support for non-fatal warning and exception reports.

All implementations should be multi-thread safe, even the ones that provide feedback to a user interface thread.

Since:
1.0.1
Author:
Carlo Cancellieri - carlo.cancellieri@geo-solutions.it

Method Summary
 void onCancel()
          Indicates that task should be cancelled.
 void onCompleted()
          Notifies this listener that the operation has finished.
 void onDispose()
          Releases any resources used by this listener.
 void onExceptionOccurred(Throwable exception)
          Reports an exception.
 void onNewTask(T task)
          Sets the description of the current task being performed.
 void onStart()
          Notifies this listener that the operation begins.
 void onUpdateProgress(float percent)
          Notifies this listener of progress in the lengthly operation.
 void onWarningOccurred(String source, String location, String warning)
          Reports a warning.
 

Method Detail

onNewTask

void onNewTask(T task)
Sets the description of the current task being performed. This method is usually invoked before any progress begins. However, it is legal to invoke this method at any time during the operation, in which case the description display is updated without any change to the percentage accomplished.

Parameters:
task - Description of the task being performed, or null if none.

onStart

void onStart()
Notifies this listener that the operation begins.


onUpdateProgress

void onUpdateProgress(float percent)
Notifies this listener of progress in the lengthly operation. Progress are reported as a value between 0 and 100 inclusive. Values out of bounds will be clamped.

Parameters:
percent - The progress as a value between 0 and 100 inclusive.

onCompleted

void onCompleted()
Notifies this listener that the operation has finished. The progress indicator will shows 100% or disappears, at implementor choice. If warning messages were pending, they will be displayed now.


onDispose

void onDispose()
Releases any resources used by this listener. If the progress were reported in a window, this window may be disposed.


onCancel

void onCancel()
Indicates that task should be cancelled.


onWarningOccurred

void onWarningOccurred(String source,
                       String location,
                       String warning)
Reports a warning. This warning may be logged, printed to the standard error stream, appears in a windows or be ignored, at implementor choice.

Parameters:
source - Name of the warning source, or null if none. This is typically the filename in process of being parsed or the URL of the data being processed
location - Text to write on the left side of the warning message, or null if none. This is typically the line number where the error occured in the source file or the feature ID of the feature that produced the message
warning - The warning message.

onExceptionOccurred

void onExceptionOccurred(Throwable exception)
Reports an exception. This method may prints the stack trace to the standard error stream or display it in a dialog box, at implementor choice.

Parameters:
exception - The exception to report.


Copyright © 2011-2012 GeoSolutions. All Rights Reserved.