KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > mule > util > counters > impl > Number


1 /*
2  * $Id: Number.java 3167 2006-09-22 15:47:04Z holger $
3  * --------------------------------------------------------------------------------------
4  * Copyright (c) MuleSource, Inc. All rights reserved. http://www.mulesource.com
5  *
6  * The software in this package is published under the terms of the MuleSource MPL
7  * license, a copy of which has been included with this distribution in the
8  * LICENSE.txt file.
9  */

10
11 package org.mule.util.counters.impl;
12
13 import org.mule.util.counters.CounterFactory.Type;
14
15 /**
16  * @author <a HREF="mailto:gnt@codehaus.org">Guillaume Nodet</a>
17  * @version $Revision: 3167 $
18  */

19 public class Number extends AbstractCounter
20 {
21
22     private double value = 0.0;
23
24     public Number(String JavaDoc name)
25     {
26         super(name, Type.NUMBER);
27     }
28
29     public synchronized double increment()
30     {
31         this.value++;
32         propagate();
33         return this.value;
34     }
35
36     public synchronized double incrementBy(double value)
37     {
38         this.value += value;
39         propagate();
40         return this.value;
41     }
42
43     public synchronized double decrement()
44     {
45         this.value--;
46         propagate();
47         return this.value;
48     }
49
50     public synchronized void setRawValue(double value)
51     {
52         this.value = value;
53         propagate();
54     }
55
56     public synchronized double nextValue()
57     {
58         return this.value;
59     }
60
61 }
62
Popular Tags