code: public boolean isArtefactClass(@SuppressWarnings("rawtypes") Class clazz) {
          if (clazz == null) return false;
  
          boolean ok = clazz.getName().endsWith(artefactSuffix) && !Closure.class.isAssignableFrom(clazz);
          if (ok && !allowAbstract) {
              ok &= !Modifier.isAbstract(clazz.getModifiers());
          }
          return ok;
      }
docs: <p>Checks that class's name ends in the suffix specified for this handler.</p>
  <p>Override for more complex criteria</p>
  @param clazz The class to check
  @return true if it is an artefact of this type