def this()

in jdbc/src/main/scala/org/apache/pekko/projection/jdbc/internal/Dialect.scala [304:369]


  def this(tableName: String, managementTableName: String) = this(None, tableName, managementTableName)

  private val table = schema.map(s => s"$s.$tableName").getOrElse(tableName)

  private val managementTable = schema.map(s => s"$s.$managementTableName").getOrElse(managementTableName)

  override val createTableStatements =
    immutable.Seq(
      s"""CREATE TABLE IF NOT EXISTS $table (
         |  projection_name VARCHAR(255) NOT NULL,
         |  projection_key VARCHAR(255) NOT NULL,
         |  current_offset VARCHAR(255) NOT NULL,
         |  manifest VARCHAR(4) NOT NULL,
         |  mergeable BOOLEAN NOT NULL,
         |  last_updated BIGINT NOT NULL,
         |  PRIMARY KEY(projection_name, projection_key)
         |);""".stripMargin,
      // create index
      s"""CREATE INDEX projection_name_index ON $table (projection_name);""")

  override val dropTableStatement: String =
    Dialect.removeQuotes(DialectDefaults.dropTableStatement(table))

  override val readOffsetQuery: String =
    Dialect.removeQuotes(DialectDefaults.readOffsetQuery(table))

  override val clearOffsetStatement: String =
    Dialect.removeQuotes(DialectDefaults.clearOffsetStatement(table))

  override def insertStatement(): String =
    Dialect.removeQuotes(DialectDefaults.insertStatement(table))

  override def updateStatement(): String =
    Dialect.removeQuotes(DialectDefaults.updateStatement(table))

  override val createManagementTableStatements =
    immutable.Seq(s"""CREATE TABLE IF NOT EXISTS $managementTable (
         |  projection_name VARCHAR(255) NOT NULL,
         |  projection_key VARCHAR(255) NOT NULL,
         |  paused BOOLEAN NOT NULL,
         |  last_updated BIGINT NOT NULL,
         |  PRIMARY KEY(projection_name, projection_key)
         |);""".stripMargin)

  override val dropManagementTableStatement: String =
    Dialect.removeQuotes(DialectDefaults.dropManagementTableStatement(managementTable))

  override val readManagementStateQuery: String =
    Dialect.removeQuotes(DialectDefaults.readManagementStateQuery(managementTable))

  override def insertManagementStatement(): String =
    Dialect.removeQuotes(DialectDefaults.insertManagementStatement(managementTable))

  override def updateManagementStatement(): String =
    Dialect.removeQuotes(DialectDefaults.updateManagementStatement(managementTable))
}

/**
 * INTERNAL API
 */
@InternalApi
private[projection] case class MSSQLServerDialect(
    schema: Option[String],
    tableName: String,
    managementTableName: String)
    extends Dialect {