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
    Modifier | Constructor and Description
    --- | ---
    `protected` | `SvnGetStatus(SvnOperationFactory factory)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `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` | `isCheckWorkingCopy()`
    `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` | `setCheckWorkingCopy(boolean checkWorkingCopy)`
    `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, getSqliteJournalMode, getTargets, hasFileTargets, hasLocalTargets, hasRemoteTargets, isCancelled, isSleepForTimestamp, needsHomohenousTargets, run, setApplicalbeChangelists, setDepth, setRevision, setSingleTarget, setSleepForTimestamp, setSqliteJournalMode`

    - ### 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

    - #### isCheckWorkingCopy

          public boolean isCheckWorkingCopy()

    - #### setCheckWorkingCopy

          public void setCheckWorkingCopy(boolean checkWorkingCopy)

    - #### 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`