core/src/main/java/com/twitter/elephantbird/util/ThriftToDynamicProto.java
private DescriptorProtos.DescriptorProto.Builder mapDescriptorProtoBuilder(
    Field field, String typeName) throws DescriptorValidationException {
    DescriptorProtos.DescriptorProto.Builder mapBuilder =
      DescriptorProtos.DescriptorProto.newBuilder().setName(typeName);

    Field keyField = field.getMapKeyField();
    Field valueField = field.getMapValueField();

    DescriptorProtos.FieldDescriptorProto.Builder keyBuilder = mapKeyProtoBuilder();
    DescriptorProtos.FieldDescriptorProto.Builder valueBuilder = mapValueProtoBuilder();

    setBuilderTypeFromField(keyField, keyBuilder);
    setBuilderTypeFromField(valueField, valueBuilder);

    mapBuilder.addField(keyBuilder.build());
    mapBuilder.addField(valueBuilder.build());

    return mapBuilder;
  }
private DescriptorProtos.DescriptorProto.Builder mapDescriptorProtoBuilder(
    Field field, String typeName) throws DescriptorValidationException {
    DescriptorProtos.DescriptorProto.Builder mapBuilder =
      DescriptorProtos.DescriptorProto.newBuilder().setName(typeName);

    Field keyField = field.getMapKeyField();
    Field valueField = field.getMapValueField();

    DescriptorProtos.FieldDescriptorProto.Builder keyBuilder = mapKeyProtoBuilder();
    DescriptorProtos.FieldDescriptorProto.Builder valueBuilder = mapValueProtoBuilder();

    setBuilderTypeFromField(keyField, keyBuilder);
    setBuilderTypeFromField(valueField, valueBuilder);

    mapBuilder.addField(keyBuilder.build());
    mapBuilder.addField(valueBuilder.build());

    return mapBuilder;
  }
private DescriptorProtos . DescriptorProto . Builder mapDescriptorProtoBuilder ( Field field , String typeName ) throws DescriptorValidationException { DescriptorProtos . DescriptorProto . Builder mapBuilder = DescriptorProtos . DescriptorProto . newBuilder ( ) . setName ( typeName ) ; Field keyField = field . getMapKeyField ( ) ; Field valueField = field . getMapValueField ( ) ; DescriptorProtos . FieldDescriptorProto . Builder keyBuilder = mapKeyProtoBuilder ( ) ; DescriptorProtos . FieldDescriptorProto . Builder valueBuilder = mapValueProtoBuilder ( ) ; setBuilderTypeFromField ( keyField , keyBuilder ) ; setBuilderTypeFromField ( valueField , valueBuilder ) ; mapBuilder . addField ( keyBuilder . build ( ) ) ; mapBuilder . addField ( valueBuilder . build ( ) ) ; return mapBuilder ; }
Generate a DescriptorProto.Builder for the Message type that will be used
to represent the entries of the input Map field.

@param field a Map Field (field.isMap() == true)
@param typeName name of new message type
Generate a DescriptorProto . Builder for the Message type that will be used to represent the entries of the input Map field .