code: @Override
      public boolean isArtefact(ClassNode classNode) {
          int modifiers = classNode.getModifiers();
  
          URL url = GrailsASTUtils.getSourceUrl(classNode);
          if(url == null) return false;
          try {
              UrlResource resource = new UrlResource(url);
              if(!isArtefactResource(resource)) return false;
          } catch (IOException e) {
              return false;
          }
  
          if(isValidArtefactClassNode(classNode, modifiers)) {
              String name = classNode.getName();
              if(name != null && this.artefactSuffix != null && name.endsWith(artefactSuffix)) {
                  return true;
              }
          }
          return false;
      }
docs: Default implementation of {@link grails.core.ArtefactHandler#isArtefact(org.codehaus.groovy.ast.ClassNode)} which returns true if the ClassNode passes the
  {@link #isArtefactResource(org.grails.io.support.Resource)} method and the name of the ClassNode ends with the {@link #artefactSuffix}
  
  @param classNode The ClassNode instance
  @return True if the ClassNode is an artefact of this type