code: public void fillCollectionProperty(Object entity, Set<String> keySet, StructuralProperty property, Field field,
                                         String node, Map<String, Object> map) throws ODataException {
          for (String target : keySet) {
              if (node.equalsIgnoreCase(target)) {
                      Iterable subValues = (Iterable) map.get(target);
                  List<Object> valueList = new ArrayList<>();
                  for (Object subValue : subValues) {
                      Object value = getFieldValueByType(property.getElementTypeName(), subValue, map, true);
  
                      if (value != null) {
                          valueList.add(value);
                      }
                  }
                  setFieldValue(field, entity, valueList);
                  break;
              }
          }
      }
docs: Populates the collection property of the entity with field values.
  
  @param entity   the entity
  @param keySet   the set of entity properties
  @param property the collection property
  @param field    the Java field
  @param node     the current node
  @param map      the map of field values
  @throws ODataException If unable to fill collection properties