29 lines
888 B
Go
29 lines
888 B
Go
// Package integration contains adapters for external systems and runtime
|
|
// clients. These constructors are kept out of the persistence provider set so
|
|
// the data package does not also act as the integration composition root.
|
|
package integration
|
|
|
|
import (
|
|
"kra/internal/biz"
|
|
"kra/internal/integration/cache"
|
|
"kra/internal/integration/email"
|
|
mqintegration "kra/internal/integration/mq"
|
|
"kra/internal/integration/storage"
|
|
websocketintegration "kra/internal/integration/websocket"
|
|
"kra/pkg/mq"
|
|
platformws "kra/pkg/websocket"
|
|
|
|
"github.com/google/wire"
|
|
)
|
|
|
|
var ProviderSet = wire.NewSet(
|
|
cache.New,
|
|
email.NewEmailRepo,
|
|
storage.NewFileStorage,
|
|
mqintegration.New,
|
|
wire.Bind(new(mq.Client), new(*mqintegration.Reloadable)),
|
|
websocketintegration.New,
|
|
wire.Bind(new(platformws.Hub), new(*websocketintegration.Server)),
|
|
wire.Bind(new(biz.FileStorage), new(*storage.Reloadable)),
|
|
)
|