KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > wsif > WSIFServiceFactory


1 /*
2  * The Apache Software License, Version 1.1
3  *
4  *
5  * Copyright (c) 2002 The Apache Software Foundation. All rights
6  * reserved.
7  *
8  * Redistribution and use in source and binary forms, with or without
9  * modification, are permitted provided that the following conditions
10  * are met:
11  *
12  * 1. Redistributions of source code must retain the above copyright
13  * notice, this list of conditions and the following disclaimer.
14  *
15  * 2. Redistributions in binary form must reproduce the above copyright
16  * notice, this list of conditions and the following disclaimer in
17  * the documentation and/or other materials provided with the
18  * distribution.
19  *
20  * 3. The end-user documentation included with the redistribution,
21  * if any, must include the following acknowledgment:
22  * "This product includes software developed by the
23  * Apache Software Foundation (http://www.apache.org/)."
24  * Alternately, this acknowledgment may appear in the software itself,
25  * if and wherever such third-party acknowledgments normally appear.
26  *
27  * 4. The names "WSIF" and "Apache Software Foundation" must
28  * not be used to endorse or promote products derived from this
29  * software without prior written permission. For written
30  * permission, please contact apache@apache.org.
31  *
32  * 5. Products derived from this software may not be called "Apache",
33  * nor may "Apache" appear in their name, without prior written
34  * permission of the Apache Software Foundation.
35  *
36  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
37  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
38  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
39  * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
40  * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
41  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
42  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
43  * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
44  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
45  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
46  * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
47  * SUCH DAMAGE.
48  * ====================================================================
49  *
50  * This software consists of voluntary contributions made by many
51  * individuals on behalf of the Apache Software Foundation and was
52  * originally based on software copyright (c) 2001, 2002, International
53  * Business Machines, Inc., http://www.apache.org. For more
54  * information on the Apache Software Foundation, please see
55  * <http://www.apache.org/>.
56  */

57
58 package org.apache.wsif;
59
60 import javax.wsdl.Definition;
61 import javax.wsdl.PortType;
62 import javax.wsdl.Service;
63
64 import org.apache.wsif.base.WSIFServiceFactoryImpl;
65 import org.apache.wsif.logging.Trc;
66 import org.apache.wsif.util.WSIFUtils;
67
68 /**
69  * Abstract factory class to create instances of WSIFService. Call newInstance
70  * to get a instance of the factory.
71  *
72  * @author Mark Whitlock
73  * @author Owen Burroughs
74  */

75 public abstract class WSIFServiceFactory {
76
77     /**
78      * Creates a new instance of an implementation the abstract
79      * WSIFServiceFactory class.
80      */

81     public static WSIFServiceFactory newInstance() {
82         Trc.entry(null);
83
84         WSIFServiceFactoryImpl wsf = new WSIFServiceFactoryImpl();
85
86         // Create the simple types map for use by other WSIF classes
87
WSIFUtils.createSimpleTypesMap();
88
89         Trc.exit(wsf);
90         return wsf;
91     }
92
93     /**
94      * Create a WSIFService from WSDL document URL.
95      * <br> If serviceName or serviceNS is null,
96      * then WSDL document must have exactly one service in it.
97      * <br> If portTypeName or portTypeNS is null,
98      * then WSDL document must have exactly one portType in it
99      * and all ports of the selected service must
100      * implement the same portType.
101      */

102     public abstract WSIFService getService(
103         String JavaDoc wsdlLoc,
104         String JavaDoc serviceNS,
105         String JavaDoc serviceName,
106         String JavaDoc portTypeNS,
107         String JavaDoc portTypeName)
108         throws WSIFException;
109
110     /**
111      * Create a WSIF service instance from WSDL document URL
112      * using a ClassLoader to find local resources.
113      * <br> If serviceName or serviceNS is null,
114      * then WSDL document must have exactly one service in it.
115      * <br> If portTypeName or portTypeNS is null,
116      * then WSDL document must have exactly one portType in it
117      * and all ports of the selected service must
118      * implement the same portType.
119      */

120     public abstract WSIFService getService(
121         String JavaDoc wsdlLoc,
122         ClassLoader JavaDoc cl,
123         String JavaDoc serviceNS,
124         String JavaDoc serviceName,
125         String JavaDoc portTypeNS,
126         String JavaDoc portTypeName)
127         throws WSIFException;
128
129     /**
130      * Returns a new WSIFService.
131      */

132     public abstract WSIFService getService(Definition def)
133         throws WSIFException;
134
135     /**
136      * Returns a new WSIFService.
137      */

138     public abstract WSIFService getService(Definition def, Service service)
139         throws WSIFException;
140
141     /**
142      * Returns a new WSIFService.
143      */

144     public abstract WSIFService getService(
145         Definition def,
146         Service service,
147         PortType portType)
148         throws WSIFException;
149
150     /**
151      * Returns a new WSIFService.
152      */

153     public abstract WSIFService getService(
154         Definition def,
155         String JavaDoc serviceNS,
156         String JavaDoc serviceName,
157         String JavaDoc portTypeNS,
158         String JavaDoc portTypeName)
159         throws WSIFException;
160      
161     /**
162      * Set caching on services on/off. Off is the default
163      * @param on Flag to indicate whether or not caching of services should be used
164      */

165     public void cachingOn(boolean on) {
166     }
167 }
168
Popular Tags