## net.sf.saxon.sort
Class NamedCollation

    java.lang.Object
      net.sf.saxon.sort.NamedCollation

All Implemented Interfaces:
  java.io.Serializable, StringCollator

    public class NamedCollation

extends java.lang.Object
implements StringCollator

A StringCollator is used for comparing strings (Java String objects). The URI is retained along with the collation so that the collation can be reconstructed on demand, typically at run-time by compiled code which has access to the URI but not the collation object itself.

See Also:
  Serialized Form

Constructor Summary
`NamedCollation(java.lang.String uri, java.util.Comparator collation)` Create a NamedCollation

Method Summary
`int` `compareStrings(java.lang.String o1, java.lang.String o2)` Compares its two arguments for order.
`java.util.Comparator` `getCollation()` Get the underlying comparator
`java.lang.Object` `getCollationKey(java.lang.String s)` Get a collation key for two Strings.
`java.lang.String` `getUri()` Get the URI identifying the collation
`void` `setCollation(java.util.Comparator collation)` Set the underlying comparator
`void` `setUri(java.lang.String uri)` Set the URI identifying the collation

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

Constructor Detail

### NamedCollation

    public NamedCollation(java.lang.String uri,
                          java.util.Comparator collation)

  Create a NamedCollation

  Parameters:
    `uri` - the name of the collation
    `collation` - the Comparator that does the actual string comparison

Method Detail

### compareStrings

    public int compareStrings(java.lang.String o1,
                              java.lang.String o2)

  Compares its two arguments for order. Returns a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second.

  Specified by:
    `compareStrings` in interface `StringCollator`
  Parameters:
    `o1` - the first object to be compared.
    `o2` - the second object to be compared.
  Returns:
    a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second.
  Throws:
    `java.lang.ClassCastException` - if the arguments' types prevent them from being compared by this Comparator.

### getUri

    public java.lang.String getUri()

  Get the URI identifying the collation

### setUri

    public void setUri(java.lang.String uri)

  Set the URI identifying the collation

  Parameters:
    `uri` - the collation URI

### getCollation

    public java.util.Comparator getCollation()

  Get the underlying comparator

  Returns:
    the underlying comparator

### setCollation

    public void setCollation(java.util.Comparator collation)

  Set the underlying comparator

  Parameters:
    `collation` - the underlying comparator

### getCollationKey

    public java.lang.Object getCollationKey(java.lang.String s)

  Get a collation key for two Strings. The essential property of collation keys is that if two values are equal under the collation, then the collation keys are compare correctly under the equals() method.

  Specified by:
    `getCollationKey` in interface `StringCollator`
  Parameters:
    `s` - the string whose collation key is required
  Returns:
    the collation key

Copyright (c) Saxonica Limited. All rights reserved.