github.com/argoproj/argo-events@v1.9.1/eventbus/jetstream/eventsource/source_jetstream.go (about) 1 package eventsource 2 3 import ( 4 eventbuscommon "github.com/argoproj/argo-events/eventbus/common" 5 jetstreambase "github.com/argoproj/argo-events/eventbus/jetstream/base" 6 "go.uber.org/zap" 7 ) 8 9 type SourceJetstream struct { 10 *jetstreambase.Jetstream 11 eventSourceName string 12 } 13 14 func NewSourceJetstream(url, eventSourceName string, streamConfig string, auth *eventbuscommon.Auth, logger *zap.SugaredLogger) (*SourceJetstream, error) { 15 baseJetstream, err := jetstreambase.NewJetstream(url, streamConfig, auth, logger) 16 if err != nil { 17 return nil, err 18 } 19 return &SourceJetstream{ 20 baseJetstream, 21 eventSourceName, 22 }, nil 23 } 24 25 func (n *SourceJetstream) Initialize() error { 26 return n.Init() // member of jetstreambase.Jetstream 27 } 28 29 func (n *SourceJetstream) Connect(clientID string) (eventbuscommon.EventSourceConnection, error) { 30 conn, err := n.MakeConnection() 31 if err != nil { 32 return nil, err 33 } 34 35 return CreateJetstreamSourceConn(conn, n.eventSourceName), nil 36 }