📄 functionstats.java
字号:
/* * @(#)$Id: FunctionStats.java,v 1.4 2004/07/02 23:59:21 huebsch Exp $ * * Copyright (c) 2001-2004 Regents of the University of California. * All rights reserved. * * This file is distributed under the terms in the attached BERKELEY-LICENSE * file. If you do not find these files, copies can be found by writing to: * Computer Science Division, Database Group, Universite of California, * 617 Soda Hall #1776, Berkeley, CA 94720-1776. Attention: Berkeley License * * Copyright (c) 2003-2004 Intel Corporation. All rights reserved. * * This file is distributed under the terms in the attached INTEL-LICENSE file. * If you do not find these files, copies can be found by writing to: * Intel Research Berkeley, 2150 Shattuck Avenue, Suite 1300, * Berkeley, CA, 94704. Attention: Intel License Inquiry. */package pier.helpers.functions;import services.stats.BasicDoubleCounter;import services.stats.BasicDoubleResponse;import services.stats.StatCollector;/** * Class FunctionEnvvar * */public class FunctionStats implements Function { /** * Method evaluate * * @param parameters * @return */ public Object evaluate(Object[] parameters) { int params = parameters.length; if (params == 4) { int category; int user; int service; try { category = ((Integer) parameters[0]).intValue(); user = ((Integer) parameters[1]).intValue(); service = ((Integer) parameters[2]).intValue(); } catch (Exception exception) { return null; } Object statObject; try { statObject = StatCollector.getStatsObject(category, user, service); } catch (Exception exception) { return null; } if (statObject instanceof BasicDoubleCounter) { if (parameters[3].toString().equalsIgnoreCase("COUNT")) { return new Long( ((BasicDoubleCounter) statObject).getCount()); } if (parameters[3].toString().equalsIgnoreCase("SUM")) { return new Double( ((BasicDoubleCounter) statObject).getSum()); } if (parameters[3].toString().equalsIgnoreCase("MIN")) { return new Double( ((BasicDoubleCounter) statObject).getMin()); } if (parameters[3].toString().equalsIgnoreCase("MAX")) { return new Double( ((BasicDoubleCounter) statObject).getMax()); } if (parameters[3].toString().equalsIgnoreCase("AVG")) { return new Double( ((BasicDoubleCounter) statObject).getAvg()); } } if (statObject instanceof BasicDoubleResponse) { if (parameters[3].toString().equalsIgnoreCase("COUNT")) { return new Long( ((BasicDoubleResponse) statObject).getCount()); } if (parameters[3].toString().equalsIgnoreCase("FIRST")) { return new Double( ((BasicDoubleResponse) statObject).getFirst()); } if (parameters[3].toString().equalsIgnoreCase("LAST")) { return new Double( ((BasicDoubleResponse) statObject).getLast()); } if (parameters[3].toString().equalsIgnoreCase("XTH")) { return new Double( ((BasicDoubleResponse) statObject).getXth()); } } return null; } else { return null; } } /** * Method cacheable * @return */ public boolean cacheable() { return false; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -