org.apache.xerces.impl.xs

## Class XMLSchemaValidator.ValueStoreBase

- java.lang.Object
- - org.apache.xerces.impl.xs.XMLSchemaValidator.ValueStoreBase

All Implemented Interfaces:
  ValueStore

Direct Known Subclasses:
  XMLSchemaValidator.KeyRefValueStore, XMLSchemaValidator.KeyValueStore, XMLSchemaValidator.UniqueValueStore

Enclosing class:
  XMLSchemaValidator

    protected abstract class XMLSchemaValidator.ValueStoreBase
    extends java.lang.Object
    implements ValueStore

Value store implementation base class. There are specific subclasses for handling unique, key, and keyref.

Author:
  Andy Clark, IBM

### Field Summary

Fields
`protected int` `fFieldCount`
`protected Field[]` `fFields`
`protected IdentityConstraint` `fIdentityConstraint` Identity constraint.
`java.util.Vector` `fItemValueTypes`
`protected org.apache.xerces.xs.ShortList[]` `fLocalItemValueTypes`
`protected java.lang.Object[]` `fLocalValues` current data
`protected short[]` `fLocalValueTypes`
`java.util.Vector` `fValues` global data
`protected int` `fValuesCount` Current data value count.
`XMLSchemaValidator.ShortVector` `fValueTypes`

### Constructor Summary

Constructors
`protected` `ValueStoreBase(IdentityConstraint identityConstraint)` Constructs a value store for the specified identity constraint.

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `addValue(Field field, boolean mayMatch, java.lang.Object actualValue, short valueType, org.apache.xerces.xs.ShortList itemValueType)` Adds the specified value to the value store.
`void` `append(XMLSchemaValidator.ValueStoreBase newVal)`
`protected void` `checkDuplicateValues()`
`void` `clear()`
`boolean` `contains()` Returns true if this value store contains the locally scoped value stores
`int` `contains(XMLSchemaValidator.ValueStoreBase vsb)` Returns -1 if this value store contains the specified values, otherwise the index of the first field in the key sequence.
`void` `endDocument()` Signals the end of the document.
`void` `endDocumentFragment()`
`void` `endValueScope()` Ends scope for value store.
`void` `reportError(java.lang.String key, java.lang.Object[] args)` Since the valueStore will have access to an error reporter, this allows it to be called appropriately.
`void` `startValueScope()` Start scope for value store.
`java.lang.String` `toString()` Returns a string representation of this object.
`protected java.lang.String` `toString(java.lang.Object[] values)` Returns a string of the specified values.
`protected java.lang.String` `toString(java.util.Vector values, int start, int length)` Returns a string of the specified values.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Field Detail

#### fIdentityConstraint

    protected IdentityConstraint fIdentityConstraint

Identity constraint.

#### fFieldCount

    protected int fFieldCount

#### fFields

    protected Field[] fFields

#### fLocalValues

    protected java.lang.Object[] fLocalValues

current data

#### fLocalValueTypes

    protected short[] fLocalValueTypes

#### fLocalItemValueTypes

    protected org.apache.xerces.xs.ShortList[] fLocalItemValueTypes

#### fValuesCount

    protected int fValuesCount

Current data value count.

#### fValues

    public final java.util.Vector fValues

global data

#### fValueTypes

    public XMLSchemaValidator.ShortVector fValueTypes

#### fItemValueTypes

    public java.util.Vector fItemValueTypes

### Constructor Detail

#### ValueStoreBase

    protected ValueStoreBase(IdentityConstraint identityConstraint)

Constructs a value store for the specified identity constraint.

### Method Detail

#### clear

    public void clear()

#### append

    public void append(XMLSchemaValidator.ValueStoreBase newVal)

#### startValueScope

    public void startValueScope()

Start scope for value store.

#### endValueScope

    public void endValueScope()

Ends scope for value store.

#### endDocumentFragment

    public void endDocumentFragment()

#### endDocument

    public void endDocument()

Signals the end of the document. This is where the specific instances of value stores can verify the integrity of the identity constraints.

#### reportError

    public void reportError(java.lang.String key,
                            java.lang.Object[] args)

Description copied from interface: `ValueStore`
Since the valueStore will have access to an error reporter, this allows it to be called appropriately.

Specified by:
  `reportError` in interface `ValueStore`
Parameters:
  `key` - the key of the localized error message
  `args` - the list of arguments for substitution.

#### addValue

    public void addValue(Field field,
                         boolean mayMatch,
                         java.lang.Object actualValue,
                         short valueType,
                         org.apache.xerces.xs.ShortList itemValueType)

Adds the specified value to the value store.

Specified by:
  `addValue` in interface `ValueStore`
Parameters:
  `field` - The field associated to the value. This reference is used to ensure that each field only adds a value once within a selection scope.
  `mayMatch` - a flag indiciating whether the field may be matched.
  `actualValue` - The value to add.
  `valueType` - Type of the value to add.
  `itemValueType` - If the value is a list, a list of types for each of the values in the list.

#### contains

    public boolean contains()

Returns true if this value store contains the locally scoped value stores

#### contains

    public int contains(XMLSchemaValidator.ValueStoreBase vsb)

Returns -1 if this value store contains the specified values, otherwise the index of the first field in the key sequence.

#### checkDuplicateValues

    protected void checkDuplicateValues()

#### toString

    protected java.lang.String toString(java.lang.Object[] values)

Returns a string of the specified values.

#### toString

    protected java.lang.String toString(java.util.Vector values,
                                        int start,
                                        int length)

Returns a string of the specified values.

#### toString

    public java.lang.String toString()

Returns a string representation of this object.

Overrides:
  `toString` in class `java.lang.Object`