mirror of
https://github.com/apache/sqoop.git
synced 2025-05-08 12:19:59 +08:00
SQOOP-2735: Sqoop2: Use job name in MSubmission
(Colin Ma via Jarek Jarcec Cecho)
This commit is contained in:
parent
060be9049c
commit
0ab7c05e11
@ -44,9 +44,7 @@
|
||||
public class SubmissionBean implements JsonBean {
|
||||
|
||||
private static final String SUBMISSION = "submission";
|
||||
@Deprecated
|
||||
private static final String JOB = "job";
|
||||
private static final String JOB_ID = "job-id";
|
||||
private static final String JOB_NAME = "job-name";
|
||||
private static final String CREATION_USER = "creation-user";
|
||||
private static final String CREATION_DATE = "creation-date";
|
||||
private static final String LAST_UPDATE_USER = "last-udpate-user";
|
||||
@ -104,8 +102,7 @@ protected JSONArray extractSubmissions() {
|
||||
private JSONObject extractSubmission(MSubmission submission) {
|
||||
JSONObject object = new JSONObject();
|
||||
|
||||
object.put(JOB, submission.getJobId());
|
||||
object.put(JOB_ID, submission.getJobId());
|
||||
object.put(JOB_NAME, submission.getJobName());
|
||||
object.put(STATUS, submission.getStatus().name());
|
||||
object.put(PROGRESS, submission.getProgress());
|
||||
|
||||
@ -176,11 +173,7 @@ protected void restoreSubmissions(JSONArray array) {
|
||||
private MSubmission restoreSubmission(Object obj) {
|
||||
JSONObject object = (JSONObject) obj;
|
||||
MSubmission submission = new MSubmission();
|
||||
Long jobId = JSONUtils.getLong(object, JOB_ID);
|
||||
if (jobId == null) {
|
||||
jobId = JSONUtils.getLong(object, JOB);
|
||||
}
|
||||
submission.setJobId(jobId);
|
||||
submission.setJobName(JSONUtils.getString(object, JOB_NAME));
|
||||
submission.setStatus(SubmissionStatus.valueOf(JSONUtils.getString(object, STATUS)));
|
||||
submission.setProgress(JSONUtils.getDouble(object, PROGRESS));
|
||||
|
||||
|
@ -37,11 +37,11 @@
|
||||
public class MSubmission extends MAccountableEntity {
|
||||
|
||||
/**
|
||||
* Job id that this submission object belongs.
|
||||
* Job name that this submission object belongs.
|
||||
*
|
||||
* This property is required and will be always present.
|
||||
*/
|
||||
private long jobId;
|
||||
private String jobName;
|
||||
|
||||
/**
|
||||
* Last known submission status.
|
||||
@ -122,36 +122,36 @@ public MSubmission() {
|
||||
progress = -1;
|
||||
}
|
||||
|
||||
public MSubmission(long jobId, Date creationDate, SubmissionStatus status) {
|
||||
public MSubmission(String jobName, Date creationDate, SubmissionStatus status) {
|
||||
this();
|
||||
this.jobId = jobId;
|
||||
this.jobName = jobName;
|
||||
this.status = status;
|
||||
setCreationDate(creationDate);
|
||||
}
|
||||
|
||||
public MSubmission(long jobId) {
|
||||
this(jobId, new Date(), SubmissionStatus.BOOTING);
|
||||
public MSubmission(String jobName) {
|
||||
this(jobName, new Date(), SubmissionStatus.BOOTING);
|
||||
}
|
||||
|
||||
public MSubmission(long jobId, Date creationDate, SubmissionStatus status,
|
||||
public MSubmission(String jobName, Date creationDate, SubmissionStatus status,
|
||||
String externalId) {
|
||||
this(jobId, creationDate, status);
|
||||
this(jobName, creationDate, status);
|
||||
this.externalJobId = externalId;
|
||||
}
|
||||
|
||||
public MSubmission(long jobId, Date creationDate, SubmissionStatus status,
|
||||
public MSubmission(String jobName, Date creationDate, SubmissionStatus status,
|
||||
String externalId, String externalLink, Counters counters){
|
||||
this(jobId, creationDate, status, externalId);
|
||||
this(jobName, creationDate, status, externalId);
|
||||
this.externalLink = externalLink;
|
||||
this.counters = counters;
|
||||
}
|
||||
|
||||
public void setJobId(long jobId) {
|
||||
this.jobId = jobId;
|
||||
public String getJobName() {
|
||||
return jobName;
|
||||
}
|
||||
|
||||
public long getJobId() {
|
||||
return jobId;
|
||||
public void setJobName(String jobName) {
|
||||
this.jobName = jobName;
|
||||
}
|
||||
|
||||
public void setStatus(SubmissionStatus status) {
|
||||
@ -247,7 +247,7 @@ public void setToSchema(Schema toSchema) {
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "MSubmission [jobId=" + jobId + ", status=" + status + ", externalId=" + externalJobId
|
||||
return "MSubmission [jobName=" + jobName + ", status=" + status + ", externalId=" + externalJobId
|
||||
+ ", progress=" + progress + ", counters=" + counters + ", externalLink=" + externalLink
|
||||
+ ", error=" + error + ", fromSchema=" + fromSchema + ", toSchema=" + toSchema + "]";
|
||||
}
|
||||
|
@ -54,24 +54,24 @@ public void testTransferUnknown() {
|
||||
@Test
|
||||
public void testTransferJobId() {
|
||||
MSubmission source = new MSubmission();
|
||||
source.setJobId(666);
|
||||
source.setJobName("jobName1");
|
||||
|
||||
MSubmission target = transfer(source);
|
||||
assertEquals(666, target.getJobId());
|
||||
assertEquals("jobName1", target.getJobName());
|
||||
|
||||
List<MSubmission> sources = new ArrayList<MSubmission>();
|
||||
MSubmission sourcex = new MSubmission();
|
||||
sourcex.setJobId(777);
|
||||
sourcex.setJobName("jobName2");
|
||||
sources.add(sourcex);
|
||||
MSubmission sourcey = new MSubmission();
|
||||
sourcey.setJobId(888);
|
||||
sourcey.setJobName("jobName3");
|
||||
sources.add(sourcey);
|
||||
|
||||
List<MSubmission> targets = transfer(sources);
|
||||
assertNotNull(targets.get(0));
|
||||
assertEquals(777, targets.get(0).getJobId());
|
||||
assertEquals("jobName2", targets.get(0).getJobName());
|
||||
assertNotNull(targets.get(1));
|
||||
assertEquals(888, targets.get(1).getJobId());
|
||||
assertEquals("jobName3", targets.get(1).getJobName());
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -311,7 +311,7 @@ public MSubmission start(String jobName, HttpEventContext ctx) {
|
||||
if (!job.getEnabled()) {
|
||||
throw new SqoopException(DriverError.DRIVER_0009, "Job: " + jobName);
|
||||
}
|
||||
MSubmission mSubmission = createJobSubmission(ctx, job.getPersistenceId());
|
||||
MSubmission mSubmission = createJobSubmission(ctx, job.getName());
|
||||
JobRequest jobRequest = createJobRequest(mSubmission, job);
|
||||
// Bootstrap job to execute in the configured execution engine
|
||||
prepareJob(jobRequest);
|
||||
@ -463,8 +463,8 @@ private void addJobJars(JobRequest jobRequest) {
|
||||
}
|
||||
}
|
||||
|
||||
MSubmission createJobSubmission(HttpEventContext ctx, long jobId) {
|
||||
MSubmission summary = new MSubmission(jobId);
|
||||
MSubmission createJobSubmission(HttpEventContext ctx, String jobName) {
|
||||
MSubmission summary = new MSubmission(jobName);
|
||||
summary.setCreationUser(ctx.getUsername());
|
||||
summary.setLastUpdateUser(ctx.getUsername());
|
||||
return summary;
|
||||
@ -496,19 +496,6 @@ MLink getLink(String linkName) {
|
||||
return link;
|
||||
}
|
||||
|
||||
// TODO: this method should be removed when MSubmission link job with jobName
|
||||
MJob getJob(long jobId) {
|
||||
MJob job = RepositoryManager.getInstance().getRepository().findJob(jobId);
|
||||
if (job == null) {
|
||||
throw new SqoopException(DriverError.DRIVER_0004, "Unknown job id: " + jobId);
|
||||
}
|
||||
|
||||
if (!job.getEnabled()) {
|
||||
throw new SqoopException(DriverError.DRIVER_0009, "Job: " + job.getName());
|
||||
}
|
||||
return job;
|
||||
}
|
||||
|
||||
MJob getJob(String jobName) {
|
||||
MJob job = RepositoryManager.getInstance().getRepository().findJob(jobName);
|
||||
if (job == null) {
|
||||
@ -580,7 +567,7 @@ void prepareJob(JobRequest request) {
|
||||
|
||||
void invokeDestroyerOnJobSuccess(MSubmission submission) {
|
||||
try {
|
||||
MJob job = getJob(submission.getJobId());
|
||||
MJob job = getJob(submission.getJobName());
|
||||
|
||||
SqoopConnector fromConnector = getSqoopConnector(job.getFromConnectorName());
|
||||
SqoopConnector toConnector = getSqoopConnector(job.getToConnectorName());
|
||||
|
@ -74,7 +74,7 @@ public void testCreateJobSubmission() {
|
||||
|
||||
HttpEventContext testCtx = new HttpEventContext();
|
||||
testCtx.setUsername("testUser");
|
||||
MSubmission jobSubmission = jobManager.createJobSubmission(testCtx, 1234L);
|
||||
MSubmission jobSubmission = jobManager.createJobSubmission(testCtx, "jobName");
|
||||
assertEquals(jobSubmission.getCreationUser(), "testUser");
|
||||
assertEquals(jobSubmission.getLastUpdateUser(), "testUser");
|
||||
}
|
||||
@ -173,17 +173,15 @@ public void testDisabledJob() {
|
||||
|
||||
@Test
|
||||
public void testUnknownJob() {
|
||||
long testJobId = 555l;
|
||||
SqoopException exception = new SqoopException(DriverError.DRIVER_0004, "Unknown job id: "
|
||||
+ testJobId);
|
||||
SqoopException exception = new SqoopException(DriverError.DRIVER_0004, "Unknown job name: testJobName");
|
||||
when(repositoryManagerMock.getRepository()).thenReturn(jdbcRepoMock);
|
||||
when(jdbcRepoMock.findJob(testJobId)).thenReturn(null);
|
||||
when(jdbcRepoMock.findJob("testJobName")).thenReturn(null);
|
||||
try {
|
||||
jobManager.getJob(testJobId);
|
||||
jobManager.getJob("testJobName");
|
||||
} catch (SqoopException ex) {
|
||||
assertEquals(ex.getMessage(), exception.getMessage());
|
||||
verify(repositoryManagerMock, times(1)).getRepository();
|
||||
verify(jdbcRepoMock, times(1)).findJob(testJobId);
|
||||
verify(jdbcRepoMock, times(1)).findJob("testJobName");
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -636,7 +636,23 @@ public Long findLinkIdByName(String linkName, Connection conn) {
|
||||
}
|
||||
} catch (SQLException ex) {
|
||||
logException(ex);
|
||||
throw new SqoopException(CommonRepositoryError.COMMON_0036, ex);
|
||||
throw new SqoopException(CommonRepositoryError.COMMON_0000, ex);
|
||||
}
|
||||
}
|
||||
|
||||
public Long findJobIdByName(String jobName, Connection conn) {
|
||||
try (PreparedStatement stmt = conn.prepareStatement(crudQueries.getStmtSelectJobIdByName())) {
|
||||
stmt.setString(1,jobName);
|
||||
try (ResultSet rs = stmt.executeQuery()) {
|
||||
if (rs.next()) {
|
||||
return rs.getLong(1);
|
||||
} else {
|
||||
throw new SqoopException(CommonRepositoryError.COMMON_0028);
|
||||
}
|
||||
}
|
||||
} catch (SQLException ex) {
|
||||
logException(ex);
|
||||
throw new SqoopException(CommonRepositoryError.COMMON_0000, ex);
|
||||
}
|
||||
}
|
||||
|
||||
@ -888,9 +904,10 @@ public List<MJob> findJobs(Connection conn) {
|
||||
@Override
|
||||
public void createSubmission(MSubmission submission, Connection conn) {
|
||||
int result;
|
||||
Long jobId = findJobIdByName(submission.getJobName(), conn);
|
||||
try (PreparedStatement stmt = conn.prepareStatement(crudQueries.getStmtInsertSubmission(),
|
||||
Statement.RETURN_GENERATED_KEYS)) {
|
||||
stmt.setLong(1, submission.getJobId());
|
||||
stmt.setLong(1, jobId);
|
||||
stmt.setString(2, submission.getStatus().name());
|
||||
stmt.setString(3, submission.getCreationUser());
|
||||
stmt.setTimestamp(4, new Timestamp(submission.getCreationDate().getTime()));
|
||||
@ -1367,7 +1384,7 @@ private MSubmission loadSubmission(ResultSet rs, Connection conn) throws SQLExce
|
||||
MSubmission submission = new MSubmission();
|
||||
|
||||
submission.setPersistenceId(rs.getLong(1));
|
||||
submission.setJobId(rs.getLong(2));
|
||||
submission.setJobName(rs.getString(12));
|
||||
submission.setStatus(SubmissionStatus.valueOf(rs.getString(3)));
|
||||
submission.setCreationUser(rs.getString(4));
|
||||
submission.setCreationDate(rs.getTimestamp(5));
|
||||
|
@ -536,8 +536,11 @@ public class CommonRepositoryInsertUpdateDeleteSelectQuery {
|
||||
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_EXTERNAL_ID) + ", "
|
||||
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_EXTERNAL_LINK) + ", "
|
||||
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_ERROR_SUMMARY) + ", "
|
||||
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_ERROR_DETAILS)
|
||||
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_ERROR_DETAILS) + ", "
|
||||
+ CommonRepoUtils.escapeColumnName(COLUMN_SQB_NAME)
|
||||
+ " FROM " + CommonRepoUtils.getTableName(SCHEMA_SQOOP, TABLE_SQ_SUBMISSION_NAME)
|
||||
+ " INNER JOIN " + CommonRepoUtils.getTableName(SCHEMA_SQOOP, TABLE_SQ_JOB_NAME)
|
||||
+ " ON " + CommonRepoUtils.escapeColumnName(COLUMN_SQS_JOB) + " = " + CommonRepoUtils.escapeColumnName(COLUMN_SQB_ID)
|
||||
+ " WHERE " + CommonRepoUtils.escapeColumnName(COLUMN_SQS_STATUS) + " = ?";
|
||||
|
||||
// DML : Get all submissions
|
||||
@ -553,8 +556,11 @@ public class CommonRepositoryInsertUpdateDeleteSelectQuery {
|
||||
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_EXTERNAL_ID) + ", "
|
||||
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_EXTERNAL_LINK) + ", "
|
||||
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_ERROR_SUMMARY) + ", "
|
||||
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_ERROR_DETAILS)
|
||||
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_ERROR_DETAILS) + ", "
|
||||
+ CommonRepoUtils.escapeColumnName(COLUMN_SQB_NAME)
|
||||
+ " FROM " + CommonRepoUtils.getTableName(SCHEMA_SQOOP, TABLE_SQ_SUBMISSION_NAME)
|
||||
+ " INNER JOIN " + CommonRepoUtils.getTableName(SCHEMA_SQOOP, TABLE_SQ_JOB_NAME)
|
||||
+ " ON " + CommonRepoUtils.escapeColumnName(COLUMN_SQS_JOB) + " = " + CommonRepoUtils.escapeColumnName(COLUMN_SQB_ID)
|
||||
+ " ORDER BY " + CommonRepoUtils.escapeColumnName(COLUMN_SQS_UPDATE_DATE) + " DESC";
|
||||
|
||||
// DML: Get submissions for a job
|
||||
@ -570,7 +576,8 @@ public class CommonRepositoryInsertUpdateDeleteSelectQuery {
|
||||
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_EXTERNAL_ID) + ", "
|
||||
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_EXTERNAL_LINK) + ", "
|
||||
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_ERROR_SUMMARY) + ", "
|
||||
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_ERROR_DETAILS)
|
||||
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_ERROR_DETAILS) + ", "
|
||||
+ CommonRepoUtils.escapeColumnName(COLUMN_SQB_NAME)
|
||||
+ " FROM " + CommonRepoUtils.getTableName(SCHEMA_SQOOP, TABLE_SQ_SUBMISSION_NAME)
|
||||
+ " INNER JOIN " + CommonRepoUtils.getTableName(SCHEMA_SQOOP, TABLE_SQ_JOB_NAME)
|
||||
+ " ON " + CommonRepoUtils.escapeColumnName(COLUMN_SQS_JOB) + " = " + CommonRepoUtils.escapeColumnName(COLUMN_SQB_ID)
|
||||
@ -578,6 +585,13 @@ public class CommonRepositoryInsertUpdateDeleteSelectQuery {
|
||||
+ " ORDER BY " + CommonRepoUtils.escapeColumnName(COLUMN_SQS_UPDATE_DATE) + "DESC ,"
|
||||
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_ID) + " DESC";
|
||||
|
||||
// DML Select link id by name
|
||||
private static final String STMT_SELECT_JOB_ID_BY_NAME =
|
||||
"SELECT "
|
||||
+ CommonRepoUtils.escapeColumnName(COLUMN_SQB_ID)
|
||||
+ " FROM " + CommonRepoUtils.getTableName(SCHEMA_SQOOP, TABLE_SQ_JOB_NAME)
|
||||
+ " WHERE " + CommonRepoUtils.escapeColumnName(COLUMN_SQB_NAME) + " = ?";
|
||||
|
||||
// DML: Select context type
|
||||
private static final String STMT_SELECT_CONTEXT_TYPE =
|
||||
"SELECT "
|
||||
@ -811,6 +825,10 @@ public String getStmtSelectLinkSingleByName() {
|
||||
|
||||
public String getStmtSelectLinkIdByName() {return STMT_SELECT_LINK_ID_BY_NAME;}
|
||||
|
||||
public String getStmtSelectJobIdByName() {
|
||||
return STMT_SELECT_JOB_ID_BY_NAME;
|
||||
}
|
||||
|
||||
public String getStmtSelectLinkAll() {
|
||||
return STMT_SELECT_LINK_ALL;
|
||||
}
|
||||
|
@ -117,7 +117,7 @@ public void testCreateSubmission() throws Exception {
|
||||
driverContext.setString("driver2", "value2");
|
||||
|
||||
MSubmission submission = new MSubmission();
|
||||
submission.setJobId(1);
|
||||
submission.setJobName("JA0");
|
||||
submission.setStatus(SubmissionStatus.RUNNING);
|
||||
submission.setCreationDate(creationDate);
|
||||
submission.setLastUpdateDate(updateDate);
|
||||
@ -141,7 +141,7 @@ public void testCreateSubmission() throws Exception {
|
||||
|
||||
submission = submissions.get(0);
|
||||
|
||||
assertEquals(1, submission.getJobId());
|
||||
assertEquals("JA0", submission.getJobName());
|
||||
assertEquals(SubmissionStatus.RUNNING, submission.getStatus());
|
||||
assertEquals(creationDate.getTime(), submission.getCreationDate().getTime());
|
||||
assertEquals(updateDate.getTime(), submission.getLastUpdateDate().getTime());
|
||||
@ -188,7 +188,7 @@ public void testCreateSubmission() throws Exception {
|
||||
assertEquals(submission.getDriverContext().getString("driver2"), "value2");
|
||||
|
||||
// Let's create second (simpler) connection
|
||||
submission = new MSubmission(1, new Date(), SubmissionStatus.SUCCEEDED, "job-x");
|
||||
submission = new MSubmission("JA0", new Date(), SubmissionStatus.SUCCEEDED, "job-x");
|
||||
handler.createSubmission(submission, getDerbyDatabaseConnection());
|
||||
|
||||
assertEquals(2, submission.getPersistenceId());
|
||||
@ -229,7 +229,7 @@ public void testCreateSubmissionExceptionDetailsMoreThanMaxLimit() throws Except
|
||||
+ " it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happe"
|
||||
+ "nsYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happens";
|
||||
MSubmission submission = new MSubmission();
|
||||
submission.setJobId(1);
|
||||
submission.setJobName("JA0");
|
||||
submission.setStatus(SubmissionStatus.RUNNING);
|
||||
submission.setCreationDate(new Date());
|
||||
submission.setLastUpdateDate(new Date());
|
||||
|
@ -117,7 +117,7 @@ protected MJob getJob(String name, MConnector connectorA,
|
||||
|
||||
protected MSubmission getSubmission(MJob job,
|
||||
SubmissionStatus submissionStatus) {
|
||||
MSubmission submission = new MSubmission(job.getPersistenceId(),
|
||||
MSubmission submission = new MSubmission(job.getName(),
|
||||
new Date(), submissionStatus);
|
||||
fillSubmission(submission);
|
||||
return submission;
|
||||
|
@ -157,7 +157,7 @@ public void testCreateSubmission() throws Exception {
|
||||
driverContext.setString("driver2", "value2");
|
||||
|
||||
MSubmission submission = new MSubmission();
|
||||
submission.setJobId(1);
|
||||
submission.setJobName(JOB_A_NAME);
|
||||
submission.setStatus(SubmissionStatus.RUNNING);
|
||||
submission.setCreationDate(creationDate);
|
||||
submission.setLastUpdateDate(updateDate);
|
||||
@ -183,7 +183,7 @@ public void testCreateSubmission() throws Exception {
|
||||
|
||||
submission = submissions.get(0);
|
||||
|
||||
assertEquals(1, submission.getJobId());
|
||||
assertEquals(JOB_A_NAME, submission.getJobName());
|
||||
assertEquals(SubmissionStatus.RUNNING, submission.getStatus());
|
||||
long exceptedData = creationDate.getTime();
|
||||
long actualData = submission.getCreationDate().getTime();
|
||||
@ -240,7 +240,7 @@ public void testCreateSubmission() throws Exception {
|
||||
assertEquals(submission.getDriverContext().getString("driver2"), "value2");
|
||||
|
||||
// Let's create second (simpler) connection
|
||||
submission = new MSubmission(1, new Date(), SubmissionStatus.SUCCEEDED,
|
||||
submission = new MSubmission(JOB_A_NAME, new Date(), SubmissionStatus.SUCCEEDED,
|
||||
"job-x");
|
||||
handler.createSubmission(submission, provider.getConnection());
|
||||
|
||||
@ -285,7 +285,7 @@ public void testCreateSubmissionExceptionDetailsMoreThanMaxLimit()
|
||||
+ " it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happe"
|
||||
+ "nsYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happens";
|
||||
MSubmission submission = new MSubmission();
|
||||
submission.setJobId(1);
|
||||
submission.setJobName(JOB_A_NAME);
|
||||
submission.setStatus(SubmissionStatus.RUNNING);
|
||||
submission.setCreationDate(new Date());
|
||||
submission.setLastUpdateDate(new Date());
|
||||
|
@ -106,7 +106,7 @@ protected MJob getJob(String name, MConnector connectorA, MConnector connectorB,
|
||||
}
|
||||
|
||||
protected MSubmission getSubmission(MJob job, SubmissionStatus submissionStatus) {
|
||||
MSubmission submission = new MSubmission(job.getPersistenceId(), new Date(), submissionStatus);
|
||||
MSubmission submission = new MSubmission(job.getName(), new Date(), submissionStatus);
|
||||
fillSubmission(submission);
|
||||
return submission;
|
||||
}
|
||||
|
@ -152,7 +152,7 @@ public void testCreateSubmission() throws Exception {
|
||||
driverContext.setString("driver2", "value2");
|
||||
|
||||
MSubmission submission = new MSubmission();
|
||||
submission.setJobId(1);
|
||||
submission.setJobName(JOB_A_NAME);
|
||||
submission.setStatus(SubmissionStatus.RUNNING);
|
||||
submission.setCreationDate(creationDate);
|
||||
submission.setLastUpdateDate(updateDate);
|
||||
@ -177,7 +177,7 @@ public void testCreateSubmission() throws Exception {
|
||||
|
||||
submission = submissions.get(0);
|
||||
|
||||
assertEquals(1, submission.getJobId());
|
||||
assertEquals(JOB_A_NAME, submission.getJobName());
|
||||
assertEquals(SubmissionStatus.RUNNING, submission.getStatus());
|
||||
assertEquals(creationDate, submission.getCreationDate());
|
||||
assertEquals(updateDate, submission.getLastUpdateDate());
|
||||
@ -224,7 +224,7 @@ public void testCreateSubmission() throws Exception {
|
||||
assertEquals(submission.getDriverContext().getString("driver2"), "value2");
|
||||
|
||||
// Let's create second (simpler) connection
|
||||
submission = new MSubmission(1, new Date(), SubmissionStatus.SUCCEEDED, "job-x");
|
||||
submission = new MSubmission(JOB_A_NAME, new Date(), SubmissionStatus.SUCCEEDED, "job-x");
|
||||
handler.createSubmission(submission, provider.getConnection());
|
||||
|
||||
assertEquals(2, submission.getPersistenceId());
|
||||
@ -265,7 +265,7 @@ public void testCreateSubmissionExceptionDetailsMoreThanMaxLimit() throws Except
|
||||
+ " it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happe"
|
||||
+ "nsYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happens";
|
||||
MSubmission submission = new MSubmission();
|
||||
submission.setJobId(1);
|
||||
submission.setJobName(JOB_A_NAME);
|
||||
submission.setStatus(SubmissionStatus.RUNNING);
|
||||
submission.setCreationDate(new Date());
|
||||
submission.setLastUpdateDate(new Date());
|
||||
|
@ -149,8 +149,7 @@ public static List<MSubmission> filterSubmission(final String doUserName, List<M
|
||||
@Override
|
||||
public boolean apply(MSubmission input) {
|
||||
try {
|
||||
String jobName = getResourceName(MResource.TYPE.JOB, input.getJobId());
|
||||
checkPrivilege(doUserName, getPrivilege(MResource.TYPE.JOB, jobName, MPrivilege.ACTION.READ));
|
||||
checkPrivilege(doUserName, getPrivilege(MResource.TYPE.JOB, input.getJobName(), MPrivilege.ACTION.READ));
|
||||
// add valid submission
|
||||
return true;
|
||||
} catch (RuntimeException e) {
|
||||
|
@ -407,7 +407,7 @@ private JsonBean getJobStatus(RequestContext ctx) {
|
||||
ctx.getRequest().getRemoteAddr(), "status", "job", jobName);
|
||||
MSubmission submission = JobManager.getInstance().status(jobName);
|
||||
if (submission == null) {
|
||||
submission = new MSubmission(job.getPersistenceId(), new Date(), SubmissionStatus.NEVER_EXECUTED);
|
||||
submission = new MSubmission(job.getName(), new Date(), SubmissionStatus.NEVER_EXECUTED);
|
||||
}
|
||||
|
||||
return new SubmissionBean(submission);
|
||||
|
@ -74,7 +74,7 @@ private void showSummary(String jArg) {
|
||||
}
|
||||
|
||||
List<String> header = new LinkedList<String>();
|
||||
header.add(resourceString(Constants.RES_TABLE_HEADER_JOB_ID));
|
||||
header.add(resourceString(Constants.RES_TABLE_HEADER_JOB_NAME));
|
||||
header.add(resourceString(Constants.RES_TABLE_HEADER_EXTERNAL_ID));
|
||||
header.add(resourceString(Constants.RES_TABLE_HEADER_STATUS));
|
||||
header.add(resourceString(Constants.RES_TABLE_HEADER_DATE));
|
||||
@ -85,7 +85,7 @@ private void showSummary(String jArg) {
|
||||
List<String> dates = new LinkedList<String>();
|
||||
|
||||
for (MSubmission submission : submissions) {
|
||||
jids.add(String.valueOf(submission.getJobId()));
|
||||
jids.add(String.valueOf(submission.getJobName()));
|
||||
eids.add(String.valueOf(submission.getExternalJobId()));
|
||||
status.add(submission.getStatus().toString());
|
||||
dates.add(submission.getLastUpdateDate().toString());
|
||||
|
@ -369,8 +369,8 @@ public class Constants {
|
||||
"table.header.connector.from";
|
||||
public static final String RES_TABLE_HEADER_TO_CONNECTOR =
|
||||
"table.header.connector.to";
|
||||
public static final String RES_TABLE_HEADER_JOB_ID =
|
||||
"table.header.jid";
|
||||
public static final String RES_TABLE_HEADER_JOB_NAME =
|
||||
"table.header.job.name";
|
||||
public static final String RES_TABLE_HEADER_EXTERNAL_ID =
|
||||
"table.header.eid";
|
||||
public static final String RES_TABLE_HEADER_STATUS =
|
||||
@ -430,8 +430,8 @@ public class Constants {
|
||||
|
||||
public static final String RES_SUBMISSION_SUBMISSION_DETAIL =
|
||||
"submission.submission_detail";
|
||||
public static final String RES_SUBMISSION_JOB_ID =
|
||||
"submission.job_id";
|
||||
public static final String RES_SUBMISSION_JOB_NAME =
|
||||
"submission.job_name";
|
||||
public static final String RES_SUBMISSION_CREATION_USER =
|
||||
"submission.creation_user";
|
||||
public static final String RES_SUBMISSION_CREATION_DATE =
|
||||
|
@ -43,8 +43,8 @@ public static void displayHeader(MSubmission submission) {
|
||||
SimpleDateFormat dateFormat = new SimpleDateFormat(DATE_FORMAT);
|
||||
println("@|bold "+ resourceString(Constants.RES_SUBMISSION_SUBMISSION_DETAIL) +"|@");
|
||||
|
||||
print(resourceString(Constants.RES_SUBMISSION_JOB_ID)+": ");
|
||||
println(submission.getJobId());
|
||||
print(resourceString(Constants.RES_SUBMISSION_JOB_NAME)+": ");
|
||||
println(submission.getJobName());
|
||||
|
||||
print(resourceString(Constants.RES_SUBMISSION_SERVER_URL)+": ");
|
||||
println(getServerUrl());
|
||||
|
@ -216,7 +216,7 @@ table.header.supported_directions = Supported Directions
|
||||
table.header.connector.name = Connector Name
|
||||
table.header.connector.from = From Connector
|
||||
table.header.connector.to = To Connector
|
||||
table.header.jid = Job Id
|
||||
table.header.job.name = Job Name
|
||||
table.header.eid = External Id
|
||||
table.header.status = Status
|
||||
table.header.date = Last Update Date
|
||||
@ -249,7 +249,7 @@ config.displayer.input_sensitive = This input is sensitive
|
||||
config.displayer.warning_message = There were warnings while create or update, but saved successfully.
|
||||
|
||||
submission.submission_detail = Submission details
|
||||
submission.job_id = Job ID
|
||||
submission.job_name = Job Name
|
||||
submission.creation_user = Created by
|
||||
submission.creation_date = Creation date
|
||||
submission.update_user = Lastly updated by
|
||||
|
@ -278,12 +278,12 @@ public void testShowJob() {
|
||||
|
||||
@Test
|
||||
public void testShowSubmission() {
|
||||
when(client.getSubmissions()).thenReturn(Arrays.asList(new MSubmission(1L)));
|
||||
when(client.getSubmissionsForJob(any(String.class))).thenReturn(Arrays.asList(new MSubmission(1L)));
|
||||
when(client.getSubmissions()).thenReturn(Arrays.asList(new MSubmission("jobName")));
|
||||
when(client.getSubmissionsForJob(any(String.class))).thenReturn(Arrays.asList(new MSubmission("jobName")));
|
||||
|
||||
// show submission -details -name jobName
|
||||
// show submission -details -job jobName
|
||||
out.reset();
|
||||
Status status = (Status) showCmd.execute(Arrays.asList(Constants.FN_SUBMISSION, "-detail", "-name", "jobName"));
|
||||
Status status = (Status) showCmd.execute(Arrays.asList(Constants.FN_SUBMISSION, "-detail", "-job", "jobName"));
|
||||
Assert.assertTrue(status != null && status == Status.OK);
|
||||
String str = new String(out.toByteArray());
|
||||
Assert.assertTrue(str.contains("Submission details"));
|
||||
@ -300,7 +300,7 @@ public void testShowSubmission() {
|
||||
status = (Status) showCmd.execute(Arrays.asList(Constants.FN_SUBMISSION, "-job", "jobName"));
|
||||
Assert.assertTrue(status != null && status == Status.OK);
|
||||
str = new String(out.toByteArray());
|
||||
Assert.assertTrue(str.contains("Job Id"));
|
||||
Assert.assertTrue(str.contains("Job Name"));
|
||||
Assert.assertTrue(str.contains("External Id"));
|
||||
Assert.assertTrue(str.contains("Status"));
|
||||
Assert.assertTrue(str.contains("Last Update Date"));
|
||||
@ -310,7 +310,7 @@ public void testShowSubmission() {
|
||||
status = (Status) showCmd.execute(Arrays.asList(Constants.FN_SUBMISSION));
|
||||
Assert.assertTrue(status != null && status == Status.OK);
|
||||
str = new String(out.toByteArray());
|
||||
Assert.assertTrue(str.contains("Job Id"));
|
||||
Assert.assertTrue(str.contains("Job Name"));
|
||||
Assert.assertTrue(str.contains("External Id"));
|
||||
Assert.assertTrue(str.contains("Status"));
|
||||
Assert.assertTrue(str.contains("Last Update Date"));
|
||||
|
Loading…
Reference in New Issue
Block a user