code: private boolean isOfDefinitionType(AnnotatedType annotatedType, Class<? extends Annotation> definitionType) {
          Annotation definition = annotatedType.getByMetaAnnotation(definitionType);
          if (definition != null) {
              return true;
          }
          for (Class<?> superType : annotatedType.getAnnotatedElement().getInterfaces()) {
              if (isOfDefinitionType(new AnnotatedType(superType), definitionType)) {
                  return true;
              }
          }
          return false;
      }
docs: Determines if an {@link AnnotatedType} represents a specific type identified
  by a meta annotation.
  
  @param annotatedType
  The {@link AnnotatedType}.
  @param definitionType
  The meta annotation.
  @return <code>true</code> if the annotated type represents relation type.