public Task <GroupDTO> CreateNewGroupAsync(CreateGroupDataModel createGroupDataModel, CancellationTokenSource cancellationTokenSource) => Task.Run(async() => { if (!CrossConnectivity.Current.IsConnected) { throw new InvalidOperationException(AppConsts.ERROR_INTERNET_CONNECTION); } GroupDTO createdGroup = null; CreateGroupRequest createGroupRequest = new CreateGroupRequest() { AccessToken = GlobalSettings.Instance.UserProfile.AccesToken, Data = createGroupDataModel, Url = GlobalSettings.Instance.Endpoints.GroupsEndpoints.CreateGroup }; try { CreateGroupResponse createGroupResponse = await _requestProvider.PostAsync <CreateGroupRequest, CreateGroupResponse>(createGroupRequest); if (createGroupResponse != null) { createdGroup = BuildGroup(createGroupResponse); } else { throw new InvalidOperationException(GroupsService._CREATE_GROUP_COMMON_ERROR_MESSAGE); } } catch (ServiceAuthenticationException exc) { _identityUtilService.RefreshToken(); throw exc; } catch (Exception exc) { Crashes.TrackError(exc); throw; } return(createdGroup); }, cancellationTokenSource.Token);
public async Task <GroupModel> CreateGroup(CreateGroupDataModel model) { try { var request = new CreateGroupInputData { Group = model }; var response = _useCaseFactory.Create <IUseCase <CreateGroupInputData, CreateGroupOutputData> >() .Execute(request); logger.Information( $"Type: GroupService; Method: CreateGroup; Info: CreateGroup by Name: {request.Group.GroupName} successfully"); return(response.Result.Group); } catch (Exception e) { logger.Error($"Type: GroupService; Method: CreateGroup; Error: {e.Message}"); throw; } }
public async Task <object> CreateGroup(CreateGroupDataModel group) { if (Equals(group, null)) { return(new BadRequestResult()); } GroupModel response; try { response = await groupService.CreateGroup(group); logger.Information("Type: GroupController; Method: CreateGroup; Info: Create Group successfully"); } catch (Exception e) { logger.Error($"Type: GroupController; Method: CreateGroup; Error: {e.Message}"); return(new BadRequestObjectResult(e.Message)); } return(new OkObjectResult(response)); }