Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Database.PostgreSQL.PQTypes.Checks
Synopsis
- data DatabaseDefinitions = DatabaseDefinitions {
- dbExtensions :: [Extension]
- dbComposites :: [CompositeType]
- dbEnums :: [EnumType]
- dbDomains :: [Domain]
- dbTables :: [Table]
- emptyDbDefinitions :: DatabaseDefinitions
- checkDatabase :: forall m. (MonadDB m, MonadLog m, MonadThrow m) => ExtrasOptions -> DatabaseDefinitions -> m ()
- checkDatabaseWithReport :: forall m. (MonadDB m, MonadLog m, MonadThrow m) => ExtrasOptions -> DatabaseDefinitions -> m ValidationResult
- createTable :: MonadDB m => Bool -> Table -> m ()
- createDomain :: MonadDB m => Domain -> m ()
- data ExtrasOptions = ExtrasOptions {}
- defaultExtrasOptions :: ExtrasOptions
- data ObjectsValidationMode
- migrateDatabase :: (MonadIO m, MonadDB m, MonadLog m, MonadMask m) => ExtrasOptions -> DatabaseDefinitions -> [Migration m] -> m ()
- data ValidationResult
- validationError :: Text -> ValidationResult
- validationInfo :: Text -> ValidationResult
Definitions
data DatabaseDefinitions Source #
Constructors
DatabaseDefinitions | |
Fields
|
Checks
checkDatabase :: forall m. (MonadDB m, MonadLog m, MonadThrow m) => ExtrasOptions -> DatabaseDefinitions -> m () Source #
An equivalent to `checkDatabaseWithReport opts dbDefs >>= resultCheck`.
checkDatabaseWithReport :: forall m. (MonadDB m, MonadLog m, MonadThrow m) => ExtrasOptions -> DatabaseDefinitions -> m ValidationResult Source #
Run checks on the database structure and whether the database needs to be migrated. Will do a full check of DB structure.
createDomain :: MonadDB m => Domain -> m () Source #
Options
data ExtrasOptions Source #
Constructors
ExtrasOptions | |
Fields
|
Instances
Eq ExtrasOptions Source # | |
Defined in Database.PostgreSQL.PQTypes.ExtrasOptions Methods (==) :: ExtrasOptions -> ExtrasOptions -> Bool # (/=) :: ExtrasOptions -> ExtrasOptions -> Bool # |
data ObjectsValidationMode Source #
Constructors
AllowUnknownObjects | |
DontAllowUnknownObjects |
Instances
Eq ObjectsValidationMode Source # | |
Defined in Database.PostgreSQL.PQTypes.ExtrasOptions Methods (==) :: ObjectsValidationMode -> ObjectsValidationMode -> Bool # (/=) :: ObjectsValidationMode -> ObjectsValidationMode -> Bool # |
Migrations
migrateDatabase :: (MonadIO m, MonadDB m, MonadLog m, MonadMask m) => ExtrasOptions -> DatabaseDefinitions -> [Migration m] -> m () Source #
Run migrations and check the database structure.
Internals for tests
data ValidationResult Source #
A (potentially empty) list of info/error messages.
Instances
Monoid ValidationResult Source # | |
Defined in Database.PostgreSQL.PQTypes.Checks.Util Methods mappend :: ValidationResult -> ValidationResult -> ValidationResult # mconcat :: [ValidationResult] -> ValidationResult # | |
Semigroup ValidationResult Source # | |
Defined in Database.PostgreSQL.PQTypes.Checks.Util Methods (<>) :: ValidationResult -> ValidationResult -> ValidationResult # sconcat :: NonEmpty ValidationResult -> ValidationResult # stimes :: Integral b => b -> ValidationResult -> ValidationResult # | |
Show ValidationResult Source # | |
Defined in Database.PostgreSQL.PQTypes.Checks.Util Methods showsPrec :: Int -> ValidationResult -> ShowS # show :: ValidationResult -> String # showList :: [ValidationResult] -> ShowS # | |
Eq ValidationResult Source # | |
Defined in Database.PostgreSQL.PQTypes.Checks.Util Methods (==) :: ValidationResult -> ValidationResult -> Bool # (/=) :: ValidationResult -> ValidationResult -> Bool # |