javax.help

Class HelpSet

Implemented Interfaces:
Serializable

public class HelpSet
extends java.lang.Object
implements Serializable

A HelpSet is a collection of help information consisting of a HelpSet file, table of contents (TOC), index, topic files, and Map file. The HelpSet file is the portal to the HelpSet.

Nested Class Summary

static class
HelpSet.DefaultHelpSetFactory
The default HelpSetFactory that processes HelpSets.
static class
HelpSet.Presentation
HelpSet Presentation class.

Field Summary

static String
helpBrokerClass
static String
helpBrokerLoader
static Object
implRegistry
Information for implementation customization.
static Object
kitLoaderRegistry
static Object
kitTypeRegistry
HelpSet context information.
protected EventListenerList
listenerList
static String
publicIDString
PublicID (known to this XML processor) to the DTD for version 1.0 of the HelpSet
static String
publicIDString_V2
PublicID (known to this XML processor) to the DTD for version 2.0 of the HelpSet

Constructor Summary

HelpSet()
Creates an empty HelpSet.
HelpSet(ClassLoader loader)
Creates an empty HelpSet that one can parse into.
HelpSet(ClassLoader loader, URL helpset)
Creates a HelpSet.

Method Summary

void
add(HelpSet hs)
Adds a HelpSet, HelpSetEvents are generated.
void
addHelpSetListener(HelpSetListener l)
Adds a listener for the HelpSetEvent posted after the model has changed.
protected void
addPresentation(HelpSet.Presentation presentation, boolean defaultPres)
Adds a HelpSet.Presentation to the current list.
protected void
addSubHelpSet(HelpSet hs)
Adds a SubHelpSet to the current list.
protected void
addView(NavigatorView view)
Adds a NavigatorView to the current list.
boolean
contains(HelpSet hs)
Determines if a HelpSet is a sub-HelpSet of this object.
HelpBroker
createHelpBroker()
Creates a presentation object for this HelpSet.
HelpBroker
createHelpBroker(String presentationName)
Creates a presentation object for this HelpSet.
static URL
findHelpSet(ClassLoader cl, String name)
As above but default on locale to Locale.getDefault()
static URL
findHelpSet(ClassLoader cl, String name, Locale locale)
Locates a HelpSet file and return its URL.
static URL
findHelpSet(ClassLoader cl, String shortName, String extension, Locale locale)
Locates a HelpSet file and return its URL.
protected void
fireHelpSetAdded(Object source, HelpSet helpset)
Fires a helpSetAdded event.
protected void
fireHelpSetRemoved(Object source, HelpSet helpset)
Fires a helpSetRemoved event.
Map
getCombinedMap()
The map for this HelpSet.
HelpSet.Presentation
getDefaultPresentation()
URL
getHelpSetURL()
The URL that is the base for this HelpSet.
Enumeration
getHelpSets()
Enumerates all the HelpSets that have been added to this one.
Map.ID
getHomeID()
Returns the ID to visit when the user makes a "go home" gesture.
Object
getKeyData(Object context, String key)
Gets some Data for a Key in a given context.
ClassLoader
getLoader()
A classloader to use when locating classes.
Map
getLocalMap()
Get the local (i.e.<!-- --> non-recursive) Map for this HelpSet.
Locale
getLocale()
Gets the locale for this HelpSet.
NavigatorView
getNavigatorView(String name)
Gets the NavigatorView with a specific name.
NavigatorView[]
getNavigatorViews()
NavigatorView describes the navigator views that are requested by this HelpSet.
HelpSet.Presentation
getPresentation(String name)
Gets the HelpSet.Presentation with a specific name.
HelpSet.Presentation[]
getPresentations()
HelpSet.Presentation describes the presentations that are defined by this HelpSet.
String
getTitle()
Gets the title of this HelpSet.
static HelpSet
parse(URL url, ClassLoader loader, javax.help.HelpSetFactory factory)
Parsed a HelpSet file.
void
parseInto(URL url, javax.help.HelpSetFactory factory)
Parses into this HelpSet.
boolean
remove(HelpSet hs)
Removes a HelpSet from this HelpSet; HelpSetEvents are generated Return True if it is found, otherwise false.
void
removeHelpSetListener(HelpSetListener l)
Removes a listener previously added with addHelpSetListener
void
setHomeID(String homeID)
Sets the Home ID for a HelpSet.
void
setKeyData(Object context, String key, Object data)
Sets some local KeyData on a given context.
void
setLocalMap(Map map)
Set the Map for this HelpSet.
void
setTitle(String title)
Sest the title for this HelpSet.
String
toString()
Prints Name for this HelpSet.

