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

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: