code: public JavaType create(ClassIndex index, ClassPlan plan) {
  
          // base class
          JavaInterfaceSource type = Roaster.parse(
                  JavaInterfaceSource.class,
                  "public interface " + plan.getClassName() + "Consumer<T extends " + plan.getClassName() + "<T>> {}"
          );
  
          type.setPackage(plan.getPackageName());
  
          type.addImport(plan.getPackageName() + "." + plan.getClassName());
          type.addAnnotation(FunctionalInterface.class);
  
          addAccept(type, plan);
          addAndThen(type, plan);
  
          return type;
      }
docs: Base template for a resource representation.
  Covers the resource attributes
  
  @param index
  @param plan
  @return