1 /*
2 * Copyright 2001-2008 The Apache Software Foundation.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 *
16 */
17
18
19 package org.uddi.api_v3;
20
21 import java.io.Serializable;
22
23 import javax.xml.bind.annotation.XmlAccessType;
24 import javax.xml.bind.annotation.XmlAccessorType;
25 import javax.xml.bind.annotation.XmlAttribute;
26 import javax.xml.bind.annotation.XmlElement;
27 import javax.xml.bind.annotation.XmlTransient;
28 import javax.xml.bind.annotation.XmlType;
29
30
31 /**
32 * The find_binding API is used to find UDDI bindingTemplate elements. The
33 * find_binding API call returns a bindingDetail that contains zero or more
34 * bindingTemplate structures matching the criteria specified in the argument
35 * list.
36 * * <br><br>
37 * authInfo: This optional argument is an element that contains an
38 * authentication token. Registries that wish to restrict who can perform an
39 * inquiry typically require authInfo for this call.
40 * <br><br>
41 * · categoryBag: This optional argument is a list of category references in the
42 * form of keyedReference elements and keyedReferenceGroup structures. When
43 * used, the returned bindingDetail for this API will contain elements matching
44 * all of the categories passed (logical AND by default). Specifying the
45 * appropriate findQualifiers can override this behavior. Matching rules for
46 * each can be found in Section 5.1.7 Matching Rules for keyedReferences and
47 * keyedReferenceGroups.
48 * <br><br>
49 * · findQualifiers: This optional collection of findQualifier elements can be
50 * used to alter the default behavior of search functionality. See Section 5.1.4
51 * Find Qualifiers, for more information.
52 * <br><br>
53 * · find_tModel: This argument provides an alternative or additional way of
54 * specifying tModelKeys that are to be used to find the bindingTemplate
55 * elements. When specified, the find_tModel argument is treated as an embedded
56 * inquiry that is performed prior to searching for bindingTemplate elements.
57 * The tModelKeys found are those whose tModels match the criteria contained
58 * within the find_tModel element. The tModelKeys found are added to the
59 * (possibly empty) collection specified by the tModelBag prior to finding
60 * qualified bindingTemplates. Note that the authInfo argument to this embedded
61 * find_tModel argument is always ignored. Large result set behavior involving
62 * the return of a listDescription does not apply within an embedded argument.
63 * If the intermediate result set produced is too large, then the overall query
64 * will return E_resultSetTooLarge with an indication that the embedded query
65 * returned too many results. If an E_unsupported error occurs as part of
66 * processing this embedded argument, it is propagated up to the containing
67 * (calling) API.
68 * <br><br>
69 * · listHead: This optional integer value is used to indicate which item SHOULD
70 * be returned as the head of the list. The client may request a subset of the
71 * matching data by indicating which item in the resultant set constitutes the
72 * beginning of the returned data. The use of the listDescription element is
73 * mutually exclusive to the use of the truncated attribute that simply
74 * indicates a truncated result list in the Inquiry APIs. See Section 5.1.5 Use
75 * of listDescription, for a detailed description of the listHead argument.
76 * <br><br>
77 * · maxRows: This optional integer value allows the requesting program to limit
78 * the number of results returned. This argument can be used in conjunction with
79 * the listHead argument.
80 * <br><br>
81 * · serviceKey: This optional uddi_key is used to specify a particular instance
82 * of a businessService element in the registered data. Only bindings in the
83 * specific businessService data identified by the serviceKey passed are
84 * searched. When it is either omitted or specified as empty (i.e.,
85 * serviceKey=""), this indicates that all businessServices are to be searched
86 * for bindings that meet the other criteria supplied without regard to the
87 * service that provides them, and "projected" services are suppressed.
88 * <br><br>
89 * · tModelBag: This collection of tModelKey elements represent in part or in
90 * whole the technical fingerprint of the bindingTemplate structures for which
91 * the search is being performed. At least one of either a tModelBag or a
92 * find_tModel argument SHOULD be supplied, unless a categoryBag based search is
93 * being used.
94 * <br><br>
95 * If a find_tModel argument is specified (see above), it is treated as an
96 * embedded inquiry. The tModelKeys returned as a result of this embedded
97 * find_tModel argument are used as if they had been supplied in a tModelBag
98 * argument. Changing the order of the keys in the collection or specifying the
99 * same tModelKey more than once does not change the behavior of the find.
100 * <br><br>
101 * By default, only bindingTemplates that have a technical fingerprint
102 * containing all of the supplied tModelKeys match (logical AND). Specifying
103 * appropriate findQualifiers can override this behavior so that
104 * bindingTemplates with a technical fingerprint containing any of the specified
105 * tModelKeys are returned (logical OR).
106 * <br><br>
107 * <p>Java class for find_binding complex type.
108 *
109 * <p>The following schema fragment specifies the expected content contained
110 * within this class.
111 *
112 * <pre>
113 * <complexType name="find_binding">
114 * <complexContent>
115 * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
116 * <sequence>
117 * <element ref="{urn:uddi-org:api_v3}authInfo" minOccurs="0"/>
118 * <element ref="{urn:uddi-org:api_v3}findQualifiers" minOccurs="0"/>
119 * <element ref="{urn:uddi-org:api_v3}tModelBag" minOccurs="0"/>
120 * <element ref="{urn:uddi-org:api_v3}find_tModel" minOccurs="0"/>
121 * <element ref="{urn:uddi-org:api_v3}categoryBag" minOccurs="0"/>
122 * </sequence>
123 * <attribute name="maxRows" type="{http://www.w3.org/2001/XMLSchema}int" />
124 * <attribute name="serviceKey" type="{urn:uddi-org:api_v3}serviceKey" />
125 * <attribute name="listHead" type="{http://www.w3.org/2001/XMLSchema}int" />
126 * </restriction>
127 * </complexContent>
128 * </complexType>
129 * </pre>
130 *
131 *
132 */
133 @XmlAccessorType(XmlAccessType.FIELD)
134 @XmlType(name = "find_binding", propOrder = {
135 "authInfo",
136 "findQualifiers",
137 "tModelBag",
138 "findTModel",
139 "categoryBag"
140 })
141 public class FindBinding implements Serializable{
142 @XmlTransient
143 private static final long serialVersionUID = 5788351026931169344L;
144 protected String authInfo;
145 protected FindQualifiers findQualifiers;
146 protected TModelBag tModelBag;
147 @XmlElement(name = "find_tModel")
148 protected FindTModel findTModel;
149 protected CategoryBag categoryBag;
150 @XmlAttribute
151 protected Integer maxRows;
152 @XmlAttribute
153 protected String serviceKey;
154 @XmlAttribute
155 protected Integer listHead;
156
157 /**
158 * Gets the value of the authInfo property.
159 *
160 * @return
161 * possible object is
162 * {@link String }
163 *
164 */
165 public String getAuthInfo() {
166 return authInfo;
167 }
168
169 /**
170 * Sets the value of the authInfo property.
171 *
172 * @param value
173 * allowed object is
174 * {@link String }
175 *
176 */
177 public void setAuthInfo(String value) {
178 this.authInfo = value;
179 }
180
181 /**
182 * Gets the value of the findQualifiers property.
183 *
184 * @return
185 * possible object is
186 * {@link FindQualifiers }
187 *
188 */
189 public FindQualifiers getFindQualifiers() {
190 return findQualifiers;
191 }
192
193 /**
194 * Sets the value of the findQualifiers property.
195 *
196 * @param value
197 * allowed object is
198 * {@link FindQualifiers }
199 *
200 */
201 public void setFindQualifiers(FindQualifiers value) {
202 this.findQualifiers = value;
203 }
204
205 /**
206 * Gets the value of the tModelBag property.
207 *
208 * @return
209 * possible object is
210 * {@link TModelBag }
211 *
212 */
213 public TModelBag getTModelBag() {
214 return tModelBag;
215 }
216
217 /**
218 * Sets the value of the tModelBag property.
219 *
220 * @param value
221 * allowed object is
222 * {@link TModelBag }
223 *
224 */
225 public void setTModelBag(TModelBag value) {
226 this.tModelBag = value;
227 }
228
229 /**
230 * Gets the value of the findTModel property.
231 *
232 * @return
233 * possible object is
234 * {@link FindTModel }
235 *
236 */
237 public FindTModel getFindTModel() {
238 return findTModel;
239 }
240
241 /**
242 * Sets the value of the findTModel property.
243 *
244 * @param value
245 * allowed object is
246 * {@link FindTModel }
247 *
248 */
249 public void setFindTModel(FindTModel value) {
250 this.findTModel = value;
251 }
252
253 /**
254 * Gets the value of the categoryBag property.
255 *
256 * @return
257 * possible object is
258 * {@link CategoryBag }
259 *
260 */
261 public CategoryBag getCategoryBag() {
262 return categoryBag;
263 }
264
265 /**
266 * Sets the value of the categoryBag property.
267 *
268 * @param value
269 * allowed object is
270 * {@link CategoryBag }
271 *
272 */
273 public void setCategoryBag(CategoryBag value) {
274 this.categoryBag = value;
275 }
276
277 /**
278 * Gets the value of the maxRows property.
279 *
280 * @return
281 * possible object is
282 * {@link Integer }
283 *
284 */
285 public Integer getMaxRows() {
286 return maxRows;
287 }
288
289 /**
290 * Sets the value of the maxRows property.
291 *
292 * @param value
293 * allowed object is
294 * {@link Integer }
295 *
296 */
297 public void setMaxRows(Integer value) {
298 this.maxRows = value;
299 }
300
301 /**
302 * Gets the value of the serviceKey property.
303 *
304 * @return
305 * possible object is
306 * {@link String }
307 *
308 */
309 public String getServiceKey() {
310 return serviceKey;
311 }
312
313 /**
314 * Sets the value of the serviceKey property.
315 *
316 * @param value
317 * allowed object is
318 * {@link String }
319 *
320 */
321 public void setServiceKey(String value) {
322 this.serviceKey = value;
323 }
324
325 /**
326 * Gets the value of the listHead property.
327 *
328 * @return
329 * possible object is
330 * {@link Integer }
331 *
332 */
333 public Integer getListHead() {
334 return listHead;
335 }
336
337 /**
338 * Sets the value of the listHead property.
339 *
340 * @param value
341 * allowed object is
342 * {@link Integer }
343 *
344 */
345 public void setListHead(Integer value) {
346 this.listHead = value;
347 }
348
349 }