gate.util
Class SimpleFeatureMapImpl

java.lang.Object
  |
  +--gate.util.SimpleMapImpl
        |
        +--gate.util.SimpleFeatureMapImpl
All Implemented Interfaces:
ANNIEConstants, Cloneable, FeatureMap, Map, Serializable

public class SimpleFeatureMapImpl
extends SimpleMapImpl
implements FeatureMap, Serializable, Cloneable, ANNIEConstants

Simple case of features.

See Also:
Serialized Form

Field Summary
(package private)  int capacity
          The capacity of the map
(package private)  int count
          The current number of elements of the map
private static boolean DEBUG
          Debug flag
private  Vector mapListeners
           
(package private) static Object nullKey
          the Object instance that will represent the NULL keys in the map
(package private) static long serialVersionUID
          Freeze the serialization UID.
(package private)  Object[] theKeys
          Array keeping the keys of the entries in the map.
static HashMap theKeysHere
          the static 'all keys' collection
(package private)  Object[] theValues
          Array keeping the values of the entries in the map.
 
Fields inherited from interface gate.creole.ANNIEConstants
ANNOTATION_COREF_FEATURE_NAME, DATE_ANNOTATION_TYPE, DOCUMENT_COREF_FEATURE_NAME, LOCATION_ANNOTATION_TYPE, LOOKUP_ANNOTATION_TYPE, LOOKUP_CLASS_FEATURE_NAME, LOOKUP_MAJOR_TYPE_FEATURE_NAME, LOOKUP_MINOR_TYPE_FEATURE_NAME, LOOKUP_ONTOLOGY_FEATURE_NAME, MONEY_ANNOTATION_TYPE, ORGANIZATION_ANNOTATION_TYPE, PERSON_ANNOTATION_TYPE, PERSON_GENDER_FEATURE_NAME, PR_NAMES, SENTENCE_ANNOTATION_TYPE, SPACE_TOKEN_ANNOTATION_TYPE, TOKEN_ANNOTATION_TYPE, TOKEN_CATEGORY_FEATURE_NAME, TOKEN_KIND_FEATURE_NAME, TOKEN_LENGTH_FEATURE_NAME, TOKEN_ORTH_FEATURE_NAME, TOKEN_STRING_FEATURE_NAME
 
Constructor Summary
SimpleFeatureMapImpl()
           
 
Method Summary
 void addFeatureMapListener(FeatureMapListener l)
          Adds a gate listener
 void clear()
          clear the map
 Object clone()
          Create a copy of the map including the data.
 boolean containsKey(Object key)
          return true if the key is in the map
 boolean containsValue(Object value)
          return true if the map contains that value
 Set entrySet()
           
 boolean equals(Object o)
           
protected  void fireMapUpdatedEvent()
           
 Object get(Object key)
          return the value associated with the key.
protected  int getSubsumeKey(Object key)
          return the index of the key in the map comparing them by reference only.
 int hashCode()
          return the hashCode for the map
 boolean isEmpty()
          return true if there are no elements in the map
 Set keySet()
          return the set of the keys in the map.
protected  boolean ontologySubsume(String ontoUrl, String value1, String value2)
          ontology enhanced subsume
 Object put(Object key, Object value)
          Overriden to fire events, so that the persistent objects can keep track of what's updated
 void putAll(Map t)
          put all the elements from a map
 Object remove(Object key)
          Overriden to fire events, so that the persistent objects can keep track of what's updated
 void removeFeatureMapListener(FeatureMapListener l)
          Removes a gate listener
 int size()
          return the number of elements in the map
 boolean subsumes(FeatureMap aFeatureMap)
          Test if this featureMap includes all features from aFeatureMap
 boolean subsumes(FeatureMap aFeatureMap, Set aFeatureNamesSet)
          Tests if this featureMap object includes aFeatureMap but only for the those features present in the aFeatureNamesSet.
 String toString()
           
 Collection values()
          Not supported.
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.Map
containsKey, containsValue, entrySet, get, hashCode, isEmpty, keySet, putAll, size, values
 

Field Detail

DEBUG

private static final boolean DEBUG
Debug flag

See Also:
Constant Field Values

serialVersionUID

static final long serialVersionUID
Freeze the serialization UID.

See Also:
Constant Field Values

mapListeners

private transient Vector mapListeners

capacity

int capacity
The capacity of the map


count

int count
The current number of elements of the map


theKeys

