public static ExpressionSequence parseExpressionSequence( final IExpressionContext context, final String input) { Validate.notNull(context, "Context cannot be null"); Validate.notNull(input, "Input cannot be null"); final String preprocessedInput = StandardExpressionPreprocessor.preprocess(context, input); final IEngineConfiguration configuration = context.getConfiguration(); if (configuration != null) { final ExpressionSequence cachedExpressionSequence = ExpressionCache.getExpressionSequenceFromCache(configuration, preprocessedInput); if (cachedExpressionSequence != null) { return cachedExpressionSequence; } } final ExpressionSequence expressionSequence = internalParseExpressionSequence(preprocessedInput.trim()); if (expressionSequence == null) { throw new TemplateProcessingException("Could not parse as expression sequence: \"" + input + "\""); } if (configuration != null) { ExpressionCache.putExpressionSequenceIntoCache(configuration, preprocessedInput, expressionSequence); } return expressionSequence; }
public static ExpressionSequence parseExpressionSequence( final Configuration configuration, final IProcessingContext processingContext, final String input) { Validate.notNull(configuration, "Configuration cannot be null"); Validate.notNull(processingContext, "Processing Context cannot be null"); Validate.notNull(input, "Input cannot be null"); final String preprocessedInput = StandardExpressionPreprocessor.preprocess(configuration, processingContext, input); if (configuration != null) { final ExpressionSequence cachedExpressionSequence = ExpressionCache.getExpressionSequenceFromCache(configuration, preprocessedInput); if (cachedExpressionSequence != null) { return cachedExpressionSequence; } } final ExpressionSequence expressionSequence = internalParseExpressionSequence(preprocessedInput.trim()); if (expressionSequence == null) { throw new TemplateProcessingException("Could not parse as expression sequence: \"" + input + "\""); } if (configuration != null) { ExpressionCache.putExpressionSequenceIntoCache(configuration, preprocessedInput, expressionSequence); } return expressionSequence; }