20 lines
633 B
Go
20 lines
633 B
Go
package messaging
|
|
|
|
import (
|
|
"github.com/tech/sendico/pkg/merrors"
|
|
mb "github.com/tech/sendico/pkg/messaging/broker"
|
|
mbip "github.com/tech/sendico/pkg/messaging/inprocess"
|
|
mbn "github.com/tech/sendico/pkg/messaging/natsb"
|
|
"github.com/tech/sendico/pkg/mlogger"
|
|
)
|
|
|
|
func CreateMessagingBroker(logger mlogger.Logger, config *Config) (mb.Broker, error) {
|
|
if config.Driver == BBInProcess {
|
|
return mbip.NewInProcessBroker(logger, config.Settings)
|
|
}
|
|
if config.Driver == BBNats {
|
|
return mbn.NewNATSBroker(logger, config.Settings)
|
|
}
|
|
return nil, merrors.InvalidArgument("Unknown messaging broker type: " + string(config.Driver))
|
|
}
|