org.apache.xindice.core.indexer
Class NameIndexer
java.lang.Object
|
+--org.apache.xindice.core.filer.Paged
|
+--org.apache.xindice.core.filer.BTree
|
+--org.apache.xindice.core.indexer.NameIndexer
- All Implemented Interfaces:
- Configurable, DBObject, Indexer, Named
- public final class NameIndexer
- extends BTree
- implements Indexer
NameIndexer is a basic implementation of the Indexer interface.
It is used for maintaining element and element@attribute unique
indexes.
Method Summary |
void |
add(java.lang.String value,
Key key,
int pos,
int len,
short elemID,
short attrID)
add adds a Document to the Indexer. |
void |
flush()
flush forcefully flushes any unwritten buffers to disk. |
Configuration |
getConfig()
getConfig retrieves the configuration information for the
Configurable object instance. |
java.lang.String |
getIndexStyle()
getIndexStyle returns the Index style. |
java.lang.String |
getName()
getName retrieves the contextually important name of the object |
java.lang.String |
getPattern()
getPattern returns the pattern recognized by this Indexer. |
IndexMatch[] |
queryMatches(IndexQuery query)
queryMatches retrieves a set of MatchEntry instances that match
the supplied query. |
void |
remove(java.lang.String value,
Key key,
int pos,
int len,
short elemID,
short attrID)
remove removes all references to the specified Key from the Indexer. |
void |
setCollection(Collection collection)
setCollection tells the Indexer who its parent is. |
void |
setConfig(Configuration config)
setConfig sets the configuration information for the Configurable
object instance. |
void |
setLocation(java.lang.String location)
|
Methods inherited from class org.apache.xindice.core.filer.BTree |
addValue, addValue, create, createFileHeader, createFileHeader, createFileHeader, createFileHeader, createPageHeader, findValue, findValue, open, query, query, removeValue, removeValue |
Methods inherited from class org.apache.xindice.core.filer.Paged |
close, deleteArrayInt, deleteArrayLong, deleteArrayShort, deleteArrayValue, drop, exists, getFileHeader, insertArrayInt, insertArrayLong, insertArrayShort, insertArrayValue, isOpened |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
NameIndexer
public NameIndexer()
setConfig
public void setConfig(Configuration config)
- Description copied from interface:
Configurable
- setConfig sets the configuration information for the Configurable
object instance.
- Specified by:
setConfig
in interface Configurable
- Following copied from interface:
org.apache.xindice.util.Configurable
- Parameters:
config
- The configuration Node
getConfig
public Configuration getConfig()
- Description copied from interface:
Configurable
- getConfig retrieves the configuration information for the
Configurable object instance.
- Specified by:
getConfig
in interface Configurable
- Following copied from interface:
org.apache.xindice.util.Configurable
- Returns:
- The configuration Node
getName
public java.lang.String getName()
- Description copied from interface:
Named
- getName retrieves the contextually important name of the object
- Specified by:
getName
in interface Named
- Following copied from interface:
org.apache.xindice.util.Named
- Returns:
- The object's name
setLocation
public void setLocation(java.lang.String location)
setCollection
public void setCollection(Collection collection)
- Description copied from interface:
Indexer
- setCollection tells the Indexer who its parent is.
- Specified by:
setCollection
in interface Indexer
- Following copied from interface:
org.apache.xindice.core.indexer.Indexer
- Parameters:
collection
- The owner Collection
getIndexStyle
public java.lang.String getIndexStyle()
- Description copied from interface:
Indexer
- getIndexStyle returns the Index style. Different query languages
will need to draw from different indexing styles. For example, A
query that is written in quilt will require XPath indexing.
- Specified by:
getIndexStyle
in interface Indexer
- Following copied from interface:
org.apache.xindice.core.indexer.Indexer
- Returns:
- The index style
getPattern
public java.lang.String getPattern()
- Description copied from interface:
Indexer
- getPattern returns the pattern recognized by this Indexer. Patterns
must be in the form of (elem|*)[@(attr|*)] to tell the IndexManager
which element types to send to it, so for example:
contact@name Indexes all contacts by name attribute
memo Indexes the text of all memo elements
contact@* Indexes all contact attributes
*@name Indexes the name attribute for all elements
* Indexes the text of all elements
*@* Indexes all attributes of all elements
These patterns are used by the IndexManager when handling SAX events.
All events that match the specified pattern will result in an add or
remove call to the Indexer.
- Specified by:
getPattern
in interface Indexer
- Following copied from interface:
org.apache.xindice.core.indexer.Indexer
- Returns:
- The Pattern used
remove
public void remove(java.lang.String value,
Key key,
int pos,
int len,
short elemID,
short attrID)
throws DBException
- Description copied from interface:
Indexer
- remove removes all references to the specified Key from the Indexer.
- Specified by:
remove
in interface Indexer
- Following copied from interface:
org.apache.xindice.core.indexer.Indexer
- Parameters:
value
- The value to removekey
- The Object IDpos
- The offset into the stream the Element occurs atlen
- The length of the substream for the ElementelemID
- The Element ID of the valueattrID
- The Attribute ID of the value (if any, else -1)
add
public void add(java.lang.String value,
Key key,
int pos,
int len,
short elemID,
short attrID)
throws DBException
- Description copied from interface:
Indexer
- add adds a Document to the Indexer.
- Specified by:
add
in interface Indexer
- Following copied from interface:
org.apache.xindice.core.indexer.Indexer
- Parameters:
value
- The value to removekey
- The Object IDpos
- The offset into the stream the Element occurs atlen
- The length of the substream for the ElementelemID
- The Element ID of the valueattrID
- The Attribute ID of the value (if any, else -1)
flush
public void flush()
throws DBException
- Description copied from interface:
Indexer
- flush forcefully flushes any unwritten buffers to disk.
- Specified by:
flush
in interface Indexer
- Overrides:
flush
in class Paged
queryMatches
public IndexMatch[] queryMatches(IndexQuery query)
throws DBException
- Description copied from interface:
Indexer
- queryMatches retrieves a set of MatchEntry instances that match
the supplied query. The matches are then used by the QueryEngine
in co-sequential processing. If this indexer doesn't support the
passed value, it should return 'null'. If no matches are found,
it should return an empty set. queryMatches will typically be
used in XPath processing.
- Specified by:
queryMatches
in interface Indexer
- Following copied from interface:
org.apache.xindice.core.indexer.Indexer
- Parameters:
query
- The IndexQuery to use- Returns:
- The resulting matches
Copyright (c) 1999-2001 The Apache Software Foundation