com.icl.saxon

Class KeyManager


public class KeyManager
extends java.lang.Object

KeyManager manages the set of key definitions in a stylesheet, and the indexes associated with these key definitions
Author:
Michael H. Kay

Constructor Summary

KeyManager()
create a KeyManager and initialise variables

Method Summary

Vector
getKeyDefinitions(int fingerprint)
Get all the key definitions that match a particular fingerprint
NodeEnumeration
selectByKey(int fingerprint, DocumentInfo doc, String value, Controller controller)
Get the nodes with a given key value
void
setKeyDefinition(KeyDefinition keydef)
Register a key definition.

Constructor Details

KeyManager

public KeyManager()
create a KeyManager and initialise variables

Method Details

getKeyDefinitions

public Vector getKeyDefinitions(int fingerprint)
Get all the key definitions that match a particular fingerprint
Parameters:
fingerprint - The fingerprint of the name of the required key
Returns:
The key definition of the named key if there is one, or null otherwise.

selectByKey

public NodeEnumeration selectByKey(int fingerprint,
                                   DocumentInfo doc,
                                   String value,
                                   Controller controller)
            throws XPathException
Get the nodes with a given key value
Parameters:
fingerprint - The fingerprint of the name of the required key
doc - The source document in question
value - The required key value
controller - The controller, needed only the first time when the key is being built
Returns:
an enumeration of nodes, always in document order

setKeyDefinition

public void setKeyDefinition(KeyDefinition keydef)
Register a key definition. Note that multiple key definitions with the same name are allowed
Parameters: