Class SimpleInternationalString

java.lang.Object
org.apache.sis.util.AbstractInternationalString
org.apache.sis.util.SimpleInternationalString
All Implemented Interfaces:
Serializable, CharSequence, Comparable<org.opengis.util.InternationalString>, Formattable, org.opengis.util.InternationalString
Direct Known Subclasses:
AbstractName.International

public class SimpleInternationalString extends AbstractInternationalString implements Serializable
An international string consisting of a single string for all locales. For such a particular case, this implementation is more effective than other implementations provided in this package.

Instantiation

If the characters sequence to wrap is known to be a String instance, then the SimpleInternationalString(String) constructor is okay. Otherwise use the Types.toInternationalString(CharSequence) method.

Immutability and thread safety

This class is immutable and thus inherently thread-safe. Subclasses may or may not be immutable, at implementation choice. But implementers are encouraged to make sure that subclasses remain immutable for more predictable behavior.
Since:
1.1
Version:
1.1
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      Serial number for inter-operability with different versions.
      See Also:
  • Constructor Details

    • SimpleInternationalString

      public SimpleInternationalString(String text)
      Creates a new instance from the given string. If the type of the text to wrap is the more generic CharSequence interface, then use the Types.toInternationalString(CharSequence) method instead.
      Parameters:
      text - the string for all locales.
  • Method Details

    • toString

      public String toString()
      Returns the string representation, which is unique for all locales.
      Specified by:
      toString in interface CharSequence
      Specified by:
      toString in interface org.opengis.util.InternationalString
      Overrides:
      toString in class AbstractInternationalString
      Returns:
      the string in the default locale.
    • toString

      public String toString(Locale locale)
      Returns the same string for all locales. This is the string given to the constructor.
      Specified by:
      toString in interface org.opengis.util.InternationalString
      Specified by:
      toString in class AbstractInternationalString
      Parameters:
      locale - ignored in the SimpleInternationalString implementation.
      Returns:
      the international string as a String.
      See Also:
    • equals

      public boolean equals(Object object)
      Compares this international string with the specified object for equality.
      Overrides:
      equals in class Object
      Parameters:
      object - the object to compare with this international string.
      Returns:
      true if the given object is equal to this string.
    • hashCode

      public int hashCode()
      Returns a hash code value for this international text.
      Overrides:
      hashCode in class Object
      Returns:
      the hash code value.
    • writeObject

      private void writeObject(ObjectOutputStream out) throws IOException
      Writes the string. This is required since AbstractInternationalString.defaultValue is not serialized.
      Parameters:
      out - the output stream where to serialize this international string.
      Throws:
      IOException - if an I/O error occurred while writing.
    • readObject

      private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
      Reads the string. This is required since AbstractInternationalString.defaultValue is not serialized.
      Parameters:
      in - the input stream from which to deserialize an international string.
      Throws:
      IOException - if an I/O error occurred while reading or if the stream contains invalid data.
      ClassNotFoundException - if the class serialized on the stream is not on the classpath.