module Arbiter.Core.SchemaTables
( allSchemaTables
, sharedArbiterTables
) where
import Arbiter.Core.Concurrency.Schema (arbiterConcurrencyPoliciesTableName, arbiterConcurrencyTableName)
import Arbiter.Core.CronSchedule (cronSchedulesTableName)
import Arbiter.Core.Gates (arbiterGatesTableName)
import Arbiter.Core.Job.Schema (TableName, queueTableNames)
import Arbiter.Core.Queues (arbiterQueuesTableName)
import Arbiter.Core.RateLimit.Schema (arbiterRateLimitPoliciesTableName, arbiterRateLimitsTableName)
import Arbiter.Core.Worker (arbiterWorkersTableName)
sharedArbiterTables :: [TableName]
sharedArbiterTables :: [TableName]
sharedArbiterTables =
[ TableName
arbiterGatesTableName
, TableName
arbiterWorkersTableName
, TableName
arbiterQueuesTableName
, TableName
arbiterConcurrencyTableName
, TableName
arbiterConcurrencyPoliciesTableName
, TableName
arbiterRateLimitsTableName
, TableName
arbiterRateLimitPoliciesTableName
, TableName
cronSchedulesTableName
]
allSchemaTables :: [TableName] -> [TableName]
allSchemaTables :: [TableName] -> [TableName]
allSchemaTables [TableName]
queueTables = (TableName -> [TableName]) -> [TableName] -> [TableName]
forall (t :: * -> *) a b. Foldable t => (a -> [b]) -> t a -> [b]
concatMap TableName -> [TableName]
queueTableNames [TableName]
queueTables [TableName] -> [TableName] -> [TableName]
forall a. Semigroup a => a -> a -> a
<> [TableName]
sharedArbiterTables