aboutsummaryrefslogtreecommitdiff
path: root/pom.xml
diff options
context:
space:
mode:
authorChristof Rabensteiner <christof.rabensteiner@iaik.tugraz.at>2019-04-29 14:28:48 +0200
committerChristof Rabensteiner <christof.rabensteiner@iaik.tugraz.at>2019-04-29 14:37:08 +0200
commit9a038cf18d6ebd4c68218c20ebc174b779afa7fa (patch)
tree74a5ca5a464112de3c03bec79fbfce2a606556d8 /pom.xml
parentdf2cf5c818067110dc1dfe8506f146f64ae26fe5 (diff)
downloadmoa-zs-9a038cf18d6ebd4c68218c20ebc174b779afa7fa.tar.gz
moa-zs-9a038cf18d6ebd4c68218c20ebc174b779afa7fa.tar.bz2
moa-zs-9a038cf18d6ebd4c68218c20ebc174b779afa7fa.zip
Make JAXB Objects Immutable and Add Builder Utility
- Use Immutable-XJC from https://github.com/sabomichal/immutable-xjc - Update existing JAXB-object manipulations to use the Builder - Remove jaxbMarshallerTest (as it relies on mutable JAXB interfaces) Reason for making JAXB objects immutable: I put JAXB objects in the repository. Depending on the configuration, the repository can be a simple hashmap; in that case I might end up sharing JAXB objects between threads. Immutable shared object should make life a little simpler.
Diffstat (limited to 'pom.xml')
-rw-r--r--pom.xml14
1 files changed, 13 insertions, 1 deletions
diff --git a/pom.xml b/pom.xml
index 6b27f3b..9c963c9 100644
--- a/pom.xml
+++ b/pom.xml
@@ -26,6 +26,7 @@
<jwsapi.version>1.1</jwsapi.version>
<jedisclient.version>2.9.3</jedisclient.version>
<guava.version>27.1-jre</guava.version>
+ <immutable-xjc-plugin.version>1.5</immutable-xjc-plugin.version>
</properties>
<dependencies>
@@ -96,6 +97,13 @@
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-codegen-plugin</artifactId>
<version>${cxf.version}</version>
+ <dependencies>
+ <dependency>
+ <groupId>com.github.sabomichal</groupId>
+ <artifactId>immutable-xjc-plugin</artifactId>
+ <version>${immutable-xjc-plugin.version}</version>
+ </dependency>
+ </dependencies>
<executions>
<execution>
<id>generate-sources</id>
@@ -106,8 +114,12 @@
<wsdlOption>
<wsdl>${project.basedir}/src/main/resources/mzs/app2mzs.wsdl</wsdl>
<wsdlLocation>classpath:wsdl/app2mzs.wsdl</wsdlLocation>
+ <extraargs>
+ <extraarg>-xjc-immutable</extraarg>
+ <extraarg>-xjc-imm-builder</extraarg>
+ </extraargs>
</wsdlOption>
- <wsdlOption>
+ <wsdlOption>
<wsdl>${project.basedir}/src/main/resources/zusemsg/app2zuse_p2.wsdl</wsdl>
<wsdlLocation>classpath:wsdl/app2zuse_p2.wsdl</wsdlLocation>
</wsdlOption>