001: /*
002: * BEGIN_HEADER - DO NOT EDIT
003: *
004: * The contents of this file are subject to the terms
005: * of the Common Development and Distribution License
006: * (the "License"). You may not use this file except
007: * in compliance with the License.
008: *
009: * You can obtain a copy of the license at
010: * https://open-esb.dev.java.net/public/CDDLv1.0.html.
011: * See the License for the specific language governing
012: * permissions and limitations under the License.
013: *
014: * When distributing Covered Code, include this CDDL
015: * HEADER in each file and include the License file at
016: * https://open-esb.dev.java.net/public/CDDLv1.0.html.
017: * If applicable add the following below this CDDL HEADER,
018: * with the fields enclosed by brackets "[]" replaced with
019: * your own identifying information: Portions Copyright
020: * [year] [name of copyright owner]
021: */
022:
023: /*
024: * @(#)WsdlReader.java
025: * Copyright 2004-2007 Sun Microsystems, Inc. All Rights Reserved.
026: *
027: * END_HEADER - DO NOT EDIT
028: */
029: package com.sun.jbi.wsdl2;
030:
031: import org.w3c.dom.Document;
032: import org.w3c.dom.Element;
033:
034: import org.xml.sax.InputSource;
035: import java.net.MalformedURLException;
036: import java.io.IOException;
037:
038: /*
039: * This interface is based on the JSR 110 RI. The original
040: * author was:
041: *
042: * @author Matthew J. Duftler
043: */
044:
045: /**
046: * This interface defines a set of methods for reading a WSDL 2.0 document
047: * from various XML sources.
048: *
049: * @author Sun Microsystems, Inc.
050: */
051: public interface WsdlReader {
052: /**
053: * Read the WSDL document accessible via the specified
054: * URI into a WSDL definition.
055: *
056: * @param wsdlURI The URI (can be a filename or URL) pointing to a
057: * WSDL XML definition.
058: * @return The WSDL document as a Description component.
059: * @exception WsdlException if a WSDL 2.0 validity problem is found
060: * with the given document.
061: * @exception MalformedURLException if the given URL is invalid.
062: * @exception IOException if an I/O problem occurs while reading
063: * the document.
064: */
065: Description readDescription(String wsdlURI) throws WsdlException,
066: MalformedURLException, IOException;
067:
068: /**
069: * @deprecated - replaced by readDescription
070: */
071: Definitions readWsdl(String wsdlURI) throws WsdlException,
072: MalformedURLException, IOException;
073:
074: /**
075: * Read the WSDL document accessible via the specified
076: * URI into a WSDL definition.
077: *
078: * @param contextURI The context in which to resolve the wsdlURI, if the
079: * wsdlURI is relative. Can be null, in which case it
080: * will be ignored.
081: * @param wsdlURI The URI (can be a filename or URL) pointing to a
082: * WSDL XML definition.
083: * @return The WSDL document as a Description component.
084: * @exception WsdlException if a WSDL 2.0 validity problem is found
085: * with the given document.
086: * @exception MalformedURLException if a given URI is invalid.
087: * @exception IOException if an I/O problem occurs while reading
088: * the document.
089: */
090: Description readDescription(String contextURI, String wsdlURI)
091: throws WsdlException, MalformedURLException, IOException;
092:
093: /**
094: * @deprecated use readDescription
095: */
096: Definitions readWsdl(String contextURI, String wsdlURI)
097: throws WsdlException, MalformedURLException, IOException;
098:
099: /**
100: * Read the specified <wsdl:definitions> element into a WSDL
101: * definition.
102: *
103: * @param documentBaseURI The document base URI of the WSDL definition
104: * described by the element. Will be set as the
105: * documentBaseURI of the returned Definition.
106: * Can be null, in which case it will be ignored.
107: * @param definitionsElement The <wsdl:definitions> element to read.
108: * @return The WSDL document as a Description component.
109: * @exception WsdlException if a WSDL 2.0 validity problem is found
110: * with the given document.
111: * @exception MalformedURLException if a given URI is invalid.
112: * @exception IOException if an I/O problem occurs while reading
113: * the document.
114: */
115: Description readDescription(String documentBaseURI,
116: Element definitionsElement) throws WsdlException,
117: MalformedURLException, IOException;
118:
119: /**
120: * @deprecated use readDescription
121: */
122: Definitions readWsdl(String documentBaseURI,
123: Element definitionsElement) throws WsdlException,
124: MalformedURLException, IOException;
125:
126: /**
127: * Read the specified WSDL document into a WSDL definition.
128: *
129: * @param documentBaseURI The document base URI of the WSDL definition
130: * described by the document. Will be set as the
131: * documentBaseURI of the returned Definition.
132: * Can be null, in which case it will be ignored.
133: * @param wsdlDocument The WSDL document, an XML document obeying the WSDL
134: * schema.
135: * @return The WSDL document as a Description component.
136: * @exception WsdlException if a WSDL 2.0 validity problem is found
137: * with the given document.
138: * @exception MalformedURLException if a given URI is invalid.
139: * @exception IOException if an I/O problem occurs while reading
140: * the document.
141: */
142: Description readDescription(String documentBaseURI,
143: Document wsdlDocument) throws WsdlException,
144: MalformedURLException, IOException;
145:
146: /**
147: * @deprecated use readDescription
148: */
149: Definitions readWsdl(String documentBaseURI, Document wsdlDocument)
150: throws WsdlException, MalformedURLException, IOException;
151:
152: /**
153: * Read a WSDL document into a WSDL definition.
154: *
155: * @param documentBaseURI The document base URI of the WSDL definition
156: * described by the document. Will be set as the
157: * documentBaseURI of the returned Definition.
158: * Can be null, in which case it will be ignored.
159: * @param inputSource An InputSource pointing to the WSDL document, an
160: * XML document obeying the WSDL schema.
161: * @return The WSDL document pointed to by the <code>inputSource</code>,
162: * as a Description component.
163: * @exception WsdlException if a WSDL 2.0 validity problem is found
164: * with the given document.
165: * @exception MalformedURLException if a given URI is invalid.
166: * @exception IOException if an I/O problem occurs while reading
167: * the document.
168: */
169: Description readDescription(String documentBaseURI,
170: InputSource inputSource) throws WsdlException,
171: MalformedURLException, IOException;
172:
173: /**
174: * @deprecated use readDescription
175: */
176: Definitions readWsdl(String documentBaseURI, InputSource inputSource)
177: throws WsdlException, MalformedURLException, IOException;
178:
179: /**
180: * Read a WSDL document into a WSDL definition.
181: *
182: * @param locator A WSDLLocator object used to provide InputSources
183: * pointing to the wsdl file.
184: * @return The WSDL document as a Description component.
185: */
186: // public Definition readWsdl(WSDLLocator locator) throws WsdlException;
187: }
|