code: public static boolean isCompatible(final Class<?> extensionClass, final Class<?> extensionType,
                                         final Class<? extends RepositoryMethodDescriptor> descriptorType) {
          final Class<?> compatibleDescriptor = GenericsResolver.resolve(extensionClass)
                  .type(extensionType).generic("T");
          return compatibleDescriptor.isAssignableFrom(descriptorType);
      }
docs: General convention: extensions declare descriptor with generic T.
  
  @param extensionClass extension class
  @param extensionType  extension type (interface to resolve generic on)
  @param descriptorType repository method descriptor type
  @return true if extension is compatible with descriptor, false otherwise