| java.lang.Object com.sun.org.apache.xml.internal.resolver.CatalogEntry
CatalogEntry | public class CatalogEntry (Code) | | Represents a Catalog entry.
Instances of this class represent individual entries
in a Catalog.
Each catalog entry has a unique name and is associated with
an arbitrary number of arguments (all strings). For example, the
TR9401 catalog entry "PUBLIC" has two arguments, a public identifier
and a system identifier. Each entry has a unique numeric type,
assigned automatically when the entry type is created.
The number and type of catalog entries is maintained
statically. Catalog classes, or their subclasses, can add
new entry types, but all Catalog objects share the same global pool
of types.
Initially there are no valid entries.
See Also: Catalog author: Norman Walsh author: Norman.Walsh@Sun.COM version: 1.0 |
Field Summary | |
protected Vector | args | protected static Vector | entryArgs The entryTypes vector maps catalog entry types to the
number of arguments they're required to have. | protected int | entryType | protected static Hashtable | entryTypes The entryTypes vector maps catalog entry names
(e.g., 'BASE' or 'SYSTEM') to their type (1, 2, etc.). | protected static int | nextEntry The nextEntry is the ordinal number of the next entry type. |
Constructor Summary | |
public | CatalogEntry() Null constructor; something for subclasses to call. | public | CatalogEntry(String name, Vector args) Construct a catalog entry of the specified type. | public | CatalogEntry(int type, Vector args) Construct a catalog entry of the specified type. |
Method Summary | |
public static int | addEntryType(String name, int numArgs) Adds a new catalog entry type.
Parameters: name - The name of the catalog entry type. | public String | getEntryArg(int argNum) Get an entry argument.
Parameters: argNum - The argument number (arguments are numbered from 0). | public static int | getEntryArgCount(String name) Find out how many arguments an entry is required to have.
Parameters: name - The name of the catalog entry type. | public static int | getEntryArgCount(int type) Find out how many arguments an entry is required to have.
Parameters: type - A valid catalog entry type. | public static int | getEntryType(String name) Lookup an entry type
Parameters: name - The name of the catalog entry type. | public int | getEntryType() Get the entry type. | public void | setEntryArg(int argNum, String newspec) Set an entry argument.
Catalogs sometimes need to adjust the catlog entry parameters,
for example to make a relative URI absolute with respect to the
current base URI. |
args | protected Vector args(Code) | | The arguments associated with this entry
|
entryArgs | protected static Vector entryArgs(Code) | | The entryTypes vector maps catalog entry types to the
number of arguments they're required to have.
|
entryType | protected int entryType(Code) | | The entry type of this entry
|
entryTypes | protected static Hashtable entryTypes(Code) | | The entryTypes vector maps catalog entry names
(e.g., 'BASE' or 'SYSTEM') to their type (1, 2, etc.).
Names are case sensitive.
|
nextEntry | protected static int nextEntry(Code) | | The nextEntry is the ordinal number of the next entry type.
|
CatalogEntry | public CatalogEntry()(Code) | | Null constructor; something for subclasses to call.
|
CatalogEntry | public CatalogEntry(String name, Vector args) throws CatalogException(Code) | | Construct a catalog entry of the specified type.
Parameters: name - The name of the entry type Parameters: args - A String Vector of arguments throws: InvalidCatalogEntryTypeException - if no such entry typeexists. throws: InvalidCatalogEntryException - if the wrong number of argumentsis passed. |
CatalogEntry | public CatalogEntry(int type, Vector args) throws CatalogException(Code) | | Construct a catalog entry of the specified type.
Parameters: type - The entry type Parameters: args - A String Vector of arguments throws: InvalidCatalogEntryTypeException - if no such entry typeexists. throws: InvalidCatalogEntryException - if the wrong number of argumentsis passed. |
addEntryType | public static int addEntryType(String name, int numArgs)(Code) | | Adds a new catalog entry type.
Parameters: name - The name of the catalog entry type. This must beunique among all types and is case-sensitive. (Adding a duplicatename effectively replaces the old type with the new type.) Parameters: numArgs - The number of arguments that this entry typeis required to have. There is no provision for variable numbersof arguments. The type for the new entry. |
getEntryArg | public String getEntryArg(int argNum)(Code) | | Get an entry argument.
Parameters: argNum - The argument number (arguments are numbered from 0). The specified argument or null if an invalid argNum isprovided. |
getEntryArgCount | public static int getEntryArgCount(String name) throws CatalogException(Code) | | Find out how many arguments an entry is required to have.
Parameters: name - The name of the catalog entry type. The number of arguments that entry type is required to have. throws: InvalidCatalogEntryTypeException - if no entry has thespecified name. |
getEntryArgCount | public static int getEntryArgCount(int type) throws CatalogException(Code) | | Find out how many arguments an entry is required to have.
Parameters: type - A valid catalog entry type. The number of arguments that entry type is required to have. throws: InvalidCatalogEntryTypeException - if the type is invalid. |
getEntryType | public static int getEntryType(String name) throws CatalogException(Code) | | Lookup an entry type
Parameters: name - The name of the catalog entry type. The type of the catalog entry with the specified name. throws: InvalidCatalogEntryTypeException - if no entry has thespecified name. |
getEntryType | public int getEntryType()(Code) | | Get the entry type.
The entry type of the CatalogEntry |
setEntryArg | public void setEntryArg(int argNum, String newspec) throws ArrayIndexOutOfBoundsException(Code) | | Set an entry argument.
Catalogs sometimes need to adjust the catlog entry parameters,
for example to make a relative URI absolute with respect to the
current base URI. But in general, this function should only be
called shortly after object creation to do some sort of cleanup.
Catalog entries should not mutate over time.
Parameters: argNum - The argument number (arguments are numbered from 0). throws: ArrayIndexOutOfBoundsException - if an invalid argumentnumber is provided. |
|
|