BATCH-2007: Refactored to use JobParametersConverter instead of new interface
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
package org.springframework.batch.core.jsr;
|
||||
package org.springframework.batch.core.converter;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.Properties;
|
||||
@@ -7,16 +7,15 @@ import org.springframework.batch.core.JobParameter;
|
||||
import org.springframework.batch.core.JobParameters;
|
||||
import org.springframework.batch.core.JobParametersBuilder;
|
||||
|
||||
public class ParametersConverterSupport implements ParametersConverter {
|
||||
public class JobParametersConverterSupport implements JobParametersConverter {
|
||||
|
||||
@Override
|
||||
public JobParameters convert(Properties parameters) {
|
||||
public JobParameters getJobParameters(Properties properties) {
|
||||
JobParametersBuilder builder = new JobParametersBuilder();
|
||||
|
||||
if(parameters != null) {
|
||||
for (Map.Entry<Object, Object> curParameter : parameters.entrySet()) {
|
||||
if(properties != null) {
|
||||
for (Map.Entry<Object, Object> curParameter : properties.entrySet()) {
|
||||
if(curParameter.getValue() != null) {
|
||||
|
||||
builder.addString(curParameter.getKey().toString(), curParameter.getValue().toString(), false);
|
||||
}
|
||||
}
|
||||
@@ -25,12 +24,15 @@ public class ParametersConverterSupport implements ParametersConverter {
|
||||
return builder.toJobParameters();
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see org.springframework.batch.core.converter.JobParametersConverter#getProperties(org.springframework.batch.core.JobParameters)
|
||||
*/
|
||||
@Override
|
||||
public Properties convert(JobParameters parameters) {
|
||||
public Properties getProperties(JobParameters params) {
|
||||
Properties properties = new Properties();
|
||||
|
||||
if(properties != null) {
|
||||
for(Map.Entry<String, JobParameter> curParameter: parameters.getParameters().entrySet()) {
|
||||
if(params != null) {
|
||||
for(Map.Entry<String, JobParameter> curParameter: params.getParameters().entrySet()) {
|
||||
properties.setProperty(curParameter.getKey(), curParameter.getValue().getValue().toString());
|
||||
}
|
||||
}
|
||||
@@ -16,6 +16,7 @@ import org.springframework.batch.core.JobExecution;
|
||||
import org.springframework.batch.core.JobInstance;
|
||||
import org.springframework.batch.core.JobParameters;
|
||||
import org.springframework.batch.core.JobParametersBuilder;
|
||||
import org.springframework.batch.core.converter.JobParametersConverter;
|
||||
|
||||
public class JobContextTests {
|
||||
|
||||
@@ -25,7 +26,7 @@ public class JobContextTests {
|
||||
@Mock
|
||||
private JobInstance instance;
|
||||
@Mock
|
||||
private ParametersConverter converter;
|
||||
private JobParametersConverter converter;
|
||||
|
||||
@Before
|
||||
public void setUp() throws Exception {
|
||||
@@ -75,7 +76,7 @@ public class JobContextTests {
|
||||
results.put("key1", "value1");
|
||||
|
||||
when(execution.getJobParameters()).thenReturn(params);
|
||||
when(converter.convert(params)).thenReturn(results);
|
||||
when(converter.getProperties(params)).thenReturn(results);
|
||||
|
||||
Properties props = context.getProperties();
|
||||
|
||||
|
||||
@@ -12,6 +12,7 @@ import org.springframework.batch.core.ExitStatus;
|
||||
import org.springframework.batch.core.JobInstance;
|
||||
import org.springframework.batch.core.JobParameters;
|
||||
import org.springframework.batch.core.JobParametersBuilder;
|
||||
import org.springframework.batch.core.converter.JobParametersConverterSupport;
|
||||
|
||||
public class JobExecutionTests {
|
||||
|
||||
@@ -34,12 +35,12 @@ public class JobExecutionTests {
|
||||
execution.setStatus(BatchStatus.FAILED);
|
||||
execution.setVersion(21);
|
||||
|
||||
adapter = new JobExecution(execution, new ParametersConverterSupport());
|
||||
adapter = new JobExecution(execution, new JobParametersConverterSupport());
|
||||
}
|
||||
|
||||
@Test(expected=IllegalArgumentException.class)
|
||||
public void testCreateWithNull() {
|
||||
adapter = new JobExecution(null, new ParametersConverterSupport());
|
||||
adapter = new JobExecution(null, new JobParametersConverterSupport());
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -38,7 +38,7 @@ public class JsrJobParametersConverterTests {
|
||||
|
||||
@Test
|
||||
public void testNullJobParameters() {
|
||||
Properties props = converter.convert((JobParameters) null);
|
||||
Properties props = converter.getProperties((JobParameters) null);
|
||||
assertNotNull(props);
|
||||
Set<Entry<Object, Object>> properties = props.entrySet();
|
||||
assertEquals(1, properties.size());
|
||||
@@ -48,7 +48,7 @@ public class JsrJobParametersConverterTests {
|
||||
@Test
|
||||
public void testStringJobParameters() {
|
||||
JobParameters parameters = new JobParametersBuilder().addString("key", "value", false).toJobParameters();
|
||||
Properties props = converter.convert(parameters);
|
||||
Properties props = converter.getProperties(parameters);
|
||||
assertNotNull(props);
|
||||
Set<Entry<Object, Object>> properties = props.entrySet();
|
||||
assertEquals(2, properties.size());
|
||||
@@ -59,7 +59,7 @@ public class JsrJobParametersConverterTests {
|
||||
@Test
|
||||
public void testNonStringJobParameters() {
|
||||
JobParameters parameters = new JobParametersBuilder().addLong("key", 5l, false).toJobParameters();
|
||||
Properties props = converter.convert(parameters);
|
||||
Properties props = converter.getProperties(parameters);
|
||||
assertNotNull(props);
|
||||
Set<Entry<Object, Object>> properties = props.entrySet();
|
||||
assertEquals(2, properties.size());
|
||||
@@ -70,7 +70,7 @@ public class JsrJobParametersConverterTests {
|
||||
@Test
|
||||
public void testJobParametersWithRunId() {
|
||||
JobParameters parameters = new JobParametersBuilder().addLong("key", 5l, false).addLong(JsrJobParametersConverter.JOB_RUN_ID, 2l).toJobParameters();
|
||||
Properties props = converter.convert(parameters);
|
||||
Properties props = converter.getProperties(parameters);
|
||||
assertNotNull(props);
|
||||
Set<Entry<Object, Object>> properties = props.entrySet();
|
||||
assertEquals(2, properties.size());
|
||||
@@ -80,7 +80,7 @@ public class JsrJobParametersConverterTests {
|
||||
|
||||
@Test
|
||||
public void testNullProperties() {
|
||||
JobParameters parameters = converter.convert((Properties)null);
|
||||
JobParameters parameters = converter.getJobParameters((Properties)null);
|
||||
assertNotNull(parameters);
|
||||
assertEquals(1, parameters.getParameters().size());
|
||||
assertTrue(parameters.getParameters().containsKey(JsrJobParametersConverter.JOB_RUN_ID));
|
||||
@@ -90,7 +90,7 @@ public class JsrJobParametersConverterTests {
|
||||
public void testProperties() {
|
||||
Properties properties = new Properties();
|
||||
properties.put("key", "value");
|
||||
JobParameters parameters = converter.convert(properties);
|
||||
JobParameters parameters = converter.getJobParameters(properties);
|
||||
assertEquals(2, parameters.getParameters().size());
|
||||
assertEquals("value", parameters.getString("key"));
|
||||
assertTrue(parameters.getParameters().containsKey(JsrJobParametersConverter.JOB_RUN_ID));
|
||||
@@ -101,7 +101,7 @@ public class JsrJobParametersConverterTests {
|
||||
Properties properties = new Properties();
|
||||
properties.put("key", "value");
|
||||
properties.put(JsrJobParametersConverter.JOB_RUN_ID, "3");
|
||||
JobParameters parameters = converter.convert(properties);
|
||||
JobParameters parameters = converter.getJobParameters(properties);
|
||||
assertEquals(2, parameters.getParameters().size());
|
||||
assertEquals("value", parameters.getString("key"));
|
||||
assertEquals(Long.valueOf(3l), parameters.getLong(JsrJobParametersConverter.JOB_RUN_ID));
|
||||
|
||||
@@ -14,6 +14,7 @@ import org.springframework.batch.core.ExitStatus;
|
||||
import org.springframework.batch.core.JobExecution;
|
||||
import org.springframework.batch.core.JobParametersBuilder;
|
||||
import org.springframework.batch.core.StepExecution;
|
||||
import org.springframework.batch.core.converter.JobParametersConverterSupport;
|
||||
|
||||
public class StepContextTests {
|
||||
|
||||
@@ -37,7 +38,7 @@ public class StepContextTests {
|
||||
stepExecution.setWriteCount(7);
|
||||
stepExecution.setWriteSkipCount(8);
|
||||
|
||||
stepContext = new StepContext(stepExecution, new ParametersConverterSupport());
|
||||
stepContext = new StepContext(stepExecution, new JobParametersConverterSupport());
|
||||
stepContext.setTransientUserData("This is my transient data");
|
||||
}
|
||||
|
||||
|
||||
@@ -29,10 +29,10 @@ import org.springframework.batch.core.JobExecution;
|
||||
import org.springframework.batch.core.JobInstance;
|
||||
import org.springframework.batch.core.JobParametersBuilder;
|
||||
import org.springframework.batch.core.StepExecution;
|
||||
import org.springframework.batch.core.converter.JobParametersConverter;
|
||||
import org.springframework.batch.core.converter.JobParametersConverterSupport;
|
||||
import org.springframework.batch.core.explore.JobExplorer;
|
||||
import org.springframework.batch.core.explore.support.SimpleJobExplorer;
|
||||
import org.springframework.batch.core.jsr.ParametersConverter;
|
||||
import org.springframework.batch.core.jsr.ParametersConverterSupport;
|
||||
import org.springframework.batch.core.launch.support.SimpleJobOperator;
|
||||
import org.springframework.batch.core.repository.JobExecutionAlreadyRunningException;
|
||||
import org.springframework.batch.core.repository.JobRepository;
|
||||
@@ -47,12 +47,12 @@ public class JsrJobOperatorTests {
|
||||
private JobExplorer jobExplorer;
|
||||
@Mock
|
||||
private JobRepository jobRepository;
|
||||
private ParametersConverter parameterConverter;
|
||||
private JobParametersConverter parameterConverter;
|
||||
|
||||
@Before
|
||||
public void setup() {
|
||||
MockitoAnnotations.initMocks(this);
|
||||
parameterConverter = new ParametersConverterSupport();
|
||||
parameterConverter = new JobParametersConverterSupport();
|
||||
jsrJobOperator = new JsrJobOperator(jobExplorer, jobRepository, jobOperator, parameterConverter);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user