01: /*
02: * Licensed to the Apache Software Foundation (ASF) under one or more
03: * contributor license agreements. See the NOTICE file distributed with
04: * this work for additional information regarding copyright ownership.
05: * The ASF licenses this file to You under the Apache License, Version 2.0
06: * (the "License"); you may not use this file except in compliance with
07: * the License. You may obtain a copy of the License at
08: *
09: * http://www.apache.org/licenses/LICENSE-2.0
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: * $Header:$
18: */
19: package org.apache.beehive.controls.runtime.bean;
20:
21: /**
22: * The ImplInitializer class is an abstract base class that all generated Control
23: * initalization classes will extend. It provides common utilities and supporting code
24: * for initialization, and has a shared package relationship with the base ControlBean
25: * class providing access to internals not available in a more general context.
26: */
27: abstract public class ImplInitializer {
28: /**
29: * Initializes a new ControlImplementation instance associated with the specified bean.
30: */
31: public void initialize(ControlBean bean, Object target) {
32: initServices(bean, target);
33: initControls(bean, target);
34: initEventProxies(bean, target);
35: }
36:
37: /**
38: * Initializes all contextual services required by the target implementation instance.
39: * The default initializer implementation is a noop, but will be overridden by
40: * generated subclasses that contain contextual services.
41: */
42: public void initServices(ControlBean bean, Object target) {
43: };
44:
45: /**
46: * Resets all contextual services on the target implementation instance to null.
47: * The default initializer implementation is a noop, but will be overridden by
48: * generated subclasses that contain contextual services.
49: */
50: public void resetServices(ControlBean bean, Object target) {
51: };
52:
53: /**
54: * Initializes all nested controls required by the target implementation instance.
55: * The default initializer implementation is a noop, but will be overridden by
56: * generated subclasses that contain nested controls
57: */
58: public void initControls(ControlBean bean, Object target) {
59: };
60:
61: /**
62: * Initializes all event proxies required by the target implementation instance.
63: * The default initializer implementation is a noop, but will be overridden by
64: * generated subclasses that contain event proxies
65: */
66: public void initEventProxies(ControlBean bean, Object target) {
67: };
68:
69: /**
70: * Returns the ControlBean event notifier for the specified eventSet
71: */
72: public Object getEventNotifier(ControlBean bean, Class eventSet) {
73: return bean.getEventNotifier(eventSet);
74: }
75: }
|