org.apache.cayenne.velocity

## Class ChainDirective

- java.lang.Object
- - org.apache.velocity.runtime.directive.Directive
  - - org.apache.cayenne.velocity.ChainDirective

- All Implemented Interfaces:
    Cloneable, org.apache.velocity.runtime.directive.DirectiveConstants

      public class ChainDirective
      extends org.apache.velocity.runtime.directive.Directive

  A custom Velocity directive to conditionally join a number of `chunks`. Usage of chain is the following:

       #chain(operator) - e.g. #chain(' AND ')
       #chain(operator prefix) - e.g. #chain(' AND ' 'WHERE ')

  `operator` (e.g. AND, OR, etc.) is used to join chunks that are included in a chain. `prefix` is inserted if a chain contains at least one chunk.

  Since:
    1.1

- - ### Field Summary

    - ### Fields inherited from class org.apache.velocity.runtime.directive.Directive

      `rsvc`

    - ### Fields inherited from interface org.apache.velocity.runtime.directive.DirectiveConstants

      `BLOCK, LINE`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ChainDirective()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `getName()`
    `int` | `getType()`
    `boolean` | `render(org.apache.velocity.context.InternalContextAdapter context, Writer writer, org.apache.velocity.runtime.parser.node.Node node)`

    - ### Methods inherited from class org.apache.velocity.runtime.directive.Directive

      `getColumn, getLine, getTemplateName, init, setLocation, setLocation`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ChainDirective

          public ChainDirective()

  - ### Method Detail

    - #### getName

          public String getName()

      Specified by:
        `getName` in class `org.apache.velocity.runtime.directive.Directive`

    - #### getType

          public int getType()

      Specified by:
        `getType` in class `org.apache.velocity.runtime.directive.Directive`

    - #### render

          public boolean render(org.apache.velocity.context.InternalContextAdapter context,
                                Writer writer,
                                org.apache.velocity.runtime.parser.node.Node node)
                         throws IOException,
                                org.apache.velocity.exception.ResourceNotFoundException,
                                org.apache.velocity.exception.ParseErrorException,
                                org.apache.velocity.exception.MethodInvocationException

      Specified by:
        `render` in class `org.apache.velocity.runtime.directive.Directive`
      Throws:
        `IOException`
        `org.apache.velocity.exception.ResourceNotFoundException`
        `org.apache.velocity.exception.ParseErrorException`
        `org.apache.velocity.exception.MethodInvocationException`

Copyright © 2001–2023 Apache Cayenne. All rights reserved.