1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package com.finalist.ant.tasks.docbook;
19
20 import org.xml.sax.EntityResolver;
21 import org.xml.sax.InputSource;
22
23 /***
24 * <code>DTDResolver.java</code>
25 *
26 * @author stefan
27 * @version $Revision: 1.1 $
28 */
29
30 public class DTDResolver implements EntityResolver{
31
32 public InputSource resolveEntity(String publicId, String systemId) {
33 InputSource returnSource;
34 if( publicId.equalsIgnoreCase("-//OASIS//DTD DocBook XML V4.2//EN") ) {
35 returnSource = new InputSource( this.getClass().getResourceAsStream("/" + ParameterValues.DOCBOOK_DTD_4_2 + "/docbookx.dtd") );
36 returnSource.setSystemId(this.getClass().getResource("/" + ParameterValues.DOCBOOK_DTD_4_2 + "/").toString());
37 }else if( publicId.equalsIgnoreCase("-//OASIS//DTD DocBook XML V4.0//EN") ) {
38 returnSource = new InputSource( this.getClass().getResourceAsStream("/" + ParameterValues.DOCBOOK_DTD_4_0 + "/docbookx.dtd") );
39 returnSource.setSystemId(this.getClass().getResource("/" + ParameterValues.DOCBOOK_DTD_4_0 + "/").toString());
40 }else if( publicId.equalsIgnoreCase("-//OASIS//DTD DocBook XML V4.1.2//EN") ) {
41 returnSource = new InputSource( this.getClass().getResourceAsStream("/" + ParameterValues.DOCBOOK_DTD_4_1_2 + "/docbookx.dtd") );
42 returnSource.setSystemId(this.getClass().getResource("/" + ParameterValues.DOCBOOK_DTD_4_1_2 + "/").toString());
43 }else{
44
45 returnSource = new InputSource(systemId);
46 returnSource.setPublicId(publicId);
47 }
48 return returnSource;
49 }
50 }
51
52
53
54
55
56
57
58
59
60
61