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 }