001: package com.jamonapi;
002:
003: import java.util.Date;
004:
005: import com.jamonapi.utils.ToArray;
006:
007: /**
008: * MonitorInt.java
009: *
010: * Created on February 2, 2006, 7:54 PM
011: */
012:
013: interface MonitorInt {
014:
015: public double getTotal();
016:
017: public void setTotal(double value);
018:
019: public double getAvg();
020:
021: public double getMin();
022:
023: public void setMin(double value);
024:
025: public double getMax();
026:
027: public void setMax(double value);
028:
029: public double getHits();
030:
031: public void setHits(double value);
032:
033: public double getStdDev();
034:
035: public void setFirstAccess(Date date);
036:
037: public Date getFirstAccess();
038:
039: public void setLastAccess(Date date);
040:
041: public Date getLastAccess();
042:
043: public double getLastValue();
044:
045: public void setLastValue(double value);
046:
047: /** Start a monitor. This increments the active counter by one. Calling start is not
048: required. If it is called stop should be called too. */
049: public Monitor start();
050:
051: /** Stop a monitor. The decrements the active counter by one. Calling stop is
052: * required if start is called.
053: */
054: public Monitor stop();
055:
056: /** This method adds a value to the monitor (and aggegates statistics on it)
057: */
058: public Monitor add(double value);
059:
060: /** reset all values in the monitor to their defaults */
061: public void reset();
062:
063: /** enable the monitor. If the monitor is enabled all other calls to the monitor
064: * have an action
065: */
066: public void enable();
067:
068: /** Disable the monitor. If a monitor is disabled all other calls to the monitor
069: * are noops.
070: **/
071: public void disable();
072:
073: /** Is the monitor enabled. */
074: public boolean isEnabled();
075:
076: /** Return the Range object associated with this monitor. The range object is a compromise
077: between saving all data or none
078: */
079: public Range getRange();
080:
081: /** Return the label associated with this monitor. */
082: public MonKey getMonKey();
083:
084: public double getActive();
085:
086: public void setActive(double value);
087:
088: public double getMaxActive();
089:
090: public void setMaxActive(double value);
091:
092: public void setTotalActive(double value);
093:
094: public double getAvgActive();
095:
096: public boolean isPrimary();
097:
098: /** Indicate that this a primary Monitor. See www.jamonapi.com for an explanation of primary monitors **/
099: public void setPrimary(boolean isPrimary);
100:
101: // Some jamon 2.4 introduced methods. Mostly listener related.
102: public ListenerType getListenerType(String listenerType);
103:
104: public boolean hasListeners();
105:
106: public void setActivityTracking(boolean trackActivity);
107:
108: public boolean isActivityTracking();
109:
110: public JAMonDetailValue getJAMonDetailRow();
111: }
|