1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
/*
* Copyright 2006-2023 Prowide
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.prowidesoftware.swift.model.mx;
import com.prowidesoftware.swift.model.mx.adapter.TypeAdaptersConfiguration;
import javax.xml.bind.JAXBContext;
/**
* Simple DTO to encapsulate parameters in the different model-to-XML serialization implementation methods in the API
*
* @since 9.2.6
*/
public class MxWriteParams {
/**
* Optional prefix for namespace (empty by default)
*/
public String prefix;
/**
* True to include the XML declaration (false by default)
*/
public boolean includeXMLDeclaration;
/**
* A specific escape handler for the header elements content (none by default)
*/
public EscapeHandler escapeHandler;
/**
* Optional instance to pass to the write method, if null, a new instance will be created when needed
* @since 9.3.5
*/
public JAXBContext context;
/**
* Specific adapters for date time, date, time
*/
public TypeAdaptersConfiguration adapters;
/**
* Optional indent string to use when marshalling into XML, if null, a four spaces string will be used as default
* @since 9.3.6
*/
public String indent;
public MxWriteParams() {
this(new MxWriteConfiguration());
}
MxWriteParams(MxWriteConfiguration conf) {
this.prefix = null;
MxWriteConfiguration notNullConf = conf == null ? new MxWriteConfiguration() : conf;
// use same defaults as configuration
this.includeXMLDeclaration = notNullConf.includeXMLDeclaration;
this.escapeHandler = notNullConf.escapeHandler;
this.adapters = notNullConf.adapters;
this.context = notNullConf.context;
this.indent = notNullConf.indent;
}
}