From f79e98479129b63c0d1740015f28854444601546 Mon Sep 17 00:00:00 2001 From: Muchogo Date: Tue, 22 Mar 2022 22:37:20 +0300 Subject: [PATCH] fix: mycarehub isc initialization --- .../infrastructure/services/pubsub/service.go | 20 +++++++++---------- .../services/pubsub/service_test.go | 5 +---- .../services/pubsub/subscriber.go | 4 ++-- pkg/clinical/presentation/config.go | 7 +++---- 4 files changed, 16 insertions(+), 20 deletions(-) diff --git a/pkg/clinical/infrastructure/services/pubsub/service.go b/pkg/clinical/infrastructure/services/pubsub/service.go index a1c19cdc..487576e8 100644 --- a/pkg/clinical/infrastructure/services/pubsub/service.go +++ b/pkg/clinical/infrastructure/services/pubsub/service.go @@ -8,7 +8,7 @@ import ( "cloud.google.com/go/pubsub" "github.com/savannahghi/clinical/pkg/clinical/application/common" "github.com/savannahghi/clinical/pkg/clinical/application/extensions" - "github.com/savannahghi/clinical/pkg/clinical/infrastructure/services/mycarehub" + "github.com/savannahghi/clinical/pkg/clinical/infrastructure" "github.com/savannahghi/clinical/pkg/clinical/usecases" "github.com/savannahghi/serverutils" ) @@ -55,24 +55,24 @@ type ServicePubsub interface { // ServicePubSubMessaging is used to send and receive pubsub notifications type ServicePubSubMessaging struct { - client *pubsub.Client - baseExt extensions.BaseExtension - myCareHub mycarehub.IServiceMyCareHub - usecases usecases.ClinicalUseCase + client *pubsub.Client + baseExt extensions.BaseExtension + infra infrastructure.Infrastructure + usecases usecases.ClinicalUseCase } // NewServicePubSubMessaging returns a new instance of pubsub func NewServicePubSubMessaging( client *pubsub.Client, baseExt extensions.BaseExtension, - myCareHub mycarehub.IServiceMyCareHub, + infra infrastructure.Infrastructure, usecases usecases.ClinicalUseCase, ) (*ServicePubSubMessaging, error) { s := &ServicePubSubMessaging{ - client: client, - baseExt: baseExt, - myCareHub: myCareHub, - usecases: usecases, + client: client, + baseExt: baseExt, + infra: infra, + usecases: usecases, } ctx := context.Background() diff --git a/pkg/clinical/infrastructure/services/pubsub/service_test.go b/pkg/clinical/infrastructure/services/pubsub/service_test.go index 9f08c63b..cae1038e 100644 --- a/pkg/clinical/infrastructure/services/pubsub/service_test.go +++ b/pkg/clinical/infrastructure/services/pubsub/service_test.go @@ -9,7 +9,6 @@ import ( "cloud.google.com/go/pubsub" "github.com/savannahghi/clinical/pkg/clinical/application/extensions" "github.com/savannahghi/clinical/pkg/clinical/infrastructure" - "github.com/savannahghi/clinical/pkg/clinical/infrastructure/services/mycarehub" pubsubmessaging "github.com/savannahghi/clinical/pkg/clinical/infrastructure/services/pubsub" "github.com/savannahghi/clinical/pkg/clinical/usecases" "github.com/savannahghi/firebasetools" @@ -36,15 +35,13 @@ func InitializeTestPubSub(t *testing.T) (*pubsubmessaging.ServicePubSubMessaging // Initialize base (common) extension baseExtension := extensions.NewBaseExtensionImpl(fc) - iscExtension := extensions.NewISCExtension() - myCareHub := mycarehub.NewServiceMyCareHub(iscExtension, baseExtension) infrastructure := infrastructure.NewInfrastructureInteractor() usecases := usecases.NewUsecasesInteractor(infrastructure) pubSub, err := pubsubmessaging.NewServicePubSubMessaging( pubSubClient, baseExtension, - myCareHub, + infrastructure, usecases, ) if err != nil { diff --git a/pkg/clinical/infrastructure/services/pubsub/subscriber.go b/pkg/clinical/infrastructure/services/pubsub/subscriber.go index 7042eefb..62ef3dc9 100644 --- a/pkg/clinical/infrastructure/services/pubsub/subscriber.go +++ b/pkg/clinical/infrastructure/services/pubsub/subscriber.go @@ -48,7 +48,7 @@ func (ps ServicePubSubMessaging) ReceivePubSubPushMessages( return } - profile, err := ps.myCareHub.UserProfile(ctx, data.UserID) + profile, err := ps.infra.MyCareHub.UserProfile(ctx, data.UserID) if err != nil { serverutils.WriteJSONResponse(w, errorcodeutil.CustomError{ Err: err, @@ -81,7 +81,7 @@ func (ps ServicePubSubMessaging) ReceivePubSubPushMessages( return } - err = ps.myCareHub.AddFHIRIDToPatientProfile(ctx, *patient.PatientRecord.ID, *profile.ID) + err = ps.infra.MyCareHub.AddFHIRIDToPatientProfile(ctx, *patient.PatientRecord.ID, *profile.ID) if err != nil { serverutils.WriteJSONResponse(w, errorcodeutil.CustomError{ Err: err, diff --git a/pkg/clinical/presentation/config.go b/pkg/clinical/presentation/config.go index 0e530764..957e5b1f 100644 --- a/pkg/clinical/presentation/config.go +++ b/pkg/clinical/presentation/config.go @@ -15,7 +15,6 @@ import ( "github.com/gorilla/mux" "github.com/savannahghi/clinical/pkg/clinical/application/extensions" "github.com/savannahghi/clinical/pkg/clinical/infrastructure" - "github.com/savannahghi/clinical/pkg/clinical/infrastructure/services/mycarehub" pubsubmessaging "github.com/savannahghi/clinical/pkg/clinical/infrastructure/services/pubsub" "github.com/savannahghi/clinical/pkg/clinical/presentation/graph" "github.com/savannahghi/clinical/pkg/clinical/presentation/graph/generated" @@ -101,18 +100,18 @@ func Router(ctx context.Context) (*mux.Router, error) { } baseExtension := extensions.NewBaseExtensionImpl(fc) - iscExtension := extensions.NewISCExtension() + projectID := serverutils.MustGetEnvVar(serverutils.GoogleCloudProjectIDEnvVarName) pubSubClient, err := pubsub.NewClient(ctx, projectID) if err != nil { return nil, fmt.Errorf("unable to initialize pubsub client: %w", err) } - myCareHub := mycarehub.NewServiceMyCareHub(iscExtension, baseExtension) + infrastructure := infrastructure.NewInfrastructureInteractor() usecases := usecases.NewUsecasesInteractor(infrastructure) h := rest.NewPresentationHandlers(infrastructure, usecases) - pubSub, err := pubsubmessaging.NewServicePubSubMessaging(pubSubClient, baseExtension, myCareHub, usecases) + pubSub, err := pubsubmessaging.NewServicePubSubMessaging(pubSubClient, baseExtension, infrastructure, usecases) if err != nil { return nil, fmt.Errorf("failed to initialize pubsub messaging service: %v", err) }