org.tmatesoft.svn.core.wc2

## Class SvnGetStatus

- java.lang.Object
- - org.tmatesoft.svn.core.wc2.SvnOperation<T>
  - - org.tmatesoft.svn.core.wc2.SvnReceivingOperation<SvnStatus>
    - - org.tmatesoft.svn.core.wc2.SvnGetStatus

All Implemented Interfaces:
  ISvnObjectReceiver<SvnStatus>, ISvnOperationOptionsProvider

    public class SvnGetStatus
    extends SvnReceivingOperation<SvnStatus>

Represents status operation. `SvnOperation.run()` method returns a set of `SvnStatus` objects which describe the status of the working cope `target`, and its children (recursing according to `depth`)..

If `reportAll` is set, retrieves all entries; otherwise, retrieves only "interesting" entries (local modifications and/or out of date).

If `remote` is set, contacts the repository and augments the status objects with information about out-of-date items (with respect to `revision`).

If `reportExternals` is <true>true, then recurses into externals definitions (if any exist and `depth` is either `SVNDepth.INFINITY` or `SVNDepth.UNKNOWN`) after handling the main `target`. This calls the client notification handler ( `ISVNEventHandler`) with the `SVNEventAction.STATUS_EXTERNAL` action before handling each externals definition, and with `SVNEventAction.STATUS_COMPLETED` after each.

`changeLists` is a collection of `String` changelist names, used as a restrictive filter on items whose statuses are reported; that is, doesn't report status about any item unless it's a member of one of those changelists. If `changeLists` is empty (or `null`), no changelist filtering occurs.

if `remote` is `true, status is calculated against this `revision``

Version:
  1.7
Author:
  TMate Software Ltd.

### Constructor Summary

Constructors
`protected` `SvnGetStatus(SvnOperationFactory factory)`

### Method Summary

