public void findServices() { Console.Out.Write("findServices"); Assert.True(online); find_service fb = new find_service(); fb.name = new name[] { new name(UDDIConstants.WILDCARD, null) }; fb.findQualifiers = new string[] { UDDIConstants.APPROXIMATE_MATCH }; serviceList bl = inquiry.find_service(fb); Assert.NotNull(bl); Assert.NotNull(bl.serviceInfos); Assert.True(bl.serviceInfos.Length > 0); for (int i = 0; i < bl.serviceInfos.Length; i++) { Assert.IsNotNullOrEmpty(bl.serviceInfos[i].businessKey); Assert.IsNotNullOrEmpty(bl.serviceInfos[i].serviceKey); } PrintUDDI <serviceList> p = new PrintUDDI <serviceList>(); if (serialize) { Console.Out.WriteLine(p.print(bl)); } }
public string getServiceUrl(string name) { serviceInfo s = new serviceInfo(); UDDIInquiryService juddi = new UDDIInquiryService(); find_service fs = new find_service(); fs.findQualifiers = new []{"approximateMatch"}; name n = new name(); n.Value = name; n.lang = "en"; fs.name = new []{n}; serviceList services = juddi.find_service(fs); for(int i = 0; i<services.serviceInfos.Count(); i++){ s = services.serviceInfos[i]; } get_serviceDetail sd= new get_serviceDetail(); sd.serviceKey = new string[]{s.serviceKey}; serviceDetail service = juddi.get_serviceDetail(sd); string url = service.businessService[0].bindingTemplates[0].accessPoint.Value; if(checkUrl(url)){ url = url; }else{ url =url; } return url; }
public serviceList find_service(find_service find_service1) { find_serviceRequest inValue = new find_serviceRequest(); inValue.find_service = find_service1; find_serviceResponse retVal = ((Inquire)(this)).find_service(inValue); return(retVal.serviceList); }
/** * this will look up our service by name and we'll discover multiple * bindings with different versions */ private void ServiceLookUpByName() { //here we are assuming we don't know what key is used for the service, so we look it up find_service fs = new find_service(); fs.findQualifiers = new string[] { UDDIConstants.EXACT_MATCH }; fs.name = new name[] { new name("ZeroCool Service", lang) }; serviceList findService = inquiry.find_service(fs); //parse the results and get a list of services to get the details on get_serviceDetail gsd = new get_serviceDetail(); List <string> items = new List <string>(); for (int i = 0; i < findService.serviceInfos.Length; i++) { items.Add(findService.serviceInfos[i].serviceKey); } gsd.serviceKey = items.ToArray(); serviceDetail serviceDetail = inquiry.get_serviceDetail(gsd); List <bindingTemplate> ret = new List <bindingTemplate>(); //parse the service details, looking for our versioned service Boolean success = false; if (serviceDetail != null) { for (int i = 0; i < serviceDetail.businessService.Length; i++) { if (serviceDetail.businessService[i].bindingTemplates != null) { List <bindingTemplate> bindingByVersion = UDDIClerk.getBindingByVersion("1.2.0.0", serviceDetail.businessService[i].bindingTemplates); for (int x = 0; x < bindingByVersion.Count; x++) { success = true; Console.Out.WriteLine("SUCCESS! Found the right version on key " + bindingByVersion[x].bindingKey); //TODO so now that you've found the right version of the right service //now you can go execute that the url } } } } if (!success) { Console.Out.WriteLine("FAIL! We didn't find a damn thing matching that version number :("); } }
private IList <UddiService> GetUddiServices(Identifier organizationIdentifier, UddiId serviceUddiId, string profileConformanceClaim) { keyedReference profileConformanceClaimKeyReference = new keyedReference(); profileConformanceClaimKeyReference.tModelKey = "uddi:cc5f1df6-ae0a-4781-b24a-f30315893af7"; profileConformanceClaimKeyReference.keyName = "http://oio.dk/profiles/OWSA/modelT/1.0/UDDI/Categories/profileConformanceClaim/"; profileConformanceClaimKeyReference.keyValue = profileConformanceClaim; keyedReference registrationConformanceClaim = new keyedReference(); registrationConformanceClaim.tModelKey = "uddi:80496ef5-4d24-4788-a3f8-12fb54a75106"; registrationConformanceClaim.keyName = "http://oio.dk/profiles/OWSA/modelT/1.0/UDDI/Categories/registrationConformanceClaim/"; registrationConformanceClaim.keyValue = RASPREGISTRATIONCONFORMANCECLAIM; keyedReference endpointKeyType = new keyedReference(); endpointKeyType.tModelKey = "uddi:182a4a2b-3717-4283-b97c-55cc3b684dae"; endpointKeyType.keyName = "http://oio.dk/profiles/OIOSI/1.0/UDDI/Categories/endpointKeyType/"; endpointKeyType.keyValue = organizationIdentifier.KeyTypeCode; keyedReference endpointKey = new keyedReference(); endpointKey.tModelKey = "uddi:e733684d-9f40-40ff-8807-1d80abc7c665"; endpointKey.keyName = "http://oio.dk/profiles/OIOSI/1.0/UDDI/Categories/endpointKey/"; endpointKey.keyValue = organizationIdentifier.GetAsString(); keyedReference[] categories = new[] { profileConformanceClaimKeyReference, registrationConformanceClaim, endpointKeyType, endpointKey }; categoryBag serviceCategories = new categoryBag { Items = categories }; find_service findService = new find_service(); findService.findQualifiers = new string[] { FindQualifers.andAllKeys.ToString() }; if (serviceUddiId != null) { findService.tModelBag = new string[] { serviceUddiId.ID }; } findService.categoryBag = serviceCategories; serviceList listOfServices = this.uddiProxy.find_service(findService); List <string> endPointUddiIds = new List <string>(); if (listOfServices.serviceInfos == null) { return(new List <UddiService>()); } foreach (serviceInfo service in listOfServices.serviceInfos) { endPointUddiIds.Add(service.serviceKey); } // Har uddi-ID på service endpoint, skal finde endpoint uri get_serviceDetail getServiceDetail = new get_serviceDetail(); getServiceDetail.serviceKey = endPointUddiIds.ToArray(); serviceDetail detail = this.uddiProxy.get_serviceDetail(getServiceDetail); if (detail.businessService == null) { return(new List <UddiService>()); } IList <UddiService> uddiServices = new List <UddiService>(); foreach (businessService businessServiceItem in detail.businessService) { List <UddiBinding> uddiBindings = new List <UddiBinding>(); foreach (bindingTemplate bindingTemplate in businessServiceItem.bindingTemplates) { List <string> tModelKeys = new List <string>(); foreach (tModelInstanceInfo tModel in bindingTemplate.tModelInstanceDetails) { tModelKeys.Add(tModel.tModelKey); } // Get the tModel details: get_tModelDetail tModelDetail = new get_tModelDetail(); tModelDetail.tModelKey = tModelKeys.ToArray(); tModelDetail modelDetail = this.uddiProxy.get_tModelDetail(tModelDetail); List <tModel> uddiTModels = new List <tModel>(); foreach (tModel tModelItem in modelDetail.tModel) { uddiTModels.Add(tModelItem); } UddiBinding uddiBinding = new UddiBinding(bindingTemplate, uddiTModels); uddiBindings.Add(uddiBinding); } UddiService uddiService = new UddiService(businessServiceItem, uddiBindings); uddiServices.Add(uddiService); } return(uddiServices); }
public find_serviceRequest(find_service find_service) { this.find_service = find_service; }
internal static void Run(string[] args) { UDDIClient clerkManager = null; Transport transport = null; UDDIClerk clerk = null; try { clerkManager = new UDDIClient("uddi.xml"); transport = clerkManager.getTransport("uddiv2"); UDDI_Security_SoapBinding security = transport.getUDDISecurityService(); UDDI_Inquiry_SoapBinding inquiry = transport.getUDDIInquiryService(); UDDI_Publication_SoapBinding publish = transport.getUDDIPublishService(); clerk = clerkManager.getClerk("uddiv2"); find_business fb = new find_business(); //fb.authInfo = clerk.getAuthToken(security.Url); fb.findQualifiers = new string[] { UDDIConstants.APPROXIMATE_MATCH }; fb.name = new name[1]; fb.name[0] = new name(UDDIConstants.WILDCARD, "en"); businessList bl = inquiry.find_business(fb); for (int i = 0; i < bl.businessInfos.Length; i++) { Console.WriteLine(bl.businessInfos[i].name[0].Value); } find_service fs = new find_service(); fs.findQualifiers = new string[] { UDDIConstants.APPROXIMATE_MATCH }; fs.name = new name[1]; fs.name[0] = new name("%", null); serviceList sl = inquiry.find_service(fs); for (int i = 0; i < sl.serviceInfos.Length; i++) { Console.WriteLine(sl.serviceInfos[i].name[0].Value); } find_tModel ft = new find_tModel(); ft.findQualifiers = new string[] { UDDIConstants.APPROXIMATE_MATCH }; ft.name = new name("%", null); tModelList tl = inquiry.find_tModel(ft); for (int i = 0; i < tl.tModelInfos.Length; i++) { Console.WriteLine(tl.tModelInfos[i].name.Value); } // serviceDetail s= clerk.getServiceDetail("uddi:mydomain.com:zerocoolsvc"); // Console.Out.WriteLine(new PrintUDDI<serviceDetail>().print(s)); } catch (Exception ex) { while (ex != null) { System.Console.WriteLine("Error! " + ex.Message); ex = ex.InnerException; } } finally { if (transport != null && transport is IDisposable) { ((IDisposable)transport).Dispose(); } if (clerk != null) { clerk.Dispose(); } } }
/// <remarks/> public void find_serviceAsync(find_service find_service1, object userState) { if ((this.find_serviceOperationCompleted == null)) { this.find_serviceOperationCompleted = new System.Threading.SendOrPostCallback(this.Onfind_serviceOperationCompleted); } this.InvokeAsync("find_service", new object[] { find_service1}, this.find_serviceOperationCompleted, userState); }
/// <remarks/> public void find_serviceAsync(find_service find_service1) { this.find_serviceAsync(find_service1, null); }
/// <remarks/> public System.IAsyncResult Beginfind_service(find_service find_service1, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("find_service", new object[] { find_service1}, callback, asyncState); }