Ejemplo n.º 1
0
 public async Task  AddSubscriptionToUser(Guid userId, Guid subscriptionId)
 {
     using (var client = new UserManagementClient())
     {
         var requestData = new AddSubcriptionToUser()
         {
             UserId = userId, SubscriptionId = subscriptionId
         };
         await client.AddSubscriptionToUserAsync(requestData);
     }
 }
 public void AddSubscriptionToUser(AddSubcriptionToUser addSubcriptionToUser)
 {
     try
     {
         CommandService.AddSubscriptionToUser(addSubcriptionToUser);
     }
     catch (Exception ex)
     {
         Logger.LogError(ex);
         throw new FaultException(ex.Message);
     }
 }
        public void AddSubscriptionToUser(AddSubcriptionToUser addSubcriptionToUser)
        {
            var user = Repository.GetById(addSubcriptionToUser.UserId);

            if (user == null)
            {
                // This can be a custom exception
                throw new Exception($"User:{addSubcriptionToUser.UserId} not found");
            }
            var subscription = Repository.GetSubscriptionById(addSubcriptionToUser.SubscriptionId);

            if (subscription == null)
            {
                // This can be a custom exception
                throw new Exception($"Subscription:{addSubcriptionToUser.SubscriptionId} not found");
            }
            user.AddSubscription(subscription);
            UnitOfWork.Commit();
        }
Ejemplo n.º 4
0
        public async Task <IHttpActionResult> AddSubscriptionToUser([FromUri] Guid id, [FromBody] AddSubcriptionToUser request)
        {
            try
            {
                await CommandService.AddSubscriptionToUser(id, request.SubscriptionId);

                return(Ok());
            }
            catch (Exception ex)
            {
                Logger.LogError(ex);
                // Can be fine tuned to throw a general exception instead of sending the server exception
                return(InternalServerError(ex));
            }
        }