OPEN - BATCH-999: JobExecution ExecutionContext should not be persisted by Step?

distinguish between save and update in ExecutionContextDao interface
initially save EC together with the execution it belongs to
This commit is contained in:
robokaso
2009-01-20 13:32:14 +00:00
parent 784e640490
commit c08bdad717
7 changed files with 113 additions and 92 deletions

View File

@@ -76,7 +76,7 @@ public abstract class AbstractExecutionContextDaoTests extends AbstractTransacti
ExecutionContext ctx = new ExecutionContext(Collections.<String, Object> singletonMap("key", "value"));
jobExecution.setExecutionContext(ctx);
contextDao.persistExecutionContext(jobExecution);
contextDao.updateExecutionContext(jobExecution);
ExecutionContext retrieved = contextDao.getExecutionContext(jobExecution);
assertEquals(ctx, retrieved);
@@ -88,7 +88,7 @@ public abstract class AbstractExecutionContextDaoTests extends AbstractTransacti
ExecutionContext ctx = new ExecutionContext();
jobExecution.setExecutionContext(ctx);
contextDao.persistExecutionContext(jobExecution);
contextDao.updateExecutionContext(jobExecution);
ExecutionContext retrieved = contextDao.getExecutionContext(jobExecution);
assertEquals(ctx, retrieved);
@@ -101,10 +101,10 @@ public abstract class AbstractExecutionContextDaoTests extends AbstractTransacti
ExecutionContext ctx = new ExecutionContext(Collections
.<String, Object> singletonMap("key", "value"));
jobExecution.setExecutionContext(ctx);
contextDao.persistExecutionContext(jobExecution);
contextDao.updateExecutionContext(jobExecution);
ctx.putLong("longKey", 7);
contextDao.persistExecutionContext(jobExecution);
contextDao.updateExecutionContext(jobExecution);
ExecutionContext retrieved = contextDao.getExecutionContext(jobExecution);
assertEquals(ctx, retrieved);
@@ -117,7 +117,7 @@ public abstract class AbstractExecutionContextDaoTests extends AbstractTransacti
ExecutionContext ctx = new ExecutionContext(Collections.<String, Object> singletonMap("key", "value"));
stepExecution.setExecutionContext(ctx);
contextDao.persistExecutionContext(stepExecution);
contextDao.updateExecutionContext(stepExecution);
ExecutionContext retrieved = contextDao.getExecutionContext(stepExecution);
assertEquals(ctx, retrieved);
@@ -129,7 +129,7 @@ public abstract class AbstractExecutionContextDaoTests extends AbstractTransacti
ExecutionContext ctx = new ExecutionContext();
stepExecution.setExecutionContext(ctx);
contextDao.persistExecutionContext(stepExecution);
contextDao.updateExecutionContext(stepExecution);
ExecutionContext retrieved = contextDao.getExecutionContext(stepExecution);
assertEquals(ctx, retrieved);
@@ -141,10 +141,10 @@ public abstract class AbstractExecutionContextDaoTests extends AbstractTransacti
ExecutionContext ctx = new ExecutionContext(Collections.<String, Object> singletonMap("key", "value"));
stepExecution.setExecutionContext(ctx);
contextDao.persistExecutionContext(stepExecution);
contextDao.updateExecutionContext(stepExecution);
ctx.putLong("longKey", 7);
contextDao.persistExecutionContext(stepExecution);
contextDao.updateExecutionContext(stepExecution);
ExecutionContext retrieved = contextDao.getExecutionContext(stepExecution);
assertEquals(ctx, retrieved);
@@ -158,7 +158,7 @@ public abstract class AbstractExecutionContextDaoTests extends AbstractTransacti
ExecutionContext ec = new ExecutionContext();
ec.put("intValue", new Integer(343232));
stepExecution.setExecutionContext(ec);
contextDao.persistExecutionContext(stepExecution);
contextDao.updateExecutionContext(stepExecution);
ExecutionContext restoredEc = contextDao.getExecutionContext(stepExecution);
assertEquals(ec, restoredEc);
}

View File

@@ -45,13 +45,13 @@ public class MapExecutionContextDaoTests extends AbstractExecutionContextDaoTest
StepExecution stepExecution = new StepExecution("stepName", jobExecution);
assertTrue(stepExecution.getExecutionContext().isEmpty());
tested.persistExecutionContext(stepExecution);
tested.updateExecutionContext(stepExecution);
stepExecution.getExecutionContext().put("key","value");
ExecutionContext retrieved = tested.getExecutionContext(stepExecution);
assertTrue(retrieved.isEmpty());
tested.persistExecutionContext(jobExecution);
tested.updateExecutionContext(jobExecution);
jobExecution.getExecutionContext().put("key", "value");
retrieved = tested.getExecutionContext(jobExecution);
assertTrue(retrieved.isEmpty());