abstract class CRUDAutoInc[T <: DbRowAutoInc[T]] extends CRUD[T, Long] with TableAutoIncComponent[T]
- Alphabetic
- By Inheritance
- CRUDAutoInc
- TableAutoIncComponent
- CRUD
- CRUDAction
- JdbcProfileComponent
- Logging
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new CRUDAutoInc()(implicit ec: ExecutionContext, appConfig: DbAppConfig)
Type Members
-
abstract
class
TableAutoInc[T] extends slick.jdbc.JdbcProfile.API.Table[T]
- Definition Classes
- TableAutoIncComponent
Abstract Value Members
-
abstract
val
table: slick.jdbc.JdbcProfile.API.TableQuery[_ <: TableAutoInc[T]]
The table inside our database we are inserting into
The table inside our database we are inserting into
- Definition Classes
- CRUDAutoInc → CRUDAction
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
implicit
val
appConfig: DbAppConfig
- Definition Classes
- CRUDAutoInc → CRUD → CRUDAction → JdbcProfileComponent
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
def
count(): Future[Int]
Returns number of rows in the table
Returns number of rows in the table
- Definition Classes
- CRUD
-
def
countAction: slick.jdbc.JdbcProfile.API.DBIOAction[Int, slick.jdbc.JdbcProfile.API.NoStream, Read]
- Definition Classes
- CRUDAction
-
def
create(t: T): Future[T]
create a record in the database
create a record in the database
- t
- the record to be inserted
- returns
the inserted record
- Definition Classes
- CRUD
-
def
createAction(t: T): slick.jdbc.JdbcProfile.API.DBIOAction[T, slick.jdbc.JdbcProfile.API.NoStream, Write]
- Definition Classes
- CRUDAction
-
def
createAll(ts: Vector[T]): Future[Vector[T]]
- Definition Classes
- CRUDAutoInc → CRUD
-
def
createAllAction(ts: Vector[T]): slick.jdbc.JdbcProfile.API.DBIOAction[Vector[T], slick.jdbc.JdbcProfile.API.NoStream, Write]
- Definition Classes
- CRUDAutoInc → CRUDAction
-
lazy val
database: slick.jdbc.JdbcProfile.API.Database
The database we are connecting to
The database we are connecting to
- Definition Classes
- JdbcProfileComponent
-
lazy val
dbConfig: DatabaseConfig[JdbcProfile]
The configuration details for connecting/using the database for our projects that require database connections
The configuration details for connecting/using the database for our projects that require database connections
- Definition Classes
- JdbcProfileComponent
-
lazy val
dbPassword: String
- Definition Classes
- JdbcProfileComponent
-
lazy val
dbUsername: String
- Definition Classes
- JdbcProfileComponent
-
def
debug(mkr: Marker, msg: ⇒ Any, t: ⇒ Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
debug(msg: ⇒ Any, t: ⇒ Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
debug(msg: ⇒ Any): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
delete(t: T): Future[Int]
delete the corresponding record in the database
delete the corresponding record in the database
- t
- the record to be deleted
- returns
int - the number of rows affected by the deletion
- Definition Classes
- CRUD
-
def
deleteAction(t: T): slick.jdbc.JdbcProfile.API.DBIOAction[Int, slick.jdbc.JdbcProfile.API.NoStream, Write]
- Definition Classes
- CRUDAction
-
def
deleteAll(): Future[Int]
delete all records from the table
delete all records from the table
- Definition Classes
- CRUD
-
def
deleteAll(ts: Vector[T]): Future[Int]
- Definition Classes
- CRUD
-
def
deleteAllAction(): slick.jdbc.JdbcProfile.API.DBIOAction[Int, slick.jdbc.JdbcProfile.API.NoStream, Write with Transactional]
WARNING: Deletes all rows in table, use with care
WARNING: Deletes all rows in table, use with care
- Definition Classes
- CRUDAction
-
def
deleteAllAction(ts: Vector[T]): slick.jdbc.JdbcProfile.API.DBIOAction[Int, slick.jdbc.JdbcProfile.API.NoStream, Write]
- Definition Classes
- CRUDAction
-
implicit
val
ec: ExecutionContext
- Definition Classes
- CRUD → CRUDAction
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
error(mkr: Marker, msg: ⇒ Any, t: ⇒ Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
error(msg: ⇒ Any, t: ⇒ Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
error(msg: ⇒ Any): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
find(t: T): slick.jdbc.JdbcProfile.API.Query[slick.jdbc.JdbcProfile.API.Table[T], T, Seq]
- Attributes
- protected
- Definition Classes
- CRUDAction
-
def
findAll(ts: Vector[T]): slick.jdbc.JdbcProfile.API.Query[slick.jdbc.JdbcProfile.API.Table[T], T, Seq]
- Definition Classes
- CRUDAutoInc → CRUDAction
-
def
findAll(): Future[Vector[T]]
Finds all elements in the table
Finds all elements in the table
- Definition Classes
- CRUD
-
def
findAllAction(): slick.jdbc.JdbcProfile.API.DBIOAction[Vector[T], slick.jdbc.JdbcProfile.API.NoStream, Read]
- Definition Classes
- CRUDAction
-
def
findByPrimaryKey(id: Long): slick.jdbc.JdbcProfile.API.Query[TableAutoInc[T], T, Seq]
return all rows that have a certain primary key
return all rows that have a certain primary key
- id
primary key of the row to return
- returns
Query object corresponding to the selected rows
- Attributes
- protected
- Definition Classes
- CRUDAutoInc → CRUDAction
-
def
findByPrimaryKeyAction(id: Long): slick.jdbc.JdbcProfile.API.DBIOAction[Option[T], slick.jdbc.JdbcProfile.API.NoStream, Read]
- Definition Classes
- CRUDAction
-
def
findByPrimaryKeys(ids: Vector[Long]): slick.jdbc.JdbcProfile.API.Query[TableAutoInc[T], T, Seq]
Finds the rows that correlate to the given primary keys
Finds the rows that correlate to the given primary keys
- Definition Classes
- CRUDAutoInc → CRUDAction
-
def
findByPrimaryKeysAction(ids: Vector[Long]): slick.jdbc.JdbcProfile.API.DBIOAction[Vector[T], slick.jdbc.JdbcProfile.API.NoStream, Read]
- Definition Classes
- CRUDAction
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
info(mkr: Marker, msg: ⇒ Any, t: ⇒ Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
info(msg: ⇒ Any, t: ⇒ Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
info(msg: ⇒ Any): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
isDebugEnabled: Boolean
- Attributes
- protected
- Definition Classes
- Logging
-
def
isErrorEnabled: Boolean
- Attributes
- protected
- Definition Classes
- Logging
-
def
isInfoEnabled: Boolean
- Attributes
- protected
- Definition Classes
- Logging
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isTraceEnabled: Boolean
- Attributes
- protected
- Definition Classes
- Logging
-
def
isWarnEnabled: Boolean
- Attributes
- protected
- Definition Classes
- Logging
-
def
logger: Logger
- Attributes
- protected
- Definition Classes
- Logging
-
def
loggerName: String
- Attributes
- protected
- Definition Classes
- Logging
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
lazy val
numThreads: Int
- Definition Classes
- JdbcProfileComponent
-
lazy val
profile: JdbcProfile
- Definition Classes
- JdbcProfileComponent
-
def
read(id: Long): Future[Option[T]]
read a record from the database
read a record from the database
- id
- the id of the record to be read
- returns
Option[T] - the record if found, else none
- Definition Classes
- CRUD
-
def
safeDatabase: SafeDatabase
Binding to the actual database itself, this is what is used to run querys
Binding to the actual database itself, this is what is used to run querys
- Definition Classes
- CRUD
-
val
schemaName: Option[String]
- Definition Classes
- CRUD
-
def
startHikariLogger(interval: Duration): HikariLogging
Starts the background logger for hikari
Starts the background logger for hikari
- interval
- how often hikari logs database connection pool information
- Attributes
- protected
- Definition Classes
- JdbcProfileComponent
-
def
stopHikariLogger(): Unit
- Attributes
- protected
- Definition Classes
- JdbcProfileComponent
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
implicit
def
tableQuerySafeSubtypeCast[SpecificT <: AbstractTable[_], SomeT <: SpecificT](tableQuery: slick.jdbc.JdbcProfile.API.TableQuery[SomeT]): slick.jdbc.JdbcProfile.API.TableQuery[SpecificT]
We need to cast from TableQuery's of internal types (e.g.
We need to cast from TableQuery's of internal types (e.g. AddressDAO#AddressTable) to external versions of them (e.g. AddressDAO().table). You'll notice that although the latter is a subtype of the first, this requires a cast since TableQuery is not covariant in its type parameter.
However, since Query is covariant in its first type parameter, I believe the cast from TableQuery[T1] to TableQuery[T2] will always be safe so long as T1 is a subtype of T2 AND T1#TableElementType is equal to T2#TableElementType.
The above conditions are always the case when this is called within DAOs as it is only ever used for things of the form TableQuery[XDAO().table] -> TableQuery[XDAO#XTable].
- Attributes
- protected
- Definition Classes
- CRUD
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
def
trace(mkr: Marker, msg: ⇒ Any, t: ⇒ Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
trace(msg: ⇒ Any, t: ⇒ Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
trace(msg: ⇒ Any): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
update(t: T): Future[T]
Update the corresponding record in the database
Update the corresponding record in the database
- Definition Classes
- CRUD
-
def
updateAction(t: T): slick.jdbc.JdbcProfile.API.DBIOAction[T, slick.jdbc.JdbcProfile.API.NoStream, Write]
- Definition Classes
- CRUDAction
-
def
updateAll(ts: Vector[T]): Future[Vector[T]]
- Definition Classes
- CRUD
-
def
updateAllAction(ts: Vector[T]): slick.jdbc.JdbcProfile.API.DBIOAction[Vector[T], slick.jdbc.JdbcProfile.API.NoStream, Write]
Updates all of the given ts.
Updates all of the given ts. Returns all ts that actually existed in the database and got updated This method discards things that did not exist in the database, thus could not be updated
- Definition Classes
- CRUDAction
-
def
upsert(t: T): Future[T]
insert the record if it does not exist, update it if it does
insert the record if it does not exist, update it if it does
- t
- the record to inserted / updated
- returns
t - the record that has been inserted / updated
- Definition Classes
- CRUD
-
def
upsertAction(t: T): slick.jdbc.JdbcProfile.API.DBIOAction[T, slick.jdbc.JdbcProfile.API.NoStream, Write with Read]
- Definition Classes
- CRUDAction
-
def
upsertAll(ts: Vector[T]): Future[Vector[T]]
Upserts all of the given ts in the database, then returns the upserted values
Upserts all of the given ts in the database, then returns the upserted values
- Definition Classes
- CRUD
-
def
upsertAllAction(ts: Vector[T]): slick.jdbc.JdbcProfile.API.DBIOAction[Vector[T], slick.jdbc.JdbcProfile.API.NoStream, Write with Read]
Upsert all of the given ts.
Upsert all of the given ts. Returns all ts that were inserted or updated
- Definition Classes
- CRUDAction
- See also
https://scala-slick.org/doc/3.3.3/queries.html#upserting
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
def
warn(mkr: Marker, msg: ⇒ Any, t: ⇒ Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
warn(msg: ⇒ Any, t: ⇒ Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
warn(msg: ⇒ Any): Unit
- Attributes
- protected
- Definition Classes
- Logging