Package 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
  Description
  `final TypeSystemImpl`
  `tsSrc`
  `final WeakReference<TypeSystemImpl>`
  `tsTgt`

- ## Constructor Summary

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

- ## Method Summary

  Modifier and Type
  Method
  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 Details

  - ### tsSrc

    public final TypeSystemImpl tsSrc

  - ### tsTgt

    public final WeakReference<TypeSystemImpl> tsTgt

- ## Constructor Details

  - ### CasTypeSystemMapper

    public CasTypeSystemMapper(TypeSystemImpl tsSrc, TypeSystemImpl tsTgt)

- ## Method Details

  - ### 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)