Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Source code: org/media/mn8/util/cron/CronScheduledEntry.java


1   /* 
2    * $COPYRIGHT$
3    * $Id: CronScheduledEntry.java,v 1.1 2002/10/25 20:40:49 atech Exp $
4    *
5    * Date        Author            Changes 
6    * May 16 2002 Antal Attila      Created
7    */
8   
9   
10  package org.media.mn8.util.cron;
11  
12  import org.media.mn8.concepts.SeriesConcept;
13  
14  final class CronScheduledEntry implements Comparable {
15      protected final String   m_name;
16      protected final Trigger  m_trigger;
17      protected final String   m_target;
18  
19      protected long      m_time;
20      protected boolean   m_isValid;
21  
22      private boolean m_isMethod;
23      private SeriesConcept m_params;
24  
25      public CronScheduledEntry( String name, Trigger trigger, String target ) {
26          m_name = name;
27          m_trigger = trigger;
28          m_target = target;
29          m_isValid = true;
30    m_isMethod = false;
31      }
32  
33  
34      public CronScheduledEntry( String name, Trigger trigger,
35               String target, SeriesConcept params ) {
36          m_name = name;
37          m_trigger = trigger;
38          m_target = target;
39          m_isValid = true;
40    m_isMethod = true;
41    m_params = params;
42      }
43  
44  
45      public SeriesConcept getParams() {
46    return m_params;
47      }
48  
49      public boolean isMethod() {
50    return m_isMethod;
51      }
52  
53  
54      /**
55       * Return name of trigger.
56       *
57       * @return the name of trigger
58       */
59      public String getName() {
60          return m_name;
61      }
62  
63      public String getTarget() {
64          return m_target;
65      }
66  
67      public Trigger getTimeTrigger() {
68          return m_trigger;
69      }
70  
71      /**
72       * Determine if this entry is valid
73       *
74       * @return true if trigger is valid, false otherwise
75       */
76      public boolean isValid()
77      {
78          return m_isValid;
79      }
80  
81      /**
82       * Invalidate trigger
83       */
84      public void invalidate() {
85          m_isValid = false;
86      }
87  
88      /**
89       * Retrieve cached time when trigger should run next.
90       *
91       * @return the time in milliseconds when trigger should run
92       */
93      public long getNextTime() {
94          return m_time;
95      }
96  
97      /**
98       * Set cached time in milliseconds when trigger should run
99       *
100      * @param time the time
101      */
102     public void setNextTime( long time ) {
103         m_time = time;
104     }
105 
106     /**
107      * Implement comparable interface used to help sort triggers.
108      * Triggers are compared based on next time to run
109      *
110      * @param object the other trigger
111      * @return -'ve value if other trigger occurs before this trigger
112      */
113     public int compareTo( final Object object ) {
114         final CronScheduledEntry other = (CronScheduledEntry)object;
115         return (int)-(other.m_time - m_time);
116     }
117 
118     public String toString() {
119         return "TimeEntry[ name=" + m_name + " valid=" + m_isValid + " time=" + m_time;
120     }
121 }
122