This repository was archived by the owner on Feb 15, 2024. It is now read-only.
File tree Expand file tree Collapse file tree 4 files changed +19
-3
lines changed
dataformat-aasx/src/main/java/io/adminshell/aas/v3/dataformat/aasx
dataformat-xml/src/main/java/io/adminshell/aas/v3/dataformat/xml Expand file tree Collapse file tree 4 files changed +19
-3
lines changed Original file line number Diff line number Diff line change @@ -47,7 +47,7 @@ public class AASXDeserializer {
4747 private static final String XML_TYPE = "http://www.admin-shell.io/aasx/relationships/aas-spec" ;
4848 private static final String AASX_ORIGIN = "/aasx/aasx-origin" ;
4949
50- private XmlDeserializer deserializer = new XmlDeserializer () ;
50+ private final XmlDeserializer deserializer ;
5151
5252 private AssetAdministrationShellEnvironment environment ;
5353 private final OPCPackage aasxRoot ;
@@ -61,6 +61,7 @@ public class AASXDeserializer {
6161 */
6262 public AASXDeserializer (InputStream inputStream ) throws InvalidFormatException , IOException {
6363 aasxRoot = OPCPackage .open (inputStream );
64+ deserializer = new XmlDeserializer ();
6465 }
6566
6667 /**
Original file line number Diff line number Diff line change @@ -61,12 +61,13 @@ public class AASXSerializer {
6161
6262 private static final String AASSUPPL_RELTYPE = "http://www.admin-shell.io/aasx/relationships/aas-suppl" ;
6363
64- private Serializer xmlSerializer = new XmlSerializer () ;
64+ private final Serializer xmlSerializer ;
6565
6666 /**
6767 * Default constructor
6868 */
6969 public AASXSerializer () {
70+ xmlSerializer = new XmlSerializer ();
7071 }
7172
7273 /**
Original file line number Diff line number Diff line change 2222import com .fasterxml .jackson .databind .DeserializationFeature ;
2323import com .fasterxml .jackson .databind .module .SimpleAbstractTypeResolver ;
2424import com .fasterxml .jackson .databind .module .SimpleModule ;
25+ import com .fasterxml .jackson .dataformat .xml .XmlFactory ;
2526import com .fasterxml .jackson .dataformat .xml .XmlMapper ;
2627
2728import io .adminshell .aas .v3 .dataformat .DeserializationException ;
3435
3536public class XmlDeserializer implements Deserializer {
3637
38+ protected final XmlFactory xmlFactory ;
3739 protected XmlMapper mapper ;
3840 protected SimpleAbstractTypeResolver typeResolver ;
3941 protected static Map <Class <?>, com .fasterxml .jackson .databind .JsonDeserializer > customDeserializers = Map .of (
4042 SubmodelElement .class , new SubmodelElementDeserializer ());
4143
4244 public XmlDeserializer () {
45+ this (new XmlFactory ());
46+ }
47+
48+ public XmlDeserializer (XmlFactory xmlFactory ) {
49+ this .xmlFactory = xmlFactory ;
4350 initTypeResolver ();
4451 buildMapper ();
4552 }
4653
4754 protected void buildMapper () {
48- mapper = XmlMapper .builder ().enable (DeserializationFeature .ACCEPT_SINGLE_VALUE_AS_ARRAY )
55+ mapper = XmlMapper .builder (xmlFactory ).enable (DeserializationFeature .ACCEPT_SINGLE_VALUE_AS_ARRAY )
4956 .disable (DeserializationFeature .FAIL_ON_UNKNOWN_PROPERTIES )
5057 .serializationInclusion (JsonInclude .Include .NON_NULL )
5158 .annotationIntrospector (new XmlDataformatAnnotationIntrospector ())
Original file line number Diff line number Diff line change 2323import com .fasterxml .jackson .databind .ObjectWriter ;
2424import com .fasterxml .jackson .databind .SerializationFeature ;
2525import com .fasterxml .jackson .databind .module .SimpleModule ;
26+ import com .fasterxml .jackson .dataformat .xml .XmlFactory ;
2627import com .fasterxml .jackson .dataformat .xml .XmlMapper ;
2728import com .fasterxml .jackson .dataformat .xml .ser .ToXmlGenerator ;
2829
4243import io .adminshell .aas .v3 .model .Reference ;
4344
4445public class XmlSerializer implements Serializer {
46+ protected final XmlFactory xmlFactory ;
4547 protected XmlMapper mapper ;
4648 protected Map <String , String > namespacePrefixes ;
4749
@@ -50,6 +52,11 @@ public XmlSerializer() {
5052 }
5153
5254 public XmlSerializer (Map <String , String > namespacePrefixes ) {
55+ this (new XmlFactory (), namespacePrefixes );
56+ }
57+
58+ public XmlSerializer (XmlFactory xmlFactory , Map <String , String > namespacePrefixes ) {
59+ this .xmlFactory = xmlFactory ;
5360 this .namespacePrefixes = namespacePrefixes ;
5461 buildMapper ();
5562 }
You can’t perform that action at this time.
0 commit comments