本文整理汇总了Java中com.espertech.esper.epl.spec.OutputLimitSpec.getVariableName方法的典型用法代码示例。如果您正苦于以下问题:Java OutputLimitSpec.getVariableName方法的具体用法?Java OutputLimitSpec.getVariableName怎么用?Java OutputLimitSpec.getVariableName使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.espertech.esper.epl.spec.OutputLimitSpec
的用法示例。
在下文中一共展示了OutputLimitSpec.getVariableName方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: createConditionFactory
import com.espertech.esper.epl.spec.OutputLimitSpec; //导入方法依赖的package包/类
public static OutputConditionPolledFactory createConditionFactory(OutputLimitSpec outputLimitSpec,
StatementContext statementContext)
throws ExprValidationException {
if (outputLimitSpec == null) {
throw new NullPointerException("Output condition by count requires a non-null callback");
}
// check variable use
VariableMetaData variableMetaData = null;
if (outputLimitSpec.getVariableName() != null) {
variableMetaData = statementContext.getVariableService().getVariableMetaData(outputLimitSpec.getVariableName());
if (variableMetaData == null) {
throw new IllegalArgumentException("Variable named '" + outputLimitSpec.getVariableName() + "' has not been declared");
}
}
if (outputLimitSpec.getRateType() == OutputLimitRateType.CRONTAB) {
return new OutputConditionPolledCrontabFactory(outputLimitSpec.getCrontabAtSchedule(), statementContext);
} else if (outputLimitSpec.getRateType() == OutputLimitRateType.WHEN_EXPRESSION) {
return new OutputConditionPolledExpressionFactory(outputLimitSpec.getWhenExpressionNode(), outputLimitSpec.getThenExpressions(), statementContext);
} else if (outputLimitSpec.getRateType() == OutputLimitRateType.EVENTS) {
int rate = -1;
if (outputLimitSpec.getRate() != null) {
rate = outputLimitSpec.getRate().intValue();
}
return new OutputConditionPolledCountFactory(rate, statementContext, outputLimitSpec.getVariableName());
} else {
if (variableMetaData != null && (!JavaClassHelper.isNumeric(variableMetaData.getType()))) {
throw new IllegalArgumentException("Variable named '" + outputLimitSpec.getVariableName() + "' must be of numeric type");
}
return new OutputConditionPolledTimeFactory(outputLimitSpec.getTimePeriodExpr(), statementContext);
}
}
示例2: OutputConditionFirstFactory
import com.espertech.esper.epl.spec.OutputLimitSpec; //导入方法依赖的package包/类
public OutputConditionFirstFactory(OutputLimitSpec outputLimitSpec, StatementContext statementContext, boolean isGrouped, boolean isWithHavingClause, ResultSetProcessorHelperFactory resultSetProcessorHelperFactory)
throws ExprValidationException {
OutputLimitSpec innerSpec = new OutputLimitSpec(outputLimitSpec.getRate(), outputLimitSpec.getVariableName(), outputLimitSpec.getRateType(), OutputLimitLimitType.DEFAULT, outputLimitSpec.getWhenExpressionNode(), outputLimitSpec.getThenExpressions(), outputLimitSpec.getCrontabAtSchedule(), outputLimitSpec.getTimePeriodExpr(), outputLimitSpec.getAfterTimePeriodExpr(), outputLimitSpec.getAfterNumberOfEvents(), outputLimitSpec.isAndAfterTerminate(), outputLimitSpec.getAndAfterTerminateExpr(), outputLimitSpec.getAndAfterTerminateThenExpressions());
this.innerConditionFactory = OutputConditionFactoryFactory.createCondition(innerSpec, statementContext, isGrouped, isWithHavingClause, false, resultSetProcessorHelperFactory);
}
示例3: createCondition
import com.espertech.esper.epl.spec.OutputLimitSpec; //导入方法依赖的package包/类
public static OutputConditionFactory createCondition(OutputLimitSpec outputLimitSpec,
StatementContext statementContext,
boolean isGrouped,
boolean isWithHavingClause,
boolean isStartConditionOnCreation,
ResultSetProcessorHelperFactory resultSetProcessorHelperFactory)
throws ExprValidationException {
if (outputLimitSpec == null) {
return new OutputConditionNullFactory();
}
// Check if a variable is present
VariableMetaData variableMetaData = null;
if (outputLimitSpec.getVariableName() != null) {
variableMetaData = statementContext.getVariableService().getVariableMetaData(outputLimitSpec.getVariableName());
if (variableMetaData == null) {
throw new ExprValidationException("Variable named '" + outputLimitSpec.getVariableName() + "' has not been declared");
}
String message = VariableServiceUtil.checkVariableContextName(statementContext.getContextDescriptor(), variableMetaData);
if (message != null) {
throw new ExprValidationException(message);
}
}
if (outputLimitSpec.getDisplayLimit() == OutputLimitLimitType.FIRST && isGrouped) {
return new OutputConditionNullFactory();
}
if (outputLimitSpec.getRateType() == OutputLimitRateType.CRONTAB) {
return resultSetProcessorHelperFactory.makeOutputConditionCrontab(outputLimitSpec.getCrontabAtSchedule(), statementContext, isStartConditionOnCreation);
} else if (outputLimitSpec.getRateType() == OutputLimitRateType.WHEN_EXPRESSION) {
return resultSetProcessorHelperFactory.makeOutputConditionExpression(outputLimitSpec.getWhenExpressionNode(), outputLimitSpec.getThenExpressions(), statementContext, outputLimitSpec.getAndAfterTerminateExpr(), outputLimitSpec.getAndAfterTerminateThenExpressions(), isStartConditionOnCreation);
} else if (outputLimitSpec.getRateType() == OutputLimitRateType.EVENTS) {
if (log.isDebugEnabled()) {
log.debug(".createCondition creating OutputConditionCount with event rate " + outputLimitSpec);
}
if ((variableMetaData != null) && (!JavaClassHelper.isNumericNonFP(variableMetaData.getType()))) {
throw new IllegalArgumentException("Variable named '" + outputLimitSpec.getVariableName() + "' must be type integer, long or short");
}
int rate = -1;
if (outputLimitSpec.getRate() != null) {
rate = outputLimitSpec.getRate().intValue();
}
return resultSetProcessorHelperFactory.makeOutputConditionCount(rate, variableMetaData, statementContext);
} else if (outputLimitSpec.getRateType() == OutputLimitRateType.TERM) {
if (outputLimitSpec.getAndAfterTerminateExpr() == null && (outputLimitSpec.getAndAfterTerminateThenExpressions() == null || outputLimitSpec.getAndAfterTerminateThenExpressions().isEmpty())) {
return new OutputConditionTermFactory();
} else {
return resultSetProcessorHelperFactory.makeOutputConditionExpression(new ExprConstantNodeImpl(false), Collections.<OnTriggerSetAssignment>emptyList(), statementContext, outputLimitSpec.getAndAfterTerminateExpr(), outputLimitSpec.getAndAfterTerminateThenExpressions(), isStartConditionOnCreation);
}
} else {
if (log.isDebugEnabled()) {
log.debug(".createCondition creating OutputConditionTime with interval length " + outputLimitSpec.getRate());
}
if ((variableMetaData != null) && (!JavaClassHelper.isNumeric(variableMetaData.getType()))) {
throw new IllegalArgumentException("Variable named '" + outputLimitSpec.getVariableName() + "' must be of numeric type");
}
return resultSetProcessorHelperFactory.makeOutputConditionTime(outputLimitSpec.getTimePeriodExpr(), isStartConditionOnCreation);
}
}
示例4: OutputConditionFirstFactory
import com.espertech.esper.epl.spec.OutputLimitSpec; //导入方法依赖的package包/类
public OutputConditionFirstFactory(OutputLimitSpec outputLimitSpec, StatementContext statementContext, boolean isGrouped, boolean isWithHavingClause)
throws ExprValidationException
{
OutputLimitSpec innerSpec = new OutputLimitSpec(outputLimitSpec.getRate(), outputLimitSpec.getVariableName(), outputLimitSpec.getRateType(), OutputLimitLimitType.DEFAULT, outputLimitSpec.getWhenExpressionNode(), outputLimitSpec.getThenExpressions(), outputLimitSpec.getCrontabAtSchedule(), outputLimitSpec.getTimePeriodExpr(), outputLimitSpec.getAfterTimePeriodExpr(), outputLimitSpec.getAfterNumberOfEvents(), outputLimitSpec.isAndAfterTerminate(), outputLimitSpec.getAndAfterTerminateExpr(), outputLimitSpec.getAndAfterTerminateThenExpressions());
this.innerConditionFactory = OutputConditionFactoryFactory.createCondition(innerSpec, statementContext, isGrouped, isWithHavingClause);
}
示例5: createCondition
import com.espertech.esper.epl.spec.OutputLimitSpec; //导入方法依赖的package包/类
/**
* Creates an output condition instance.
* @param outputLimitSpec specifies what kind of condition to create
* @return instance for handling output condition
*/
public static OutputConditionPolled createCondition(OutputLimitSpec outputLimitSpec,
AgentInstanceContext agentInstanceContext)
throws ExprValidationException
{
if(outputLimitSpec == null)
{
throw new NullPointerException("Output condition by count requires a non-null callback");
}
// Check if a variable is present
VariableReader reader = null;
if (outputLimitSpec.getVariableName() != null)
{
reader = agentInstanceContext.getStatementContext().getVariableService().getReader(outputLimitSpec.getVariableName());
if (reader == null)
{
throw new IllegalArgumentException("Variable named '" + outputLimitSpec.getVariableName() + "' has not been declared");
}
}
if(outputLimitSpec.getRateType() == OutputLimitRateType.CRONTAB)
{
return new OutputConditionPolledCrontab(outputLimitSpec.getCrontabAtSchedule(), agentInstanceContext);
}
else if(outputLimitSpec.getRateType() == OutputLimitRateType.WHEN_EXPRESSION)
{
return new OutputConditionPolledExpression(outputLimitSpec.getWhenExpressionNode(), outputLimitSpec.getThenExpressions(), agentInstanceContext);
}
else if(outputLimitSpec.getRateType() == OutputLimitRateType.EVENTS)
{
if (log.isDebugEnabled())
{
log.debug(".createCondition creating OutputConditionCount with event rate " + outputLimitSpec);
}
if ((reader != null) && (!JavaClassHelper.isNumericNonFP(reader.getType())))
{
throw new IllegalArgumentException("Variable named '" + outputLimitSpec.getVariableName() + "' must be type integer, long or short");
}
int rate = -1;
if (outputLimitSpec.getRate() != null)
{
rate = outputLimitSpec.getRate().intValue();
}
return new OutputConditionPolledCount(rate, reader);
}
else
{
if ((reader != null) && (!JavaClassHelper.isNumeric(reader.getType())))
{
throw new IllegalArgumentException("Variable named '" + outputLimitSpec.getVariableName() + "' must be of numeric type");
}
return new OutputConditionPolledTime(outputLimitSpec.getTimePeriodExpr(), agentInstanceContext);
}
}