diff --git a/cmd/cart/main.go b/cmd/cart/main.go index 7226698..e4d8192 100644 --- a/cmd/cart/main.go +++ b/cmd/cart/main.go @@ -151,7 +151,12 @@ func main() { log.Fatalf("Error creating inventory service: %v\n", err) } - syncedServer := NewPoolServer(pool, fmt.Sprintf("%s, %s", name, podIp), klarnaClient, inventoryService, rdb) + inventoryReservationService, err := inventory.NewRedisCartReservationService(rdb) + if err != nil { + log.Fatalf("Error creating inventory reservation service: %v\n", err) + } + + syncedServer := NewPoolServer(pool, fmt.Sprintf("%s, %s", name, podIp), klarnaClient, inventoryService, inventoryReservationService) app := &App{ pool: pool, diff --git a/cmd/cart/pool-server.go b/cmd/cart/pool-server.go index c6aab31..cd03c9e 100644 --- a/cmd/cart/pool-server.go +++ b/cmd/cart/pool-server.go @@ -19,7 +19,6 @@ import ( "github.com/matst80/go-redis-inventory/pkg/inventory" "github.com/prometheus/client_golang/prometheus" "github.com/prometheus/client_golang/prometheus/promauto" - "github.com/redis/go-redis/v9" "go.opentelemetry.io/contrib/bridges/otelslog" "go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp" "google.golang.org/protobuf/types/known/anypb" @@ -50,12 +49,13 @@ type PoolServer struct { reservationService inventory.CartReservationService } -func NewPoolServer(pool actor.GrainPool[*cart.CartGrain], pod_name string, klarnaClient *KlarnaClient, inventoryService inventory.InventoryService, inventoryRedisClient *redis.Client) *PoolServer { +func NewPoolServer(pool actor.GrainPool[*cart.CartGrain], pod_name string, klarnaClient *KlarnaClient, inventoryService inventory.InventoryService, inventoryReservationService inventory.CartReservationService) *PoolServer { srv := &PoolServer{ - GrainPool: pool, - pod_name: pod_name, - klarnaClient: klarnaClient, - inventoryService: inventoryService, + GrainPool: pool, + pod_name: pod_name, + klarnaClient: klarnaClient, + inventoryService: inventoryService, + reservationService: inventoryReservationService, } return srv