1 /* 2 * Copyright 2001-2004 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 package org.apache.ws.scout.registry; 17 18 import java.net.URI; 19 import org.uddi.api_v3.*; 20 import org.apache.ws.scout.transport.Transport; 21 22 /** 23 * 24 * IRegistry interface. 25 * 26 * <p>Only the functions that scout relies on, are in this interface.</p> 27 * 28 * <i>Borrowed from jUDDI.</i> 29 * 30 */ 31 32 public interface IRegistryV3 extends IRegistryBase { 33 34 /** 35 * @return Returns the inquiryURL. 36 */ 37 URI getInquiryURI(); 38 39 /** 40 * @param uri The inquiry uri to set. 41 */ 42 void setInquiryURI(URI uri); 43 44 /** 45 * @return Returns the publishURL. 46 */ 47 URI getPublishURI(); 48 49 /** 50 * @param uri The publish uri to set. 51 */ 52 void setPublishURI(URI uri); 53 54 /** 55 * @return Returns the transport. 56 */ 57 Transport getTransport(); 58 59 /** 60 * @param transport The transport to set. 61 */ 62 void setTransport(Transport transport); 63 64 /** 65 * @exception RegistryV3Exception; 66 */ 67 PublisherAssertions setPublisherAssertions(String authInfo, PublisherAssertion[] assertionArray) 68 throws RegistryV3Exception; 69 70 /** 71 * "Used to register or update complete information about a businessService 72 * exposed by a specified businessEntity." 73 * 74 * @exception RegistryV3Exception; 75 */ 76 ServiceDetail saveService(String authInfo, BusinessService[] serviceArray) 77 throws RegistryV3Exception; 78 79 /** 80 * "Used to register new bindingTemplate information or update existing 81 * bindingTemplate information. Use this to control information about 82 * technical capabilities exposed by a registered business." 83 * 84 * @exception RegistryV3Exception; 85 */ 86 BindingDetail saveBinding(String authInfo, BindingTemplate[] bindingArray) 87 throws RegistryV3Exception; 88 89 /** 90 * "Used to register new businessEntity information or update existing 91 * businessEntity information. Use this to control the overall 92 * information about the entire business. Of the save_x APIs this one 93 * has the broadest effect." 94 * 95 * @exception RegistryV3Exception; 96 */ 97 BusinessDetail saveBusiness(String authInfo, BusinessEntity[] businessArray) 98 throws RegistryV3Exception; 99 100 101 /** 102 * "Used to register or update complete information about a tModel." 103 * 104 * @exception RegistryV3Exception; 105 */ 106 TModelDetail saveTModel(String authInfo, TModel[] tModelArray) 107 throws RegistryV3Exception; 108 109 /** 110 * "Used to remove an existing bindingTemplate from the bindingTemplates 111 * collection that is part of a specified businessService structure." 112 * 113 * @exception RegistryV3Exception; 114 */ 115 DispositionReport deleteBinding(String authInfo, String[] bindingKeyArray) 116 throws RegistryV3Exception; 117 118 /** 119 * "Used to delete registered businessEntity information from the registry." 120 * 121 * @exception RegistryV3Exception; 122 */ 123 DispositionReport deleteBusiness(String authInfo, String[] businessKeyArray) 124 throws RegistryV3Exception; 125 126 /** 127 * "Used to delete an existing businessService from the businessServices 128 * collection that is part of a specified businessEntity." 129 * 130 * @exception RegistryV3Exception; 131 */ 132 DispositionReport deleteService(String authInfo, String[] serviceKeyArray) 133 throws RegistryV3Exception; 134 135 /** 136 * "Used to delete registered information about a tModel. If there 137 * are any references to a tModel when this call is made, the tModel 138 * will be marked deleted instead of being physically removed." 139 * 140 * @exception RegistryV3Exception; 141 */ 142 DispositionReport deleteTModel(String authInfo, String[] tModelKeyArray) 143 throws RegistryV3Exception; 144 145 /** 146 * @exception RegistryV3Exception; 147 */ 148 AssertionStatusReport getAssertionStatusReport(String authInfo, String completionStatus) 149 throws RegistryV3Exception; 150 151 /** 152 * @exception RegistryV3Exception; 153 */ 154 DispositionReport deletePublisherAssertions(String authInfo, PublisherAssertion[] assertionArray) 155 throws RegistryV3Exception; 156 157 /** 158 * "Used to request an authentication token from an Operator Site. 159 * Authentication tokens are required to use all other APIs defined 160 * in the publishers API. This server serves as the program's 161 * equivalent of a login request." 162 * 163 * @exception RegistryV3Exception; 164 */ 165 AuthToken getAuthToken(String userID,String cred) 166 throws RegistryV3Exception; 167 168 /** 169 * Used to locate information about one or more businesses. Returns a 170 * businessList message that matches the conditions specified. 171 * 172 * @exception RegistryV3Exception; 173 */ 174 BusinessList findBusiness(Name[] nameArray,DiscoveryURLs discoveryURLs,IdentifierBag identifierBag,CategoryBag categoryBag,TModelBag tModelBag,FindQualifiers findQualifiers,int maxRows) 175 throws RegistryV3Exception; 176 177 /** 178 * "Used to get the full businessEntity information for one or more 179 * businesses. Returns a businessDetail message." 180 * 181 * @exception RegistryV3Exception; 182 */ 183 BusinessDetail getBusinessDetail(String businessKey) 184 throws RegistryV3Exception; 185 186 /** 187 * "Used to get the full businessEntity information for one or more 188 * businesses. Returns a businessDetail message." 189 * 190 * @exception RegistryV3Exception; 191 */ 192 BusinessDetail getBusinessDetail(String[] businessKeyVector) 193 throws RegistryV3Exception; 194 195 /** 196 * @exception RegistryV3Exception; 197 */ 198 PublisherAssertions getPublisherAssertions(String authInfo) 199 throws RegistryV3Exception; 200 201 /** 202 * @exception RegistryV3Exception; 203 */ 204 RegisteredInfo getRegisteredInfo(String authInfo) 205 throws RegistryV3Exception; 206 207 /** 208 * "Used to locate one or more tModel information structures. Returns a 209 * tModelList structure." 210 * 211 * @exception RegistryV3Exception; 212 */ 213 TModelList findTModel(String name,CategoryBag categoryBag,IdentifierBag identifierBag,FindQualifiers findQualifiers,int maxRows) 214 throws RegistryV3Exception; 215 216 /** 217 * 218 * "Used to locate specific bindings within a registered 219 * businessService. Returns a bindingDetail message." 220 * 221 * @exception RegistryV3Exception 222 * @param serviceKey 223 * @param categoryBag 224 * @param tModelBag 225 * @param findQualifiers 226 * @param maxRows 227 * @return 228 * @throws RegistryV3Exception 229 */ 230 BindingDetail findBinding(String serviceKey,CategoryBag categoryBag,TModelBag tModelBag,FindQualifiers findQualifiers,int maxRows) 231 throws RegistryV3Exception; 232 233 /** 234 * "Used to locate specific services within a registered 235 * businessEntity. Return a serviceList message." From the 236 * XML spec (API, p18) it appears that the name, categoryBag, 237 * and tModelBag arguments are mutually exclusive. 238 * 239 * @exception RegistryV3Exception; 240 */ 241 ServiceList findService(String businessKey,Name[] nameArray,CategoryBag categoryBag,TModelBag tModelBag,FindQualifiers findQualifiers,int maxRows) 242 throws RegistryV3Exception; 243 244 /** 245 * "Used to get full details for a given set of registered tModel 246 * data. Returns a tModelDetail message." 247 * 248 * @exception RegistryV3Exception; 249 */ 250 TModelDetail getTModelDetail(String tModelKey) 251 throws RegistryV3Exception; 252 253 /** 254 * "Used to get full details for a given set of registered tModel 255 * data. Returns a tModelDetail message." 256 * 257 * @exception RegistryV3Exception; 258 */ 259 TModelDetail getTModelDetail(String[] tModelKeyArray) 260 throws RegistryV3Exception; 261 262 /** 263 * "Used to get full details for a given set of registered 264 * businessService data. Returns a serviceDetail message." 265 * 266 * @exception RegistryV3Exception; 267 */ 268 ServiceDetail getServiceDetail(String serviceKey) 269 throws RegistryV3Exception; 270 271 /** 272 * "Used to get full details for a given set of registered 273 * businessService data. Returns a serviceDetail message." 274 * 275 * @exception RegistryV3Exception; 276 */ 277 ServiceDetail getServiceDetail(String[] serviceKeyArray) 278 throws RegistryV3Exception; 279 280 281 }