0
|
1 /*
|
|
2 * (c) Copyright IBM Corp 2001, 2005
|
|
3 */
|
|
4
|
|
5 package javax.wadls.xml;
|
|
6
|
|
7 import java.io.*;
|
|
8 import java.net.URISyntaxException;
|
|
9
|
|
10 import org.w3c.dom.*;
|
|
11
|
|
12 import javax.wadls.*;
|
|
13
|
|
14 /**
|
|
15 * This interface describes a collection of methods
|
|
16 * that allow a WSDL model to be written to a writer
|
|
17 * in an XML format that follows the WSDL schema.
|
|
18 *
|
|
19 * @author Matthew J. Duftler
|
|
20 */
|
|
21 public interface WADLWriter
|
|
22 {
|
|
23 /**
|
|
24 * Sets the specified feature to the specified value.
|
|
25 * <p>
|
|
26 * There are no minimum features that must be supported.
|
|
27 * <p>
|
|
28 * All feature names must be fully-qualified, Java package style. All
|
|
29 * names starting with javax.wsdls. are reserved for features defined
|
|
30 * by the JWSDL specification. It is recommended that implementation-
|
|
31 * specific features be fully-qualified to match the package name
|
|
32 * of that implementation. For example: com.abc.featureName
|
|
33 *
|
|
34 * @param name the name of the feature to be set.
|
|
35 * @param value the value to set the feature to.
|
|
36 * @throws IllegalArgumentException if the feature name is not recognized.
|
|
37 * @see #getFeature(String)
|
|
38 */
|
|
39 public void setFeature(String name, boolean value)
|
|
40 throws IllegalArgumentException;
|
|
41
|
|
42 /**
|
|
43 * Gets the value of the specified feature.
|
|
44 *
|
|
45 * @param name the name of the feature to get the value of.
|
|
46 * @throws IllegalArgumentException if the feature name is not recognized.
|
|
47 * @see #setFeature(String, boolean)
|
|
48 */
|
|
49 public boolean getFeature(String name) throws IllegalArgumentException;
|
|
50
|
|
51 /**
|
|
52 * Return a document generated from the specified WSDL model.
|
|
53 */
|
|
54 public Document getDocument(Application wadlApp) throws WADLSException, URISyntaxException;
|
|
55
|
|
56 /**
|
|
57 * Write the specified WSDL definition to the specified Writer.
|
|
58 *
|
|
59 * @param wsdlDef the WSDL definition to be written.
|
|
60 * @param sink the Writer to write the xml to.
|
|
61 */
|
|
62 public void writeWADL(Application wadlApp, Writer sink)
|
|
63 throws WADLSException, URISyntaxException;
|
|
64
|
|
65 /**
|
|
66 * Write the specified WSDL definition to the specified OutputStream.
|
|
67 *
|
|
68 * @param wsdlDef the WSDL definition to be written.
|
|
69 * @param sink the OutputStream to write the xml to.
|
|
70 */
|
|
71 public void writeWADL(Application wadlApp, OutputStream sink)
|
|
72 throws WADLSException, URISyntaxException;
|
|
73 } |