org.tmatesoft.svn.core.wc2
Class SvnScheduleForAddition

java.lang.Object
  extended by org.tmatesoft.svn.core.wc2.SvnOperation<java.lang.Void>
      extended by org.tmatesoft.svn.core.wc2.SvnScheduleForAddition
All Implemented Interfaces:
ISvnOperationOptionsProvider

public class SvnScheduleForAddition
extends SvnOperation<java.lang.Void>

Represents add operation. Schedules working copy targets for addition to the repository.

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

targets' parent must be under revision control already (unless makeParents is true), but targets are not.

If force is set, target is a directory, depth is SVNDepth.INFINITY, then schedules for addition unversioned files and directories scattered deep within a versioned tree.

If includeIgnored is false, doesn't add files or directories that match ignore patterns.

If makeParents is true, recurse up path's directory and look for a versioned directory. If found, add all intermediate paths between it and the path.

Important: this is a *scheduling* operation. No changes will happen to the repository until a commit occurs. This scheduling can be removed with SvnRevert operation.

SvnOperation.run() method throws SVNException in the following cases: