@@ -33,8 +33,18 @@ public override async Task<Empty> AddItem(AddItemRequest request, ServerCallCont
33
33
activity ? . SetTag ( "app.product.id" , request . Item . ProductId ) ;
34
34
activity ? . SetTag ( "app.product.quantity" , request . Item . Quantity ) ;
35
35
36
- await _cartStore . AddItemAsync ( request . UserId , request . Item . ProductId , request . Item . Quantity ) ;
37
- return Empty ;
36
+ try
37
+ {
38
+ await _cartStore . AddItemAsync ( request . UserId , request . Item . ProductId , request . Item . Quantity ) ;
39
+
40
+ return Empty ;
41
+ }
42
+ catch ( RpcException ex )
43
+ {
44
+ activity ? . RecordException ( ex ) ;
45
+ activity ? . SetStatus ( ActivityStatusCode . Error , ex . Message ) ;
46
+ throw ;
47
+ }
38
48
}
39
49
40
50
public override async Task < Cart > GetCart ( GetCartRequest request , ServerCallContext context )
@@ -43,15 +53,24 @@ public override async Task<Cart> GetCart(GetCartRequest request, ServerCallConte
43
53
activity ? . SetTag ( "app.user.id" , request . UserId ) ;
44
54
activity ? . AddEvent ( new ( "Fetch cart" ) ) ;
45
55
46
- var cart = await _cartStore . GetCartAsync ( request . UserId ) ;
47
- var totalCart = 0 ;
48
- foreach ( var item in cart . Items )
56
+ try
49
57
{
50
- totalCart += item . Quantity ;
51
- }
52
- activity ? . SetTag ( "app.cart.items.count" , totalCart ) ;
58
+ var cart = await _cartStore . GetCartAsync ( request . UserId ) ;
59
+ var totalCart = 0 ;
60
+ foreach ( var item in cart . Items )
61
+ {
62
+ totalCart += item . Quantity ;
63
+ }
64
+ activity ? . SetTag ( "app.cart.items.count" , totalCart ) ;
53
65
54
- return cart ;
66
+ return cart ;
67
+ }
68
+ catch ( RpcException ex )
69
+ {
70
+ activity ? . RecordException ( ex ) ;
71
+ activity ? . SetStatus ( ActivityStatusCode . Error , ex . Message ) ;
72
+ throw ;
73
+ }
55
74
}
56
75
57
76
public override async Task < Empty > EmptyCart ( EmptyCartRequest request , ServerCallContext context )
0 commit comments