1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 package org.apache.myfaces.orchestra.viewController;
22
23 import org.apache.myfaces.orchestra.frameworkAdapter.FrameworkAdapter;
24
25 /***
26 * @see org.apache.myfaces.orchestra.viewController.ViewControllerManager
27 */
28 public abstract class AbstractViewControllerManager implements ViewControllerManager
29 {
30 protected abstract ViewControllerNameMapper getViewControllerNameMapper();
31 protected abstract ViewControllerExecutor getViewControllerExecutor();
32
33 public String getViewControllerName(String viewId)
34 {
35 ViewControllerNameMapper nameMapper = getViewControllerNameMapper();
36 return nameMapper.mapViewId(viewId);
37 }
38
39 public Object getViewController(String viewId)
40 {
41 String beanName = getViewControllerName(viewId);
42 if (beanName == null)
43 {
44 return null;
45 }
46
47 return FrameworkAdapter.getCurrentInstance().getBean(beanName);
48 }
49
50 public void assertConversationState(String viewId)
51 {
52 }
53
54 public void executeInitView(String viewId)
55 {
56 String beanName = getViewControllerNameMapper().mapViewId(viewId);
57 Object viewController = getViewController(viewId);
58 if (viewController != null)
59 {
60 getViewControllerExecutor().invokeInitView(beanName, viewController);
61 }
62 }
63
64 public void executePreProcess(String viewId)
65 {
66 String beanName = getViewControllerNameMapper().mapViewId(viewId);
67 Object viewController = getViewController(viewId);
68 if (viewController != null)
69 {
70 getViewControllerExecutor().invokePreProcess(beanName, viewController);
71 }
72 }
73
74 public void executePreRenderView(String viewId)
75 {
76 String beanName = getViewControllerNameMapper().mapViewId(viewId);
77 Object viewController = getViewController(viewId);
78 if (viewController != null)
79 {
80 getViewControllerExecutor().invokePreRenderView(beanName, viewController);
81 }
82 }
83 }