View Javadoc

1   package org.apache.myfaces.custom.ppr;
2   
3   import javax.faces.lifecycle.LifecycleFactory;
4   import javax.faces.lifecycle.Lifecycle;
5   import java.util.Iterator;
6   
7   /**
8    * A LifecycleFactory which just decorates the lifecycle passed in to the constructor to
9    * allow interception on ppr requests.
10   */
11  public class PPRLifecycleFactory extends LifecycleFactory
12  {
13      private final LifecycleFactory delegate;
14  
15      private final PPRLifecycleWrapper pprLifecycle;
16  
17      public PPRLifecycleFactory(LifecycleFactory delegate)
18      {
19          this.delegate = delegate;
20  
21          pprLifecycle = new PPRLifecycleWrapper(this.delegate.getLifecycle(LifecycleFactory.DEFAULT_LIFECYCLE));
22      }
23      
24      public void addLifecycle(String lifecycleId, Lifecycle lifecycle)
25      {
26          this.delegate.addLifecycle(lifecycleId, lifecycle);
27      }
28  
29      public Lifecycle getLifecycle(String lifecycleId)
30      {
31          if (LifecycleFactory.DEFAULT_LIFECYCLE.equals(lifecycleId))
32          {
33              return pprLifecycle;
34          }
35  
36          return this.delegate.getLifecycle(lifecycleId);
37      }
38  
39      public Iterator getLifecycleIds()
40      {
41          return this.delegate.getLifecycleIds();
42      }
43  }