SVNKit Home

## org.tmatesoft.svn.core.wc
Interface ISVNExternalsHandler

public interface ISVNExternalsHandler

The `ISVNExternalsHandler` provides interface for user defined callbacks which are used to skip externals definitions processing in some operations.

Such handlers, if provided, are used in checkout/update, wc-to-url copying operations.

Since:
  1.2
Version:
  1.3
Author:
  TMate Software Ltd.

Field Summary
`static ISVNExternalsHandler` `DEFAULT` Default implementation.

Method Summary
`SVNRevision[]` `handleExternal(File externalPath, SVNURL externalURL, SVNRevision externalRevision, SVNRevision externalPegRevision, String externalsDefinition, SVNRevision externalsWorkingRevision)` Handles an external definition and says whether to skip it or not.

Field Detail

### DEFAULT

    public static final ISVNExternalsHandler DEFAULT

  Default implementation. This implementation is used whenever there is no implementation provided by the user. The `handleExternal()` method of this implementation always returns `[externalRevision, externalPegRevision]`, i.e. those external revision and peg revision which are passed to it.

Method Detail

### handleExternal

    public SVNRevision[] handleExternal(File externalPath,
                                        SVNURL externalURL,
                                        SVNRevision externalRevision,
                                        SVNRevision externalPegRevision,
                                        String externalsDefinition,
                                        SVNRevision externalsWorkingRevision)

  Handles an external definition and says whether to skip it or not. This method receives external definition parameters and returns whether null to indicate that this external definition must be excluded from processing (for examle, not updated during an update), or a non- null array. This array should contain at least two `SVNRevision` objects [revision, pegRevision] which will be used by the operation instead of `externalRevision` and `externalPegRevision` respectively passed into this handle method.

  `externalWorkingRevision` is always `SVNRevision.UNDEFINED` for update/checkout operations.

  Parameters:
    `externalPath` - path of the external to be processed
    `externalURL` - URL of the external to be processed or null if external is about to be removed
    `externalRevision` - default revision to checkout/copy external at or update to
    `externalPegRevision` - default peg revision to use for checkout/update/copy of external
    `externalsDefinition` - raw svn:externals property value
    `externalsWorkingRevision` - current external working copy revision (relevant only for wc-to-url copying operations)
  Returns:
    array of `SVNRevision`s in form of {revision, pegRevision} or null to skip processing of this external

SVNKit Home

Copyright © 2004-2009 TMate Software Ltd. All Rights Reserved.