public void serialize()

in src/main/java/org/apache/uima/json/jsoncas2/ser/FeatureSerializer.java [58:83]


  public void serialize(Feature aFeature, JsonGenerator jg, SerializerProvider aProvider)
          throws IOException {
    ReferenceCache refCache = ReferenceCache.get(aProvider);

    jg.writeStartObject(aFeature);

    jg.writeStringField(NAME_FIELD, aFeature.getShortName());

    // special check for array range types, which are represented in the CAS as
    // elementType[] but in the descriptor as an FSArray with an <elementType>
    Type rangeType = aFeature.getRange();
    if (rangeType.isArray() && !rangeType.getComponentType().isPrimitive()) {
      switch (arrayMode) {
        case AS_ARRAY_TYPED_RANGE:
          serializeArrayFieldAsRangeWithArrayMarker(refCache, jg, aFeature);
          break;
        case AS_RANGE_AND_ELEMENT:
          serializeArrayFieldAsTypeAndElementType(refCache, jg, aFeature);
          break;
      }
    } else {
      serializeField(refCache, jg, aFeature);
    }

    jg.writeEndObject();
  }