Methods
`protected void` `ensureArgumentsAreValid()`
`ISvnFileListHook` `getFileListHook()` Returns client's file list hook.
`long` `getRemoteRevision()` Returns the remove revision of the `target`.
`void` `initDefaults()`
`boolean` `isChangesWorkingCopy()` Gets whether the operation changes working copy
`boolean` `isCollectParentExternals()` Only relevant for 1.6 working copies, obsolete (not used).
`boolean` `isDepthAsSticky()` Returns whether depth is sticky.
`boolean` `isRemote()` Returns whether to check up the status of the item in the repository, that will tell if the local item is out-of-date (like '-u' option in the SVN client's `'svn status'` command)
`boolean` `isReportAll()` Returns whether to collect status information on all items including those ones that are in a 'normal' state (unchanged).
`boolean` `isReportExternals()` Returns whether to report externals.
`boolean` `isReportIgnored()` Returns whether to force the operation to collect information on items that were set to be ignored (like '--no-ignore' option in the SVN client's `'svn status'` command to disregard default and 'svn:ignore' property ignores).
`boolean` `isUseParentWcFormat()` Gets whether or not to use parent working copy format.
`void` `setCollectParentExternals(boolean collect)` Only relevant for 1.6 working copies, obsolete (not used).
`void` `setDepthAsSticky(boolean depthAsSticky)`
`void` `setFileListHook(ISvnFileListHook fileListHook)` Sets client's file list hook.
`void` `setRemote(boolean remote)` Sets whether to check up the status of the item in the repository, that will tell if the local item is out-of-date (like '-u' option in the SVN client's `'svn status'` command)
`void` `setRemoteRevision(long revision)` Sets the remove revision of the `target`.
`void` `setReportAll(boolean reportAll)` Sets whether to collect status information on all items including those ones that are in a 'normal' state (unchanged).
`void` `setReportExternals(boolean reportExternals)` Sets whether to report externals.
`void` `setReportIgnored(boolean reportIgnored)` Sets whether to force the operation to collect information on items that were set to be ignored (like '--no-ignore' option in the SVN client's `'svn status'` command to disregard default and 'svn:ignore' property ignores).

### Methods inherited from class org.tmatesoft.svn.core.wc2.SvnReceivingOperation

`first, getReceiver, last, receive, run, setReceiver`

### Methods inherited from class org.tmatesoft.svn.core.wc2.SvnOperation

`addTarget, cancel, ensureEnoughTargets, ensureHomohenousTargets, getApplicableChangelists, getAuthenticationManager, getCanceller, getDepth, getEventHandler, getFirstTarget, getMaximumTargetsCount, getMinimumTargetsCount, getOperationalWorkingCopy, getOperationFactory, getOptions, getRepositoryPool, getRevision, getTargets, hasFileTargets, hasLocalTargets, hasRemoteTargets, isCancelled, isSleepForTimestamp, needsHomohenousTargets, run, setApplicalbeChangelists, setDepth, setRevision, setSingleTarget, setSleepForTimestamp`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### SvnGetStatus

    protected SvnGetStatus(SvnOperationFactory factory)

### Method Detail

#### isRemote

    public boolean isRemote()

Returns whether to check up the status of the item in the repository, that will tell if the local item is out-of-date (like '-u' option in the SVN client's `'svn status'` command)

Returns:
  `true` if the status should be checked up in repository, otherwise `false`

#### isDepthAsSticky

    public boolean isDepthAsSticky()

Returns whether depth is sticky. If `depthIsSticky` is set and `depth` is not `SVNDepth.UNKNOWN`, then in addition to switching `target`'s path , also sets its sticky ambient depth value to `depth`.

Returns:
  `true` if the depth is sticky, otherwise `false`

#### isReportIgnored

    public boolean isReportIgnored()

Returns whether to force the operation to collect information on items that were set to be ignored (like '--no-ignore' option in the SVN client's `'svn status'` command to disregard default and 'svn:ignore' property ignores).

Returns:
  `true` if default and svn:ignore property ignores should be disregarded, otherwise `false`

#### isReportAll

    public boolean isReportAll()

Returns whether to collect status information on all items including those ones that are in a 'normal' state (unchanged).

Returns:
  `true` if all items are reported, if `false` only items with unchanged state

#### isReportExternals

    public boolean isReportExternals()

Returns whether to report externals.

Returns:
  `true` if externals should be reported, otherwise `false`

#### getFileListHook

    public ISvnFileListHook getFileListHook()

Returns client's file list hook. Used for 1.6 only, former `ISVNStatusFileProvider`.

Returns:
  file list hook

#### setRemote

    public void setRemote(boolean remote)

Sets whether to check up the status of the item in the repository, that will tell if the local item is out-of-date (like '-u' option in the SVN client's `'svn status'` command)

Parameters:
  `remote` - `true` if the status should be checked up in repository, otherwise `false`

#### setDepthAsSticky

    public void setDepthAsSticky(boolean depthAsSticky)

Parameters:
  `depthAsSticky` -

#### setReportIgnored

    public void setReportIgnored(boolean reportIgnored)

Sets whether to force the operation to collect information on items that were set to be ignored (like '--no-ignore' option in the SVN client's `'svn status'` command to disregard default and 'svn:ignore' property ignores).

Parameters:
  `reportIgnored` - `true` if default and svn:ignore property ignores should be disregarded, otherwise `false`

#### setReportAll

    public void setReportAll(boolean reportAll)

Sets whether to collect status information on all items including those ones that are in a 'normal' state (unchanged).

Parameters:
  `reportAll` - `true` if all items are reported, if `false` only items with unchanged state

#### setReportExternals

    public void setReportExternals(boolean reportExternals)

Sets whether to report externals.

Parameters:
  `reportExternals` - `true` if externals should be reported, otherwise `false`

#### setFileListHook

    public void setFileListHook(ISvnFileListHook fileListHook)

Sets client's file list hook. Used for 1.6 only, former `ISVNStatusFileProvider`.

Parameters:
  `fileListHook` - file list hook

#### ensureArgumentsAreValid

    protected void ensureArgumentsAreValid()
                                    throws SVNException

Overrides:
  `ensureArgumentsAreValid` in class `SvnOperation<SvnStatus>`
Throws:
  `SVNException`

#### initDefaults

    public void initDefaults()

Overrides:
  `initDefaults` in class `SvnReceivingOperation<SvnStatus>`

#### isCollectParentExternals

    public boolean isCollectParentExternals()

Only relevant for 1.6 working copies, obsolete (not used).

#### setCollectParentExternals

    public void setCollectParentExternals(boolean collect)

Only relevant for 1.6 working copies, obsolete (not used).

#### setRemoteRevision

    public void setRemoteRevision(long revision)

Sets the remove revision of the `target`.

Parameters:
  `revision` - remote revision

#### getRemoteRevision

    public long getRemoteRevision()

Returns the remove revision of the `target`. This value can be accessed after operation is executed.

Returns:
  revision remote revision

#### isUseParentWcFormat

    public boolean isUseParentWcFormat()

Description copied from class: `SvnOperation`
Gets whether or not to use parent working copy format.

Overrides:
  `isUseParentWcFormat` in class `SvnOperation<SvnStatus>`
Returns:
  `true` if parent working copy format should be used, otherwise `false`

#### isChangesWorkingCopy

    public boolean isChangesWorkingCopy()

Gets whether the operation changes working copy

Overrides:
  `isChangesWorkingCopy` in class `SvnOperation<SvnStatus>`
Returns:
  `true` if the operation changes the working copy, otherwise `false`