View Javadoc

1   /*
2    * $Id: ResourceHtmlRenderer.java,v 1.1.1.1 2005/02/17 18:37:34 mch Exp $
3    */
4   package org.astrogrid.dataservice.metadata.html;
5   
6   import org.astrogrid.xml.DomHelper;
7   import org.w3c.dom.Element;
8   
9   
10  /***
11   * Renders the 'core' elements of a Resource in HTML
12   */
13  
14  public class ResourceHtmlRenderer {
15  
16     /*** Renders the core resource elements as 'prose' paragraphs for including in
17      * a page */
18     public String renderAsParagraphs(Element resource)  {
19  
20        StringBuffer html = new StringBuffer();
21        
22        Element identifier = DomHelper.getSingleChildByTagName(resource, "Identifier");
23        
24        html.append("<p><b>Authority ID</b>: "+DomHelper.getValueOf(identifier, "AuthorityID"));
25        html.append("<p><b>Resource Key</b>: "+DomHelper.getValueOf(identifier, "ResourceKey"));
26        
27        html.append("<p><b>Title</b>: "+DomHelper.getValueOf(resource, "Title"));
28        html.append("<p><b>Short Name</b>: "+DomHelper.getValueOf(resource, "ShortName"));
29        
30        Element summary = DomHelper.getSingleChildByTagName(resource, "Summary");
31        
32        html.append("<p><b>Description</b>: "+DomHelper.getValueOf(summary, "Description"));
33        html.append("<p><b>Reference</b>: "+DomHelper.getValueOf(summary, "ReferenceURL"));
34  
35        Element curation = DomHelper.getSingleChildByTagName(resource, "Curation");
36        
37        html.append("<p><b>Publisher</b>: "+DomHelper.getValueOf(curation, "Publisher"));
38  
39        Element contact = DomHelper.getSingleChildByTagName(curation, "Contact");
40        
41        html.append("<p><b>Name</b>: "+DomHelper.getValueOf(contact, "Name"));
42        html.append("<p><b>Email</b>: "+DomHelper.getValueOf(contact, "Email"));
43        html.append("<p><b>Date</b>: "+DomHelper.getValueOf(contact, "Date"));
44        
45        return html.toString();
46     }
47     
48     /*** For including in summary table rows */
49     public String renderAsCells(Element resource) {
50        StringBuffer html = new StringBuffer();
51        
52        Element identifier = DomHelper.getSingleChildByTagName(resource, "Identifier");
53        
54        html.append("<td>"+
55                    DomHelper.getValueOf(identifier, "AuthorityID")+"/"+
56                    DomHelper.getValueOf(identifier, "ResourceKey")+
57                   "</td>");
58        
59        Element summary = DomHelper.getSingleChildByTagName(resource, "Summary");
60        
61        html.append("<td><b>"+
62                    DomHelper.getValueOf(resource, "Title")+"</b><br>"+
63                    DomHelper.getValueOf(summary, "Description")+
64                    "</td>");
65  
66        Element curation = DomHelper.getSingleChildByTagName(resource, "Curation");
67        
68        Element contact = DomHelper.getSingleChildByTagName(curation, "Contact");
69        
70        html.append("<td>"+DomHelper.getValueOf(contact, "Name")+"<br>"+
71                    DomHelper.getValueOf(contact, "Email")+"<br>"+
72                    DomHelper.getValueOf(contact, "Date")+"</td>");
73        
74        return html.toString();
75     }
76  }