package org.openntf.xsp.starter.lifecycle; import java.util.Iterator; import javax.faces.lifecycle.Lifecycle; import org.openntf.xsp.starter.Activator; public class LifecycleFactory extends javax.faces.lifecycle.LifecycleFactory { public static final String STARTER_LIFECYCLE_ID = "StarterLifecycle"; private javax.faces.lifecycle.LifecycleFactory delegate; private final static boolean _debug = Activator._debug; static { if (_debug) System.out.println(LifecycleFactory.class.getName() + " loaded"); } public LifecycleFactory(javax.faces.lifecycle.LifecycleFactory defaultFactory) { delegate = defaultFactory; Lifecycle defaultLifecycle = delegate.getLifecycle(javax.faces.lifecycle.LifecycleFactory.DEFAULT_LIFECYCLE); addLifecycle(STARTER_LIFECYCLE_ID, new org.openntf.xsp.starter.lifecycle.Lifecycle(defaultLifecycle)); if (_debug) System.out.println(getClass().getName() + " created"); } @Override public void addLifecycle(String lifecycleId, Lifecycle lifecycle) { delegate.addLifecycle(lifecycleId, lifecycle); } @Override public Lifecycle getLifecycle(String lifecycleId) { String localId = lifecycleId; if (javax.faces.lifecycle.LifecycleFactory.DEFAULT_LIFECYCLE.equals(lifecycleId)) { localId = STARTER_LIFECYCLE_ID; } return delegate.getLifecycle(localId); } @SuppressWarnings("unchecked") @Override public Iterator<String> getLifecycleIds() { return delegate.getLifecycleIds(); } }