in core/src/main/java/com/epam/cme/mdp3/sbe/message/meta/MetadataContainerBuilder.java [34:51]
public static MetadataContainer build(final MdpMessageType messageType) {
final int schemaId = messageType.getMessageType().getId();
final MetadataContainer container = allocate(messageType.getSchema(), schemaId,
SbeConstants.HEADER_SIZE, findMaxFieldId(messageType), messageType.getMessageType().getGroup().size());
for (FieldType fieldType : messageType.getMessageType().getField()) {
container.addFieldType(new SbeFieldType(container, fieldType));
}
for (GroupType groupType : messageType.getMessageType().getGroup()) {
final MetadataContainer fieldContainer = allocate(messageType.getSchema(), schemaId, findMaxFieldId(groupType));
for (FieldType fieldType : groupType.getField()) {
fieldContainer.addFieldType(new SbeFieldType(fieldContainer, fieldType));
}
container.addGroupType(new SbeGroupType(fieldContainer, groupType,
findDimensionType(messageType, groupType.getDimensionType())));
}
return container;
}