javax.help
Class HelpSet

java.lang.Object
  |
  +--javax.help.HelpSet
All Implemented Interfaces:
java.io.Serializable

public class HelpSet
extends java.lang.Object
implements java.io.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
static class HelpSet.DefaultHelpSetFactory
          The default HelpSetFactory that processes HelpSets.
static class HelpSet.Presentation
          HelpSet Presentation class.
 
Field Summary
static java.lang.String helpBrokerClass
           
static java.lang.String helpBrokerLoader
           
static java.lang.Object implRegistry
          Information for implementation customization.
static java.lang.Object kitLoaderRegistry
           
static java.lang.Object kitTypeRegistry
          HelpSet context information.
static java.lang.String publicIDString
          PublicID (known to this XML processor) to the DTD for version 1.0 of the HelpSet
static java.lang.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(java.lang.ClassLoader loader)
          Creates an empty HelpSet that one can parse into.
HelpSet(java.lang.ClassLoader loader, java.net.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.
 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(java.lang.String presentationName)
          Creates a presentation object for this HelpSet.
static java.net.URL findHelpSet(java.lang.ClassLoader cl, java.lang.String name)
          As above but default on locale to Locale.getDefault()
static java.net.URL findHelpSet(java.lang.ClassLoader cl, java.lang.String name, java.util.Locale locale)
          Locates a HelpSet file and return its URL.
static java.net.URL findHelpSet(java.lang.ClassLoader cl, java.lang.String shortName, java.lang.String extension, java.util.Locale locale)
          Locates a HelpSet file and return its URL.
 Map getCombinedMap()
          The map for this HelpSet.
 HelpSet.Presentation getDefaultPresentation()
           
 java.util.Enumeration getHelpSets()
          Enumerates all the HelpSets that have been added to this one.
 java.net.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.
 java.lang.Object getKeyData(java.lang.Object context, java.lang.String key)
          Gets some Data for a Key in a given context.
 java.lang.ClassLoader getLoader()
          A classloader to use when locating classes.
 java.util.Locale getLocale()
          Gets the locale for this HelpSet.
 Map getLocalMap()
          Get the local (i.e. non-recursive) Map for this HelpSet.
 NavigatorView getNavigatorView(java.lang.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(java.lang.String name)
          Gets the HelpSet.Presentation with a specific name.
 HelpSet.Presentation[] getPresentations()
          HelpSet.Presentation describes the presentations that are defined by this HelpSet.
 java.lang.String getTitle()
          Gets the title of this HelpSet.
static HelpSet parse(java.net.URL url, java.lang.ClassLoader loader, javax.help.HelpSetFactory factory)
          Parsed a HelpSet file.
 void parseInto(java.net.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(java.lang.String homeID)
          Sets the Home ID for a HelpSet.
 void setKeyData(java.lang.Object context, java.lang.String key, java.lang.Object data)
          Sets some local KeyData on a given context.
 void setLocalMap(Map map)
          Set the Map for this HelpSet.
 void setTitle(java.lang.String title)
          Sest the title for this HelpSet.
 java.lang.String toString()
          Prints Name for this HelpSet.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

publicIDString

public static final java.lang.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 java.lang.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 java.lang.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 java.lang.String helpBrokerClass
See Also:
Constant Field Values

helpBrokerLoader

public static final java.lang.String helpBrokerLoader
See Also:
Constant Field Values

kitTypeRegistry

public static final java.lang.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 java.lang.Object kitLoaderRegistry
Constructor Detail

HelpSet

public HelpSet(java.lang.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(java.lang.ClassLoader loader,
               java.net.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 Detail

findHelpSet

public static java.net.URL findHelpSet(java.lang.ClassLoader cl,
                                       java.lang.String shortName,
                                       java.lang.String extension,
                                       java.util.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 java.net.URL findHelpSet(java.lang.ClassLoader cl,
                                       java.lang.String name,
                                       java.util.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 java.net.URL findHelpSet(java.lang.ClassLoader cl,
                                       java.lang.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(String)

createHelpBroker

public HelpBroker createHelpBroker(java.lang.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.

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 java.util.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:
java.lang.IllegalArgumentException - if l is null.
See Also:
javax.help.HelpSet#removeHelpSetListener.

removeHelpSetListener

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

Parameters:
l - - The listener to remove.
Throws:
java.lang.IllegalArgumentException - if l is null.
See Also:
javax.help.HelpSet#addHelpSetListener.

getTitle

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

Returns:
the title

setTitle

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

Parameters:
title - The title to set.

getLocale

public java.util.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(java.lang.String homeID)
Sets the Home ID for a HelpSet. This is a bound property.


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.


getHelpSetURL

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

Returns:
The URL that is base to this HelpSet.

getLoader

public java.lang.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(java.lang.String name)
Gets the NavigatorView with a specific name.


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(java.lang.String name)
Gets the HelpSet.Presentation with a specific name.


getDefaultPresentation

public HelpSet.Presentation getDefaultPresentation()

toString

public java.lang.String toString()
Prints Name for this HelpSet.

Overrides:
toString in class java.lang.Object

parse

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


parseInto

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


getKeyData

public java.lang.Object getKeyData(java.lang.Object context,
                                   java.lang.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(java.lang.Object context,
                       java.lang.String key,
                       java.lang.Object data)
Sets some local KeyData on a given context. The information is set on a per-HelpSet basis.