Class IntegrateFilesOptions
Note that this implementation extends the normal default options processing with its own method(s) due to the complexity of the various -D and -R 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.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected booleanCause the branch view to work bidirectionally, where the scope of the command is limited to integrations whose 'from' files match fromFile[revRange].protected StringIf non-null, use a user-defined branch view.protected booleanSchedules 'branch resolves' instead of branching new target files automatically.protected intIf positive, the integrated files are opened in the numbered pending changelist instead of the default changelist.protected booleanSchedules 'delete resolves' instead of deleting target files automatically.protected booleanIf the source file has been deleted and the target file has changed, will delete the target file.protected booleanDisplay the base file name and revision which will be used in subsequent resolves if a resolve is needed.protected booleanEnables integration between files that have no integration history.protected booleanDon't copy newly branched files to the client.protected booleanForces integrate to act without regard for previous integration history.protected boolean-2 enable old version 2 integration engineprotected booleanIf 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 booleanIf true, enable integrations around deleted revisions; equivalent to -d (i.e.protected intIf positive, integrate only the first maxFiles files.static final StringOptions: -c[changelist], -d, -D[flag], -R[flag], -f, -h, -i, -o, -n, -t, -q, -v, -m[max], -b[branch], -S[stream], -P[parentStream], -r, -sprotected StringIf non-null, specify a parent stream other than the stream's actual parent.protected booleanPropagate the source file's filetype to the target file.protected booleanIf true, suppresses normal output messages.protected booleanIf 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 booleanReverse the mappings in the branch view, with the target files and source files exchanging place.protected booleanDisplay what integrations would be necessary but don't actually do them.protected boolean-Ob Show the base revision for the merge (if any).protected boolean-Or Show the resolve(s) that are being scheduled.protected booleanSkips cherry-picked revisions already integrated.protected StringIf not null, makes 'p4 integrate' use a stream's branch view.protected booleanCauses 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 -
Constructor Summary
ConstructorsConstructorDescriptionDefault constructor.IntegrateFilesOptions(int changelistId, boolean bidirectionalInteg, boolean integrateAroundDeletedRevs, boolean rebranchSourceAfterDelete, boolean deleteTargetAfterDelete, boolean integrateAllAfterReAdd, boolean branchResolves, boolean deleteResolves, boolean skipIntegratedRevs, boolean forceIntegration, boolean useHaveRev, boolean doBaselessMerge, boolean displayBaseDetails, boolean showActionsOnly, boolean reverseMapping, boolean propagateType, boolean dontCopyToClient, int maxFiles) Explicit-value constructor.IntegrateFilesOptions(int changelistId, boolean integrateAroundDeletedRevs, boolean rebranchSourceAfterDelete, boolean deleteTargetAfterDelete, boolean integrateAllAfterReAdd, boolean branchResolves, boolean deleteResolves, boolean skipIntegratedRevs, boolean forceIntegration, boolean useHaveRev, boolean doBaselessMerge, boolean displayBaseDetails, boolean showActionsOnly, boolean propagateType, boolean dontCopyToClient, int maxFiles, String branch, boolean reverseMapping, boolean bidirectionalInteg) Explicit-value constructor for use with a branch.IntegrateFilesOptions(int changelistId, boolean integrateAroundDeletedRevs, boolean rebranchSourceAfterDelete, boolean deleteTargetAfterDelete, boolean integrateAllAfterReAdd, boolean branchResolves, boolean deleteResolves, boolean skipIntegratedRevs, boolean forceIntegration, boolean useHaveRev, boolean doBaselessMerge, boolean displayBaseDetails, boolean showActionsOnly, boolean propagateType, boolean dontCopyToClient, int maxFiles, String stream, String parentStream, boolean reverseMapping) Explicit-value constructor for use with a stream.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) Strings-based constructor; see 'p4 help [command]' for possible options. -
Method Summary
Modifier and TypeMethodDescriptionintintbooleanbooleanbooleanbooleanbooleanbooleanbooleanbooleanbooleanisInteg2()booleanbooleanbooleanbooleanisQuiet()booleanbooleanbooleanbooleanbooleanbooleanbooleanprocessOptions(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.setBidirectionalInteg(boolean bidirectionalInteg) setBranchResolves(boolean branchResolves) setChangelistId(int changelistId) setDeleteResolves(boolean deleteResolves) setDeleteTargetAfterDelete(boolean deleteTargetAfterDelete) setDisplayBaseDetails(boolean displayBaseDetails) setDoBaselessMerge(boolean doBaselessMerge) setDontCopyToClient(boolean dontCopyToClient) setForceIntegration(boolean forceIntegration) setInteg2(boolean enable) setIntegrateAllAfterReAdd(boolean integrateAllAfterReAdd) setIntegrateAroundDeletedRevs(boolean integrateAroundDeletedRevs) setMaxFiles(int maxFiles) setParentStream(String parentStream) setPropagateType(boolean propagateType) setQuiet(boolean quiet) setRebranchSourceAfterDelete(boolean rebranchSourceAfterDelete) setReverseMapping(boolean reverseMapping) setShowActionsOnly(boolean showActionsOnly) setShowBaseRevision(boolean showBaseRevision) setShowScheduledResolve(boolean showScheduledResolve) setSkipIntegratedRevs(boolean skipIntegratedRevs) setUseHaveRev(boolean useHaveRev) Methods inherited from class com.perforce.p4java.option.Options
getOptions, isImmutable, processFields, setImmutable, setOptions
-
Field Details
-
OPTIONS_SPECS
Options: -c[changelist], -d, -D[flag], -R[flag], -f, -h, -i, -o, -n, -t, -q, -v, -m[max], -b[branch], -S[stream], -P[parentStream], -r, -s- See Also:
-
changelistId
protected int changelistIdIf positive, the integrated files are opened in the numbered pending changelist instead of the default changelist. -
bidirectionalInteg
protected boolean bidirectionalIntegCause 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 integrateAroundDeletedRevsIf true, enable integrations around deleted revisions; equivalent to -d (i.e. -Ds + -Di + -Dt) -
rebranchSourceAfterDelete
protected boolean rebranchSourceAfterDeleteIf 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 deleteTargetAfterDeleteIf the source file has been deleted and the target file has changed, will delete the target file. A.k.a "-Ds". -
integrateAllAfterReAdd
protected boolean integrateAllAfterReAddIf 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". -
branchResolves
protected boolean branchResolvesSchedules 'branch resolves' instead of branching new target files automatically. A.k.a "-Rb". -
deleteResolves
protected boolean deleteResolvesSchedules 'delete resolves' instead of deleting target files automatically. A.k.a "-Rd". -
skipIntegratedRevs
protected boolean skipIntegratedRevsSkips cherry-picked revisions already integrated. This can improve merge results, but can also cause multiple resolves per file to be scheduled. A.k.a "-Rs". -
forceIntegration
protected boolean forceIntegrationForces integrate to act without regard for previous integration history. Corresponds to the -f flag. -
useHaveRev
protected boolean useHaveRevCauses the target files to be left at the revision currently on the client (the '#have' revision). Corresponds to the -h flag. -
doBaselessMerge
protected boolean doBaselessMergeEnables integration between files that have no integration history. Corresponds to the -i flag. -
displayBaseDetails
protected boolean displayBaseDetailsDisplay 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 showActionsOnlyDisplay what integrations would be necessary but don't actually do them. Corresponds to the -n flag. -
reverseMapping
protected boolean reverseMappingReverse the mappings in the branch view, with the target files and source files exchanging place. Corresponds to the -r flag. -
propagateType
protected boolean propagateTypePropagate the source file's filetype to the target file. Corresponds to the -t flag. -
quiet
protected boolean quietIf true, suppresses normal output messages. Messages regarding errors or exceptional conditions are not suppressed. Corresponds to -q flag. -
dontCopyToClient
protected boolean dontCopyToClientDon't copy newly branched files to the client. Corresponds to the -v flag. -
maxFiles
protected int maxFilesIf positive, integrate only the first maxFiles files. Corresponds to -m flag. -
branch
If non-null, use a user-defined branch view. The source is the left side of the branch view and the target is the right side. With -r, the direction is reversed. Corresponds to -b flag. -
stream
If not null, makes 'p4 integrate' use a stream's branch view. The source is the stream itself, and the target is the stream's parent. With -r, the direction is reversed. -P can be used to specify a parent stream other than the stream's actual parent. Note that to submit integrated stream files, the current client must be dedicated to the target stream. Corresponds to -S flag. -
parentStream
If non-null, specify a parent stream other than the stream's actual parent. Corresponds to -P flag. -
showBaseRevision
protected boolean showBaseRevision-Ob Show the base revision for the merge (if any). -
showScheduledResolve
protected boolean showScheduledResolve-Or Show the resolve(s) that are being scheduled. -
integ2
protected boolean integ2-2 enable old version 2 integration engine
-
-
Constructor Details
-
IntegrateFilesOptions
public IntegrateFilesOptions()Default constructor. -
IntegrateFilesOptions
Strings-based constructor; see 'p4 help [command]' for possible options.WARNING: you should not pass more than one option or argument in each string parameter. Each option or argument should be passed-in as its own separate string parameter, without any spaces between the option and the option value (if any).
NOTE: setting options this way always bypasses the internal options values, and getter methods against the individual values corresponding to the strings passed in to this constructor will not normally reflect the string's setting. Do not use this constructor unless you know what you're doing and / or you do not also use the field getters and setters.
- Parameters:
options- options- See Also:
-
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.- Parameters:
changelistId- changelistIdbidirectionalInteg- bidirectionalIntegintegrateAroundDeletedRevs- integrateAroundDeletedRevsrebranchSourceAfterDelete- rebranchSourceAfterDeletedeleteTargetAfterDelete- deleteTargetAfterDeleteintegrateAllAfterReAdd- integrateAllAfterReAddforceIntegration- forceIntegrationuseHaveRev- useHaveRevdoBaselessMerge- doBaselessMergedisplayBaseDetails- displayBaseDetailsshowActionsOnly- showActionsOnlyreverseMapping- reverseMappingpropagateType- propagateTypedontCopyToClient- dontCopyToClientmaxFiles- maxFiles
-
IntegrateFilesOptions
public IntegrateFilesOptions(int changelistId, boolean bidirectionalInteg, boolean integrateAroundDeletedRevs, boolean rebranchSourceAfterDelete, boolean deleteTargetAfterDelete, boolean integrateAllAfterReAdd, boolean branchResolves, boolean deleteResolves, boolean skipIntegratedRevs, boolean forceIntegration, boolean useHaveRev, boolean doBaselessMerge, boolean displayBaseDetails, boolean showActionsOnly, boolean reverseMapping, boolean propagateType, boolean dontCopyToClient, int maxFiles) Explicit-value constructor.- Parameters:
changelistId- changelistIdbidirectionalInteg- bidirectionalIntegintegrateAroundDeletedRevs- integrateAroundDeletedRevsrebranchSourceAfterDelete- rebranchSourceAfterDeletedeleteTargetAfterDelete- deleteTargetAfterDeleteintegrateAllAfterReAdd- integrateAllAfterReAddbranchResolves- branchResolvesdeleteResolves- deleteResolvesskipIntegratedRevs- skipIntegratedRevsforceIntegration- forceIntegrationuseHaveRev- useHaveRevdoBaselessMerge- doBaselessMergedisplayBaseDetails- displayBaseDetailsshowActionsOnly- showActionsOnlyreverseMapping- reverseMappingpropagateType- propagateTypedontCopyToClient- dontCopyToClientmaxFiles- maxFiles
-
IntegrateFilesOptions
public IntegrateFilesOptions(int changelistId, boolean integrateAroundDeletedRevs, boolean rebranchSourceAfterDelete, boolean deleteTargetAfterDelete, boolean integrateAllAfterReAdd, boolean branchResolves, boolean deleteResolves, boolean skipIntegratedRevs, boolean forceIntegration, boolean useHaveRev, boolean doBaselessMerge, boolean displayBaseDetails, boolean showActionsOnly, boolean propagateType, boolean dontCopyToClient, int maxFiles, String branch, boolean reverseMapping, boolean bidirectionalInteg) Explicit-value constructor for use with a branch.- Parameters:
changelistId- changelistIdintegrateAroundDeletedRevs- integrateAroundDeletedRevsrebranchSourceAfterDelete- rebranchSourceAfterDeletedeleteTargetAfterDelete- deleteTargetAfterDeleteintegrateAllAfterReAdd- integrateAllAfterReAddbranchResolves- branchResolvesdeleteResolves- deleteResolvesskipIntegratedRevs- skipIntegratedRevsforceIntegration- forceIntegrationuseHaveRev- useHaveRevdoBaselessMerge- doBaselessMergedisplayBaseDetails- displayBaseDetailsshowActionsOnly- showActionsOnlypropagateType- propagateTypedontCopyToClient- dontCopyToClientmaxFiles- maxFilesbranch- branchreverseMapping- reverseMappingbidirectionalInteg- bidirectionalInteg
-
IntegrateFilesOptions
public IntegrateFilesOptions(int changelistId, boolean integrateAroundDeletedRevs, boolean rebranchSourceAfterDelete, boolean deleteTargetAfterDelete, boolean integrateAllAfterReAdd, boolean branchResolves, boolean deleteResolves, boolean skipIntegratedRevs, boolean forceIntegration, boolean useHaveRev, boolean doBaselessMerge, boolean displayBaseDetails, boolean showActionsOnly, boolean propagateType, boolean dontCopyToClient, int maxFiles, String stream, String parentStream, boolean reverseMapping) Explicit-value constructor for use with a stream.- Parameters:
changelistId- changelistIdintegrateAroundDeletedRevs- integrateAroundDeletedRevsrebranchSourceAfterDelete- rebranchSourceAfterDeletedeleteTargetAfterDelete- deleteTargetAfterDeleteintegrateAllAfterReAdd- integrateAllAfterReAddbranchResolves- branchResolvesdeleteResolves- deleteResolvesskipIntegratedRevs- skipIntegratedRevsforceIntegration- forceIntegrationuseHaveRev- useHaveRevdoBaselessMerge- doBaselessMergedisplayBaseDetails- displayBaseDetailsshowActionsOnly- showActionsOnlypropagateType- propagateTypedontCopyToClient- dontCopyToClientmaxFiles- maxFilesstream- streamparentStream- parentStreamreverseMapping- reverseMapping
-
-
Method Details
-
processOptions
Description copied from class:OptionsTurn 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:
processOptionsin classOptions- 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:
-
getChangelistId
public int getChangelistId() -
setChangelistId
-
isIntegrateAroundDeletedRevs
public boolean isIntegrateAroundDeletedRevs() -
setIntegrateAroundDeletedRevs
-
isRebranchSourceAfterDelete
public boolean isRebranchSourceAfterDelete() -
setRebranchSourceAfterDelete
-
isDeleteTargetAfterDelete
public boolean isDeleteTargetAfterDelete() -
setDeleteTargetAfterDelete
-
isIntegrateAllAfterReAdd
public boolean isIntegrateAllAfterReAdd() -
setIntegrateAllAfterReAdd
-
isBranchResolves
public boolean isBranchResolves() -
setBranchResolves
-
isDeleteResolves
public boolean isDeleteResolves() -
setDeleteResolves
-
isSkipIntegratedRevs
public boolean isSkipIntegratedRevs() -
setSkipIntegratedRevs
-
isForceIntegration
public boolean isForceIntegration() -
setForceIntegration
-
isUseHaveRev
public boolean isUseHaveRev() -
setUseHaveRev
-
isDoBaselessMerge
public boolean isDoBaselessMerge() -
setDoBaselessMerge
-
isDisplayBaseDetails
public boolean isDisplayBaseDetails() -
setDisplayBaseDetails
-
isShowActionsOnly
public boolean isShowActionsOnly() -
setShowActionsOnly
-
isReverseMapping
public boolean isReverseMapping() -
setReverseMapping
-
isPropagateType
public boolean isPropagateType() -
setPropagateType
-
isDontCopyToClient
public boolean isDontCopyToClient() -
isQuiet
public boolean isQuiet() -
setQuiet
-
setDontCopyToClient
-
isBidirectionalInteg
public boolean isBidirectionalInteg() -
setBidirectionalInteg
-
getMaxFiles
public int getMaxFiles() -
setMaxFiles
-
getBranch
-
setBranch
-
getStream
-
setStream
-
getParentStream
-
setParentStream
-
isShowBaseRevision
public boolean isShowBaseRevision() -
setShowBaseRevision
-
isShowScheduledResolve
public boolean isShowScheduledResolve() -
setShowScheduledResolve
-
isInteg2
public boolean isInteg2() -
setInteg2
-