Field Details

helpBrokerClass

public static final String helpBrokerClass

helpBrokerLoader

public static final String helpBrokerLoader

implRegistry

public static final Object implRegistry
Information for implementation customization. helpBroker/class is used to locate the class for a HelpBroker. helpBroker/loader is used to determine the ClassLoader to use.

kitLoaderRegistry

public static final Object kitLoaderRegistry

kitTypeRegistry

public static final Object kitTypeRegistry
HelpSet context information. A HelpSet can map between keys (String) and values (Strings). There is a per-HelpSet value and a default value. The per-HelpSet value is specified in the appropriate section of the HelpSet file. The default value is global and only specified at class initialization time.

listenerList

protected EventListenerList listenerList

publicIDString

public static final String publicIDString
PublicID (known to this XML processor) to the DTD for version 1.0 of the HelpSet

publicIDString_V2

public static final String publicIDString_V2
PublicID (known to this XML processor) to the DTD for version 2.0 of the HelpSet

Constructor Details

HelpSet

public HelpSet()
Creates an empty HelpSet. Uses the default ClassLoader

HelpSet

public HelpSet(ClassLoader loader)
Creates an empty HelpSet that one can parse into.
Parameters:
loader - The ClassLoader to use. If loader is null, the default ClassLoader is used.

HelpSet

public HelpSet(ClassLoader loader,
               URL helpset)
            throws HelpSetException
Creates a HelpSet. The locale for the data is either that indicated in the lang attribute of the helpset tag, or Locale.getDefault() if the lang attribute is not present.
Parameters:
loader - The class loader to use to locate any classes required by the navigators in the Helpset If loader is null, the default ClassLoader is used.
helpset - The URL to the HelpSet "file"
Throws:
HelpSetException - if there are problems parsing the helpset

Method Details

add

public void add(HelpSet hs)
Adds a HelpSet, HelpSetEvents are generated. Adding a composed HelpSet to another is equivalent to adding all the HelpSets individually.
Parameters:
hs - The HelpSet to add.

addHelpSetListener

public void addHelpSetListener(HelpSetListener l)
Adds a listener for the HelpSetEvent posted after the model has changed.
Parameters:
l - - The listener to add.
See Also:
HelpSet

addPresentation

protected void addPresentation(HelpSet.Presentation presentation,
                               boolean defaultPres)
Adds a HelpSet.Presentation to the current list.

addSubHelpSet

protected void addSubHelpSet(HelpSet hs)
Adds a SubHelpSet to the current list.

addView

protected void addView(NavigatorView view)
Adds a NavigatorView to the current list.

contains

public boolean contains(HelpSet hs)
Determines if a HelpSet is a sub-HelpSet of this object.
Parameters:
hs - The HelpSet to check
Returns:
true If hs is contained in this HelpSet or in one of its children.

createHelpBroker

public HelpBroker createHelpBroker()
Creates a presentation object for this HelpSet. Consults the implRegistry of KeyData for the class name (as helpBrokerClass) and for the ClassLoader instance (as helpBrokerLoader) and then tries to instantiate that class. It then invokes setHelpSet() with this instance of HelpSet as the argument. The resulting object is returned.
See Also:
createHelpBroker(String)

createHelpBroker

public HelpBroker createHelpBroker(String presentationName)
Creates a presentation object for this HelpSet. Consults the implRegistry of KeyData for the class name (as helpBrokerClass) and for the ClassLoader instance (as helpBrokerLoader) and then tries to instantiate that class. It then invokes setHelpSet() with this instance of HelpSet as the argument. The resulting object is returned.
Parameters:
Returns:
HelpBroker The created HelpBroker
Since:
2.0
See Also:
createHelpBroker()

findHelpSet

public static URL findHelpSet(ClassLoader cl,
                              String name)
As above but default on locale to Locale.getDefault()
Parameters:
cl - The ClassLoader to use. If cl is null the default ClassLoader is used.
name - The name of the resource.
Returns:
Null if not found.

findHelpSet

public static URL findHelpSet(ClassLoader cl,
                              String name,
                              Locale locale)
