1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.qedeq.kernel.xml.handler.module;
17
18 import org.qedeq.kernel.se.dto.module.LatexVo;
19 import org.qedeq.kernel.xml.common.XmlSyntaxException;
20 import org.qedeq.kernel.xml.handler.common.AbstractSimpleHandler;
21 import org.qedeq.kernel.xml.handler.common.SimpleAttributes;
22
23
24
25
26
27
28
29
30 public class LatexHandler extends AbstractSimpleHandler {
31
32
33 private String language;
34
35
36 private LatexVo latex;
37
38
39 private String data;
40
41
42
43
44
45
46
47
48 public LatexHandler(final AbstractSimpleHandler handler, final String startTag) {
49 super(handler, startTag);
50 }
51
52 public final void init() {
53 latex = null;
54 }
55
56
57
58
59
60
61 public final LatexVo getLatex() {
62 return latex;
63 }
64
65 public final void startElement(final String name, final SimpleAttributes attributes)
66 throws XmlSyntaxException {
67 if (getStartTag().equals(name)) {
68
69 } else if ("LATEX".equals(name)) {
70 this.data = null;
71 language = attributes.getString("language");
72 } else {
73 throw XmlSyntaxException.createUnexpectedTagException(name);
74 }
75 }
76
77 public void endElement(final String name) throws XmlSyntaxException {
78 if (getStartTag().equals(name)) {
79
80 } else if ("LATEX".equals(name)) {
81 latex = new LatexVo(language, data);
82 } else {
83 throw XmlSyntaxException.createUnexpectedTagException(name);
84 }
85 }
86
87 public void characters(final String name, final String data) throws XmlSyntaxException {
88 if (getStartTag().equals(name)) {
89
90 } else if ("LATEX".equals(name)) {
91 this.data = data;
92 } else {
93 throw XmlSyntaxException.createUnexpectedTextDataException(name, data);
94 }
95 }
96
97 }