001: /**
002: * The XMOJO Project 5
003: * Copyright © 2003 XMOJO.org. All rights reserved.
004:
005: * NO WARRANTY
006:
007: * BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR
008: * THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
009: * OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
010: * PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
011: * OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
012: * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
013: * TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE
014: * LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
015: * REPAIR OR CORRECTION.
016:
017: * IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL
018: * ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE
019: * THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
020: * GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
021: * USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF
022: * DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
023: * PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE),
024: * EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
025: * SUCH DAMAGES.
026: **/package javax.management.monitor;
027:
028: /**
029: * Exposes the remote management interface of the gauge monitor MBean.
030: */
031: public abstract interface GaugeMonitorMBean extends MonitorMBean {
032: /**
033: * This method gets the value of the derived gauge. The derived gauge is
034: * either the exact value of the observed attribute , or the difference
035: * between the two consecutive observed values of the attribute.
036: *
037: * @return An instance of java.lang.Number giving the value of the derived gauge.
038: */
039:
040: public Number getDerivedGauge();
041:
042: /**
043: * This method gets the value of the derived gauge time stamp.The derived
044: * gauge time stamp is the value(in the nearest miliseconds) when the
045: * notification was triggered.
046: *
047: * @return long value representing the time the notification was triggered.
048: */
049: public long getDerivedGaugeTimeStamp();
050:
051: /**
052: * This method gets the value of the difference mode. If the difference
053: * mode is true, the difference mode option is set to calculate the value
054: * of the derived gauge.
055: *
056: * @return boolean value indicating whether the difference mode option is set.
057: */
058: public boolean getDifferenceMode();
059:
060: /**
061: * This method sets the state of the difference mode.
062: *
063: * @param value boolean value representing the state of the difference mode.
064: */
065: public void setDifferenceMode(boolean value);
066:
067: /**
068: * This method gets the value of the high threshold.
069: *
070: * @return An instance of java.lang.Number giving the value of the high threshold.
071: */
072: public Number getHighThreshold();
073:
074: /**
075: * This method gets the value of the low threshold.
076: *
077: * @return An instance of java.lang.Number giving the value of the low threshold.
078: */
079: public Number getLowThreshold();
080:
081: /**
082: * This method sets the high threshold and low threshold values.
083: *
084: * @param highValue - The high threshold value.
085: *
086: * @param lowValue - The low threshold value.
087: *
088: * @exception java.lang.IllegalArgumentException - The specified high/low
089: * threshold is null or the low threshold is greater than the
090: * high threshold or the high threshold and the low threshold
091: * are not of the same type.
092: */
093: public void setThresholds(Number highvalue, Number lowValue)
094: throws IllegalArgumentException;
095:
096: /**
097: * This method gets the high notification's on/off switch value.
098: *
099: * @return true if the gauge monitor notifies when exceeding the high
100: * threshold, false otherwise.
101: */
102: public boolean getNotifyHigh();
103:
104: /**
105: * This method sets the high notification's on/off switch value.
106: *
107: * @param value - The high notification's on/off switch value.
108: */
109: public void setNotifyHigh(boolean value);
110:
111: /**
112: * This method gets the low notification's on/off switch value.
113: *
114: * @return true if the gauge monitor notifies when exceeding the low
115: * threshold, false otherwise.
116: */
117: public boolean getNotifyLow();
118:
119: /**
120: * This method sets the low notification's on/off switch value.
121: *
122: * @param value - The low notification's on/off switch value.
123: */
124: public void setNotifyLow(boolean value);
125: }
|