Represents a fragement from the SQL annotation's statement member which begins with '{sql:'.
Substitution fragements are unique in that they are fully evaluated BEFORE a PreparedStatement
is generated.
Supported 'sql:' escapes are subst and fn. subst is the default mode, and will be used if 'sql: '
is specified.
The fn variant of this construct has a very ridgid syntax at this point. It must conform to:
Constructor for a function which includes a ReflectionFragment
Parameters: lf - A LiteralFragment which contains the text up to the parameter substitution. Parameters: rf - The ReflectionFragment containing the parameter substitution Parameters: lff - A LiteralFragment which contains any text which occures after the parameter substitution.
Get the parameter values from this fragment and its children. An SqlSubstitutionFragment
only contains parameters if one of its children has a complex value type.
Parameters: context - A ControlBeanContext instance Parameters: m - The annotated method Parameters: args - The method parameters Array of objects.
Return the text for a PreparedStatement from this fragment. This type of fragment
typically evaluates any reflection parameters at this point. The exception
is if the reflected result is a ComplexSqlFragment, it that case the sql text
is retrieved from the fragment in this method. The parameter values are
retrieved in the getParameterValues method of this class.
Parameters: context - A ControlBeanContext instance Parameters: m - The annotated method Parameters: args - The method parameters A String containing the value of this fragment and its children
Will be true for this fragment type only if one of its children contains
a complex sql fragment.
true if there are param values which need to be retrieved.