package deconnector import ( "context" "fmt" "source.hodakov.me/hdkv/deconnect/internal/application" "source.hodakov.me/hdkv/deconnect/internal/domains" ) var ( _ domains.Deconnector = new(Deconnector) _ domains.Domain = new(Deconnector) ) type Deconnector struct { app *application.App dialer domains.Dialer } func New(app *application.App) *Deconnector { return &Deconnector{ app: app, } } func (d *Deconnector) ConnectDependencies(_ context.Context) error { dialer, ok := d.app.RetrieveDomain(domains.DomainNameDialer).(domains.Dialer) if !ok { return fmt.Errorf( "%w: %w (%s)", ErrDeconnector, ErrConnectDependencies, "dialer domain interface conversion failed", ) } d.dialer = dialer return nil } func (d *Deconnector) Start(_ context.Context) error { return nil }