Class WhenVisitor

java.lang.Object
org.springframework.data.relational.core.sql.render.WhenVisitor
All Implemented Interfaces:
Visitor

public class WhenVisitor extends Object
Renderer for When segments.
Since:
3.4
Author:
Sven Rienstra
  • Method Details

    • getRenderedPart

      public CharSequence getRenderedPart()
    • hasDelegatedRendering

      protected boolean hasDelegatedRendering()
      Returns whether rendering was delegated to a ExpressionVisitor or ConditionVisitor.
      Returns:
      true when rendering was delegated to a ExpressionVisitor or ConditionVisitor.
    • consumeRenderedPart

      protected CharSequence consumeRenderedPart()
      Consumes the delegated rendering part. Call hasDelegatedRendering() to check whether rendering was actually delegated. Consumption releases the delegated rendered.
      Returns:
      the delegated rendered part.
      Throws:
      IllegalStateException - if rendering was not delegate.
    • doEnter

      public final org.springframework.data.relational.core.sql.render.DelegatingVisitor.Delegation doEnter(Visitable segment)
      Invoked for a segment when entering the segment.

      This method can signal whether it is responsible for handling the segment or whether the segment requires delegation to a sub-Visitor. When delegating to a sub-Visitor, doEnter(Visitable) is called on the delegate.

      Parameters:
      segment - must not be null.
      Returns:
    • doLeave

      public final org.springframework.data.relational.core.sql.render.DelegatingVisitor.Delegation doLeave(Visitable segment)
      Invoked for a segment when leaving the segment.

      This method can signal whether this Visitor should remain responsible for handling subsequent segments or whether it should step back from delegation. When stepping back from delegation, doLeave(Visitable) is called on the parent delegate.

      Parameters:
      segment - must not be null.
      Returns:
    • enter

      public final void enter(Visitable segment)
      Description copied from interface: Visitor
      Enter a Visitable.
      Specified by:
      enter in interface Visitor
      Parameters:
      segment - the segment to visit.
    • leave

      public final void leave(Visitable segment)
      Description copied from interface: Visitor
      Leave a Visitable.
      Specified by:
      leave in interface Visitor
      Parameters:
      segment - the visited segment.