works.iterative.sqldb.mysql

Members list

Type members

Classlikes

case class MessageCatalogue(id: Option[Long], messageKey: String, language: String, messageText: String, description: Option[String], createdAt: Instant, updatedAt: Instant, createdBy: Option[String], updatedBy: Option[String])

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
case class MessageCatalogueCreator(messageKey: String, language: String, messageText: String, description: Option[String], createdAt: Instant, updatedAt: Instant, createdBy: Option[String], updatedBy: Option[String])

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
case class MessageCatalogueRepositoryImpl(ts: MySQLTransactor) extends MessageCatalogueRepository

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait MessageCatalogueRepository
class Object
trait Matchable
class Any
Show all
case class MySQLConfig(jdbcUrl: String, username: String, password: String)

Configuration for MySQL database connection

Configuration for MySQL database connection

This case class holds the configuration parameters needed to connect to a MySQL database.

Classification: Infrastructure Configuration

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object MySQLConfig

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
class MySQLDataSource(val dataSource: DataSource)

Provides a shared DataSource for MySQL connections

Provides a shared DataSource for MySQL connections

This class manages a connection pool for MySQL using HikariCP.

Classification: Infrastructure Configuration

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type

Base trait for MySQL database modules that provides common infrastructure

Base trait for MySQL database modules that provides common infrastructure

This trait orchestrates the creation of database infrastructure components like datasource, transactor, and migration management. It's the foundation layer for database modules.

Classification: Infrastructure Configuration

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
object MySQLDbCodecs

Shared DbCodecs for MySQL entities.

Shared DbCodecs for MySQL entities.

These codecs use java.sql.Timestamp as the base type because:

  1. Timestamp has native JDBC/Magnum support 2. Avoids circular dependency: Magnum's Instant codec uses OffsetDateTime, so defining OffsetDateTime in terms of Instant creates a deadlock

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
class MySQLFlywayMigrationService(dataSource: MySQLDataSource, config: FlywayConfig) extends FlywayMigrationService

Attributes

Companion
object
Supertypes
trait FlywayMigrationService
class Object
trait Matchable
class Any

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
case class MySQLPermissionRepositoryImpl(ts: MySQLTransactor) extends PermissionRepository

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait PermissionRepository
class Object
trait Matchable
class Any
Show all
class MySQLTransactor(val transactor: TransactorZIO)

Provides a shared Magnum Transactor for MySQL database operations

Provides a shared Magnum Transactor for MySQL database operations

This class wraps a Magnum SQL Transactor for performing database operations.

Classification: Infrastructure Configuration

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
case class PermissionCreator(userId: String, relation: String, namespace: String, objectId: String, createdAt: OffsetDateTime)

Creator entity for inserting new permission tuples (without ID)

Creator entity for inserting new permission tuples (without ID)

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
case class Permissions(id: Option[Long], userId: String, relation: String, namespace: String, objectId: String, createdAt: OffsetDateTime)

Database entity for permission relation tuples

Database entity for permission relation tuples

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object Permissions

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type