diff --git a/pom.xml b/pom.xml
index 8726320..66efed7 100644
--- a/pom.xml
+++ b/pom.xml
@@ -9,8 +9,8 @@
1.0-SNAPSHOT
- 11
- 11
+ 17
+ 17
diff --git a/src/main/java/com/release11/Main.java b/src/main/java/com/release11/Main.java
index 99ed9fb..2e51e88 100644
--- a/src/main/java/com/release11/Main.java
+++ b/src/main/java/com/release11/Main.java
@@ -59,10 +59,33 @@ public class Main {
from("activemq:queue:RawMaterial")
.enrich("direct:getPackages", new MyAggregator())
- .marshal(xmlDataFormat)
- .to("activemq:queue:MaterialPackage")
+ .choice()
+ .when(simple("${header.ean} == 'false'"))
+ .marshal(xmlDataFormat)
+ .to("activemq:queue:BadEan")
+ .when(simple("${header.dimension} == 'false'"))
+ .marshal(xmlDataFormat)
+ .to("activemq:queue:BadDimension")
+ .otherwise()
+ .marshal(xmlDataFormat)
+ .to("activemq:queue:ValidMaterial")
.to("log:?level=INFO&showBody=true");
+ from("activemq:queue:ValidMaterial")
+ .process(exchange -> {
+
+ });
+
+
+
+
+
+
+
+
+
+
+
}
});
diff --git a/src/main/java/com/release11/MyAggregator.java b/src/main/java/com/release11/MyAggregator.java
index dcd62c6..6d1de14 100644
--- a/src/main/java/com/release11/MyAggregator.java
+++ b/src/main/java/com/release11/MyAggregator.java
@@ -27,6 +27,10 @@ public class MyAggregator implements AggregationStrategy {
material.setDescription((String) oldEx.get("description"));
material.setIsDeleted((Boolean) oldEx.get("is_deleted"));
+
+ oldExchange.getIn().setHeader("dimension", "true");
+ oldExchange.getIn().setHeader("ean", "true");
+
for (int i = 0; i < newEx.size(); i++) {
Package p = new Package();
p.setId((Integer) newEx.get(i).get("id"));
@@ -41,21 +45,39 @@ public class MyAggregator implements AggregationStrategy {
//validation
Pattern pattern = Pattern.compile("\\d\\dx\\d\\dx\\d\\d");
Matcher matcher = pattern.matcher(p.getDimension());
- if(matcher.matches()){
- System.out.println("maczuje");
- }
- else{
- System.out.println("nieeeeeeeee");
- }
+ if (!matcher.matches())
+ oldExchange.getIn().setHeader("dimension", "false");
+ if(!isEanGood(p.getEan()))
+ oldExchange.getIn().setHeader("ean", "false");
}
-
-
-
-
- Exchange result = oldExchange;
- result.getIn().setBody(material);
- return result;
+ oldExchange.getIn().setBody(material);
+ return oldExchange;
}
+
+ boolean isEanGood(String ean) {
+
+ int sum = 0;
+ for (int i = 0; i < ean.length() - 1; i++) {
+ if (i % 2 == 1)
+ sum += (ean.charAt(i) - '0') * 3;
+ else
+ sum += (int) ean.charAt(i) - '0';
+ }
+
+ sum = sum - (sum / 10) * (10);
+ if (sum != 0)
+ sum = 10 - sum;
+
+ int tmp1 = Integer.valueOf(sum);
+ int tmp2 = Integer.valueOf(ean.charAt(ean.length()-1)-'0');
+
+ if(tmp1 == tmp2)
+ return true;
+
+ return false;
+ }
+
+
}
diff --git a/target/Camel-1.0-SNAPSHOT.jar b/target/Camel-1.0-SNAPSHOT.jar
new file mode 100644
index 0000000..36cae29
Binary files /dev/null and b/target/Camel-1.0-SNAPSHOT.jar differ
diff --git a/target/classes/META-INF/JAXB/episode_default-cli.xjb b/target/classes/META-INF/JAXB/episode_xsd-to-java.xjb
similarity index 95%
rename from target/classes/META-INF/JAXB/episode_default-cli.xjb
rename to target/classes/META-INF/JAXB/episode_xsd-to-java.xjb
index 60aa725..740e985 100644
--- a/target/classes/META-INF/JAXB/episode_default-cli.xjb
+++ b/target/classes/META-INF/JAXB/episode_xsd-to-java.xjb
@@ -5,7 +5,7 @@
This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.3.2
See https://javaee.github.io/jaxb-v2/
Any modifications to this file will be lost upon recompilation of the source schema.
-Generated on: 2021.11.18 at 02:34:17 PM CET
+Generated on: 2021.11.18 at 03:03:29 PM CET
-->
diff --git a/target/classes/com/release11/Main$1.class b/target/classes/com/release11/Main$1.class
index 70863a2..b9082a2 100644
Binary files a/target/classes/com/release11/Main$1.class and b/target/classes/com/release11/Main$1.class differ
diff --git a/target/classes/com/release11/Main.class b/target/classes/com/release11/Main.class
index dd40f39..34448ac 100644
Binary files a/target/classes/com/release11/Main.class and b/target/classes/com/release11/Main.class differ
diff --git a/target/classes/com/release11/MyAggregator.class b/target/classes/com/release11/MyAggregator.class
index 73cb52b..195af4e 100644
Binary files a/target/classes/com/release11/MyAggregator.class and b/target/classes/com/release11/MyAggregator.class differ
diff --git a/target/generated-sources/jaxb/META-INF/JAXB/episode_default-cli.xjb b/target/generated-sources/jaxb/META-INF/JAXB/episode_xsd-to-java.xjb
similarity index 95%
rename from target/generated-sources/jaxb/META-INF/JAXB/episode_default-cli.xjb
rename to target/generated-sources/jaxb/META-INF/JAXB/episode_xsd-to-java.xjb
index 60aa725..740e985 100644
--- a/target/generated-sources/jaxb/META-INF/JAXB/episode_default-cli.xjb
+++ b/target/generated-sources/jaxb/META-INF/JAXB/episode_xsd-to-java.xjb
@@ -5,7 +5,7 @@
This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.3.2
See https://javaee.github.io/jaxb-v2/
Any modifications to this file will be lost upon recompilation of the source schema.
-Generated on: 2021.11.18 at 02:34:17 PM CET
+Generated on: 2021.11.18 at 03:03:29 PM CET
-->
diff --git a/target/generated-sources/jaxb/generated/MaterialType.java b/target/generated-sources/jaxb/generated/MaterialType.java
index a052fcc..068fad1 100644
--- a/target/generated-sources/jaxb/generated/MaterialType.java
+++ b/target/generated-sources/jaxb/generated/MaterialType.java
@@ -2,7 +2,7 @@
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.3.2
// See https://javaee.github.io/jaxb-v2/
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2021.11.18 at 02:34:17 PM CET
+// Generated on: 2021.11.18 at 03:03:29 PM CET
//
diff --git a/target/generated-sources/jaxb/generated/MaterialTypeType.java b/target/generated-sources/jaxb/generated/MaterialTypeType.java
index 0351e9f..18d6bc2 100644
--- a/target/generated-sources/jaxb/generated/MaterialTypeType.java
+++ b/target/generated-sources/jaxb/generated/MaterialTypeType.java
@@ -2,7 +2,7 @@
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.3.2
// See https://javaee.github.io/jaxb-v2/
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2021.11.18 at 02:34:17 PM CET
+// Generated on: 2021.11.18 at 03:03:29 PM CET
//
diff --git a/target/generated-sources/jaxb/generated/ObjectFactory.java b/target/generated-sources/jaxb/generated/ObjectFactory.java
index 7ec9a7b..9f7c2a9 100644
--- a/target/generated-sources/jaxb/generated/ObjectFactory.java
+++ b/target/generated-sources/jaxb/generated/ObjectFactory.java
@@ -2,7 +2,7 @@
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.3.2
// See https://javaee.github.io/jaxb-v2/
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2021.11.18 at 02:34:17 PM CET
+// Generated on: 2021.11.18 at 03:03:29 PM CET
//
diff --git a/target/generated-sources/jaxb/generated/Package.java b/target/generated-sources/jaxb/generated/Package.java
index c207ff4..afa731a 100644
--- a/target/generated-sources/jaxb/generated/Package.java
+++ b/target/generated-sources/jaxb/generated/Package.java
@@ -2,7 +2,7 @@
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.3.2
// See https://javaee.github.io/jaxb-v2/
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2021.11.18 at 02:34:17 PM CET
+// Generated on: 2021.11.18 at 03:03:29 PM CET
//
diff --git a/target/jaxb2/.xsd-to-java-xjcStaleFlag b/target/jaxb2/.xsd-to-java-xjcStaleFlag
new file mode 100644
index 0000000..e69de29
diff --git a/target/maven-archiver/pom.properties b/target/maven-archiver/pom.properties
new file mode 100644
index 0000000..105e95c
--- /dev/null
+++ b/target/maven-archiver/pom.properties
@@ -0,0 +1,5 @@
+#Generated by Maven
+#Thu Nov 18 15:35:05 CET 2021
+groupId=org.example
+artifactId=Camel
+version=1.0-SNAPSHOT
diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
new file mode 100644
index 0000000..e69de29
diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
new file mode 100644
index 0000000..4b4e0f2
--- /dev/null
+++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
@@ -0,0 +1,8 @@
+/home/igor/Documents/Jacek/jacek-and-igor/src/main/java/com/release11/DAO.java
+/home/igor/Documents/Jacek/jacek-and-igor/target/generated-sources/jaxb/generated/MaterialType.java
+/home/igor/Documents/Jacek/jacek-and-igor/target/generated-sources/jaxb/generated/Package.java
+/home/igor/Documents/Jacek/jacek-and-igor/src/main/java/com/release11/MyBuilder.java
+/home/igor/Documents/Jacek/jacek-and-igor/target/generated-sources/jaxb/generated/ObjectFactory.java
+/home/igor/Documents/Jacek/jacek-and-igor/target/generated-sources/jaxb/generated/MaterialTypeType.java
+/home/igor/Documents/Jacek/jacek-and-igor/src/main/java/com/release11/MyAggregator.java
+/home/igor/Documents/Jacek/jacek-and-igor/src/main/java/com/release11/Main.java
diff --git a/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst b/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst
new file mode 100644
index 0000000..e69de29