code: private Collection<MethodMetadata<?, ?>> getMethodMetadataOfType(AnnotatedType annotatedType, Collection<AnnotatedMethod> annotatedMethods) {
          Collection<MethodMetadata<?, ?>> methodMetadataOfType = new ArrayList<>();
          // Collect the getter methods as they provide annotations holding meta
          // information also to be applied to setters
          for (AnnotatedMethod annotatedMethod : annotatedMethods) {
              MethodMetadata<?, ?> methodMetadata;
              ImplementedBy implementedBy = annotatedMethod.getAnnotation(ImplementedBy.class);
              ResultOf resultOf = annotatedMethod.getAnnotation(ResultOf.class);
              if (implementedBy != null) {
                  methodMetadata = new ImplementedByMethodMetadata<>(annotatedMethod, implementedBy.value(),
                          metadataFactory.createImplementedByMetadata(annotatedMethod));
              } else if (resultOf != null) {
                  methodMetadata = createResultOfMetadata(annotatedMethod, resultOf);
              } else if (annotatedMethod instanceof PropertyMethod) {
                  PropertyMethod propertyMethod = (PropertyMethod) annotatedMethod;
                  Transient transientAnnotation = propertyMethod.getAnnotationOfProperty(Transient.class);
                  if (transientAnnotation != null) {
                      methodMetadata = new TransientPropertyMethodMetadata(propertyMethod);
                  } else {
                      methodMetadata = createPropertyMethodMetadata(annotatedType, propertyMethod);
                  }
              } else {
                  methodMetadata = new UnsupportedOperationMethodMetadata((UserMethod) annotatedMethod);
              }
              methodMetadataOfType.add(methodMetadata);
          }
          return methodMetadataOfType;
      }
docs: Return the collection of method metadata from the given collection of
  annotated methods.
  
  @param annotatedMethods
  The collection of annotated methods.
  @return The collection of method metadata.