annotate src/de/mpg/mpiwg/itgroup/indexMeta/Utils/ParseIndexMeta.java @ 9:e63a64652f4d

added comments
author dwinter
date Mon, 03 Jan 2011 16:53:48 +0100
parents 83c58ea33792
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
1 package de.mpg.mpiwg.itgroup.indexMeta.Utils;
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
2
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
3 import java.io.IOException;
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
4 import java.io.InputStream;
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
5
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
6 import org.eclipse.core.resources.IFile;
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
7 import org.eclipse.core.runtime.CoreException;
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
8 import org.jdom.Document;
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
9 import org.jdom.Element;
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
10 import org.jdom.JDOMException;
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
11 import org.jdom.input.SAXBuilder;
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
12 import org.jdom.xpath.XPath;
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
13
9
e63a64652f4d added comments
dwinter
parents: 1
diff changeset
14 /**
e63a64652f4d added comments
dwinter
parents: 1
diff changeset
15 *
e63a64652f4d added comments
dwinter
parents: 1
diff changeset
16 * Utilities to parse index.meta files following the standards of the MPIWG
e63a64652f4d added comments
dwinter
parents: 1
diff changeset
17 * @author dwinter
e63a64652f4d added comments
dwinter
parents: 1
diff changeset
18 *
e63a64652f4d added comments
dwinter
parents: 1
diff changeset
19 */
1
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
20 public class ParseIndexMeta {
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
21
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
22 private Document dom;
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
23
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
24 public ParseIndexMeta(IFile indexMetaFile) throws JDOMException, IOException, CoreException {
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
25 SAXBuilder builder = new SAXBuilder();
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
26 InputStream is = indexMetaFile.getContents();
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
27 dom = builder.build(is);
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
28 }
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
29
9
e63a64652f4d added comments
dwinter
parents: 1
diff changeset
30 /**
e63a64652f4d added comments
dwinter
parents: 1
diff changeset
31 * @return the content of the archive-path tag.
e63a64652f4d added comments
dwinter
parents: 1
diff changeset
32 * @throws JDOMException
e63a64652f4d added comments
dwinter
parents: 1
diff changeset
33 */
1
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
34 public String getPath() throws JDOMException {
9
e63a64652f4d added comments
dwinter
parents: 1
diff changeset
35
1
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
36 XPath xpath = XPath.newInstance("//archive-path");
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
37 Element el = (Element)xpath.selectSingleNode(dom);
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
38 if (el==null)
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
39 return null;
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
40 return el.getTextTrim();
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
41 }
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
42
9
e63a64652f4d added comments
dwinter
parents: 1
diff changeset
43 /**
e63a64652f4d added comments
dwinter
parents: 1
diff changeset
44 * @return the content of //texttool/image
e63a64652f4d added comments
dwinter
parents: 1
diff changeset
45 * @throws JDOMException
e63a64652f4d added comments
dwinter
parents: 1
diff changeset
46 */
1
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
47 public String getImagePath() throws JDOMException{
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
48 String path = getPath();
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
49
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
50 XPath xpath = XPath.newInstance("//texttool/image");
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
51 Element el = (Element)xpath.selectSingleNode(dom);
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
52 if (el==null)
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
53 return null;
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
54 String imagePath =el.getTextTrim();
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
55
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
56 return(path+"/"+imagePath);
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
57
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
58 }
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
59
83c58ea33792 first release (continued)
dwinter
parents:
diff changeset
60 }