1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.orekit.files.ccsds.ndm.odm;
19
20 import java.io.IOException;
21 import java.util.Map;
22
23 import org.orekit.files.ccsds.section.AbstractWriter;
24 import org.orekit.files.ccsds.utils.FileFormat;
25 import org.orekit.files.ccsds.utils.generation.Generator;
26 import org.orekit.files.ccsds.utils.generation.XmlGenerator;
27
28
29
30
31
32 public class UserDefinedWriter extends AbstractWriter {
33
34
35 private final UserDefined userDefined;
36
37
38
39
40
41
42 public UserDefinedWriter(final String xmlTag, final String kvnTag, final UserDefined userDefined) {
43 super(xmlTag, kvnTag);
44 this.userDefined = userDefined;
45 }
46
47
48 @Override
49 protected void writeContent(final Generator generator) throws IOException {
50
51
52 generator.writeComments(userDefined.getComments());
53
54
55 if (generator.getFormat() == FileFormat.XML) {
56 final XmlGenerator xmlGenerator = (XmlGenerator) generator;
57 for (Map.Entry<String, String> entry : userDefined.getParameters().entrySet()) {
58 xmlGenerator.writeOneAttributeElement(UserDefined.USER_DEFINED_XML_TAG, entry.getValue(),
59 UserDefined.USER_DEFINED_XML_ATTRIBUTE, entry.getKey());
60 }
61 } else {
62 for (Map.Entry<String, String> entry : userDefined.getParameters().entrySet()) {
63 generator.writeEntry(UserDefined.USER_DEFINED_PREFIX + entry.getKey(), entry.getValue(), null, false);
64 }
65 }
66
67 }
68
69 }