Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
HomeAnnouncementsWhite Papers
Discussion GroupsFirst AidDatabasesJavaBeansGUIJava 3DVirtual MachineCORBASecurityToolsGeneral
Java DirectoryOpen Source ProjectsSample Book ChaptersUser GroupsWeb Resources
Related Topics
Databases.NETMore Topics ...

Java Forum / General / October 2007

Tip: Looking for answers? Try searching our database.

Help to implement OperationListener interface.

Thread view: 
mike - 30 Oct 2007 18:54 GMT
Hi,

I have the following interface OperationListener interface ( it's for
an open source project I helping out with). Well the idea behind the
interface is to monitor operations taking place simlair to the
eclipse IProgressMonitor.

Then I have an operation like:

myApp.operationDel( file, operationListener);

I don't know how to implement the interface.

Any ideas ?

cheers,

mike

public interface OperationListener {

   /**
    * Notifies the receiver that the specified operation has started.
    *
    * @param amountOfWork
    *            the amount of expected work
    */
   void startedOperation(int amountOfWork);

   /** /**
    * Notifies the receiver that the specified operation finished.
    * <p>
    * Note that t
    * Notifies the receiver about progress of the specified
operation.
    *
    * @param ticks
    *            the progress
    */
   void worked(int ticks);

   /**
    * Notifies the receiver that an operation is still ongoing but
    * that no progress information is available.
    *
    */
   void ping();

   /**
    * Notifies the receiver that the specified operation finished.
    * <p>
    * Note that the listener may not be notified if an exeception
occurs while
    * performing the operation.
    * </p>
    */
   void finishedOperation();

   /**
    * Notifies the caller if the operation should be canceled.
    *
    * @return <code>true</code> if the caller (the ClearCase
interface)
    *         should cancel the current operation, <code>false</code>
    *         otherwise
    */
   boolean isCanceled();
}
Manish Pandit - 30 Oct 2007 19:04 GMT
> Hi,
>
[quoted text clipped - 10 lines]
>
> Any ideas ?

If I understood the problem statement correctly, I do not think you
have to implement the interface - you will need to call the interface
methods as you progress through the operationDel. The *caller* will
give you an implementation of this interface, which you will use as a
callback to notify the caller of various events, and the caller (I
suppose) will use this information to render a progressbar, or report
status via messages, etc.

For example, you will invoke operationListener.startedOperation(100);
where 100 is the % remaining. At the end, you will invoke
operationListener.finishedOperation().

Hope this helps!

-cheers,
Manish
mike - 30 Oct 2007 19:18 GMT
> > Hi,
>
[quoted text clipped - 22 lines]
> where 100 is the % remaining. At the end, you will invoke
> operationListener.finishedOperation().

Ok!

I am calling the interface as my task, operationDel, makes progress or
isCanceled.
Shall the class where I have my call:

myApp.operationDel( file, operationListener);

implement the interface. Seems like I cannot figure out how the
callback is working!
Or am I missing something here?

cheers,

mike

> Hope this helps!
>
> -cheers,
> Manish
Manish Pandit - 30 Oct 2007 19:47 GMT
> Ok!
>
[quoted text clipped - 7 lines]
> callback is working!
> Or am I missing something here?

Either the caller, or any other class can implement this interface.
Whoever implements it needs to be passed to the method call. The
interface methods wil be called by the method call at various points,
and the implementation will receive these callbacks (it is also called
a hook), and can use that to perform any operation. For now, you can
log a message or do a System.out.println() to understand the flow and
the callback mechanism, later you can tie it to more complex solution,
like rendering a progressbar or something similar.

-cheers,
Manish
mike - 30 Oct 2007 19:52 GMT
> > Ok!
>
[quoted text clipped - 19 lines]
> -cheers,
> Manish

Thanks Manish,

I get it now :-)


Free Magazines

Get these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...

Oracle MagazineNetwork ComputingComputer WorldBio-IT WorldeWeekInformation WeekInfosecurity
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.