diff --git a/batch/chunk-csv-database/pom.xml b/batch/chunk-csv-database/pom.xml index 38ea0b9d7..66bd3c991 100644 --- a/batch/chunk-csv-database/pom.xml +++ b/batch/chunk-csv-database/pom.xml @@ -9,8 +9,13 @@ ../pom.xml - org.javaee7.batch chunk-csv-database - 1.0-SNAPSHOT war + + + + org.javaee7 + util-samples + + diff --git a/batch/chunk-csv-database/src/main/java/org/javaee7/batch/chunk/csv/database/MyItemProcessor.java b/batch/chunk-csv-database/src/main/java/org/javaee7/batch/chunk/csv/database/MyItemProcessor.java index 9dfea24e5..3e7f4450d 100644 --- a/batch/chunk-csv-database/src/main/java/org/javaee7/batch/chunk/csv/database/MyItemProcessor.java +++ b/batch/chunk-csv-database/src/main/java/org/javaee7/batch/chunk/csv/database/MyItemProcessor.java @@ -50,7 +50,8 @@ */ @Named public class MyItemProcessor implements ItemProcessor { - SimpleDateFormat format = new SimpleDateFormat("M/dd/yy"); + private static int id = 1; + private SimpleDateFormat format = new SimpleDateFormat("M/dd/yy"); @Override public Person processItem(Object t) { @@ -69,6 +70,6 @@ public Person processItem(Object t) { return null; } - return new Person(name, date); + return new Person(id++, name, date); } } diff --git a/batch/chunk-csv-database/src/main/java/org/javaee7/batch/chunk/csv/database/Person.java b/batch/chunk-csv-database/src/main/java/org/javaee7/batch/chunk/csv/database/Person.java index 6163430f2..d7833b3c1 100644 --- a/batch/chunk-csv-database/src/main/java/org/javaee7/batch/chunk/csv/database/Person.java +++ b/batch/chunk-csv-database/src/main/java/org/javaee7/batch/chunk/csv/database/Person.java @@ -39,19 +39,11 @@ */ package org.javaee7.batch.chunk.csv.database; -import java.io.Serializable; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.Table; +import javax.persistence.*; import javax.validation.constraints.NotNull; import javax.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; +import java.io.Serializable; /** * @author Arun Gupta @@ -66,7 +58,6 @@ public class Person implements Serializable { @Id - @GeneratedValue(strategy = GenerationType.AUTO) private int id; private static final long serialVersionUID = 1L; @@ -94,6 +85,12 @@ public Person(String name, String hiredate) { this.hiredate = hiredate; } + public Person(int id, String name, String hiredate) { + this.id = id; + this.name = name; + this.hiredate = hiredate; + } + public int getId() { return id; } @@ -132,15 +129,12 @@ public boolean equals(Object object) { return false; } Person other = (Person) object; - if ((this.name == null && other.name != null) || (this.name != null && !this.name.equals(other.name))) { - return false; - } - return true; + return !((this.name == null && other.name != null) || (this.name != null && !this.name.equals(other.name))); } @Override public String toString() { - return name; + return name + id; } } diff --git a/batch/chunk-csv-database/src/main/resources/META-INF/create.sql b/batch/chunk-csv-database/src/main/resources/META-INF/create.sql index a23e4f7ac..2b25c986d 100644 --- a/batch/chunk-csv-database/src/main/resources/META-INF/create.sql +++ b/batch/chunk-csv-database/src/main/resources/META-INF/create.sql @@ -1 +1 @@ -CREATE TABLE CHUNK_CSV_DATABASE ("ID" INTEGER not null primary key, "NAME" VARCHAR(50) not null primary key, "HIREDATE" VARCHAR(50) not null) \ No newline at end of file +CREATE TABLE CHUNK_CSV_DATABASE ("ID" INTEGER not null primary key, "NAME" VARCHAR(50) not null, "HIREDATE" VARCHAR(50) not null) \ No newline at end of file diff --git a/batch/chunk-csv-database/src/main/resources/META-INF/mydata.csv b/batch/chunk-csv-database/src/main/resources/META-INF/mydata.csv index 6226b623e..fd59fbbfb 100644 --- a/batch/chunk-csv-database/src/main/resources/META-INF/mydata.csv +++ b/batch/chunk-csv-database/src/main/resources/META-INF/mydata.csv @@ -1,5 +1,5 @@ Penny, 12/1/12 -Leonard Hofstadter, 14/6/08 +Leonard Hofstadter, 12/6/08 Howard Wolowitz, 8/27/7 Bernadette Rostenkowski-Wolowitz, 8/14/13 Sheldon Cooper, 3/18/9 diff --git a/batch/chunk-csv-database/src/test/java/org/javaee7/batch/chunk/csv/database/BatchCSVDatabaseTest.java b/batch/chunk-csv-database/src/test/java/org/javaee7/batch/chunk/csv/database/BatchCSVDatabaseTest.java new file mode 100644 index 000000000..21f737b19 --- /dev/null +++ b/batch/chunk-csv-database/src/test/java/org/javaee7/batch/chunk/csv/database/BatchCSVDatabaseTest.java @@ -0,0 +1,73 @@ +package org.javaee7.batch.chunk.csv.database; + +import org.javaee7.util.BatchTestHelper; +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.junit.Arquillian; +import org.jboss.shrinkwrap.api.ArchivePaths; +import org.jboss.shrinkwrap.api.ShrinkWrap; +import org.jboss.shrinkwrap.api.asset.EmptyAsset; +import org.jboss.shrinkwrap.api.spec.WebArchive; +import org.junit.Test; +import org.junit.runner.RunWith; + +import javax.batch.operations.JobOperator; +import javax.batch.runtime.*; +import javax.persistence.EntityManager; +import javax.persistence.PersistenceContext; +import javax.persistence.Query; +import java.util.List; +import java.util.Map; +import java.util.Properties; + +import static org.junit.Assert.assertEquals; + +/** + * @author Roberto Cortez + */ +@RunWith(Arquillian.class) +public class BatchCSVDatabaseTest { + @PersistenceContext + private EntityManager entityManager; + + @Deployment + public static WebArchive createDeployment() { + WebArchive war = ShrinkWrap.create(WebArchive.class) + .addClass(BatchTestHelper.class) + .addPackage("org.javaee7.batch.chunk.csv.database") + .addAsWebInfResource(EmptyAsset.INSTANCE, ArchivePaths.create("beans.xml")) + .addAsResource("META-INF/batch-jobs/myJob.xml") + .addAsResource("META-INF/persistence.xml") + .addAsResource("META-INF/create.sql") + .addAsResource("META-INF/drop.sql") + .addAsResource("META-INF/mydata.csv"); + System.out.println(war.toString(true)); + return war; + } + + @Test + public void testBatchCSVDatabase() throws Exception { + JobOperator jobOperator = BatchRuntime.getJobOperator(); + Long executionId = jobOperator.start("myJob", new Properties()); + JobExecution jobExecution = jobOperator.getJobExecution(executionId); + + BatchTestHelper.keepTestAlive(jobExecution); + + List stepExecutions = jobOperator.getStepExecutions(executionId); + for (StepExecution stepExecution : stepExecutions) { + if (stepExecution.getStepName().equals("myStep")) { + Map metricsMap = BatchTestHelper.getMetricsMap(stepExecution.getMetrics()); + + assertEquals(7L, (long) metricsMap.get(Metric.MetricType.READ_COUNT)); + assertEquals(7L, (long) metricsMap.get(Metric.MetricType.WRITE_COUNT)); + assertEquals(3L, (long) metricsMap.get(Metric.MetricType.COMMIT_COUNT)); + } + } + + Query query = entityManager.createNamedQuery("Person.findAll"); + @SuppressWarnings("unchecked") + List persons = query.getResultList(); + + assertEquals(7L, persons.size()); + assertEquals(jobExecution.getBatchStatus(), BatchStatus.COMPLETED); + } +} \ No newline at end of file diff --git a/cdi/alternatives/src/test/resources/arquillian.xml b/cdi/alternatives/src/test/resources/arquillian.xml index 04fcc49bc..e264955a6 100644 --- a/cdi/alternatives/src/test/resources/arquillian.xml +++ b/cdi/alternatives/src/test/resources/arquillian.xml @@ -6,7 +6,7 @@ - ${serverRoot:target/wildfly-8.0.0.Beta1} + ${serverRoot:target/wildfly-8.0.0.CR1} ${serverProfile:standalone-full.xml} diff --git a/cdi/bean-discovery-all/src/test/resources/arquillian.xml b/cdi/bean-discovery-all/src/test/resources/arquillian.xml index 04fcc49bc..e264955a6 100644 --- a/cdi/bean-discovery-all/src/test/resources/arquillian.xml +++ b/cdi/bean-discovery-all/src/test/resources/arquillian.xml @@ -6,7 +6,7 @@ - ${serverRoot:target/wildfly-8.0.0.Beta1} + ${serverRoot:target/wildfly-8.0.0.CR1} ${serverProfile:standalone-full.xml} diff --git a/cdi/bean-discovery-annotated/src/test/resources/arquillian.xml b/cdi/bean-discovery-annotated/src/test/resources/arquillian.xml index 04fcc49bc..e264955a6 100644 --- a/cdi/bean-discovery-annotated/src/test/resources/arquillian.xml +++ b/cdi/bean-discovery-annotated/src/test/resources/arquillian.xml @@ -6,7 +6,7 @@ - ${serverRoot:target/wildfly-8.0.0.Beta1} + ${serverRoot:target/wildfly-8.0.0.CR1} ${serverProfile:standalone-full.xml} diff --git a/cdi/bean-discovery-none/src/test/resources/arquillian.xml b/cdi/bean-discovery-none/src/test/resources/arquillian.xml index 04fcc49bc..e264955a6 100644 --- a/cdi/bean-discovery-none/src/test/resources/arquillian.xml +++ b/cdi/bean-discovery-none/src/test/resources/arquillian.xml @@ -6,7 +6,7 @@ - ${serverRoot:target/wildfly-8.0.0.Beta1} + ${serverRoot:target/wildfly-8.0.0.CR1} ${serverProfile:standalone-full.xml} diff --git a/cdi/beansxml-noversion/src/test/resources/arquillian.xml b/cdi/beansxml-noversion/src/test/resources/arquillian.xml index 04fcc49bc..e264955a6 100644 --- a/cdi/beansxml-noversion/src/test/resources/arquillian.xml +++ b/cdi/beansxml-noversion/src/test/resources/arquillian.xml @@ -6,7 +6,7 @@ - ${serverRoot:target/wildfly-8.0.0.Beta1} + ${serverRoot:target/wildfly-8.0.0.CR1} ${serverProfile:standalone-full.xml} diff --git a/cdi/nobeans-xml/src/test/resources/arquillian.xml b/cdi/nobeans-xml/src/test/resources/arquillian.xml index 04fcc49bc..e264955a6 100644 --- a/cdi/nobeans-xml/src/test/resources/arquillian.xml +++ b/cdi/nobeans-xml/src/test/resources/arquillian.xml @@ -6,7 +6,7 @@ - ${serverRoot:target/wildfly-8.0.0.Beta1} + ${serverRoot:target/wildfly-8.0.0.CR1} ${serverProfile:standalone-full.xml} diff --git a/concurrency/managedexecutor/src/test/resources/arquillian.xml b/concurrency/managedexecutor/src/test/resources/arquillian.xml index 7427c8ea8..fd24d377f 100644 --- a/concurrency/managedexecutor/src/test/resources/arquillian.xml +++ b/concurrency/managedexecutor/src/test/resources/arquillian.xml @@ -6,7 +6,7 @@ - ${serverRoot:target/wildfly-8.0.0.Beta1} + ${serverRoot:target/wildfly-8.0.0.CR1} ${serverProfile:standalone-full.xml} diff --git a/el/standalone/src/test/resources/arquillian.xml b/el/standalone/src/test/resources/arquillian.xml index 04fcc49bc..e264955a6 100644 --- a/el/standalone/src/test/resources/arquillian.xml +++ b/el/standalone/src/test/resources/arquillian.xml @@ -6,7 +6,7 @@ - ${serverRoot:target/wildfly-8.0.0.Beta1} + ${serverRoot:target/wildfly-8.0.0.CR1} ${serverProfile:standalone-full.xml} diff --git a/extra/nosql/hibernate-ogm/src/test/resources/arquillian.xml b/extra/nosql/hibernate-ogm/src/test/resources/arquillian.xml index 7427c8ea8..fd24d377f 100644 --- a/extra/nosql/hibernate-ogm/src/test/resources/arquillian.xml +++ b/extra/nosql/hibernate-ogm/src/test/resources/arquillian.xml @@ -6,7 +6,7 @@ - ${serverRoot:target/wildfly-8.0.0.Beta1} + ${serverRoot:target/wildfly-8.0.0.CR1} ${serverProfile:standalone-full.xml} diff --git a/jaxrs/jaxrs-endpoint/src/test/resources/arquillian.xml b/jaxrs/jaxrs-endpoint/src/test/resources/arquillian.xml index 04fcc49bc..e264955a6 100644 --- a/jaxrs/jaxrs-endpoint/src/test/resources/arquillian.xml +++ b/jaxrs/jaxrs-endpoint/src/test/resources/arquillian.xml @@ -6,7 +6,7 @@ - ${serverRoot:target/wildfly-8.0.0.Beta1} + ${serverRoot:target/wildfly-8.0.0.CR1} ${serverProfile:standalone-full.xml} diff --git a/jpa/datasourcedefinition/src/test/resources/arquillian.xml b/jpa/datasourcedefinition/src/test/resources/arquillian.xml index 04fcc49bc..e264955a6 100644 --- a/jpa/datasourcedefinition/src/test/resources/arquillian.xml +++ b/jpa/datasourcedefinition/src/test/resources/arquillian.xml @@ -6,7 +6,7 @@ - ${serverRoot:target/wildfly-8.0.0.Beta1} + ${serverRoot:target/wildfly-8.0.0.CR1} ${serverProfile:standalone-full.xml} diff --git a/json/object-builder/src/test/resources/arquillian.xml b/json/object-builder/src/test/resources/arquillian.xml index 7427c8ea8..fd24d377f 100644 --- a/json/object-builder/src/test/resources/arquillian.xml +++ b/json/object-builder/src/test/resources/arquillian.xml @@ -6,7 +6,7 @@ - ${serverRoot:target/wildfly-8.0.0.Beta1} + ${serverRoot:target/wildfly-8.0.0.CR1} ${serverProfile:standalone-full.xml} diff --git a/jta/transactional/src/test/resources/arquillian.xml b/jta/transactional/src/test/resources/arquillian.xml index 04fcc49bc..e264955a6 100644 --- a/jta/transactional/src/test/resources/arquillian.xml +++ b/jta/transactional/src/test/resources/arquillian.xml @@ -6,7 +6,7 @@ - ${serverRoot:target/wildfly-8.0.0.Beta1} + ${serverRoot:target/wildfly-8.0.0.CR1} ${serverProfile:standalone-full.xml} diff --git a/jta/tx-exception/src/test/resources/arquillian.xml b/jta/tx-exception/src/test/resources/arquillian.xml index 04fcc49bc..e264955a6 100644 --- a/jta/tx-exception/src/test/resources/arquillian.xml +++ b/jta/tx-exception/src/test/resources/arquillian.xml @@ -6,7 +6,7 @@ - ${serverRoot:target/wildfly-8.0.0.Beta1} + ${serverRoot:target/wildfly-8.0.0.CR1} ${serverProfile:standalone-full.xml} diff --git a/jta/user-transaction/src/test/resources/arquillian.xml b/jta/user-transaction/src/test/resources/arquillian.xml index 04fcc49bc..e264955a6 100644 --- a/jta/user-transaction/src/test/resources/arquillian.xml +++ b/jta/user-transaction/src/test/resources/arquillian.xml @@ -6,7 +6,7 @@ - ${serverRoot:target/wildfly-8.0.0.Beta1} + ${serverRoot:target/wildfly-8.0.0.CR1} ${serverProfile:standalone-full.xml} diff --git a/pom.xml b/pom.xml index 0efd4c069..198a1c7a6 100644 --- a/pom.xml +++ b/pom.xml @@ -13,7 +13,7 @@ 3.0.0 UTF-8 1.1.1.Final - 8.0.0.Beta1 + 8.0.0.CR1 1.3.1 false