01: /*
02: * Copyright 2005-2006 The Kuali Foundation.
03: *
04: *
05: * Licensed under the Educational Community License, Version 1.0 (the "License");
06: * you may not use this file except in compliance with the License.
07: * You may obtain a copy of the License at
08: *
09: * http://www.opensource.org/licenses/ecl1.php
10: *
11: * Unless required by applicable law or agreed to in writing, software
12: * distributed under the License is distributed on an "AS IS" BASIS,
13: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14: * See the License for the specific language governing permissions and
15: * limitations under the License.
16: */
17: package org.kuali.rice.lifecycle;
18:
19: import javax.xml.namespace.QName;
20:
21: import org.kuali.rice.resourceloader.GlobalResourceLoader;
22:
23: /**
24: * A lifecycle that wraps a service. This fetches and calls a lifecycle available
25: * in the GRL and calls lifecycle methods on that.
26: *
27: * @author Kuali Rice Team (kuali-rice@googlegroups.com)
28: */
29: public class ServiceDelegatingLifecycle extends BaseLifecycle {
30:
31: private QName serviceName;
32:
33: public ServiceDelegatingLifecycle(QName serviceName) {
34: this .serviceName = serviceName;
35: }
36:
37: public ServiceDelegatingLifecycle(String serviceName) {
38: this (new QName(serviceName));
39: }
40:
41: public void start() throws Exception {
42: ((Lifecycle) GlobalResourceLoader.getService(this .serviceName))
43: .start();
44: super .start();
45: }
46:
47: public void stop() throws Exception {
48: ((Lifecycle) GlobalResourceLoader.getService(this.serviceName))
49: .stop();
50: super.stop();
51: }
52:
53: }
|