Interface ISVNEventHandler

  • All Superinterfaces:
    ISVNCanceller
    All Known Subinterfaces:
    ISVNAdminEventHandler
    All Known Implementing Classes:
    SVNAdminBasicClient, SVNAdminClient, SVNAdminEventAdapter, SVNEventAdapter, SVNLookClient, SVNRepositoryReplicator

    public interface ISVNEventHandler
    extends ISVNCanceller
    The ISVNEventHandler interface should be implemented in order to be further provided to an SVN*Client object as a handler of a sequence of events generated by SVN*Client's do*() methods.

    This is a way how a custom event handler can be registered:

     import org.tmatesoft.svn.core.wc.ISVNOptions;
     import org.tmatesoft.svn.core.wc.SVNWCUtil;
     import org.tmatesoft.svn.core.wc.SVNClientManager;
     import org.tmatesoft.svn.core.wc.ISVNEventHandler;
     ...
     
     ISVNOptions options = SVNWCUtil.createDefaultOptions(true);
     String authName = "myName";
     String authPassword = "myPassword";
     SVNClientManager clientManager = SVNClientManager.newInstance(options, authName, authPassword);
     clientManager.getCommitClient().setEventHandler(new ISVNEventHandler(){
         public void handleEvent(SVNEvent event, double progress){
             //handle event here
         }
         
         public void checkCancelled() throws SVNCancelException {
             //handle cancel of the operation - throw SVNCancelException  
         }
     });

    or like this:
     ...
     import org.tmatesoft.svn.core.wc.SVNCommitClient;
     ...
     
     ISVNOptions options = SVNWCUtil.createDefaultOptions(true);
     SVNCommitClient commitClient = new SVNCommitClient(null, options);
     commitClient.setEventHandler(new ISVNEventHandler(){
     ...
     });

    All calls to handleEvent() and checkCancelled() methods are synchronous - that is the caller is blocked till a method finishes.

    Since:
    1.2
    Version:
    1.3
    Author:
    TMate Software Ltd.
    See Also:
    SVNEvent, Examples
    • Method Detail

      • handleEvent

        void handleEvent​(SVNEvent event,
                         double progress)
                  throws SVNException
        Handles the current event.

        Generally all operations represented by do*() methods of SVN*Client objects are followed by generating a sequence of events that are passed to the registered ISVNEventHandler object for custom processing. For example, during an update operation each local item being modified is signaled about by dispatching a specific for this item SVNEvent object to this method where this event can be scrutinized and handled in a desired way.

        Parameters:
        event - the current event that keeps detailed information on the type of action occured and other attributes like path, status, etc.
        progress - currently reserved for future use; now it's value is always set to UNKNOWN
        Throws:
        SVNException