01: /*
02: * $Header: /cvsroot/mvnforum/myvietnam/src/net/myvietnam/mvncore/util/TimerTaskAbstract.java,v 1.2 2007/05/23 12:27:56 minhnn Exp $
03: * $Author: minhnn $
04: * $Revision: 1.2 $
05: * $Date: 2007/05/23 12:27:56 $
06: *
07: * ====================================================================
08: *
09: * Copyright (C) 2002-2007 by MyVietnam.net
10: *
11: * All copyright notices regarding MyVietnam and MyVietnam CoreLib
12: * MUST remain intact in the scripts and source code.
13: *
14: * This library is free software; you can redistribute it and/or
15: * modify it under the terms of the GNU Lesser General Public
16: * License as published by the Free Software Foundation; either
17: * version 2.1 of the License, or (at your option) any later version.
18: *
19: * This library is distributed in the hope that it will be useful,
20: * but WITHOUT ANY WARRANTY; without even the implied warranty of
21: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
22: * Lesser General Public License for more details.
23: *
24: * You should have received a copy of the GNU Lesser General Public
25: * License along with this library; if not, write to the Free Software
26: * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
27: *
28: * Correspondence and Marketing Questions can be sent to:
29: * info at MyVietnam net
30: *
31: * @author: Phuong, Pham Dinh Duy
32: */
33: package net.myvietnam.mvncore.util;
34:
35: import java.util.Date;
36: import java.util.TimerTask;
37:
38: public abstract class TimerTaskAbstract extends TimerTask {
39:
40: protected boolean scheduled = false;
41:
42: public synchronized void schedule(Date firstTime, long period) {
43: if (scheduled == false) {
44: scheduled = true;
45: TimerUtil.getInstance().schedule(this , firstTime, period);
46: }
47: }
48:
49: public synchronized void schedule(Date time) {
50: if (scheduled == false) {
51: scheduled = true;
52: TimerUtil.getInstance().schedule(this , time);
53: }
54: }
55:
56: public synchronized void schedule(long delay) {
57: if (scheduled == false) {
58: scheduled = true;
59: TimerUtil.getInstance().schedule(this , delay);
60: }
61: }
62:
63: public synchronized void schedule(long delay, long period) {
64: if (scheduled == false) {
65: scheduled = true;
66: TimerUtil.getInstance().schedule(this , delay, period);
67: }
68: }
69:
70: public synchronized void scheduleAtFixedRate(Date firstTime,
71: long period) {
72: if (scheduled == false) {
73: scheduled = true;
74: TimerUtil.getInstance().schedule(this , firstTime, period);
75: }
76: }
77:
78: public synchronized void scheduleAtFixedRate(long delay, long period) {
79: if (scheduled == false) {
80: scheduled = true;
81: TimerUtil.getInstance().schedule(this, delay, period);
82: }
83: }
84:
85: }
|