01: /*
02: * Licensed to the Apache Software Foundation (ASF) under one
03: * or more contributor license agreements. See the NOTICE file
04: * distributed with this work for additional information
05: * regarding copyright ownership. The ASF licenses this file
06: * to you under the Apache License, Version 2.0 (the
07: * "License"); you may not use this file except in compliance
08: * with the License. You may obtain a copy of the License at
09: *
10: * http://www.apache.org/licenses/LICENSE-2.0
11: *
12: * Unless required by applicable law or agreed to in writing,
13: * software distributed under the License is distributed on an
14: * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15: * KIND, either express or implied. See the License for the
16: * specific language governing permissions and limitations
17: * under the License.
18: */
19: package org.apache.axis2.jaxws.server.endpoint.lifecycle;
20:
21: import org.apache.axis2.jaxws.core.MessageContext;
22: import org.apache.axis2.jaxws.injection.ResourceInjectionException;
23: import org.apache.axis2.jaxws.lifecycle.LifecycleException;
24:
25: /*
26: * EndpointLifecycleManager is responsible to invoke lifycycle methods on Endpoint. An Endpoint could be a
27: * Java Bean Endpoint or Provider Endpoint. Lifecycle manager should be invoked with proper Endpoint Object.
28: */
29:
30: public interface EndpointLifecycleManager {
31:
32: /**
33: * EndpointLifecycleManager will create a service instance. It will inject Resources and then call
34: * the lifecycle methods on the service instance.
35: *
36: * @param mc
37: * @param serviceImplClass
38: * @return
39: */
40: public Object createServiceInstance(MessageContext mc,
41: Class serviceImplClass) throws LifecycleException,
42: ResourceInjectionException;
43:
44: /*
45: * Invokes method on endpoint marked with @PostConstruct annotation.
46: */
47: public void invokePostConstruct() throws LifecycleException;
48:
49: /*
50: * Invokes method on endpoint marked with @preDestroy annotation.
51: */
52: public void invokePreDestroy() throws LifecycleException;
53: }
|