Object[] theKeys
Array keeping the keys of the entries in the map. It is "synchrnized" with the values array - the Nth position in both arrays correspond to one and the same entry


theValues

Object[] theValues
Array keeping the values of the entries in the map. It is "synchrnized" with the keys array - the Nth position in both arrays correspond to one and the same entry


nullKey

static transient Object nullKey
the Object instance that will represent the NULL keys in the map


theKeysHere

public static transient HashMap theKeysHere
the static 'all keys' collection

Constructor Detail

SimpleFeatureMapImpl

public SimpleFeatureMapImpl()
Method Detail

subsumes

public boolean subsumes(FeatureMap aFeatureMap)
Test if this featureMap includes all features from aFeatureMap

Specified by:
subsumes in interface FeatureMap
Parameters:
aFeatureMap - object which will be included or not in this FeatureMap obj.If this param is null then it will return true.
Returns:
true if aFeatureMap is incuded in this obj. and false if not.

subsumes

public boolean subsumes(FeatureMap aFeatureMap,
                        Set aFeatureNamesSet)
Tests if this featureMap object includes aFeatureMap but only for the those features present in the aFeatureNamesSet.

Specified by:
subsumes in interface FeatureMap
Parameters:
aFeatureMap - which will be included or not in this FeatureMap obj.If this param is null then it will return true.
aFeatureNamesSet - is a set of strings representing the names of the features that would be considered for subsumes. If aFeatureNamesSet is null then subsumes(FeatureMap) will be called.
Returns:
true if all features present in the aFeaturesNameSet from aFeatureMap are included in this obj, or false otherwise.

put

public Object put(Object key,
                  Object value)
Overriden to fire events, so that the persistent objects can keep track of what's updated

Specified by:
put in interface Map
Overrides:
put in class SimpleMapImpl

remove

public Object remove(Object key)
Overriden to fire events, so that the persistent objects can keep track of what's updated

Specified by:
remove in interface Map
Overrides:
remove in class SimpleMapImpl

clear

public void clear()
Description copied from class: SimpleMapImpl
clear the map

Specified by:
clear in interface Map
Overrides:
clear in class SimpleMapImpl

clone

public Object clone()
Description copied from class: SimpleMapImpl
Create a copy of the map including the data.

Overrides:
clone in class SimpleMapImpl

equals

public boolean equals(Object o)
Specified by:
equals in interface Map
Overrides:
equals in class SimpleMapImpl

removeFeatureMapListener

public void removeFeatureMapListener(FeatureMapListener l)
Removes a gate listener

Specified by:
removeFeatureMapListener in interface FeatureMap

addFeatureMapListener

public void addFeatureMapListener(FeatureMapListener l)
Adds a gate listener

Specified by:
addFeatureMapListener in interface FeatureMap

fireMapUpdatedEvent

protected void fireMapUpdatedEvent()

ontologySubsume

protected boolean ontologySubsume(String ontoUrl,
                                  String value1,
                                  String value2)
ontology enhanced subsume

Parameters:
ontoUrl - the url of the ontology to be used
Returns:
true if value1 subsumes value2 in the specified ontology

size

public int size()
return the number of elements in the map

Specified by:
size in interface Map

isEmpty

public boolean isEmpty()
return true if there are no elements in the map

Specified by:
isEmpty in interface Map

values

public Collection values()
Not supported. This method is here only to conform the Map interface

Specified by:
values in interface Map

keySet

public Set keySet()
return the set of the keys in the map. The changes in the set DO NOT affect the map.

Specified by:
keySet in interface Map

containsKey

public boolean containsKey(Object key)
return true if the key is in the map

Specified by:
containsKey in interface Map

containsValue

public boolean containsValue(Object value)
return true if the map contains that value

Specified by:
containsValue in interface Map

get

public Object get(Object key)
return the value associated with the key. If the key is not in the map returns null.

Specified by:
get in interface Map

putAll

public void putAll(Map t)
put all the elements from a map

Specified by:
putAll in interface Map

getSubsumeKey

protected int getSubsumeKey(Object key)
return the index of the key in the map comparing them by reference only. This method is used in subsume check to speed it up.


entrySet

public Set entrySet()
Specified by:
entrySet in interface Map

hashCode

public int hashCode()
return the hashCode for the map

Specified by:
hashCode in interface Map
Overrides:
hashCode in class Object

toString

public String toString()
Overrides:
toString in class Object