diff --git a/ebrick.go b/ebrick.go index 10d9446..e076944 100644 --- a/ebrick.go +++ b/ebrick.go @@ -31,6 +31,7 @@ func NewApplication(opts ...Option) Application { module.WithLogger(options.Logger), module.WithCache(options.Cache), module.WithEventBus(options.EventBus), + module.WithDB(options.DB), ) app := &application{ diff --git a/module/options.go b/module/options.go index 40ce2ec..bab26a9 100644 --- a/module/options.go +++ b/module/options.go @@ -4,12 +4,14 @@ import ( "github.com/ebrickdev/ebrick/cache" "github.com/ebrickdev/ebrick/logger" "github.com/ebrickdev/ebrick/messaging" + "gorm.io/gorm" ) type Options struct { Cache cache.Cache Logger logger.Logger EventBus messaging.EventBus + Db *gorm.DB } type Option func(*Options) @@ -41,3 +43,9 @@ func WithEventBus(e messaging.EventBus) Option { o.EventBus = e } } + +func WithDB(db *gorm.DB) Option { + return func(o *Options) { + o.Db = db + } +}