001package react4j.annotations;
002
003/**
004 * <p>SortOrder define the orders in which methods are
005 * invoked. These values are intended to be used with the
006 * {@link PreRender} and {@link PostRender} annotations.
007 *
008 * <p>An extension library might define an PreRender method like this:</p>
009 *
010 * <pre>
011 * &#064;PreRender(sortOrder=Interceptor.Priority.LIBRARY_BEFORE+10)
012 * public interface MyExtension {
013 *   &#064;PreRender(sortOrder=Interceptor.Priority.LIBRARY_BEFORE+10)
014 *   void preRenderMyExtension() { ... };
015 *  }
016 * </pre>
017 *
018 * @see PreRender
019 * @see PostRender
020 */
021public class SortOrder
022{
023  private SortOrder()
024  {
025  }  // don't allow instances
026
027  /**
028   * Start of range for early methods defined by extension libraries.
029   */
030  public static final int LIBRARY_BEFORE = 1000;
031  /**
032   * Start of range for methods defined by applications.
033   */
034  public static final int APPLICATION = 2000;
035  /**
036   * Start of range for late methods defined by extension libraries.
037   */
038  public static final int LIBRARY_AFTER = 3000;
039}