Skip to content

Commit baa1dc0

Browse files
committed
SWS-310
1 parent 4110614 commit baa1dc0

File tree

1 file changed

+136
-1
lines changed

1 file changed

+136
-1
lines changed

core/src/main/java/org/springframework/ws/wsdl/wsdl11/ProviderBasedWsdl4jDefinition.java

Lines changed: 136 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,23 @@
3030
import org.springframework.ws.wsdl.wsdl11.provider.TypesProvider;
3131

3232
/**
33+
* Implementation of the {@link Wsdl11Definition} that uses a provider-based mechanism to populate a WSDL4J {@link
34+
* Definition}.
35+
* <p/>
36+
* All providers are optional, indicating that a particular part of the WSDL will not be created. Providers can be set
37+
* via various properties. The providers are {@link #afterPropertiesSet() invoked} in the following order: <ol>
38+
* <li>{@link ImportsProvider}</li> <li>{@link TypesProvider}</li> <li>{@link MessagesProvider}</li> <li>{@link
39+
* PortTypesProvider}</li> <li>{@link BindingsProvider}</li> <li>{@link ServicesProvider}</li> </ol>
40+
* <p/>
41+
* This definition requires the target namespace to be set via {@link #setTargetNamespace(String)}
42+
*
3343
* @author Arjen Poutsma
44+
* @see #setImportsProvider(ImportsProvider)
45+
* @see #setTypesProvider(TypesProvider)
46+
* @see #setMessagesProvider(MessagesProvider)
47+
* @see #setPortTypesProvider(PortTypesProvider)
48+
* @see #setBindingsProvider(BindingsProvider)
49+
* @see #setServicesProvider(ServicesProvider)
3450
* @since 1.5.0
3551
*/
3652
public class ProviderBasedWsdl4jDefinition extends Wsdl4jDefinition implements InitializingBean {
@@ -52,35 +68,154 @@ public class ProviderBasedWsdl4jDefinition extends Wsdl4jDefinition implements I
5268

5369
private String targetNamespace;
5470

71+
/**
72+
* Returns the {@link ImportsProvider} for this definition.
73+
* <p/>
74+
* Default is <code>null</code>, indicating that no <code>&lt;import&gt;</code> will be created
75+
*
76+
* @return the import provider; or <code>null</code>
77+
*/
78+
public ImportsProvider getImportsProvider() {
79+
return importsProvider;
80+
}
81+
82+
/**
83+
* Sets the {@link ImportsProvider} for this definition.
84+
* <p/>
85+
* Default is <code>null</code>, indicating that no <code>&lt;import&gt;</code> will be created
86+
*
87+
* @param importsProvider the import provider
88+
*/
5589
public void setImportsProvider(ImportsProvider importsProvider) {
5690
this.importsProvider = importsProvider;
5791
}
5892

93+
/**
94+
* Returns the {@link TypesProvider} for this definition.
95+
* <p/>
96+
* Defaults to <code>null</code>, indicating that no <code>&lt;types&gt;</code> will be created
97+
*
98+
* @return the types provider; or <code>null</code>
99+
*/
100+
public TypesProvider getTypesProvider() {
101+
return typesProvider;
102+
}
103+
104+
/**
105+
* Sets the {@link TypesProvider} for this definition.
106+
* <p/>
107+
* Defaults to <code>null</code>, indicating that no <code>&lt;types&gt;</code> will be created
108+
*
109+
* @param typesProvider the types provider; or <code>null</code>
110+
*/
59111
public void setTypesProvider(TypesProvider typesProvider) {
60112
this.typesProvider = typesProvider;
61113
}
62114

115+
/**
116+
* Returns the {@link MessagesProvider} for this definition.
117+
* <p/>
118+
* Defaults to <code>null</code>, indicating that no <code>&lt;message&gt;</code> will be created
119+
*
120+
* @return the messages provider; or <code>null</code>
121+
*/
122+
public MessagesProvider getMessagesProvider() {
123+
return messagesProvider;
124+
}
125+
126+
/**
127+
* Sets the {@link MessagesProvider} for this definition.
128+
* <p/>
129+
* Defaults to <code>null</code>, indicating that no <code>&lt;message&gt;</code> will be created
130+
*
131+
* @param messagesProvider the messages provider; or <code>null</code>
132+
*/
63133
public void setMessagesProvider(MessagesProvider messagesProvider) {
64134
this.messagesProvider = messagesProvider;
65135
}
66136

137+
/**
138+
* Returns the {@link PortTypesProvider} for this definition.
139+
* <p/>
140+
* Defaults to <code>null</code>, indicating that no <code>&lt;portType&gt;</code> will be created
141+
*
142+
* @return the port types provider; or <code>null</code>
143+
*/
144+
public PortTypesProvider getPortTypesProvider() {
145+
return portTypesProvider;
146+
}
147+
148+
/**
149+
* Sets the {@link PortTypesProvider} for this definition.
150+
* <p/>
151+
* Defaults to <code>null</code>, indicating that no <code>&lt;portType&gt;</code> will be created
152+
*
153+
* @param portTypesProvider the port types provider; or <code>null</code>
154+
*/
67155
public void setPortTypesProvider(PortTypesProvider portTypesProvider) {
68156
this.portTypesProvider = portTypesProvider;
69157
}
70158

159+
/**
160+
* Returns the {@link BindingsProvider} for this definition.
161+
* <p/>
162+
* Defaults to <code>null</code>, indicating that no <code>&lt;binding&gt;</code> will be created
163+
*
164+
* @return the binding provider; or <code>null</code>
165+
*/
166+
public BindingsProvider getBindingsProvider() {
167+
return bindingsProvider;
168+
}
169+
170+
/**
171+
* Sets the {@link BindingsProvider} for this definition.
172+
* <p/>
173+
* Defaults to <code>null</code>, indicating that no <code>&lt;binding&gt;</code> will be created
174+
*
175+
* @param bindingsProvider the bindings provider; or <code>null</code>
176+
*/
71177
public void setBindingsProvider(BindingsProvider bindingsProvider) {
72178
this.bindingsProvider = bindingsProvider;
73179
}
74180

181+
/**
182+
* Returns the {@link ServicesProvider} for this definition.
183+
* <p/>
184+
* Defaults to <code>null</code>, indicating that no <code>&lt;service&gt;</code> will be created
185+
*
186+
* @return the services provider; or <code>null</code>
187+
*/
188+
public ServicesProvider getServicesProvider() {
189+
return servicesProvider;
190+
}
191+
192+
/**
193+
* Sets the {@link ServicesProvider} for this definition.
194+
* <p/>
195+
* Defaults to <code>null</code>, indicating that no <code>&lt;service&gt;</code> will be created
196+
*
197+
* @param servicesProvider the services provider; or <code>null</code>
198+
*/
75199
public void setServicesProvider(ServicesProvider servicesProvider) {
76200
this.servicesProvider = servicesProvider;
77201
}
78202

203+
/**
204+
* Returns the target namespace for the WSDL definition.
205+
*
206+
* @return the target namespace
207+
* @see javax.wsdl.Definition#getTargetNamespace()
208+
*/
79209
public String getTargetNamespace() {
80210
return targetNamespace;
81211
}
82212

83-
/** Sets the target namespace used for this definition. Required. */
213+
/**
214+
* Sets the target namespace used for this definition. Required.
215+
*
216+
* @param targetNamespace the target namespace
217+
* @see javax.wsdl.Definition#setTargetNamespace(String)
218+
*/
84219
public void setTargetNamespace(String targetNamespace) {
85220
this.targetNamespace = targetNamespace;
86221
}

0 commit comments

Comments
 (0)