1 // Copyright (C) 2000, 2001, 2002, 2003 Philip Aston 2 // All rights reserved. 3 // 4 // This file is part of The Grinder software distribution. Refer to 5 // the file LICENSE which is part of The Grinder distribution for 6 // licensing details. The Grinder distribution is available on the 7 // Internet at http://grinder.sourceforge.net/ 8 // 9 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 10 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 11 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 12 // FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 13 // COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 14 // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 15 // (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 16 // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 17 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 18 // STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 19 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 20 // OF THE POSSIBILITY OF SUCH DAMAGE. 21 22 package net.grinder.statistics; 23 24 25 /** 26 * A {@link StatisticExpression} that tracks the peak value of another 27 * {@link StatisticExpression}. The monitored {@link 28 * StatisticExpression} is specified when the {@link 29 * PeakStatisticExpression} is created, see {@link 30 * StatisticExpressionFactoryImplementation}. 31 * 32 * @author Philip Aston 33 * @see StatisticExpressionFactoryImplementation 34 **/ 35 public interface PeakStatisticExpression extends StatisticExpression { 36 /** 37 * When called, the peak value of monitored expression applied to 38 * <code>monitoredStatistics</code> is calculated and stored in the 39 * given <code>peakStorageStatistics</code>. 40 * 41 * @param monitoredStatistics The monitored <code>StatisticsSet</code>. 42 * @param peakStorageStatistics The <code>StatisticsSet</code> in 43 * which to store the result. 44 */ 45 void update(StatisticsSet monitoredStatistics, 46 StatisticsSet peakStorageStatistics); 47 }