src/share/jaxws_classes/com/sun/tools/internal/jxc/ap/SchemaGenerator.java

Print this page

        

*** 25,43 **** package com.sun.tools.internal.jxc.ap; import com.sun.tools.internal.xjc.api.J2SJAXBModel; import com.sun.tools.internal.xjc.api.Reference; - import com.sun.tools.internal.xjc.api.XJC; import javax.annotation.processing.AbstractProcessor; import javax.annotation.processing.Processor; import javax.annotation.processing.RoundEnvironment; import javax.annotation.processing.SupportedAnnotationTypes; - import javax.annotation.processing.SupportedSourceVersion; import javax.lang.model.SourceVersion; import javax.lang.model.element.Element; import javax.lang.model.element.ElementKind; import javax.lang.model.element.TypeElement; import javax.lang.model.util.ElementFilter; --- 25,42 ---- package com.sun.tools.internal.jxc.ap; + import com.sun.tools.internal.jxc.api.JXC; import com.sun.tools.internal.xjc.api.J2SJAXBModel; import com.sun.tools.internal.xjc.api.Reference; import javax.annotation.processing.AbstractProcessor; import javax.annotation.processing.Processor; import javax.annotation.processing.RoundEnvironment; import javax.annotation.processing.SupportedAnnotationTypes; import javax.lang.model.SourceVersion; import javax.lang.model.element.Element; import javax.lang.model.element.ElementKind; import javax.lang.model.element.TypeElement; import javax.lang.model.util.ElementFilter;
*** 64,74 **** * command line tool. * * @author Kohsuke Kawaguchi */ @SupportedAnnotationTypes("*") - @SupportedSourceVersion(SourceVersion.RELEASE_6) public class SchemaGenerator extends AbstractProcessor { /** * User-specified schema locations, if any. */ --- 63,72 ----
*** 94,104 **** List<Reference> classes = new ArrayList<Reference>(); // simply ignore all the interface definitions, // so that users won't have to manually exclude interfaces, which is silly. filterClass(classes, roundEnv.getRootElements()); ! J2SJAXBModel model = XJC.createJavaCompiler().bind(classes, Collections.<QName, Reference>emptyMap(), null, processingEnv); if (model == null) return false; // error try { model.generateSchema( --- 92,102 ---- List<Reference> classes = new ArrayList<Reference>(); // simply ignore all the interface definitions, // so that users won't have to manually exclude interfaces, which is silly. filterClass(classes, roundEnv.getRootElements()); ! J2SJAXBModel model = JXC.createJavaCompiler().bind(classes, Collections.<QName, Reference>emptyMap(), null, processingEnv); if (model == null) return false; // error try { model.generateSchema(
*** 141,146 **** --- 139,152 ---- classes.add(new Reference((TypeElement) element, processingEnv)); filterClass(classes, ElementFilter.typesIn(element.getEnclosedElements())); } } } + + @Override + public SourceVersion getSupportedSourceVersion() { + if (SourceVersion.latest().compareTo(SourceVersion.RELEASE_6) > 0) + return SourceVersion.valueOf("RELEASE_7"); + else + return SourceVersion.RELEASE_6; + } }