Class RsLangs

java.lang.Object
org.apache.uima.analysis_engine.impl.RsLangs

public class RsLangs extends Object
A set of languages, each represented by a canonical string object The set is stored without any subsumed elements Instances of this class are shareable Duplicate-on-update strategy Requires that all update operations to it return the possibly new RsLangs object, and that calls are always of the form rsLangInstance = rsLangInstance.[some-update-operation] Requires that all copy operations set the shared bit: copiedInstance = origInstance.setShared(); A instance marked isShared == true is immutable Updates cause duplication. Users store x-unspecified as null for the rsLangs instance Because of this, users use static methods, passing in as the first argument, the value of rsLangs, and getting an updated value of rsLangs. This allows the passed-in value to be null. Languages kept in canonical form: duplicates removed subsumed languages removed language strings mapped to unique strings (allowing == comparisons) Languages kept in array list, to allow for expansion Languages not removed, only added (for a given tof)
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    This must return true ignoring the value of isShared, and treating the lists as a set
    int
    Must return the same hashcode regardless of the value of isShared, and treating the values as a set
     

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Method Details

    • toString

      public String toString()
      Overrides:
      toString in class Object
    • hashCode

      public int hashCode()
      Must return the same hashcode regardless of the value of isShared, and treating the values as a set
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object obj)
      This must return true ignoring the value of isShared, and treating the lists as a set
      Overrides:
      equals in class Object