integration-faces/src/main/java/org/ocpsoft/rewrite/faces/config/PhaseOperation.java
@SuppressWarnings("rawtypes")
   public static PhaseOperation<?> enqueue(final Operation operation, final int priority)
   {
      return new PhaseOperation() {

         @Override
         public int priority()
         {
            return priority;
         }

         @Override
         public void performOperation(HttpServletRewrite event, EvaluationContext context)
         {
            operation.perform(event, context);
         }

         @Override
         public String toString()
         {
            return "PhaseOperation.enqueue(" + operation + ", " + priority + ")";
         }
      };
   }
@SuppressWarnings("rawtypes")
   public static PhaseOperation<?> enqueue(final Operation operation, final int priority)
   {
      return new PhaseOperation() {

         @Override
         public int priority()
         {
            return priority;
         }

         @Override
         public void performOperation(HttpServletRewrite event, EvaluationContext context)
         {
            operation.perform(event, context);
         }

         @Override
         public String toString()
         {
            return "PhaseOperation.enqueue(" + operation + ", " + priority + ")";
         }
      };
   }
Create an {@link Operation} that will enqueue a given {@link Operation} to be performed before or after one or
more JavaServer Faces {@link PhaseId} instances specified via {@link #before(PhaseId...)} or
{@link #after(PhaseId...)}.