Package org.tmatesoft.svn.core.wc2

## Class SvnImport

- java.lang.Object
- - org.tmatesoft.svn.core.wc2.SvnOperation<T>
  - - org.tmatesoft.svn.core.wc2.SvnReceivingOperation<SVNCommitInfo>
    - - org.tmatesoft.svn.core.wc2.AbstractSvnCommit
      - - org.tmatesoft.svn.core.wc2.SvnImport

- All Implemented Interfaces:
    `ISvnObjectReceiver<SVNCommitInfo>`, `ISvnOperationOptionsProvider`

      public class SvnImport
      extends AbstractSvnCommit

  Imports file or directory `source` into repository directory defined in operation's `target` at HEAD revision. If some components of operations' `target` does not exist, then creates parent directories as necessary. The `target` of the operation should represent URL.

  If the caller's `event handler` is not null it will be called as the import progresses with `SVNEventAction.COMMIT_ADDED` action. If the commit succeeds, the handler will be called with `SVNEventAction.COMMIT_COMPLETED` event action.

  If non-`null`, `revisionProperties` holds additional, custom revision properties (`String` names mapped to `SVNPropertyValue` values) to be set on the new revision. This table cannot contain any standard Subversion properties.

  `commitHandler` will be asked for a commit log message.

  If `depth` is `SVNDepth.EMPTY`, imports just `source` and nothing below it. If `SVNDepth.FILES`, imports `source` and any file children of `source`. If `SVNDepth.IMMEDIATES`, imports `source`, any file children, and any immediate subdirectories (but nothing underneath those subdirectories). If `SVNDepth.INFINITY`, imports `source` and everything under it fully recursively.

  `SvnOperation.run()` method returns `SVNCommitInfo` information about the new committed revision. This method throws SVNException in the following cases:
  - exception with `SVNErrorCode.ENTRY_NOT_FOUND` error code - if `source` does not exist
  - exception with `SVNErrorCode.ENTRY_EXISTS` error code - if operation's `target` already exists and `source` is a file
  - exception with `SVNErrorCode.CL_ADM_DIR_RESERVED` error code - if trying to import an item with a reserved SVN name (like `'.svn'` or `'_svn'`)
  Version:
    1.7
  Author:
    TMate Software Ltd.

- - ### Constructor Summary

    Constructors
    Modifier | Constructor | Description
    --- | --- | ---
    `protected` | `SvnImport​(SvnOperationFactory factory)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected void` | `ensureArgumentsAreValid()` |
    `ISVNFileFilter` | `getFileFilter()` |
    `java.io.File` | `getSource()` | Returns import operation's source.
    `boolean` | `isApplyAutoProperties()` | Gets whether to enable automatic properties
    `boolean` | `isChangesWorkingCopy()` | Gets whether the operation changes working copy
    `boolean` | `isForce()` | Gets whether to ignore files of unknown node types or not.
    `boolean` | `isUseGlobalIgnores()` | Gets whether to adds files or directories that match ignore patterns.
    `void` | `setApplyAutoProperties​(boolean applyAutoProperties)` | Sets whether to enable automatic properties
    `void` | `setFileFilter​(ISVNFileFilter fileFilter)` |
    `void` | `setForce​(boolean force)` | Sets whether to ignore files of unknown node types or not.
    `void` | `setSource​(java.io.File source)` | Sets source of the import.
    `void` | `setUseGlobalIgnores​(boolean useGlobalIgnores)` | Sets whether to adds files or directories that match ignore patterns.

    - ### Methods inherited from class org.tmatesoft.svn.core.wc2.AbstractSvnCommit

      `getCommitHandler, getCommitMessage, getRevisionProperties, setCommitHandler, setCommitMessage, setRevisionProperties, setRevisionProperty`

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

      `first, getReceiver, initDefaults, 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, isUseParentWcFormat, 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

    - #### SvnImport

          protected SvnImport​(SvnOperationFactory factory)

  - ### Method Detail

    - #### isApplyAutoProperties

          public boolean isApplyAutoProperties()

      Gets whether to enable automatic properties
      Returns:
        `true` if automatic properties should be enabled, otherwise `false`

    - #### setApplyAutoProperties

          public void setApplyAutoProperties​(boolean applyAutoProperties)

      Sets whether to enable automatic properties
      Parameters:
        `applyAutoProperties` - `true` if automatic properties should be enabled, otherwise `false`

    - #### getSource

          public java.io.File getSource()

      Returns import operation's source.
      Returns:
        return source of the import operation
      See Also:
        `getSource()`

    - #### setSource

          public void setSource​(java.io.File source)

      Sets source of the import. If `source` is a directory, the contents of that directory are imported directly into the directory identified by `target`. Note that the directory itself is not imported -- that is, the base name of directory is not part of the import.

      If `source` is a file, then the parent of operation's `target` is the directory receiving the import. The base name of `source` is the filename in the repository. In this case if this filename already exists, throws `SVNException`.
      Parameters:
        `source` - source of the import operation

    - #### isForce

          public boolean isForce()

      Gets whether to ignore files of unknown node types or not.
      Returns:
        `true` if files of unknown node types should be ignored, otherwise `false`
      See Also:
        `setForce(boolean)`

    - #### setForce

          public void setForce​(boolean force)

      Sets whether to ignore files of unknown node types or not. Unversionable items such as device files and pipes are ignored if `force` is `true`.
      Parameters:
        `force` - `true` if files of unknown node types should be ignored, otherwise `false`

    - #### isUseGlobalIgnores

          public boolean isUseGlobalIgnores()

      Gets whether to adds files or directories that match ignore patterns.
      Returns:
        `true` adds files or directories that match ignore patterns, otherwise `false`

    - #### setUseGlobalIgnores

          public void setUseGlobalIgnores​(boolean useGlobalIgnores)

      Sets whether to adds files or directories that match ignore patterns.
      Parameters:
        `useGlobalIgnores` - `true` adds files or directories that match ignore patterns, otherwise `false`

    - #### ensureArgumentsAreValid

          protected void ensureArgumentsAreValid()
                                          throws SVNException

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

    - #### isChangesWorkingCopy

          public boolean isChangesWorkingCopy()

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

    - #### getFileFilter

          public ISVNFileFilter getFileFilter()

    - #### setFileFilter

          public void setFileFilter​(ISVNFileFilter fileFilter)