[jboss-cvs] jboss-seam/src/main/org/jboss/seam/annotations/async ...

Gavin King gavin.king at jboss.com
Mon Jun 25 18:28:50 EDT 2007


  User: gavin   
  Date: 07/06/25 18:28:50

  Added:       src/main/org/jboss/seam/annotations/async        
                        Asynchronous.java Duration.java Expiration.java
                        FinalExpiration.java IntervalBusinessDay.java
                        IntervalCron.java IntervalDuration.java
                        package-info.java
  Log:
  move annotations to subpackages
  
  Revision  Changes    Path
  1.1      date: 2007/06/25 22:28:50;  author: gavin;  state: Exp;jboss-seam/src/main/org/jboss/seam/annotations/async/Asynchronous.java
  
  Index: Asynchronous.java
  ===================================================================
  package org.jboss.seam.annotations.async;
  
  import static java.lang.annotation.ElementType.METHOD;
  import static java.lang.annotation.RetentionPolicy.RUNTIME;
  
  import java.lang.annotation.Documented;
  import java.lang.annotation.Retention;
  import java.lang.annotation.Target;
  
  /**
   * Marks a method as an asynchronous method, to be
   * dispatched by the EJB3 TimerService.
   * 
   * If the method returns Timer, the return value
   * will be the Timer used for dispatching the
   * method call. Otherwise, the method should return
   * void.
   * 
   * Note that asynchronous calls are processed in
   * a different EVENT, SESSION and CONVERSATION
   * context to the caller, so the actual recieving
   * object may be a different instance of the 
   * component to the object that was called.
   * 
   * @author Gavin King
   * 
   * @see org.jboss.seam.annotations.async.Expiration
   * @see org.jboss.seam.annotations.async.Duration
   * @see org.jboss.seam.annotations.async.IntervalDuration
   * 
   */
  @Target(METHOD)
  @Retention(RUNTIME)
  @Documented
  public @interface Asynchronous {}
  
  
  
  1.1      date: 2007/06/25 22:28:50;  author: gavin;  state: Exp;jboss-seam/src/main/org/jboss/seam/annotations/async/Duration.java
  
  Index: Duration.java
  ===================================================================
  package org.jboss.seam.annotations.async;
  
  import static java.lang.annotation.ElementType.PARAMETER;
  import static java.lang.annotation.RetentionPolicy.RUNTIME;
  
  import java.lang.annotation.Documented;
  import java.lang.annotation.Retention;
  import java.lang.annotation.Target;
  
  /**
   * The duration of the wait before an asynchronous 
   * call is processed (or before the first occurrence
   * of a repeating asynchronous call).
   * 
   * This annotation occurs on a parameter of type long
   * or Long of a method marked @Asynchronous.
   * 
   * @author Gavin King
   *
   */
  @Target(PARAMETER)
  @Retention(RUNTIME)
  @Documented
  public @interface Duration
  {
  
  }
  
  
  
  1.1      date: 2007/06/25 22:28:50;  author: gavin;  state: Exp;jboss-seam/src/main/org/jboss/seam/annotations/async/Expiration.java
  
  Index: Expiration.java
  ===================================================================
  package org.jboss.seam.annotations.async;
  
  import static java.lang.annotation.ElementType.PARAMETER;
  import static java.lang.annotation.RetentionPolicy.RUNTIME;
  
  import java.lang.annotation.Documented;
  import java.lang.annotation.Retention;
  import java.lang.annotation.Target;
  
  /**
   * The expiration time at which an asynchronous call may
   * first be processed (or the first occurrence of a repeating 
   * asynchronous call).
   * 
   * This annotation occurs on a parameter of type Date
   * of a method marked @Asynchronous.
   * 
   * @author Gavin King
   *
   */
  @Target(PARAMETER)
  @Retention(RUNTIME)
  @Documented
  public @interface Expiration
  {
  
  }
  
  
  
  1.1      date: 2007/06/25 22:28:50;  author: gavin;  state: Exp;jboss-seam/src/main/org/jboss/seam/annotations/async/FinalExpiration.java
  
  Index: FinalExpiration.java
  ===================================================================
  package org.jboss.seam.annotations.async;
  
  import static java.lang.annotation.ElementType.PARAMETER;
  import static java.lang.annotation.RetentionPolicy.RUNTIME;
  
  import java.lang.annotation.Documented;
  import java.lang.annotation.Retention;
  import java.lang.annotation.Target;
  
  /**
   * The stop date of the repeating asynchronous call.
   * 
   * This a parameter level annotation and it is only
   * available for the Quartz timer.
   * 
   * @author Michael Yuan
   *
   */
  @Target(PARAMETER)
  @Retention(RUNTIME)
  @Documented
  public @interface FinalExpiration
  {
  }
  
  
  
  1.1      date: 2007/06/25 22:28:50;  author: gavin;  state: Exp;jboss-seam/src/main/org/jboss/seam/annotations/async/IntervalBusinessDay.java
  
  Index: IntervalBusinessDay.java
  ===================================================================
  package org.jboss.seam.annotations.async;
  
  import static java.lang.annotation.ElementType.PARAMETER;
  import static java.lang.annotation.RetentionPolicy.RUNTIME;
  
  import java.lang.annotation.Documented;
  import java.lang.annotation.Retention;
  import java.lang.annotation.Target;
  
  /**
   * This annotation occurs on a parameter of type NthBusinessDay
   * of a method marked @Asynchronous. It schedules the asynchronous
   * call to be repeated on the Nth business day based on a calendar
   * specified in NthBusinessDay. It is only available in the Quartz dispatcher.
   * 
   * @author Michael Yuan
   *
   */
  @Target(PARAMETER)
  @Retention(RUNTIME)
  @Documented
  public @interface IntervalBusinessDay {}
  
  
  
  1.1      date: 2007/06/25 22:28:50;  author: gavin;  state: Exp;jboss-seam/src/main/org/jboss/seam/annotations/async/IntervalCron.java
  
  Index: IntervalCron.java
  ===================================================================
  package org.jboss.seam.annotations.async;
  
  import static java.lang.annotation.ElementType.PARAMETER;
  import static java.lang.annotation.RetentionPolicy.RUNTIME;
  
  import java.lang.annotation.Documented;
  import java.lang.annotation.Retention;
  import java.lang.annotation.Target;
  
  /**
   * The unix cron expression to specify the frequency 
   * and other conditions for the repeating asynchronous call
   * to be invoked (after the initial delay specified in Expiration
   * or Duration parameters). If this parameter is set, the 
   * IntervalDuration parameter will have no effect.
   * 
   * This annotation occurs on a parameter of type String
   * of a method marked @Asynchronous.
   * 
   * @author Michael Yuan
   *
   */
  @Target(PARAMETER)
  @Retention(RUNTIME)
  @Documented
  public @interface IntervalCron {}
  
  
  
  1.1      date: 2007/06/25 22:28:50;  author: gavin;  state: Exp;jboss-seam/src/main/org/jboss/seam/annotations/async/IntervalDuration.java
  
  Index: IntervalDuration.java
  ===================================================================
  package org.jboss.seam.annotations.async;
  
  import static java.lang.annotation.ElementType.PARAMETER;
  import static java.lang.annotation.RetentionPolicy.RUNTIME;
  
  import java.lang.annotation.Documented;
  import java.lang.annotation.Retention;
  import java.lang.annotation.Target;
  
  /**
   * The interval between occurrences of a repeating
   * asynchronous call.
   * 
   * This annotation occurs on a parameter of type long
   * or Long of a method marked @Asynchronous.
   * 
   * @author Gavin King
   *
   */
  @Target(PARAMETER)
  @Retention(RUNTIME)
  @Documented
  public @interface IntervalDuration
  {
  
  }
  
  
  
  1.1      date: 2007/06/25 22:28:50;  author: gavin;  state: Exp;jboss-seam/src/main/org/jboss/seam/annotations/async/package-info.java
  
  Index: package-info.java
  ===================================================================
  /**
   * Timer annotations for use with Seam asynchronicity.
   */
  package org.jboss.seam.annotations.async;
  
  
  
  



More information about the jboss-cvs-commits mailing list