Class MySQLVariants

java.lang.Object
io.nflow.engine.internal.storage.db.MySQLVariants
All Implemented Interfaces:
SQLVariants

public class MySQLVariants extends Object implements SQLVariants
SQL variants optimized for MySQL.
  • Constructor Details

    • MySQLVariants

      public MySQLVariants()
  • Method Details

    • currentTimePlusSeconds

      public String currentTimePlusSeconds(int seconds)
      Returns SQL representing the current database time plus given amount of seconds.
      Specified by:
      currentTimePlusSeconds in interface SQLVariants
    • hasUpdateableCTE

      public boolean hasUpdateableCTE()
      Returns false as MySQL does not support updateable CTEs.
      Specified by:
      hasUpdateableCTE in interface SQLVariants
    • nextActivationUpdate

      public String nextActivationUpdate()
      Returns SQL representing the next activation time of the workflow instance.
      Specified by:
      nextActivationUpdate in interface SQLVariants
    • workflowStatus

      public String workflowStatus(WorkflowInstance.WorkflowInstanceStatus status)
      Returns the SQL representation for given workflow instance status.
      Specified by:
      workflowStatus in interface SQLVariants
    • workflowStatus

      public String workflowStatus()
      Returns SQL representing the workflow instance status parameter.
      Specified by:
      workflowStatus in interface SQLVariants
    • actionType

      public String actionType()
      Returns SQL representing the action type parameter.
      Specified by:
      actionType in interface SQLVariants
    • castToText

      public String castToText()
      Returns empty string as casting to text is not needed in MySQL.
      Specified by:
      castToText in interface SQLVariants
    • limit

      public String limit(String query, long limit)
      Returns SQL for a query with a limit of results.
      Specified by:
      limit in interface SQLVariants
    • longTextType

      public int longTextType()
      Returns the SQL type for long text.
      Specified by:
      longTextType in interface SQLVariants
    • useBatchUpdate

      public boolean useBatchUpdate()
      Returns true as MySQL supports batch updates.
      Specified by:
      useBatchUpdate in interface SQLVariants
    • caseSensitiveLike

      public String caseSensitiveLike()
      Returns "like binary" for case-sensitive comparison.
      Specified by:
      caseSensitiveLike in interface SQLVariants