public class PerforceScmProvider extends AbstractScmProvider
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
DEFAULT_CLIENTSPEC_PROPERTY |
private static java.lang.Boolean |
live |
private static java.lang.String |
NEWLINE |
private static java.lang.String[] |
PROTOCOLS |
ROLE| Constructor and Description |
|---|
PerforceScmProvider() |
| Modifier and Type | Method and Description |
|---|---|
AddScmResult |
add(ScmProviderRepository repository,
ScmFileSet fileSet,
CommandParameters params) |
protected BlameScmResult |
blame(ScmProviderRepository repository,
ScmFileSet fileSet,
CommandParameters params) |
protected ChangeLogScmResult |
changelog(ScmProviderRepository repository,
ScmFileSet fileSet,
CommandParameters parameters) |
protected CheckInScmResult |
checkin(ScmProviderRepository repository,
ScmFileSet fileSet,
CommandParameters params) |
protected CheckOutScmResult |
checkout(ScmProviderRepository repository,
ScmFileSet fileSet,
CommandParameters params) |
static java.lang.String |
clean(java.lang.String string) |
static java.lang.String |
createClientspec(ScmLogger logger,
PerforceScmProviderRepository repo,
java.io.File workDir,
java.lang.String repoPath) |
static org.codehaus.plexus.util.cli.Commandline |
createP4Command(PerforceScmProviderRepository repo,
java.io.File workingDir) |
protected DiffScmResult |
diff(ScmProviderRepository repository,
ScmFileSet fileSet,
CommandParameters params) |
protected EditScmResult |
edit(ScmProviderRepository repository,
ScmFileSet fileSet,
CommandParameters params) |
private static java.lang.String |
generateDefaultClientspecName(ScmLogger logger,
PerforceScmProviderRepository repo,
java.io.File workDir) |
static java.lang.String |
getCanonicalRepoPath(java.lang.String repoPath)
Given a path like "//depot/foo/bar", returns the
proper path to include everything beneath it.
|
static java.lang.String |
getClientspecName(ScmLogger logger,
PerforceScmProviderRepository repo,
java.io.File workDir) |
static java.lang.String |
getRepoPath(ScmLogger log,
PerforceScmProviderRepository repo,
java.io.File basedir)
This is a "safe" method which handles cases where repo.getPath() is
not actually a valid Perforce depot location.
|
java.lang.String |
getScmType() |
private static java.lang.String |
getUsername(ScmLogger logger,
PerforceScmProviderRepository repo) |
static boolean |
isLive() |
protected LoginScmResult |
login(ScmProviderRepository repository,
ScmFileSet fileSet,
CommandParameters params) |
ScmProviderRepository |
makeProviderScmRepository(java.lang.String scmSpecificUrl,
char delimiter) |
protected RemoveScmResult |
remove(ScmProviderRepository repository,
ScmFileSet fileSet,
CommandParameters params) |
boolean |
requiresEditMode() |
protected StatusScmResult |
status(ScmProviderRepository repository,
ScmFileSet fileSet,
CommandParameters params) |
protected TagScmResult |
tag(ScmProviderRepository repository,
ScmFileSet fileSet,
CommandParameters params) |
protected UnEditScmResult |
unedit(ScmProviderRepository repository,
ScmFileSet fileSet,
CommandParameters params) |
protected UpdateScmResult |
update(ScmProviderRepository repository,
ScmFileSet fileSet,
CommandParameters params) |
add, add, add, addListener, blame, blame, branch, branch, branch, branch, changeLog, changeLog, changeLog, changeLog, changeLog, changeLog, changeLog, changeLog, changeLog, checkIn, checkIn, checkIn, checkOut, checkOut, checkOut, checkOut, checkOut, checkOut, checkOut, diff, diff, edit, export, export, export, export, export, export, getLogger, getScmSpecificFilename, info, list, list, list, makeProviderScmRepository, mkdir, mkdir, remoteInfo, remove, sanitizeTagName, status, tag, tag, tag, unedit, update, update, update, update, update, update, update, update, update, update, update, update, validateScmUrl, validateTagNameprivate static final java.lang.String[] PROTOCOLS
private static final java.lang.String NEWLINE
public static final java.lang.String DEFAULT_CLIENTSPEC_PROPERTY
private static java.lang.Boolean live
public boolean requiresEditMode()
AbstractScmProviderrequiresEditMode in interface ScmProviderrequiresEditMode in class AbstractScmProviderpublic ScmProviderRepository makeProviderScmRepository(java.lang.String scmSpecificUrl, char delimiter) throws ScmRepositoryException
ScmRepositoryExceptionpublic java.lang.String getScmType()
protected ChangeLogScmResult changelog(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters) throws ScmException
changelog in class AbstractScmProviderScmExceptionpublic AddScmResult add(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters params) throws ScmException
add in class AbstractScmProviderScmExceptionprotected RemoveScmResult remove(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters params) throws ScmException
remove in class AbstractScmProviderScmExceptionprotected CheckInScmResult checkin(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters params) throws ScmException
checkin in class AbstractScmProviderScmExceptionprotected CheckOutScmResult checkout(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters params) throws ScmException
checkout in class AbstractScmProviderScmExceptionprotected DiffScmResult diff(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters params) throws ScmException
diff in class AbstractScmProviderScmExceptionprotected EditScmResult edit(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters params) throws ScmException
edit in class AbstractScmProviderScmExceptionprotected LoginScmResult login(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters params) throws ScmException
login in class AbstractScmProviderScmExceptionprotected StatusScmResult status(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters params) throws ScmException
status in class AbstractScmProviderScmExceptionprotected TagScmResult tag(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters params) throws ScmException
tag in class AbstractScmProviderScmExceptionprotected UnEditScmResult unedit(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters params) throws ScmException
unedit in class AbstractScmProviderScmExceptionprotected UpdateScmResult update(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters params) throws ScmException
update in class AbstractScmProviderScmExceptionprotected BlameScmResult blame(ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters params) throws ScmException
blame in class AbstractScmProviderScmExceptionpublic static org.codehaus.plexus.util.cli.Commandline createP4Command(PerforceScmProviderRepository repo, java.io.File workingDir)
public static java.lang.String clean(java.lang.String string)
public static java.lang.String getCanonicalRepoPath(java.lang.String repoPath)
repoPath - public static java.lang.String createClientspec(ScmLogger logger, PerforceScmProviderRepository repo, java.io.File workDir, java.lang.String repoPath)
public static java.lang.String getClientspecName(ScmLogger logger, PerforceScmProviderRepository repo, java.io.File workDir)
private static java.lang.String generateDefaultClientspecName(ScmLogger logger, PerforceScmProviderRepository repo, java.io.File workDir)
private static java.lang.String getUsername(ScmLogger logger, PerforceScmProviderRepository repo)
public static java.lang.String getRepoPath(ScmLogger log, PerforceScmProviderRepository repo, java.io.File basedir)
log - the logging object to userepo - the Perforce repobasedir - the base directory we are operating in. If pom.xml exists in this directory,
this method will verify repo.getPath()/pom.xml==
p4 where basedir/pom.xml
public static boolean isLive()