## com.icl.saxon
Class KeyManager

    java.lang.Object
      com.icl.saxon.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
`java.util.Vector` `getKeyDefinitions(int fingerprint)` Get all the key definitions that match a particular fingerprint
`NodeEnumeration` `selectByKey(int fingerprint, DocumentInfo doc, java.lang.String value, Controller controller)` Get the nodes with a given key value
`void` `setKeyDefinition(KeyDefinition keydef)` Register a key definition.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### KeyManager

    public KeyManager()

  create a KeyManager and initialise variables

Method Detail

### setKeyDefinition

    public void setKeyDefinition(KeyDefinition keydef)

  Register a key definition. Note that multiple key definitions with the same name are allowed

### getKeyDefinitions

    public java.util.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,
                                       java.lang.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
  Throws:
    `XPathException`