org.apache.uima.cas.impl

## Class LinearTypeOrderBuilderImpl

- java.lang.Object
- - org.apache.uima.cas.impl.LinearTypeOrderBuilderImpl

- All Implemented Interfaces:
    LinearTypeOrderBuilder

      public class LinearTypeOrderBuilderImpl
      extends Object
      implements LinearTypeOrderBuilder

  Implementation of the `LinearTypeOrderBuilder` interface.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `LinearTypeOrderBuilderImpl.TotalTypeOrder` An implementation of the `LinearTypeOrder` interface.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `LinearTypeOrderBuilderImpl(TypeSystem ts)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `add(String[] types)` Add pairs types[i] < types[i+1], for each i < (types.length-1), to the partial sort order.
    `static LinearTypeOrder` | `createTypeOrder(int[] typeList, TypeSystem ts)` The constructor for the total type order, called by the other constructor and also when doing a cas complete deserialization, or just deserializing the type system/index defs
    `LinearTypeOrder` | `getOrder()` Return a total order of the type names added earlier that is consistent with the pre-order defined through calls to add().

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

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

- - ### Constructor Detail

    - #### LinearTypeOrderBuilderImpl

          public LinearTypeOrderBuilderImpl(TypeSystem ts)

  - ### Method Detail

    - #### createTypeOrder

          public static LinearTypeOrder createTypeOrder(int[] typeList,
                                                        TypeSystem ts)

      The constructor for the total type order, called by the other constructor and also when doing a cas complete deserialization, or just deserializing the type system/index defs
      Parameters:
        `typeList` - -
        `ts` - -
      Returns:
        -

    - #### add

          public void add(String[] types)
                   throws CASException

      Description copied from interface: `LinearTypeOrderBuilder`
      Add pairs types[i] < types[i+1], for each i < (types.length-1), to the partial sort order. This method can be called as often as desired. It will throw an exception if the pairs could not be successfully added to the relation. A pair can not be added if the resulting relation is no longer a partial order. If you need to know exactly which pair fails, always call add() with a two-element array.
      Specified by:
        `add` in interface `LinearTypeOrderBuilder`
      Parameters:
        `types` - types to add
      Throws:
        `CASException` - When adding pairs would make order inconsistent.

    - #### getOrder

          public LinearTypeOrder getOrder()
                                   throws CASException

      Description copied from interface: `LinearTypeOrderBuilder`
      Return a total order of the type names added earlier that is consistent with the pre-order defined through calls to add().
      Specified by:
        `getOrder` in interface `LinearTypeOrderBuilder`
      Returns:
        An array of Strings in ascending order.
      Throws:
        `CASException` - if any error

Copyright © 2006–2022 The Apache Software Foundation. All rights reserved.