0
|
1 /*
|
|
2 * (c) Copyright IBM Corp 2001, 2005
|
|
3 */
|
|
4
|
|
5 package javax.wadls.extensions;
|
|
6
|
|
7 import org.w3c.dom.*;
|
|
8
|
|
9 import javax.wadls.*;
|
|
10 import javax.xml.namespace.*;
|
|
11
|
|
12 /**
|
|
13 * This interface should be implemented by classes which deserialize
|
|
14 * org.w3c.dom.Elements into extension-specific instances of
|
|
15 * ExtensibilityElement.
|
|
16 *
|
|
17 * @author Matthew J. Duftler (duftler@us.ibm.com)
|
|
18 */
|
|
19 public interface ExtensionDeserializer
|
|
20 {
|
|
21 /**
|
|
22 * This method deserializes elements into instances of classes
|
|
23 * which implement the ExtensibilityElement interface. The
|
|
24 * return value should be explicitly cast to the more-specific
|
|
25 * implementing type.
|
|
26 *
|
|
27 * @param parentType a class object indicating where in the WSDL
|
|
28 * document this extensibility element was encountered. For
|
|
29 * example, javax.wsdls.Binding.class would be used to indicate
|
|
30 * this element was encountered as an immediate child of
|
|
31 * a <wsdl:binding> element.
|
|
32 * @param elementType the qname of the extensibility element
|
|
33 * @param el the extensibility element to deserialize
|
|
34 * @param def the definition this extensibility element was
|
|
35 * encountered in
|
|
36 * @param extReg the ExtensionRegistry to use (if needed again)
|
|
37 */
|
|
38 public ExtensibilityElement unmarshall(Class parentType,
|
|
39 QName elementType,
|
|
40 Element el,
|
|
41 Application app,
|
|
42 ExtensionRegistry extReg)
|
|
43 throws WADLSException;
|
|
44 } |