当前位置: 首页>>代码示例>>Java>>正文


Java OutputLimitSpec.getTimePeriodExpr方法代码示例

本文整理汇总了Java中com.espertech.esper.epl.spec.OutputLimitSpec.getTimePeriodExpr方法的典型用法代码示例。如果您正苦于以下问题:Java OutputLimitSpec.getTimePeriodExpr方法的具体用法?Java OutputLimitSpec.getTimePeriodExpr怎么用?Java OutputLimitSpec.getTimePeriodExpr使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.espertech.esper.epl.spec.OutputLimitSpec的用法示例。


在下文中一共展示了OutputLimitSpec.getTimePeriodExpr方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的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);
    }
}
 
开发者ID:espertechinc,项目名称:esper,代码行数:34,代码来源:OutputConditionPolledFactoryFactory.java

示例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);
}
 
开发者ID:espertechinc,项目名称:esper,代码行数:6,代码来源:OutputConditionFirstFactory.java

示例3: 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);
}
 
开发者ID:mobile-event-processing,项目名称:Asper,代码行数:7,代码来源:OutputConditionFirstFactory.java

示例4: 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);
	}
}
 
开发者ID:mobile-event-processing,项目名称:Asper,代码行数:63,代码来源:OutputConditionPolledFactory.java


注:本文中的com.espertech.esper.epl.spec.OutputLimitSpec.getTimePeriodExpr方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。