net.sf.statcvs.pages.xml
Class XML

java.lang.Object
  extended by net.sf.statcvs.pages.xml.XML

public final class XML
extends Object

TODO: Can we turn this into an abstract base class of MarkupHTML and MarkupXDoc?

Version:
$Id: XML.java,v 1.5 2009/03/13 23:04:28 benoitx Exp $
Author:
Anja Jentzsch, Richard Cyganiak (richard@cyganiak.de)

Method Summary
static String escape(String text)
          Escapes HTML meta characters "&", "<", ">" and turns "\n" line breaks into HTML line breaks ("
");
static String escapeAuthorName(String authorName)
           Escapes evil characters in author's names.
static String escapeDirectoryName(String directoryName)
           
static String getAuthorIdLink(Author author)
          Returns HTML code for a link to an author Id page
static String getAuthorLink(Author author)
          Returns HTML code for a link to an author page
static String getDate(Date date)
          Returns HTML code for a date
static String getDateAndTime(Date date)
          Returns HTML code for a date, including time
static String getDirectoryLink(Directory directory)
          Returns HTML code for a directory page link
static String getIcon(String iconFilename)
          Generates HTML for an icon
static String getLink(String link, String linkName)
          Creates a HTML representation of a hyperlink
static String getLink(String link, String linkName, String prefix, String suffix)
          Creates a HTML representation of a hyperlink
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getLink

public static String getLink(String link,
                             String linkName)
Creates a HTML representation of a hyperlink

Parameters:
link - URL
linkName - Name of the Link
Returns:
String HTML code of the hyperlink

getLink

public static String getLink(String link,
                             String linkName,
                             String prefix,
                             String suffix)
Creates a HTML representation of a hyperlink

Parameters:
link - URL
linkName - Name of the Link
prefix - A prefix to be inserted before the link label; no HTML escaping is performed
prefix - A suffix to be inserted after the link label; no HTML escaping is performed
Returns:
String HTML code of the hyperlink

getAuthorLink

public static String getAuthorLink(Author author)
Returns HTML code for a link to an author page

Parameters:
author - the author
Returns:
HTML code for the link

getAuthorIdLink

public static String getAuthorIdLink(Author author)
Returns HTML code for a link to an author Id page

Parameters:
author - the author
Returns:
HTML code for the link

getDate

public static String getDate(Date date)
Returns HTML code for a date

Parameters:
date - the date
Returns:
HTML code for the date

getDateAndTime

public static String getDateAndTime(Date date)
Returns HTML code for a date, including time

Parameters:
date - the date
Returns:
HTML code for the date

getDirectoryLink

public static String getDirectoryLink(Directory directory)
Returns HTML code for a directory page link

Parameters:
directory - a directory
Returns:
HTML code for the link

getIcon

public static String getIcon(String iconFilename)
Generates HTML for an icon

Parameters:
iconFilename - an icon filename (HTMLOutput.XXXX_ICON constants)
Returns:
HTML string

escapeAuthorName

public static String escapeAuthorName(String authorName)

Escapes evil characters in author's names. E.g. "#" must be escaped because for an author "my#name" a page "author_my#name.html" will be created, and you can't link to that in HTML

TODO: Replace everything *but* known good characters, instead of just evil ones

Parameters:
authorName - an author's name
Returns:
a version safe for creation of files and URLs

escapeDirectoryName

public static String escapeDirectoryName(String directoryName)

escape

public static String escape(String text)
Escapes HTML meta characters "&", "<", ">" and turns "\n" line breaks into HTML line breaks ("
");

Parameters:
text - some string, for example "x > 0 && y < 100"
Returns:
HTML-escaped string, for example "x > 0 && y < 100"