/* * Copyright 2009 Perforce Software Inc., All Rights Reserved. */ package com.perforce.p4java.core.file; /** * A helper class to gather together some of the (infinitely complex) * less-common options available to the integrate method in one object. * This relieves us of having a single integrate method with something * like thirteen separate parameters....<p> * * No attempt is made here to explain the various options and their * semantics -- please consult the main Perforce integ command * documentation for a full explanation -- but see also the explicit-value * constructor below for a summary of option meanings. * * */ public class IntegrationOptions { private boolean useHaveRev = false; private boolean baselessMerge = false; private boolean displayBaseDetails = false;; private boolean propagateType = false; private boolean dontCopyToClient = false; private boolean force = false; private boolean bidirectionalInteg = false; private boolean reverseMapping = false; private String[] deletedOptions = null; private int maxFiles = -1; /** * Default constructor; will generate a suitable IntegrationOptions * object with typically-safe and useful default options values for straightforward * file-to-file integrations. */ public IntegrationOptions() { } /** * Explicit-value constructor. * * @param useHaveRev causes the target files to be left at the revision currently * on the client (the '#have' revision) * @param baselessMerge enables integration between files that have no integration history * @param displayBaseDetails displays the base file name and revision which will * be used in subsequent resolves if a resolve is needed * @param propagateType makes the source file's filetype propagate to the target file * @param dontCopyToClient makes the integration work faster by not copying newly * branched files to the client * @param force if true, forces integrate to act without regard for previous * integration history * @param bidirectionalInteg causes the branch view to work bidirectionally, * where the scope of the command is limited to integrations whose * 'from' files match fromFile[revRange] * @param reverseMapping reverse the mappings in the branch view, with the * target files and source files exchanging place. The branchSpec parameter * will be required in the associated integration call. * @param deletedOptions if non-null, must contain zero or more non-null entries * with individual values "d", "Dt", "Ds", or "Di"; null, inconsistent, or conflicting * option values here will have unspecified and potentially incorrect effects. */ public IntegrationOptions(boolean useHaveRev, boolean baselessMerge, boolean displayBaseDetails, boolean propagateType, boolean dontCopyToClient, boolean force, boolean bidirectionalInteg, boolean reverseMapping, String[] deletedOptions) { this.useHaveRev = useHaveRev; this.baselessMerge = baselessMerge; this.displayBaseDetails = displayBaseDetails; this.propagateType = propagateType; this.dontCopyToClient = dontCopyToClient; this.force = force; this.bidirectionalInteg = bidirectionalInteg; this.reverseMapping = reverseMapping; this.deletedOptions = deletedOptions; } public boolean isUseHaveRev() { return this.useHaveRev; } public void setUseHaveRev(boolean useHaveRev) { this.useHaveRev = useHaveRev; } public boolean isBaselessMerge() { return this.baselessMerge; } public void setBaselessMerge(boolean baselessMerge) { this.baselessMerge = baselessMerge; } public boolean isDisplayBaseDetails() { return this.displayBaseDetails; } public void setDisplayBaseDetails(boolean displayBaseDetails) { this.displayBaseDetails = displayBaseDetails; } public boolean isPropagateType() { return this.propagateType; } public void setPropagateType(boolean propagateType) { this.propagateType = propagateType; } public boolean isDontCopyToClient() { return this.dontCopyToClient; } public void setDontCopyToClient(boolean dontCopyToClient) { this.dontCopyToClient = dontCopyToClient; } public boolean isForce() { return this.force; } public void setForce(boolean force) { this.force = force; } public boolean isBidirectionalInteg() { return this.bidirectionalInteg; } public void setBidirectionalInteg(boolean bidirectionalInteg) { this.bidirectionalInteg = bidirectionalInteg; } public String[] getDeletedOptions() { return this.deletedOptions; } public void setDeletedOptions(String[] deletedOptions) { this.deletedOptions = deletedOptions; } public boolean isReverseMapping() { return this.reverseMapping; } public void setReverseMapping(boolean reverseMapping) { this.reverseMapping = reverseMapping; } public int getMaxFiles() { return this.maxFiles; } public void setMaxFiles(int maxFiles) { this.maxFiles = maxFiles; } }
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#1 | 19903 | stuartrowe |
Branching //guest/perforce_software/p4java/... to //guest/stuartrowe/p4java/... |
||
//guest/perforce_software/p4java/r14.1/src/main/java/com/perforce/p4java/core/file/IntegrationOptions.java | |||||
#1 | 12541 | Matt Attaway | Initial add of the 14.1 p4java source code |