EMMA Coverage Report (generated Tue May 06 07:29:23 PDT 2008)
[all classes][org.springframework.batch.core.repository.dao]

COVERAGE SUMMARY FOR SOURCE FILE [MapJobInstanceDao.java]

nameclass, %method, %block, %line, %
MapJobInstanceDao.java100% (1/1)100% (5/5)99%  (71/72)94%  (15/16)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class MapJobInstanceDao100% (1/1)100% (5/5)99%  (71/72)94%  (15/16)
getJobInstance (Job, JobParameters): JobInstance 100% (1/1)96%  (25/26)83%  (5/6)
<static initializer> 100% (1/1)100% (3/3)100% (1/1)
MapJobInstanceDao (): void 100% (1/1)100% (6/6)100% (2/2)
clear (): void 100% (1/1)100% (3/3)100% (2/2)
createJobInstance (Job, JobParameters): JobInstance 100% (1/1)100% (34/34)100% (5/5)

1package org.springframework.batch.core.repository.dao;
2 
3import java.util.Collection;
4import java.util.Iterator;
5 
6import org.springframework.batch.core.Job;
7import org.springframework.batch.core.JobInstance;
8import org.springframework.batch.core.JobParameters;
9import org.springframework.batch.support.transaction.TransactionAwareProxyFactory;
10import org.springframework.util.Assert;
11 
12/**
13 * In-memory implementation of {@link JobInstanceDao}.
14 */
15public class MapJobInstanceDao implements JobInstanceDao {
16 
17        private static Collection jobInstances = TransactionAwareProxyFactory.createTransactionalList();
18 
19        private long currentId = 0;
20 
21        public static void clear() {
22                jobInstances.clear();
23        }
24 
25        public JobInstance createJobInstance(Job job, JobParameters jobParameters) {
26                
27                Assert.state(getJobInstance(job, jobParameters) == null, "JobInstance must not already exist");
28                
29                JobInstance jobInstance = new JobInstance(new Long(currentId++), jobParameters, job);
30                jobInstance.incrementVersion();
31                jobInstances.add(jobInstance);
32                
33                return jobInstance;
34        }
35 
36        public JobInstance getJobInstance(Job job, JobParameters jobParameters) {
37                
38                for (Iterator iterator = jobInstances.iterator(); iterator.hasNext();) {
39                        JobInstance instance = (JobInstance) iterator.next();
40                        if (instance.getJobName().equals(job.getName()) && instance.getJobParameters().equals(jobParameters)) {
41                                return instance;
42                        }
43                }
44                return null;
45                
46        }
47 
48}

[all classes][org.springframework.batch.core.repository.dao]
EMMA 2.0.5312 (C) Vladimir Roubtsov