com.perforce.p4java.option.client
Class IntegrateFilesOptions

java.lang.Object
  extended by com.perforce.p4java.option.Options
      extended by com.perforce.p4java.option.client.IntegrateFilesOptions

public class IntegrateFilesOptions
extends Options

Options for the IClient.integrateFiles method.

Currently-implemented options:
-c changelist# -d -D -f -h -i -o -n -r -t -v -mn

Note that this implementation extends the normal default options processing with its own method(s) due to the complexity of the various -D flag options; note also the somewhat odd relationship with the previous IntegrationOptions class.

Note also that the current implementation makes no attempt to validate the sanity or otherwise of the various options and their combination.

See Also:
IClient.integrateFiles(com.perforce.p4java.core.file.IFileSpec, com.perforce.p4java.core.file.IFileSpec, java.lang.String, com.perforce.p4java.option.client.IntegrateFilesOptions)

Field Summary
protected  boolean bidirectionalInteg
          Cause the branch view to work bidirectionally, where the scope of the command is limited to integrations whose 'from' files match fromFile[revRange].
protected  int changelistId
          If positive, the integrated files are opened in the numbered pending changelist instead of the default changelist.
protected  boolean deleteTargetAfterDelete
          If the source file has been deleted and the target file has changed, will delete the target file.
protected  boolean displayBaseDetails
          Display the base file name and revision which will be used in subsequent resolves if a resolve is needed.
protected  boolean doBaselessMerge
          Enables integration between files that have no integration history.
protected  boolean dontCopyToClient
          Don't copy newly branched files to the client.
protected  boolean forceIntegration
          Forces integrate to act without regard for previous integration history.
protected  boolean integrateAllAfterReAdd
          If the source file has been deleted and re-added, will attempt to integrate all outstanding revisions of the file, including those revisions prior to the delete.
