Skip to content

Commit

Permalink
eventful refs removed
Browse files Browse the repository at this point in the history
  • Loading branch information
silky committed Jun 8, 2021
1 parent 97aea75 commit 50a63ee
Show file tree
Hide file tree
Showing 4 changed files with 58 additions and 157 deletions.
39 changes: 13 additions & 26 deletions plutus-pab/app/Cli.hs
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,6 @@ import Data.Text.Prettyprint.Doc (Pretty (..), defaultLa
import Data.Text.Prettyprint.Doc.Render.Text (renderStrict)
import Data.Time.Units (Second)
import qualified Plutus.PAB.Effects.Contract as Contract
import Plutus.PAB.Effects.EventLog (EventLogBackend (..))

import Cardano.Node.Types (MockServerConfig (..))
import qualified PSGenerator
Expand All @@ -92,7 +91,6 @@ import qualified Plutus.Contract.State as State
import qualified Plutus.PAB.App as App
import qualified Plutus.PAB.Core as Core
import qualified Plutus.PAB.Db.Beam as Beam
import qualified Plutus.PAB.Db.Eventful as Eventful
import Plutus.PAB.Effects.Contract.ContractExe (ContractExe)
import qualified Plutus.PAB.Monitoring.Monitoring as LM
import Plutus.PAB.Types (Config (..), DbConfig (..), chainIndexConfig,
Expand All @@ -109,9 +107,7 @@ runNoConfigCommand trace = \case
-- Run database migration
Migrate{dbPath} ->
let conf = DbConfig{dbConfigPoolSize=10, dbConfigFile=Text.pack dbPath} in
App.beamMigrate (LM.convertLog LM.PABMsg trace) conf
-- TODO: Restore or delete
-- App.migrate (LM.convertLog LM.PABMsg trace) conf
App.migrate (LM.convertLog LM.PABMsg trace) conf

-- Generate PureScript bridge code
PSGenerator {outputDir} -> PSGenerator.generate outputDir
Expand All @@ -125,7 +121,6 @@ data ConfigCommandArgs =
, ccaLoggingConfig :: Configuration -- ^ Monitoring configuration
, ccaPABConfig :: Config -- ^ PAB Configuration
, ccaAvailability :: Availability -- ^ Token for signaling service availability
, ccaDbBackend :: App.DbBackend -- ^ Which kind of backend to use for the provided db kind.
}

-- | Interpret a 'Command' in 'Eff' using the provided tracer and configurations
Expand Down Expand Up @@ -160,9 +155,9 @@ runConfigCommand ConfigCommandArgs{ccaTrace, ccaPABConfig = Config {metadataServ
ccaAvailability

-- Run PAB webserver
runConfigCommand ConfigCommandArgs{ccaTrace, ccaPABConfig=config@Config{pabWebserverConfig}, ccaAvailability, ccaDbBackend} PABWebserver =
runConfigCommand ConfigCommandArgs{ccaTrace, ccaPABConfig=config@Config{pabWebserverConfig}, ccaAvailability} PABWebserver =
fmap (either (error . show) id)
$ App.runApp ccaDbBackend (toPABMsg ccaTrace) config
$ App.runApp (toPABMsg ccaTrace) config
$ do
App.AppEnv{App.walletClientEnv} <- Core.askUserEnv @ContractExe @App.AppEnv
(mvar, _) <- PABServer.startServer pabWebserverConfig (Left walletClientEnv) ccaAvailability
Expand Down Expand Up @@ -193,26 +188,18 @@ runConfigCommand ConfigCommandArgs{ccaTrace, ccaPABConfig=Config {nodeServerConf
ccaAvailability

-- Install a contract
runConfigCommand ConfigCommandArgs{ccaTrace, ccaDbBackend, ccaPABConfig=Config{dbConfig}} (InstallContract contractExe) =
-- case dbConfigDbKind dbConfig of
-- BeamDb ->
runConfigCommand ConfigCommandArgs{ccaTrace, ccaPABConfig=Config{dbConfig}} (InstallContract contractExe) =
do
connection <- App.beamDbConnect (LM.convertLog LM.PABMsg ccaTrace) dbConfig
connection <- App.dbConnect (LM.convertLog LM.PABMsg ccaTrace) dbConfig
fmap (either (error . show) id)
$ Beam.runBeamStoreAction connection
$ Contract.addDefinition @ContractExe contractExe
-- EventfulDb ->
-- do
-- connection <- Sqlite <$> App.dbConnect (LM.convertLog LM.PABMsg ccaTrace) dbConfig
-- fmap (either (error . show) id)
-- $ Eventful.runEventfulStoreAction connection (LM.convertLog (LM.PABMsg . LM.SLoggerBridge) ccaTrace)
-- $ Contract.addDefinition @ContractExe contractExe

-- Get the state of a contract
runConfigCommand ConfigCommandArgs{ccaTrace, ccaPABConfig=Config{dbConfig}} (ContractState contractInstanceId) = do
connection <- Sqlite <$> App.dbConnect (LM.convertLog LM.PABMsg ccaTrace) dbConfig
connection <- App.dbConnect (LM.convertLog LM.PABMsg ccaTrace) dbConfig
fmap (either (error . show) id)
$ Eventful.runEventfulStoreAction connection (LM.convertLog (LM.PABMsg . LM.SLoggerBridge) ccaTrace)
$ Beam.runBeamStoreAction connection
$ interpret (LM.handleLogMsgTrace ccaTrace)
$ do
s <- Contract.getState @ContractExe contractInstanceId
Expand All @@ -222,9 +209,9 @@ runConfigCommand ConfigCommandArgs{ccaTrace, ccaPABConfig=Config{dbConfig}} (Con

-- Get all installed contracts
runConfigCommand ConfigCommandArgs{ccaTrace, ccaPABConfig=Config{dbConfig}} ReportInstalledContracts = do
connection <- Sqlite <$> App.dbConnect (LM.convertLog LM.PABMsg ccaTrace) dbConfig
connection <- App.dbConnect (LM.convertLog LM.PABMsg ccaTrace) dbConfig
fmap (either (error . show) id)
$ Eventful.runEventfulStoreAction connection (LM.convertLog (LM.PABMsg . LM.SLoggerBridge) ccaTrace)
$ Beam.runBeamStoreAction connection
$ interpret (LM.handleLogMsgTrace ccaTrace)
$ do
installedContracts <- Contract.getDefinitions @ContractExe
Expand All @@ -235,9 +222,9 @@ runConfigCommand ConfigCommandArgs{ccaTrace, ccaPABConfig=Config{dbConfig}} Repo

-- Get all active contracts
runConfigCommand ConfigCommandArgs{ccaTrace, ccaPABConfig=Config{dbConfig}} ReportActiveContracts = do
connection <- Sqlite <$> App.dbConnect (LM.convertLog LM.PABMsg ccaTrace) dbConfig
connection <- App.dbConnect (LM.convertLog LM.PABMsg ccaTrace) dbConfig
fmap (either (error . show) id)
$ Eventful.runEventfulStoreAction connection (LM.convertLog (LM.PABMsg . LM.SLoggerBridge) ccaTrace)
$ Beam.runBeamStoreAction connection
$ interpret (LM.handleLogMsgTrace ccaTrace)
$ do
logInfo @(LM.AppMsg ContractExe) LM.ActiveContractsMsg
Expand All @@ -248,9 +235,9 @@ runConfigCommand ConfigCommandArgs{ccaTrace, ccaPABConfig=Config{dbConfig}} Repo

-- Get history of a specific contract
runConfigCommand ConfigCommandArgs{ccaTrace, ccaPABConfig=Config{dbConfig}} (ReportContractHistory contractInstanceId) = do
connection <- Sqlite <$> App.dbConnect (LM.convertLog LM.PABMsg ccaTrace) dbConfig
connection <- App.dbConnect (LM.convertLog LM.PABMsg ccaTrace) dbConfig
fmap (either (error . show) id)
$ Eventful.runEventfulStoreAction connection (LM.convertLog (LM.PABMsg . LM.SLoggerBridge) ccaTrace)
$ Beam.runBeamStoreAction connection
$ interpret (LM.handleLogMsgTrace ccaTrace)
$ do
logInfo @(LM.AppMsg ContractExe) LM.ContractHistoryMsg
Expand Down
3 changes: 1 addition & 2 deletions plutus-pab/app/Main.hs
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ import System.Exit (ExitCode (ExitFailure)

main :: IO ()
main = do
AppOpts { minLogLevel, logConfigPath, runEkgServer, cmd, configPath, dbKind } <- parseOptions
AppOpts { minLogLevel, logConfigPath, runEkgServer, cmd, configPath } <- parseOptions

-- Parse config files and initialize logging
logConfig <- maybe defaultConfig loadConfig logConfigPath
Expand All @@ -62,7 +62,6 @@ main = do
, ccaLoggingConfig = logConfig
, ccaPABConfig = config
, ccaAvailability = serviceAvailability
, ccaDbKind = dbKind
}
Right <$> runConfigCommand args command
WithoutConfig command -> Right <$> runNoConfigCommand (convertLog PrettyObject trace) command
Expand Down

0 comments on commit 50a63ee

Please sign in to comment.