blob: f5b502725018fbe116f4d91e41abdd552dec0f76 [file] [log] [blame]
/*
* Copyright 2001-2013 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*/
using org.apache.juddi.v3.client;
using org.apache.juddi.v3.client.annotations;
using org.apache.juddi.v3.client.config;
using org.apache.juddi.v3.client.transport;
using org.uddi.apiv3;
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading;
namespace AspnetServiceLifeCycle
{
class Program
{
static void Main(string[] args)
{
//Normally, this code snippet would be executed by some kind of web service life cycle listener
//such as global.asax
//a web service contructor
Type t = typeof(HelloImpl);
Console.Out.WriteLine(t.AssemblyQualifiedName);
UDDIClient clerkManager = null;
Transport transport = null;
UDDIClerk clerk = null;
clerkManager = new UDDIClient("uddi.xml");
transport = clerkManager.getTransport("default");
org.uddi.apiv3.UDDI_Security_SoapBinding security = transport.getUDDISecurityService();
org.uddi.apiv3.UDDI_Inquiry_SoapBinding inquiry = transport.getUDDIInquiryService ();
clerk = clerkManager.getClerk("default");
clerkManager.registerAnnotatedServices();
HelloImpl x = new HelloImpl();
//this is more of an "onShutdown" event
clerkManager.unRegisterAnnotatedServices();
Thread.Sleep(15000);
}
}
[UDDIService(businessKey = "uddi:juddi.apache.org:businesses-asf", description = "My custom service via annotations",
serviceName = "HelloImpl, such a cool name", lang = "en", serviceKey = "uddi:juddi.apache.org:services-customHelloImpl")]
[UDDIServiceBinding(accessPoint="http://localhost/here", accessPointType="endPoint")]
class HelloImpl : IHello_Binding
{
public string sayHello(string firstName)
{
return "hi";
}
}
}