Class PutAttributeFMModel

  • All Implemented Interfaces:
    freemarker.template.TemplateDirectiveModel, freemarker.template.TemplateModel

    public class PutAttributeFMModel
    extends java.lang.Object
    implements freemarker.template.TemplateDirectiveModel

    Put an attribute in enclosing attribute container tag.

    Enclosing attribute container tag can be :

    • <initContainer>
    • <definition>
    • <insertAttribute>
    • <insertDefinition>
    • <putListAttribute>
    (or any other tag which implements the PutAttributeTagParent interface. Exception is thrown if no appropriate tag can be found.

    Put tag can have following atributes :

    • name : Name of the attribute
    • value : value to put as attribute
    • type : value type. Possible type are : string (value is used as direct string), template (value is used as a page url to insert), definition (value is used as a definition name to insert), object (value is used as it is)
    • role : Role to check when 'insertAttribute' will be called.

    Value can also come from tag body. Tag body is taken into account only if value is not set by one of the tag attributes. In this case Attribute type is "string", unless tag body define another type.

    • Field Summary

      • Fields inherited from interface freemarker.template.TemplateModel

        NOTHING
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void execute​(freemarker.core.Environment env, java.util.Map params, freemarker.template.TemplateModel[] loopVars, freemarker.template.TemplateDirectiveBody body)
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • PutAttributeFMModel

        public PutAttributeFMModel​(PutAttributeModel model)
        Constructor.
        Parameters:
        model - The template model.
    • Method Detail

      • execute

        public void execute​(freemarker.core.Environment env,
                            java.util.Map params,
                            freemarker.template.TemplateModel[] loopVars,
                            freemarker.template.TemplateDirectiveBody body)
                     throws freemarker.template.TemplateException,
                            java.io.IOException
        Specified by:
        execute in interface freemarker.template.TemplateDirectiveModel
        Throws:
        freemarker.template.TemplateException
        java.io.IOException