Examples of TemplateModel


Examples of freemarker.template.TemplateModel

    }
   
    static class seq_containsBI extends BuiltIn {
        TemplateModel _getAsTemplateModel(Environment env)
                throws TemplateException {
            TemplateModel model = target.getAsTemplateModel(env);
            // In 2.3.x only, we prefer TemplateSequenceModel for
            // backward compatibility. In 2.4.x, we prefer TemplateCollectionModel.
            if (model instanceof TemplateSequenceModel && !isBuggySeqButGoodCollection(model)) {
                return new BIMethodForSequence((TemplateSequenceModel) model, env);
            } else if (model instanceof TemplateCollectionModel) {
View Full Code Here

Examples of freemarker.template.TemplateModel

            public Object exec(List args)
                    throws TemplateModelException {
                if (args.size() != 1)
                    throw new TemplateModelException("?seq_contains(...) expects one argument.");
                TemplateModel arg = (TemplateModel) args.get(0);
                int size = m_seq.size();
                for (int i = 0; i < size; i++) {
                    if (modelsEqual(m_seq.get(i), arg, m_env))
                        return TemplateBooleanModel.TRUE;
                }
View Full Code Here

Examples of freemarker.template.TemplateModel

            public Object exec(List args)
                    throws TemplateModelException {
                if (args.size() != 1)
                    throw new TemplateModelException("?seq_contains(...) expects one argument.");
                TemplateModel arg = (TemplateModel) args.get(0);
                TemplateModelIterator it = m_coll.iterator();
                while (it.hasNext()) {
                    if (modelsEqual(it.next(), arg, m_env))
                        return TemplateBooleanModel.TRUE;
                }
View Full Code Here

Examples of freemarker.template.TemplateModel

        logger.warn(message);
    }
   
    static class matchesBI extends BuiltIn {
        TemplateModel _getAsTemplateModel(Environment env) throws TemplateException {
            TemplateModel targetModel = target.getAsTemplateModel(env);
            assertNonNull(targetModel, this, env);
            if (!(targetModel instanceof TemplateScalarModel)) {
                throw invalidTypeException(targetModel, target, env, "string");
            }
            return new MatcherBuilder((TemplateScalarModel) targetModel);
View Full Code Here

Examples of freemarker.template.TemplateModel

        }
    }
   
    static class groupsBI extends BuiltIn {
        TemplateModel _getAsTemplateModel(Environment env) throws TemplateException {
            TemplateModel targetModel = target.getAsTemplateModel(env);
            assertNonNull(targetModel, this, env);
            if (targetModel instanceof RegexMatchModel) {
                return ((RegexMatchModel) targetModel).getGroups();
            }
            if (targetModel instanceof RegexMatchModel.Match) {
View Full Code Here

Examples of freemarker.template.TemplateModel

   
   
    static class replace_reBI extends BuiltIn {
        TemplateModel _getAsTemplateModel(Environment env)
                throws TemplateException {
            TemplateModel model = target.getAsTemplateModel(env);
            if (model instanceof TemplateScalarModel) {
                return new ReplaceMethod(((TemplateScalarModel) model).getAsString());
            }
            throw invalidTypeException(model, target, env, "string");
        }
View Full Code Here

Examples of freemarker.template.TemplateModel

    }
   
    static class split_reBI extends BuiltIn {
        TemplateModel _getAsTemplateModel(Environment env)
                throws TemplateException {
            TemplateModel model = target.getAsTemplateModel(env);
            if (model instanceof TemplateScalarModel) {
                return new SplitMethod(((TemplateScalarModel) model).getAsString());
            }
            throw invalidTypeException(model, target, env, "string");
        }
View Full Code Here

Examples of freemarker.template.TemplateModel

abstract class DateBuiltins {
    abstract static class DateBuiltin extends BuiltIn {
        TemplateModel _getAsTemplateModel(Environment env)
                throws TemplateException
        {
            TemplateModel model = target.getAsTemplateModel(env);
            if (model instanceof TemplateDateModel) {
                TemplateDateModel tdm = (TemplateDateModel) model;
                return calculateResult(EvaluationUtil.getDate(tdm, target, env), tdm.getDateType(), env);
            } else {
                if(model == null) {
                    throw new InvalidReferenceException(target + " is undefined.", env);
                }
                throw new NonDateException(
                        target + " should be a date, time, or date+time, but it's a(n) "
                        + model.getClass().getName(), env);               
            }
        }
View Full Code Here

Examples of freemarker.template.TemplateModel

                    throw new TemplateModelException(
                        "?" + biName + "(...) expects exactly 1 argument, but had "
                        + args.size() + ".");
                }
               
                TemplateModel tzArgTM = (TemplateModel) args.get(0);
                TimeZone tzArg;
                Object adaptedObj;
                if (tzArgTM instanceof AdapterTemplateModel
                        && (adaptedObj =
                                ((AdapterTemplateModel) tzArgTM)
                                .getAdaptedObject(TimeZone.class))
                            instanceof TimeZone) {
                    tzArg = (TimeZone) adaptedObj;                   
                } else if (tzArgTM instanceof TemplateScalarModel) {
                    String tzName = ((TemplateScalarModel) tzArgTM).getAsString();
                    try {
                        tzArg = DateUtil.getTimeZone(tzName);
                    } catch (UnrecognizedTimeZoneException e) {
                        throw new TemplateModelException(
                                "The time zone string specified for ?" + biName +
                                "(...) is not recognized as a valid time zone name: " +
                                StringUtil.jQuote(tzName));
                    }
                } else {
                    throw new TemplateModelException(
                            "The argument to ?" + biName +
                            "(...) must be a String or a " +
                            "java.util.TimeZone but it was a " +
                            (tzArgTM != null ? tzArgTM.getClass().getName() : "null") +
                            ".");
                }
               
                return new SimpleScalar(DateUtil.dateToISO8601String(
                        date,
View Full Code Here

Examples of freemarker.template.TemplateModel

        this.nestedBlock = nestedBlock;
    }

    void accept(Environment env) throws TemplateException, IOException
    {
        TemplateModel baseModel = listExpression.getAsTemplateModel(env);
        if (baseModel == null) {
            if (env.isClassicCompatible()) {
                // Classic behavior of simply ignoring null references.
                return;
            }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.