use of com.mks.api.response.Response in project maven-scm by apache.
the class IntegrityRemoveCommand method executeRemoveCommand.
/**
* {@inheritDoc}
*/
@Override
public RemoveScmResult executeRemoveCommand(ScmProviderRepository repository, ScmFileSet fileSet, String message) throws ScmException {
getLogger().info("Attempting to un-register sandbox in directory " + fileSet.getBasedir().getAbsolutePath());
RemoveScmResult result;
IntegrityScmProviderRepository iRepo = (IntegrityScmProviderRepository) repository;
try {
Sandbox siSandbox = iRepo.getSandbox();
Response res = siSandbox.drop();
int exitCode = res.getExitCode();
boolean success = (exitCode == 0 ? true : false);
result = new RemoveScmResult(res.getCommandString(), "", "Exit Code: " + exitCode, success);
} catch (APIException aex) {
ExceptionHandler eh = new ExceptionHandler(aex);
getLogger().error("MKS API Exception: " + eh.getMessage());
getLogger().info(eh.getCommand() + " exited with return code " + eh.getExitCode());
result = new RemoveScmResult(eh.getCommand(), eh.getMessage(), "Exit Code: " + eh.getExitCode(), false);
}
return result;
}
use of com.mks.api.response.Response in project maven-scm by apache.
the class IntegrityTagCommand method executeTagCommand.
/**
* {@inheritDoc}
*/
@Override
public TagScmResult executeTagCommand(ScmProviderRepository repository, ScmFileSet fileSet, String tagName, ScmTagParameters scmTagParameters) throws ScmException {
getLogger().info("Attempting to checkpoint project associated with sandbox " + fileSet.getBasedir().getAbsolutePath());
TagScmResult result;
String message = scmTagParameters.getMessage();
IntegrityScmProviderRepository iRepo = (IntegrityScmProviderRepository) repository;
try {
// First validate the checkpoint label string by evaluating the groovy script
String chkptLabel = evalGroovyExpression(tagName);
Project.validateTag(chkptLabel);
String msg = ((null == message || message.length() == 0) ? System.getProperty("message") : message);
// Get information about the Project
Project siProject = iRepo.getProject();
// Ensure this is not a build project configuration
if (!siProject.isBuild()) {
Response res = siProject.checkpoint(msg, chkptLabel);
int exitCode = res.getExitCode();
boolean success = (exitCode == 0 ? true : false);
WorkItem wi = res.getWorkItem(siProject.getConfigurationPath());
String chkpt = wi.getResult().getField("resultant").getItem().getId();
getLogger().info("Successfully checkpointed project " + siProject.getConfigurationPath() + " with label '" + chkptLabel + "', new revision is " + chkpt);
result = new TagScmResult(res.getCommandString(), wi.getResult().getMessage(), "Exit Code: " + exitCode, success);
} else {
getLogger().error("Cannot checkpoint a build project configuration: " + siProject.getConfigurationPath() + "!");
result = new TagScmResult("si checkpoint", "Cannot checkpoint a build project configuration!", "", false);
}
} catch (CompilationFailedException cfe) {
getLogger().error("Groovy Compilation Exception: " + cfe.getMessage());
result = new TagScmResult("si checkpoint", cfe.getMessage(), "", false);
} catch (APIException aex) {
ExceptionHandler eh = new ExceptionHandler(aex);
getLogger().error("MKS API Exception: " + eh.getMessage());
getLogger().info(eh.getCommand() + " exited with return code " + eh.getExitCode());
result = new TagScmResult(eh.getCommand(), eh.getMessage(), "Exit Code: " + eh.getExitCode(), false);
} catch (Exception e) {
getLogger().error("Failed to checkpoint project! " + e.getMessage());
result = new TagScmResult("si checkpoint", e.getMessage(), "", false);
}
return result;
}
Aggregations