1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.apache.myfaces.tobago.internal.lifecycle;
21
22 import org.slf4j.Logger;
23 import org.slf4j.LoggerFactory;
24
25 import javax.faces.lifecycle.Lifecycle;
26 import javax.faces.lifecycle.LifecycleFactory;
27 import java.util.Iterator;
28
29 public class TobagoLifecycleFactory extends LifecycleFactory {
30
31 private static final Logger LOG = LoggerFactory.getLogger(TobagoLifecycleFactory.class);
32
33 private LifecycleFactory factory;
34 private TobagoLifecycle defaultLifecycle;
35
36 public TobagoLifecycleFactory(LifecycleFactory factory) {
37 this.factory = factory;
38 defaultLifecycle = new TobagoLifecycle();
39 if (LOG.isInfoEnabled()) {
40 LOG.info("new TobagoLifecycleFactory");
41 }
42 }
43
44 public void addLifecycle(String lifecycleId, Lifecycle lifecycle) {
45 factory.addLifecycle(lifecycleId, lifecycle);
46 if (LOG.isInfoEnabled()) {
47 LOG.info("Lifecycle added : " + lifecycleId + " = " + lifecycle.getClass().getName() + "");
48 }
49 }
50
51 public Lifecycle getLifecycle(String lifecycleId) {
52 if (LifecycleFactory.DEFAULT_LIFECYCLE.equals(lifecycleId)) {
53 if (LOG.isInfoEnabled()) {
54 LOG.info("getLifecycle(\"" + lifecycleId + "\") -> TobagoLifecycle");
55 }
56 return defaultLifecycle;
57 } else {
58 if (LOG.isInfoEnabled()) {
59 LOG.info("getLifecycle(\"" + lifecycleId + "\") -> other Lifecycle");
60 }
61 return factory.getLifecycle(lifecycleId);
62 }
63 }
64
65 public Iterator getLifecycleIds() {
66 if (LOG.isInfoEnabled()) {
67 LOG.info("getLifecycleIds()");
68 }
69 return factory.getLifecycleIds();
70 }
71 }