Package javax.help

# Class HelpSet

java.lang.Object
javax.help.HelpSet

All Implemented Interfaces:
  `Serializable`

public class HelpSet extends 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.

See Also:
  - Serialized Form

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static class`
`HelpSet.DefaultHelpSetFactory`
The default HelpSetFactory that processes HelpSets.
`static class`
`HelpSet.Presentation`
HelpSet Presentation class.

## Field Summary

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

## Constructor Summary

Constructors
Constructor
Description
`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

Modifier and Type
Method
Description
`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 shortName, String extension, Locale locale)`
Locates a HelpSet file and return its URL.
`static URL`
`findHelpSet(ClassLoader cl, String name, 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()`
`Enumeration`
`getHelpSets()`
Enumerates all the HelpSets that have been added to this one.
`URL`
`getHelpSetURL()`
The URL that is the base for this HelpSet.
`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.
`Locale`
`getLocale()`
Gets the locale for this HelpSet.
`Map`
`getLocalMap()`
Get the local (i.e. non-recursive) Map 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.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## Field Details

### 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

See Also:
  - Constant Field Values

### publicIDString_V2

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

See Also:
  - Constant Field Values

### 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.

### helpBrokerClass

public static final String helpBrokerClass

See Also:
  - Constant Field Values

### helpBrokerLoader

public static final String helpBrokerLoader

See Also:
  - Constant Field Values

### 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.

### kitLoaderRegistry

public static final Object kitLoaderRegistry

## Constructor Details

### 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()
Creates an empty HelpSet. Uses the default ClassLoader

### 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

### 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
See Also:
  - `HelpUtilities`

### 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 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.

### 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(java.lang.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:
  `presenationName` - A presentation name defined in the HelpSet that will dictate the presentation.
Returns:
  HelpBroker The created HelpBroker
Since:
  2.0
See Also:
  - `createHelpBroker()`

### 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.

### 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

### 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.

### 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.

### addHelpSetListener

public void addHelpSetListener(HelpSetListener l)
Adds a listener for the HelpSetEvent posted after the model has changed.

Parameters:
  `l` - - The listener to add.
Throws:
  `IllegalArgumentException` - if l is null.

### removeHelpSetListener

public void removeHelpSetListener(HelpSetListener l)
Removes a listener previously added with `addHelpSetListener`

Parameters:
  `l` - - The listener to remove.
Throws:
  `IllegalArgumentException` - if l is null.

### fireHelpSetAdded

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

### fireHelpSetRemoved

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

### getTitle

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

Returns:
  the title

### setTitle

public void setTitle(String title)
Sest the title for this HelpSet. This is a bound property.

Parameters:
  `title` - The title to set.

### getLocale

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

Returns:
  The locale.

### 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.

### setHomeID

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

Parameters:
  `The` - ID (in the Map) that identifies the default topic for this HelpSet. Null is valid homeID.

### getCombinedMap

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

Returns:
  The map

### 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.

### 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:
  `The` - Map object that associates ID->URL. A null map is a valid.

### getHelpSetURL

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

Returns:
  The URL that is base to this HelpSet.

### getLoader

public ClassLoader getLoader()
A classloader to use when locating classes.

Returns:
  The ClassLoader to use when locating classes mentioned in this HelpSet.

### getNavigatorViews

public NavigatorView[] getNavigatorViews()
NavigatorView describes the navigator views that are requested by this HelpSet.

Returns:
  The array of NavigatorView.

### getNavigatorView

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

Parameters:
  `The` - name of the desired navigator view.

### getPresentations

public HelpSet.Presentation[] getPresentations()
HelpSet.Presentation describes the presentations that are defined by this HelpSet.

Returns:
  The array of HelpSet.Presentations.

### getPresentation

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

Parameters:
  `The` - name of the desired HelpSet.Presentation.

### getDefaultPresentation

public HelpSet.Presentation getDefaultPresentation()

### toString

public String toString()
Prints Name for this HelpSet.

Overrides:
  `toString` in class `Object`

### 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.

### addView

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

### addSubHelpSet

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

### addPresentation

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

### 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.

### 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.