Re-organise parallel job to run quicker (not football job any more).

This commit is contained in:
dsyer
2007-12-20 08:55:18 +00:00
parent 6ad57bcb69
commit a29f0f83e8
7 changed files with 242 additions and 306 deletions

View File

@@ -2,7 +2,6 @@ package org.springframework.batch.sample;
import javax.sql.DataSource;
import org.springframework.batch.sample.item.processor.StagingItemProcessor;
import org.springframework.jdbc.core.JdbcOperations;
import org.springframework.jdbc.core.JdbcTemplate;
@@ -16,21 +15,12 @@ public class FootballJobFunctionalTests extends
}
protected String[] getConfigLocations() {
return new String[] { "jobs/parallelJob.xml##" };
return new String[] { "jobs/footballJob.xml##" };
}
protected void validatePostConditions() throws Exception {
int count;
count = jdbcTemplate.queryForInt(
"SELECT COUNT(*) from BATCH_STAGING where PROCESSED=?",
new Object[] {StagingItemProcessor.NEW});
assertEquals(0, count);
int total = jdbcTemplate.queryForInt(
"SELECT COUNT(*) from BATCH_STAGING");
count = jdbcTemplate.queryForInt(
"SELECT COUNT(*) from BATCH_STAGING where PROCESSED=?",
new Object[] {StagingItemProcessor.DONE});
assertEquals(total, count);
int count = jdbcTemplate.queryForInt("SELECT COUNT(*) from PLAYER_SUMMARY");
assertTrue(count>0);
}
}

View File

@@ -0,0 +1,36 @@
package org.springframework.batch.sample;
import javax.sql.DataSource;
import org.springframework.batch.sample.item.processor.StagingItemProcessor;
import org.springframework.jdbc.core.JdbcOperations;
import org.springframework.jdbc.core.JdbcTemplate;
public class ParallelJobFunctionalTests extends
AbstractValidatingBatchLauncherTests {
private JdbcOperations jdbcTemplate;
public void setDataSource(DataSource dataSource) {
this.jdbcTemplate = new JdbcTemplate(dataSource);
}
protected String[] getConfigLocations() {
return new String[] { "jobs/parallelJob.xml" };
}
protected void validatePostConditions() throws Exception {
int count;
count = jdbcTemplate.queryForInt(
"SELECT COUNT(*) from BATCH_STAGING where PROCESSED=?",
new Object[] {StagingItemProcessor.NEW});
assertEquals(0, count);
int total = jdbcTemplate.queryForInt(
"SELECT COUNT(*) from BATCH_STAGING");
count = jdbcTemplate.queryForInt(
"SELECT COUNT(*) from BATCH_STAGING where PROCESSED=?",
new Object[] {StagingItemProcessor.DONE});
assertEquals(total, count);
}
}

View File

@@ -1,32 +0,0 @@
### direct log messages to stdout ###
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
log4j.appender.chainsaw=org.apache.log4j.RollingFileAppender
log4j.appender.chainsaw.File=out.xml
log4j.appender.chainsaw.Append=false
log4j.appender.chainsaw.Threshold=debug
log4j.appender.chainsaw.MaxFileSize=10MB
log4j.appender.chainsaw.MaxBackupIndex=2
log4j.appender.chainsaw.layout=org.apache.log4j.xml.XMLLayout
### set log levels - for more verbose logging change 'info' to 'debug' ###
log4j.rootLogger=info, stdout
# log4j.rootLogger=info, stdout, chainsaw
### enable the following line if you want to track down connection ###
### leakages when using DriverManagerConnectionProvider ###
#log4j.logger.org.hibernate.connection.DriverManagerConnectionProvider=trace
### enable spring
log4j.logger.org.springframework=error
log4j.logger.org.springframework.batch.sample=info
### debug your specific package or classes with the following example
log4j.logger.org.springframework.batch.sample.module.OrderDataProvider=debug
log4j.logger.org.springframework.batch.container.common.module.process.support.DefaultXmlDataProvider=debug
#log4j.logger.org.springframework.jdbc.core=debug
#log4j.logger.org.springframework.transaction=debug