code: private void handleSubEntity(EntityBuilder builder, Object obj, Field currentField, List<ReflectedInfo> fieldInfo)
              throws Siren4JException {
  
          Siren4JSubEntity subAnno = getSubEntityAnnotation(currentField, fieldInfo);
          if (subAnno != null) {
              if (isCollection(obj, currentField)) {
                  Collection<?> coll = (Collection<?>) ReflectionUtils.getFieldValue(currentField, obj);
                  if (coll != null) {
                      for (Object o : coll) {
                          builder.addSubEntity(toEntity(o, currentField, obj, fieldInfo));
                      }
                  }
              } else {
                  Object subObj = ReflectionUtils.getFieldValue(currentField, obj);
                  if (subObj != null) {
                      builder.addSubEntity(toEntity(subObj, currentField, obj, fieldInfo));
                  }
              }
          }
  
      }
docs: Handles sub entities.
  
  @param builder assumed not <code>null</code>.
  @param obj assumed not <code>null</code>.
  @param currentField assumed not <code>null</code>.
  @throws Siren4JException