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 at7 * 8 * http://www.apache.org/licenses/LICENSE-2.09 * 10 * Unless required by applicable law or agreed to in writing, software11 * 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 and14 * limitations under the License.15 */16package org.apache.ws.scout.registry;
1718import java.net.URI;
1920import org.apache.ws.scout.model.uddi.v2.AssertionStatusReport;
21import org.apache.ws.scout.model.uddi.v2.AuthToken;
22import org.apache.ws.scout.model.uddi.v2.BindingDetail;
23import org.apache.ws.scout.model.uddi.v2.BindingTemplate;
24import org.apache.ws.scout.model.uddi.v2.BusinessDetail;
25import org.apache.ws.scout.model.uddi.v2.BusinessEntity;
26import org.apache.ws.scout.model.uddi.v2.BusinessList;
27import org.apache.ws.scout.model.uddi.v2.BusinessService;
28import org.apache.ws.scout.model.uddi.v2.CategoryBag;
29import org.apache.ws.scout.model.uddi.v2.DiscoveryURLs;
30import org.apache.ws.scout.model.uddi.v2.DispositionReport;
31import org.apache.ws.scout.model.uddi.v2.FindQualifiers;
32import org.apache.ws.scout.model.uddi.v2.IdentifierBag;
33import org.apache.ws.scout.model.uddi.v2.Name;
34import org.apache.ws.scout.model.uddi.v2.PublisherAssertion;
35import org.apache.ws.scout.model.uddi.v2.PublisherAssertions;
36import org.apache.ws.scout.model.uddi.v2.RegisteredInfo;
37import org.apache.ws.scout.model.uddi.v2.ServiceDetail;
38import org.apache.ws.scout.model.uddi.v2.ServiceList;
39import org.apache.ws.scout.model.uddi.v2.TModel;
40import org.apache.ws.scout.model.uddi.v2.TModelBag;
41import org.apache.ws.scout.model.uddi.v2.TModelDetail;
42import org.apache.ws.scout.model.uddi.v2.TModelList;
43import org.apache.ws.scout.transport.Transport;
4445/**46 * 47 * IRegistry interface.48 * 49 * <p>Only the functions that scout relies on, are in this interface.</p>50 * 51 * <i>Borrowed from jUDDI.</i>52 * 53 *54 * @author <a href="mailto:tcunning@apache.org">Tom Cunningham</a>55 */5657publicinterfaceIRegistryextendsIRegistryBase {
58/**59 * @return Returns the inquiryURL.60 */61 URI getInquiryURI();
6263/**64 * @param uri The inquiry uri to set.65 */66void setInquiryURI(URI uri);
6768/**69 * @return Returns the publishURL.70 */71 URI getPublishURI();
7273/**74 * @param uri The publish uri to set.75 */76void setPublishURI(URI uri);
7778/**79 * @return Returns the transport.80 */81 Transport getTransport();
8283/**84 * @param transport The transport to set.85 */86void setTransport(Transport transport);
8788/**89 * @exception RegistryException;90 */91 PublisherAssertions setPublisherAssertions(String authInfo, PublisherAssertion[] assertionArray)
92throws RegistryException;
9394/**95 * "Used to register or update complete information about a businessService96 * exposed by a specified businessEntity."97 *98 * @exception RegistryException;99 */100 ServiceDetail saveService(String authInfo, BusinessService[] serviceArray)
101throws RegistryException;
102103/**104 * "Used to register new bindingTemplate information or update existing105 * bindingTemplate information. Use this to control information about106 * technical capabilities exposed by a registered business."107 *108 * @exception RegistryException;109 */110 BindingDetail saveBinding(String authInfo, BindingTemplate[] bindingArray)
111throws RegistryException;
112113/**114 * "Used to register new businessEntity information or update existing115 * businessEntity information. Use this to control the overall116 * information about the entire business. Of the save_x APIs this one117 * has the broadest effect."118 *119 * @exception RegistryException;120 */121 BusinessDetail saveBusiness(String authInfo, BusinessEntity[] businessArray)
122throws RegistryException;
123124125/**126 * "Used to register or update complete information about a tModel."127 *128 * @exception RegistryException;129 */130 TModelDetail saveTModel(String authInfo, TModel[] tModelArray)
131throws RegistryException;
132133/**134 * "Used to remove an existing bindingTemplate from the bindingTemplates135 * collection that is part of a specified businessService structure."136 *137 * @exception RegistryException;138 */139 DispositionReport deleteBinding(String authInfo, String[] bindingKeyArray)
140throws RegistryException;
141142/**143 * "Used to delete registered businessEntity information from the registry."144 *145 * @exception RegistryException;146 */147 DispositionReport deleteBusiness(String authInfo, String[] businessKeyArray)
148throws RegistryException;
149150/**151 * "Used to delete an existing businessService from the businessServices152 * collection that is part of a specified businessEntity."153 *154 * @exception RegistryException;155 */156 DispositionReport deleteService(String authInfo, String[] serviceKeyArray)
157throws RegistryException;
158159/**160 * "Used to delete registered information about a tModel. If there161 * are any references to a tModel when this call is made, the tModel162 * will be marked deleted instead of being physically removed."163 *164 * @exception RegistryException;165 */166 DispositionReport deleteTModel(String authInfo, String[] tModelKeyArray)
167throws RegistryException;
168169/**170 * @exception RegistryException;171 */172 AssertionStatusReport getAssertionStatusReport(String authInfo, String completionStatus)
173throws RegistryException;
174175/**176 * @exception RegistryException;177 */178 DispositionReport deletePublisherAssertions(String authInfo, PublisherAssertion[] assertionArray)
179throws RegistryException;
180181/**182 * "Used to request an authentication token from an Operator Site.183 * Authentication tokens are required to use all other APIs defined184 * in the publishers API. This server serves as the program's185 * equivalent of a login request."186 *187 * @exception RegistryException;188 */189 AuthToken getAuthToken(String userID,String cred)
190throws RegistryException;
191192/**193 * Used to locate information about one or more businesses. Returns a194 * businessList message that matches the conditions specified.195 *196 * @exception RegistryException;197 */198 BusinessList findBusiness(Name[] nameArray,DiscoveryURLs discoveryURLs,IdentifierBag identifierBag,CategoryBag categoryBag,TModelBag tModelBag,FindQualifiers findQualifiers,int maxRows)
199throws RegistryException;
200201/**202 * "Used to get the full businessEntity information for one or more203 * businesses. Returns a businessDetail message."204 *205 * @exception RegistryException;206 */207 BusinessDetail getBusinessDetail(String businessKey)
208throws RegistryException;
209210/**211 * "Used to get the full businessEntity information for one or more212 * businesses. Returns a businessDetail message."213 *214 * @exception RegistryException;215 */216 BusinessDetail getBusinessDetail(String[] businessKeyVector)
217throws RegistryException;
218219/**220 * @exception RegistryException;221 */222 PublisherAssertions getPublisherAssertions(String authInfo)
223throws RegistryException;
224225/**226 * @exception RegistryException;227 */228 RegisteredInfo getRegisteredInfo(String authInfo)
229throws RegistryException;
230231/**232 * "Used to locate one or more tModel information structures. Returns a233 * tModelList structure."234 *235 * @exception RegistryException;236 */237 TModelList findTModel(String name,CategoryBag categoryBag,IdentifierBag identifierBag,FindQualifiers findQualifiers,int maxRows)
238throws RegistryException;
239240/**241 * "Used to locate specific bindings within a registered242 * businessService. Returns a bindingDetail message."243 *244 * @exception RegistryException245 */246 BindingDetail findBinding(String serviceKey,CategoryBag categoryBag,TModelBag tModelBag,FindQualifiers findQualifiers,int maxRows)
247throws RegistryException;
248249/**250 * "Used to locate specific services within a registered251 * businessEntity. Return a serviceList message." From the252 * XML spec (API, p18) it appears that the name, categoryBag,253 * and tModelBag arguments are mutually exclusive.254 *255 * @exception RegistryException;256 */257 ServiceList findService(String businessKey,Name[] nameArray,CategoryBag categoryBag,TModelBag tModelBag,FindQualifiers findQualifiers,int maxRows)
258throws RegistryException;
259260/**261 * "Used to get full details for a given set of registered tModel262 * data. Returns a tModelDetail message."263 *264 * @exception RegistryException;265 */266 TModelDetail getTModelDetail(String tModelKey)
267throws RegistryException;
268269/**270 * "Used to get full details for a given set of registered tModel271 * data. Returns a tModelDetail message."272 *273 * @exception RegistryException;274 */275 TModelDetail getTModelDetail(String[] tModelKeyArray)
276throws RegistryException;
277278/**279 * "Used to get full details for a given set of registered280 * businessService data. Returns a serviceDetail message."281 *282 * @exception RegistryException;283 */284 ServiceDetail getServiceDetail(String serviceKey)
285throws RegistryException;
286287/**288 * "Used to get full details for a given set of registered289 * businessService data. Returns a serviceDetail message."290 *291 * @exception RegistryException;292 */293 ServiceDetail getServiceDetail(String[] serviceKeyArray)
294throws RegistryException;
295296297 }