KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > stockonline > util > ResultLog


1 /*
2  * StockOnline: EJB 1.1 Benchmark.
3  *
4  * Copyright © Commonwealth Scientific and Industrial Research Organisation (CSIRO - www.csiro.au), Australia 2001, 2002, 2003.
5  *
6  * Contact: Paul.Brebner@csiro.au
7  *
8  * This library is free software; you can redistribute it and/or modify it
9  * under the terms of the GNU Lesser General Public License as published by
10  * the Free Software Foundation; either version 2.1 of the License, or any
11  * later version.
12  *
13  * This library is distributed in the hope that it will be useful, but WITHOUT
14  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
15  * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
16  * for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public License
19  * along with this library; if not, write to the Free Software Foundation,
20  * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
21  *
22  * Originally developed for the CSIRO Middleware Technology Evaluation (MTE) Project, by
23  * the Software Architectures and Component Technologies Group, CSIRO Mathematical and Information Sciences
24  * Canberra and Sydney, Australia
25  *
26  * www.cmis.csiro.au/sact/
27  * www.cmis.csiro.au/adsat/mte.htm
28  *
29  * Initial developer(s): Shiping Chen, Paul Brebner, Lei Hu, Shuping Ran, Ian Gorton, Anna Liu.
30  * Contributor(s): ______________________.
31  */

32
33
34 //
35
//
36
// History:
37
// 10/08/2001 Shiping Initial coding based on the existing code
38
// 25/10/2001 Shiping Two changes:
39
// 1. Add getTotal for TPS calculation
40
// 2. Remove all synchronized except for add()
41
// for reducing overheads.
42
//
43
//
44

45
46 package stockonline.util;
47
48 public class ResultLog
49 {
50     long total = 0;
51     int count = 0;
52
53     public void addSample(long time)
54     {
55         total += time;
56         count++;
57     }
58
59     synchronized public void add(ResultLog rlog)
60     {
61         total += rlog.total;
62         count += rlog.count;
63     }
64
65     public long getAverage()
66     {
67         return (count == 0) ? 0 : total/count;
68     }
69
70     public long getTotal()
71     {
72         return total;
73     }
74
75     public long getCount()
76     {
77         return count;
78     }
79
80     public static long getCurrentTime()
81     {
82         return System.currentTimeMillis();
83     }
84 }
85
Popular Tags