## org.apache.xerces.util
Class SynchronizedSymbolTable

    java.lang.Object
      |
      +--org.apache.xerces.util.SymbolTable
            |
            +--org.apache.xerces.util.SynchronizedSymbolTable

public final class SynchronizedSymbolTable
extends SymbolTable

Synchronized symbol table. This class moved into the util package since it's needed by multiple other classes (CachingParserPool, XMLGrammarCachingConfiguration).

Version:
  $Id: SynchronizedSymbolTable.java 447241 2006-09-18 05:12:57Z mrglavas $
Author:
  Andy Clark, IBM

Inner classes inherited from class org.apache.xerces.util.SymbolTable
`SymbolTable.Entry`

Field Summary
`protected SymbolTable` `fSymbolTable` Main symbol table.

Fields inherited from class org.apache.xerces.util.SymbolTable
`fBuckets, fCount, fLoadFactor, fTableSize, fThreshold, TABLE_SIZE`

Constructor Summary
`SynchronizedSymbolTable()`
`SynchronizedSymbolTable(int size)`
`SynchronizedSymbolTable(SymbolTable symbolTable)` Constructs a synchronized symbol table.

Method Summary
`java.lang.String` `addSymbol(char[] buffer, int offset, int length)` Adds the specified symbol to the symbol table and returns a reference to the unique symbol.
`java.lang.String` `addSymbol(java.lang.String symbol)` Adds the specified symbol to the symbol table and returns a reference to the unique symbol.
`boolean` `containsSymbol(char[] buffer, int offset, int length)` Returns true if the symbol table already contains the specified symbol.
`boolean` `containsSymbol(java.lang.String symbol)` Returns true if the symbol table already contains the specified symbol.

Methods inherited from class org.apache.xerces.util.SymbolTable
`hash, hash, rehash`

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

Field Detail

### fSymbolTable

    protected SymbolTable fSymbolTable

  Main symbol table.

Constructor Detail

### SynchronizedSymbolTable

    public SynchronizedSymbolTable(SymbolTable symbolTable)

  Constructs a synchronized symbol table.

### SynchronizedSymbolTable

    public SynchronizedSymbolTable()

### SynchronizedSymbolTable

    public SynchronizedSymbolTable(int size)

Method Detail

### addSymbol

    public java.lang.String addSymbol(java.lang.String symbol)

  Adds the specified symbol to the symbol table and returns a reference to the unique symbol. If the symbol already exists, the previous symbol reference is returned instead, in order guarantee that symbol references remain unique.
  Overrides:
    `addSymbol` in class `SymbolTable`
  Parameters:
    `symbol` - The new symbol.

### addSymbol

    public java.lang.String addSymbol(char[] buffer,
                                      int offset,
                                      int length)

  Adds the specified symbol to the symbol table and returns a reference to the unique symbol. If the symbol already exists, the previous symbol reference is returned instead, in order guarantee that symbol references remain unique.
  Overrides:
    `addSymbol` in class `SymbolTable`
  Parameters:
    `buffer` - The buffer containing the new symbol.
    `offset` - The offset into the buffer of the new symbol.
    `length` - The length of the new symbol in the buffer.

### containsSymbol

    public boolean containsSymbol(java.lang.String symbol)

  Returns true if the symbol table already contains the specified symbol.
  Overrides:
    `containsSymbol` in class `SymbolTable`
  Parameters:
    `symbol` - The symbol to look for.

### containsSymbol

    public boolean containsSymbol(char[] buffer,
                                  int offset,
                                  int length)

  Returns true if the symbol table already contains the specified symbol.
  Overrides:
    `containsSymbol` in class `SymbolTable`
  Parameters:
    `buffer` - The buffer containing the symbol to look for.
    `offset` - The offset into the buffer.
    `length` - The length of the symbol in the buffer.

Copyright © 1999-2007 The Apache Software Foundation. All Rights Reserved.