protected  boolean integrateAroundDeletedRevs
          If true, enable integrations around deleted revisions; equivalent to -d (i.e.
protected  int maxFiles
          If positive, integrate only the first maxFiles files.
static String OPTIONS_SPECS
          Recognized p4 integrate options; these include:
-c changelist# -d -D -f -h -i -o -n -r -t -v -mn.
protected  boolean propagateType
          Propagate the source file's filetype to the target file.
protected  boolean rebranchSourceAfterDelete
          If the target file has been deleted and the source file has changed, will re-branch the source file on top of the target file.
protected  boolean reverseMapping
          Reverse the mappings in the branch view, with the target files and source files exchanging place.
protected  boolean showActionsOnly
          Display what integrations would be necessary but don't actually do them.
protected  boolean useHaveRev
          Causes the target files to be left at the revision currently on the client (the '#have' revision).
 
Fields inherited from class com.perforce.p4java.option.Options
immutable, optionList, OPTPFX
 
Constructor Summary
IntegrateFilesOptions()
          Default constructor; sets all fields to null, false, zero, or IChangelist.UNKNOWN.
IntegrateFilesOptions(int changelistId, boolean bidirectionalInteg, boolean integrateAroundDeletedRevs, boolean rebranchSourceAfterDelete, boolean deleteTargetAfterDelete, boolean integrateAllAfterReAdd, boolean forceIntegration, boolean useHaveRev, boolean doBaselessMerge, boolean displayBaseDetails, boolean showActionsOnly, boolean reverseMapping, boolean propagateType, boolean dontCopyToClient, int maxFiles)
          Explicit-value constructor.
IntegrateFilesOptions(String... options)
          String-based constructor; possible values are: -c changelist# -d -D -f -h -i -o -n -r -t -v.
 
Method Summary
 int getChangelistId()
           
 int getMaxFiles()
           
 boolean isBidirectionalInteg()
           
 boolean isDeleteTargetAfterDelete()
           
 boolean isDisplayBaseDetails()
           
 boolean isDoBaselessMerge()
           
 boolean isDontCopyToClient()
           
 boolean isForceIntegration()
           
 boolean isIntegrateAllAfterReAdd()
           
 boolean isIntegrateAroundDeletedRevs()
           
 boolean isPropagateType()
           
 boolean isRebranchSourceAfterDelete()
           
 boolean isReverseMapping()
           
 boolean isShowActionsOnly()
           
 boolean isUseHaveRev()
           
 List<String> processOptions(IServer server)
          Turn this (specific) options object into a list of strings to be sent to the Perforce server as options for a specific command.
 IntegrateFilesOptions setBidirectionalInteg(boolean bidirectionalInteg)
           
 IntegrateFilesOptions setChangelistId(int changelistId)
           
 IntegrateFilesOptions setDeleteTargetAfterDelete(boolean deleteTargetAfterDelete)
           
 IntegrateFilesOptions setDisplayBaseDetails(boolean displayBaseDetails)
           
 IntegrateFilesOptions setDoBaselessMerge(boolean doBaselessMerge)
           
 IntegrateFilesOptions setDontCopyToClient(boolean dontCopyToClient)
           
 IntegrateFilesOptions setForceIntegration(boolean forceIntegration)
           
 IntegrateFilesOptions setIntegrateAllAfterReAdd(boolean integrateAllAfterReAdd)
           
 IntegrateFilesOptions setIntegrateAroundDeletedRevs(boolean integrateAroundDeletedRevs)
           
 IntegrateFilesOptions setMaxFiles(int maxFiles)
           
 IntegrateFilesOptions setPropagateType(boolean propagateType)
           
 IntegrateFilesOptions setRebranchSourceAfterDelete(boolean rebranchSourceAfterDelete)
           
 IntegrateFilesOptions setReverseMapping(boolean reverseMapping)
           
 IntegrateFilesOptions setShowActionsOnly(boolean showActionsOnly)
           
 IntegrateFilesOptions setUseHaveRev(boolean useHaveRev)
           
 
Methods inherited from class com.perforce.p4java.option.Options
applyRule, applyRule, applyRule, getOptions, isImmutable, processFields, setImmutable, setOptions
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

OPTIONS_SPECS

public static final String OPTIONS_SPECS
Recognized p4 integrate options; these include:
-c changelist# -d -D -f -h -i -o -n -r -t -v -mn.

See Also:
Constant Field Values

changelistId

protected int changelistId
If positive, the integrated files are opened in the numbered pending changelist instead of the default changelist.


bidirectionalInteg

protected boolean bidirectionalInteg
Cause the branch view to work bidirectionally, where the scope of the command is limited to integrations whose 'from' files match fromFile[revRange]. Corresponds to the -s flag, with the fromFile arg being specified in the main method fromFile parameter.


integrateAroundDeletedRevs

protected boolean integrateAroundDeletedRevs
If true, enable integrations around deleted revisions; equivalent to -d (i.e. -Ds + -Di + -Dt)


rebranchSourceAfterDelete

protected boolean rebranchSourceAfterDelete
If the target file has been deleted and the source file has changed, will re-branch the source file on top of the target file. A.k.a "-Dt".


deleteTargetAfterDelete

protected boolean deleteTargetAfterDelete
If the source file has been deleted and the target file has changed, will delete the target file. A.k.a "-Ds".


integrateAllAfterReAdd

protected boolean integrateAllAfterReAdd
If the source file has been deleted and re-added, will attempt to integrate all outstanding revisions of the file, including those revisions prior to the delete. Normally 'p4 integrate' only considers revisions since the last add. A.k.a. "-Di".


forceIntegration

protected boolean forceIntegration
Forces integrate to act without regard for previous integration history. Corresponds to the -f flag.


useHaveRev

protected boolean useHaveRev
Causes the target files to be left at the revision currently on the client (the '#have' revision). Corresponds to the -h flag.


doBaselessMerge

protected boolean doBaselessMerge
Enables integration between files that have no integration history. Corresponds to the -i flag.


displayBaseDetails

protected boolean displayBaseDetails
Display the base file name and revision which will be used in subsequent resolves if a resolve is needed. Corresponds to the -o flag.


showActionsOnly

protected boolean showActionsOnly
Display what integrations would be necessary but don't actually do them. Corresponds to the -n flag.


reverseMapping

protected boolean reverseMapping
Reverse the mappings in the branch view, with the target files and source files exchanging place. Corresponds to the -r flag.


propagateType

protected boolean propagateType
Propagate the source file's filetype to the target file. Corresponds to the -t flag.


dontCopyToClient

protected boolean dontCopyToClient
Don't copy newly branched files to the client. Corresponds to the -v flag.


maxFiles

protected int maxFiles
If positive, integrate only the first maxFiles files. Corresponds to -m flag.

Constructor Detail

IntegrateFilesOptions

public IntegrateFilesOptions()
Default constructor; sets all fields to null, false, zero, or IChangelist.UNKNOWN.


IntegrateFilesOptions

public IntegrateFilesOptions(String... options)
String-based constructor; possible values are: -c changelist# -d -D -f -h -i -o -n -r -t -v.

Parameters:
options - string options

IntegrateFilesOptions

public IntegrateFilesOptions(int changelistId,
                             boolean bidirectionalInteg,
                             boolean integrateAroundDeletedRevs,
                             boolean rebranchSourceAfterDelete,
                             boolean deleteTargetAfterDelete,
                             boolean integrateAllAfterReAdd,
                             boolean forceIntegration,
                             boolean useHaveRev,
                             boolean doBaselessMerge,
                             boolean displayBaseDetails,
                             boolean showActionsOnly,
                             boolean reverseMapping,
                             boolean propagateType,
                             boolean dontCopyToClient,
                             int maxFiles)
Explicit-value constructor.

Method Detail

processOptions

public List<String> processOptions(IServer server)
                            throws OptionsException
Description copied from class: Options
Turn this (specific) options object into a list of strings to be sent to the Perforce server as options for a specific command. As a side effect, set the option list associated with this Option to the result.

The method is used by the server object to generate the string-based arguments expected by the Perforce server corresponding to the state of this method-specific options object. Will return an empty list if there are no "interesting" options set or available. May simply return the superclass options string list if is non-null, but that behaviour is neither guaranteed nor required.

Note that this method is not intended to be called directly by users but by the underlying P4Java plumbing; odd results may occur if this method is called in other contexts.

Specified by:
processOptions in class Options
Parameters:
server - possibly-null IServer representing the Perforce server the options are to be used against. If this parameter is null, it is acceptable to throw an OptionsException, but it is also possible to ignore it and do the best you can with what you've got...
Returns:
non-null (but possibly empty) string list representing the normalized Perforce server arguments corresponding to the state of this specific options object.
Throws:
OptionsException - if an error occurs in options processing that is not some species of ConnectionException, RequestException, AccessException, etc.
See Also:
Options.processOptions(com.perforce.p4java.server.IServer)

getChangelistId

public int getChangelistId()

setChangelistId

public IntegrateFilesOptions setChangelistId(int changelistId)

isIntegrateAroundDeletedRevs

public boolean isIntegrateAroundDeletedRevs()

setIntegrateAroundDeletedRevs

public IntegrateFilesOptions setIntegrateAroundDeletedRevs(boolean integrateAroundDeletedRevs)

isRebranchSourceAfterDelete

public boolean isRebranchSourceAfterDelete()

setRebranchSourceAfterDelete

public IntegrateFilesOptions setRebranchSourceAfterDelete(boolean rebranchSourceAfterDelete)

isDeleteTargetAfterDelete

public boolean isDeleteTargetAfterDelete()

setDeleteTargetAfterDelete

public IntegrateFilesOptions setDeleteTargetAfterDelete(boolean deleteTargetAfterDelete)

isIntegrateAllAfterReAdd

public boolean isIntegrateAllAfterReAdd()

setIntegrateAllAfterReAdd

public IntegrateFilesOptions setIntegrateAllAfterReAdd(boolean integrateAllAfterReAdd)

isForceIntegration

public boolean isForceIntegration()

setForceIntegration

public IntegrateFilesOptions setForceIntegration(boolean forceIntegration)

isUseHaveRev

public boolean isUseHaveRev()

setUseHaveRev

public IntegrateFilesOptions setUseHaveRev(boolean useHaveRev)

isDoBaselessMerge

public boolean isDoBaselessMerge()

setDoBaselessMerge

public IntegrateFilesOptions setDoBaselessMerge(boolean doBaselessMerge)

isDisplayBaseDetails

public boolean isDisplayBaseDetails()

setDisplayBaseDetails

public IntegrateFilesOptions setDisplayBaseDetails(boolean displayBaseDetails)

isShowActionsOnly

public boolean isShowActionsOnly()

setShowActionsOnly

public IntegrateFilesOptions setShowActionsOnly(boolean showActionsOnly)

isReverseMapping

public boolean isReverseMapping()

setReverseMapping

public IntegrateFilesOptions setReverseMapping(boolean reverseMapping)

isPropagateType

public boolean isPropagateType()

setPropagateType

public IntegrateFilesOptions setPropagateType(boolean propagateType)

isDontCopyToClient

public boolean isDontCopyToClient()

setDontCopyToClient

public IntegrateFilesOptions setDontCopyToClient(boolean dontCopyToClient)

isBidirectionalInteg

public boolean isBidirectionalInteg()

setBidirectionalInteg

public IntegrateFilesOptions setBidirectionalInteg(boolean bidirectionalInteg)

getMaxFiles

public int getMaxFiles()

setMaxFiles

public IntegrateFilesOptions setMaxFiles(int maxFiles)


Copyright © 2011 Perforce Software. All Rights Reserved.