42 public interface JavaCompiler { 43 44 /** 45 * Compiles the given annotated Java source code. 46 * 47 * <p> 48 * This operation takes a set of "root types", then compute the list of 49 * all the types that need to be bound by forming a transitive reflexive 50 * closure of types that are referenced by the root types. 51 * 52 * <p> 53 * Errors will be sent to {@link javax.annotation.processing.ProcessingEnvironment#getMessager()}. 54 * 55 * @param rootTypes 56 * The list of types that needs to be bound to XML. 57 * "root references" from JAX-RPC to JAXB is always in the form of (type,annotations) pair. 58 * 59 * @param additionalElementDecls 60 * Add element declarations for the specified element names to 61 * the XML types mapped from the corresponding {@link Reference}s. 62 * Those {@link Reference}s must be included in the <tt>rootTypes</tt> parameter. 63 * In this map, a {@link Reference} can be null, in which case the element name is 64 * declared to have an empty complex type. 65 * (<xs:element name='foo'><xs:complexType/></xs:element>) 66 * This parameter can be null, in which case the method behaves as if the empty map is given. 67 * 68 * @param defaultNamespaceRemap 69 * If not-null, all the uses of the empty default namespace ("") will 70 * be replaced by this namespace URI. 71 * 72 * @param source 73 * The caller supplied view to the annotated source code that JAXB is going to process. 74 * 75 * @return 76 * Non-null if no error was reported. Otherwise null. 77 */ 78 J2SJAXBModel bind( 79 Collection<Reference> rootTypes, 80 Map<QName, Reference> additionalElementDecls, 81 String defaultNamespaceRemap, 82 ProcessingEnvironment source); 83 } | 42 public interface JavaCompiler { 43 44 /** 45 * Compiles the given annotated Java source code. 46 * 47 * <p> 48 * This operation takes a set of "root types", then compute the list of 49 * all the types that need to be bound by forming a transitive reflexive 50 * closure of types that are referenced by the root types. 51 * 52 * <p> 53 * Errors will be sent to {@link javax.annotation.processing.ProcessingEnvironment#getMessager()}. 54 * 55 * @param rootTypes 56 * The list of types that needs to be bound to XML. 57 * "root references" from JAX-RPC to JAXB is always in the form of (type,annotations) pair. 58 * 59 * @param additionalElementDecls 60 * Add element declarations for the specified element names to 61 * the XML types mapped from the corresponding {@link Reference}s. 62 * Those {@link Reference}s must be included in the {@code rootTypes} parameter. 63 * In this map, a {@link Reference} can be null, in which case the element name is 64 * declared to have an empty complex type. 65 * ({@code <xs:element name='foo'><xs:complexType/></xs:element>}) 66 * This parameter can be null, in which case the method behaves as if the empty map is given. 67 * 68 * @param defaultNamespaceRemap 69 * If not-null, all the uses of the empty default namespace ("") will 70 * be replaced by this namespace URI. 71 * 72 * @param source 73 * The caller supplied view to the annotated source code that JAXB is going to process. 74 * 75 * @return 76 * Non-null if no error was reported. Otherwise null. 77 */ 78 J2SJAXBModel bind( 79 Collection<Reference> rootTypes, 80 Map<QName, Reference> additionalElementDecls, 81 String defaultNamespaceRemap, 82 ProcessingEnvironment source); 83 } |