View Javadoc
1   package org.exolab.castor.xml.schema;
2   
3   import org.exolab.castor.xml.Serializer;
4   import org.xml.sax.Parser;
5   
6   /**
7    * Represents an execution context for schema reading/writing activities.
8    * 
9    * @author <a href="mailto:wguttmn AT codehaus DOT org">Werner Guttmann</a>
10   * @version $Revision: 7273 $ $Date: 2004-10-05 14:27:10 -0600 (Tue, 05 Oct 2004) $
11   *
12   * @since 1.2
13   */
14  public interface SchemaContext {
15  
16    /**
17     * To get the {@link Resolver} to use in Schema*.
18     * 
19     * @return get the {@link Resolver} to use in Schema*
20     */
21    Resolver getSchemaResolver();
22  
23    /**
24     * To set the {@link Resolver} for Schema*.
25     * 
26     * @param schemaResolver the {@link Resolver} for Schema*
27     */
28    void setSchemaResolver(Resolver resolver);
29  
30    /**
31     * Return an XML document parser as specified in the configuration file.
32     *
33     * @return A suitable XML parser
34     */
35    // TODO[WG, 1.3.4] REFACTOR with InternalContext
36    Parser getParser();
37  
38    /**
39     * Returns a default serializer for producing an XML document. The caller can specify an
40     * alternative output format, may reuse this serializer across several streams, and may serialize
41     * both DOM and SAX events. If such control is not required, it is recommended to call one of the
42     * other two methods.
43     * 
44     * @return A suitable serializer
45     */
46    // TODO[WG, 1.3.4] REFACTOR with InternalContext
47    Serializer getSerializer();
48  
49  }