Documentation
¶
Index ¶
- func NewGrpcServer(port string, os OrdersService) *grpc.Server
- func NewOrdersServer(s OrdersService) proto.OrdersServiceServer
- func NewSqlDb(dburl string) (*sql.DB, error)
- type ConsumerService
- type DetailedOrder
- type DetailedOrderProduct
- type EventProducer
- type Order
- type OrdersRepository
- type OrdersService
- type PlaceOrderRequest
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewGrpcServer ¶
func NewGrpcServer(port string, os OrdersService) *grpc.Server
func NewOrdersServer ¶
func NewOrdersServer(s OrdersService) proto.OrdersServiceServer
Types ¶
type ConsumerService ¶
func NewEventConsumer ¶
func NewEventConsumer(ch *amqp.Channel, exchangeName string, ordersRepo OrdersRepository) ConsumerService
type DetailedOrder ¶
type DetailedOrderProduct ¶
type EventProducer ¶
func NewEventProducer ¶
func NewEventProducer(exchange string, ch *amqp.Channel) EventProducer
type OrdersRepository ¶
type OrdersRepository interface {
FetchOrder(id uuid.UUID) (*DetailedOrder, error)
FetchAllOrders() ([]*Order, error)
CreateOrder(id uuid.UUID, userId uuid.UUID, totalQuantity int, priceTotal int, products []*DetailedOrderProduct) error
}
func NewOrdersRepository ¶
func NewOrdersRepository(db *sql.DB) OrdersRepository
type OrdersService ¶
type OrdersService interface {
GetOrder(id uuid.UUID) (*DetailedOrder, error)
GetAllOrders() ([]*Order, error)
PlaceOrder(req PlaceOrderRequest) (*uuid.UUID, error)
}
func NewOrdersService ¶
func NewOrdersService(repo OrdersRepository, p EventProducer) OrdersService
type PlaceOrderRequest ¶
type PlaceOrderRequest struct {
UserId uuid.UUID
Products []*DetailedOrderProduct
}
Click to show internal directories.
Click to hide internal directories.