com.sun.enterprise.admin.monitor.stats
Class MutableCountStatisticImpl
java.lang.Object
com.sun.enterprise.admin.monitor.stats.MutableCountStatisticImpl
- All Implemented Interfaces:
- MutableCountStatistic, MutableStatistic, Serializable, CountStatistic, Statistic
public class MutableCountStatisticImpl
- extends Object
- implements CountStatistic, MutableCountStatistic
An implementation of MutableCountStatistic that provides ways to change the state externally through mutators.
Convenience class that is useful for components that gather the statistical data.
- Since:
- S1AS8.0
- Version:
- 1.0
- Author:
- Kedar Mhaswade
- See Also:
for an immutable implementation,
Serialized Form
|
Method Summary |
long |
getCount()
The count since the last reset. |
String |
getDescription()
A human-readable description of the Statistic. |
long |
getLastSampleTime()
The time of the last measurement represented as a long, whose value is the number of milliseconds since January 1, 1970, 00:00:00. |
String |
getName()
The name of this Statistic. |
long |
getStartTime()
The time of the first measurement represented as a long, whose value is the number of milliseconds since January 1, 1970, 00:00:00. |
String |
getUnit()
The unit of measurement for this Statistic. |
Statistic |
modifiableView()
Returns an instance of Statistic whose state can be changed by the caller. |
void |
reset()
Resets to the initial state. |
void |
setCount(long count)
Changes the value of the encapsulated CountStatistic to the given value. |
void |
setDescription(String s)
|
Statistic |
unmodifiableView()
This method is the essence of this class. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
MutableCountStatisticImpl
public MutableCountStatisticImpl(CountStatistic initial)
- Constructs an instance of MutableCountStatistic that encapsulates the given Statistic.
The only parameter denotes the initial state of this statistic. It is
guaranteed that the initial state is preserved internally, so that one
can reset to the initial state.
- Parameters:
initial - an instance of CountStatistic that represents initial state
reset
public void reset()
- Resets to the initial state. It is guaranteed that following changes occur
to the statistic if this method is called:
- The current value is reset to its initial value.
- The lastSampleTime is reset to current time in milliseconds.
- The startTime is reset to lastSampleTime.
The remaining meta data in the statistic is unchanged.
- Specified by:
reset in interface MutableStatistic
setCount
public void setCount(long count)
- Changes the value of the encapsulated CountStatistic to the given value.
Since this is the only mutator exposed here, here are the other side effects
of calling this method:
- lastSampleTime is set to current time in milliseconds.
In a real-time system with actual probes for measurement, the lastSampleTime
could be different from the instant when this method is called, but that is deemed insignificant.
- Specified by:
setCount in interface MutableCountStatistic
- Parameters:
count - long that represents the current value of the Statistic.
unmodifiableView
public Statistic unmodifiableView()
- This method is the essence of this class. It provides the read-only view of encapsulated
Statistic. If the clients have to know the Statistic, this is what should
be called by actual data collecting component to return the value to them.
The principle advantage is from the data collecting component's standpoint, in
that it does not have to create instances of CountStatistic when its
current value is queried/measured.
- Specified by:
unmodifiableView in interface MutableStatistic
- Returns:
- instance of CountStatistic
- See Also:
reset(),
setCount(long)
getLastSampleTime
public long getLastSampleTime()
- Description copied from interface:
Statistic
- The time of the last measurement represented as a long, whose value is the number of milliseconds since January 1, 1970, 00:00:00.
- Specified by:
getLastSampleTime in interface Statistic
getStartTime
public long getStartTime()
- Description copied from interface:
Statistic
- The time of the first measurement represented as a long, whose value is the number of milliseconds since January 1, 1970, 00:00:00.
- Specified by:
getStartTime in interface Statistic
getName
public String getName()
- Description copied from interface:
Statistic
- The name of this Statistic.
- Specified by:
getName in interface Statistic
getDescription
public String getDescription()
- Description copied from interface:
Statistic
- A human-readable description of the Statistic.
- Specified by:
getDescription in interface Statistic
getUnit
public String getUnit()
- Description copied from interface:
Statistic
- The unit of measurement for this Statistic.
Valid values for TimeStatistic measurements are "HOUR", "MINUTE", "SECOND", "MILLISECOND", "MICROSECOND" and "NANOSECOND".
- Specified by:
getUnit in interface Statistic
modifiableView
public Statistic modifiableView()
- Description copied from interface:
MutableStatistic
- Returns an instance of Statistic whose state can be changed by the caller. It is important
to know that caller should not cache the return value from this method. In general, there
is a problem in this contract in that, a client would not know from a Stats.getCreateCount()
method whether the return value is something that is being modified or is invariant. Hence
the caller should not cache the returned value in a collection and then collectively
process it. The main idea behind providing this method is to control the
number of instances created (per Mahesh's Suggestion).
- Specified by:
modifiableView in interface MutableStatistic
- Returns:
- an instance of Statistic interface that should not be cached.
getCount
public long getCount()
- Description copied from interface:
CountStatistic
- The count since the last reset.
- Specified by:
getCount in interface CountStatistic
setDescription
public void setDescription(String s)
Copyright © 2012. All Rights Reserved.