org.apache.uima.cas.impl

## Class CasTypeSystemMapper

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

-     public class CasTypeSystemMapper
      extends Object

  This class gets initialized with two type systems, and then provides resources to map type and feature codes between them. It is used by some Binary serialization/ deserialization code to allow non-exact matched type systems to send and receive CASes in a binary-like format. Use cases: Serializing: Source ts -%gt; generate serialized form in Target ts Deserializing: Target ts -%gt; generate deserialized form in Source ts - either from remote or - from disk-stored-form Mapping details: Types are mapped by name. Same-named types do not need to have the same number of features. Same-named features must have same Range - otherwise, not mapped. Types with 0 features mapped allowed. LifeCycle: Instance of this are created for a CAS when needed, and then kept in the (source) TypeSystemImpl, in a map indexed by the target type system (identity map)

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `TypeSystemImpl` | `tsSrc`
    `WeakReference<TypeSystemImpl>` | `tsTgt`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `CasTypeSystemMapper(TypeSystemImpl tsSrc, TypeSystemImpl tsTgt)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `FeatureImpl` | `getSrcFeature(TypeImpl tgtType, FeatureImpl tgtFeat)`
    `FeatureImpl[]` | `getSrcFeatures(TypeImpl tgtType)` Given a tgt type, return an array of source features in the order they would appear in the target.
    `FeatureImpl` | `getTgtFeature(TypeImpl srcType, FeatureImpl srcFeat)` Get target feature, given src type and feature
    `FeatureImpl` | `getToFeature(FeatureImpl[][] mapByTypeCode, TypeImpl fromType, FeatureImpl fromFeat)`
    `boolean` | `isEqual()`
    `TypeImpl` | `mapTypeCode2Other(TypeImpl type, boolean src2tgt)`
    `TypeImpl` | `mapTypeCodeTgt2Src(int tgtTypeCode)`
    `TypeImpl` | `mapTypeSrc2Tgt(TypeImpl srcType)`
    `TypeImpl` | `mapTypeTgt2Src(TypeImpl tgtType)`

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

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

- - ### Field Detail

    - #### tsSrc

          public final TypeSystemImpl tsSrc

    - #### tsTgt

          public final WeakReference<TypeSystemImpl> tsTgt

  - ### Constructor Detail

    - #### CasTypeSystemMapper

          public CasTypeSystemMapper(TypeSystemImpl tsSrc,
                                     TypeSystemImpl tsTgt)

  - ### Method Detail

    - #### isEqual

          public boolean isEqual()

    - #### mapTypeSrc2Tgt

          public TypeImpl mapTypeSrc2Tgt(TypeImpl srcType)

      Parameters:
        `srcType` - -
      Returns:
        Type in other type system, or this one if map is empty

    - #### mapTypeTgt2Src

          public TypeImpl mapTypeTgt2Src(TypeImpl tgtType)

      Parameters:
        `tgtType` - -
      Returns:
        0 if type doesn't have corresponding code in other type system

    - #### mapTypeCodeTgt2Src

          public TypeImpl mapTypeCodeTgt2Src(int tgtTypeCode)

    - #### mapTypeCode2Other

          public TypeImpl mapTypeCode2Other(TypeImpl type,
                                            boolean src2tgt)

      Parameters:
        `type` - -
        `src2tgt` - -
      Returns:
        0 if type doesn't have corresponding code in other type system

    - #### getTgtFeature

          public FeatureImpl getTgtFeature(TypeImpl srcType,
                                           FeatureImpl srcFeat)

      Get target feature, given src type and feature
      Parameters:
        `srcType` - the source type
        `srcFeat` - the source feature
      Returns:
        the target feature or null

    - #### getSrcFeature

          public FeatureImpl getSrcFeature(TypeImpl tgtType,
                                           FeatureImpl tgtFeat)

    - #### getSrcFeatures

          public FeatureImpl[] getSrcFeatures(TypeImpl tgtType)

      Given a tgt type, return an array of source features in the order they would appear in the target.
      Parameters:
        `tgtType` - -
      Returns:
        array of corresponding source features, in target type order

    - #### getToFeature

          public FeatureImpl getToFeature(FeatureImpl[][] mapByTypeCode,
                                          TypeImpl fromType,
                                          FeatureImpl fromFeat)

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