Locates a HelpSet file and return its URL. If the name does not end with the ".hs" extension, the ".hs" extension is appended and localization rules are applied to it.
Parameters:
cl - The classloader to use. If cl is null the default ClassLoader is used.
name - The name of the resource.
locale - The desired locale.

findHelpSet

public static URL findHelpSet(ClassLoader cl,
                              String shortName,
                              String extension,
                              Locale locale)
Locates a HelpSet file and return its URL. Applies localization conventions.
Parameters:
cl - The classloader to use when searching for the resource with the appropriate name. If cl is null the default ClassLoader is used.
shortName - The shortname of the resource.
extension - The extension of the resource.
locale - The desired Locale

fireHelpSetAdded

protected void fireHelpSetAdded(Object source,
                                HelpSet helpset)
Fires a helpSetAdded event.

fireHelpSetRemoved

protected void fireHelpSetRemoved(Object source,
                                  HelpSet helpset)
Fires a helpSetRemoved event.

getCombinedMap

public Map getCombinedMap()
The map for this HelpSet. This map involves the closure of this HelpSet's children HelpSets.
Returns:
The map

getDefaultPresentation

public HelpSet.Presentation getDefaultPresentation()

getHelpSetURL

public URL getHelpSetURL()
The URL that is the base for this HelpSet.
Returns:
The URL that is base to this HelpSet.

getHelpSets

public Enumeration getHelpSets()
Enumerates all the HelpSets that have been added to this one.
Returns:
An enumeration of the HelpSets that have been added to this HelpSet.

getHomeID

public Map.ID getHomeID()
Returns the ID to visit when the user makes a "go home" gesture. This can be identified in the project file, but may also be changed programmatically or (possibly) via the UI.
Returns:
The ID of home. A null is returned if homeID is null or if an ID cannot be created for the homeID.

getKeyData

public Object getKeyData(Object context,
                         String key)
Gets some Data for a Key in a given context. Local (per HelpSet instance) data is searched first, then defaults.

getLoader

public ClassLoader getLoader()
A classloader to use when locating classes.
Returns:
The ClassLoader to use when locating classes mentioned in this HelpSet.

getLocalMap

public Map getLocalMap()
Get the local (i.e.<!-- --> non-recursive) Map for this HelpSet. This Map does not include the Maps for its children.
Returns:
The Map object that associates ID->URL. A null map is valid.

getLocale

public Locale getLocale()
Gets the locale for this HelpSet.
Returns:
The locale.

getNavigatorView

public NavigatorView getNavigatorView(String name)
Gets the NavigatorView with a specific name.
Parameters:

getNavigatorViews

public NavigatorView[] getNavigatorViews()
NavigatorView describes the navigator views that are requested by this HelpSet.
Returns:
The array of NavigatorView.

getPresentation

public HelpSet.Presentation getPresentation(String name)
Gets the HelpSet.Presentation with a specific name.
Parameters:

getPresentations

public HelpSet.Presentation[] getPresentations()
HelpSet.Presentation describes the presentations that are defined by this HelpSet.
Returns:
The array of HelpSet.Presentations.

getTitle

public String getTitle()
Gets the title of this HelpSet.
Returns:
the title

parse

public static HelpSet parse(URL url,
                            ClassLoader loader,
                            javax.help.HelpSetFactory factory)
Parsed a HelpSet file.

parseInto

public void parseInto(URL url,
                      javax.help.HelpSetFactory factory)
Parses into this HelpSet.

remove

public boolean remove(HelpSet hs)
Removes a HelpSet from this HelpSet; HelpSetEvents are generated Return True if it is found, otherwise false.
Parameters:
hs - The HelpSet to remove.
Returns:
False if the hs is null or was not in this HelpSet

removeHelpSetListener

public void removeHelpSetListener(HelpSetListener l)
Removes a listener previously added with addHelpSetListener
Parameters:
l - - The listener to remove.
See Also:
HelpSet

setHomeID

public void setHomeID(String homeID)
Sets the Home ID for a HelpSet. This is a bound property.
Parameters:

setKeyData

public void setKeyData(Object context,
                       String key,
                       Object data)
Sets some local KeyData on a given context. The information is set on a per-HelpSet basis.

setLocalMap

public void setLocalMap(Map map)
Set the Map for this HelpSet. This Map object is not recursive; for example, it does not include the Maps for its children.
Parameters:

setTitle

public void setTitle(String title)
Sest the title for this HelpSet. This is a bound property.
Parameters:
title - The title to set.

toString

public String toString()
Prints Name for this HelpSet.