public UserFriendQuery(IUserFriendRepository repository) { FieldAsync <ListUserFriendQueryModelType>( "search", arguments: new QueryArguments( new QueryArgument <NonNullGraphType <PagedRequestType> > { Name = "pagination" }, new QueryArgument <NonNullGraphType <OrderedRequestType> > { Name = "ordering" }, new QueryArgument <UserFriendFilteredRequestType> { Name = "filter", DefaultValue = new UserFriendFilter() } ), resolve: async context => { var filtering = context.GetArgument <UserFriendFilter>("filter"); var pagination = context.GetArgument <PagedRequest>("pagination"); var ordering = context.GetArgument <OrderedRequest>("ordering"); var(count, friends) = await repository.SearchAsync(filtering, pagination, ordering); return(new ListResult <UserFriend> { TotalCount = count, Items = friends }); } ); }
public UserService(IUserRepository userRepository, IUserFriendRepository userFriendRepository, IUserLocationRepository userLocationRepository, IUserPreferenceRepository userPreferenceRepository, IUserResponsRepository userReponseRepository, IUserNotificationRepository userNotificationRepository) { _userRepository = userRepository; _userFriendRepository = userFriendRepository; _userLocationRepository = userLocationRepository; _userPreferenceRepository = userPreferenceRepository; _userReponseRepository = userReponseRepository; _userNotificationRepository = userNotificationRepository; }
public DatasetService( IDatasetRepository datasetRepository, IUserFriendRepository userFriendRepository, IUserRepository userRepository, IUserDatasetRepository userDatasetRepository, IStringUtilAdapter stringUtilAdapter ) { fDatasetRepository = datasetRepository; fUserDatasetRepository = userDatasetRepository; fUserFriendRepository = userFriendRepository; fUserRepository = userRepository; fStringUtilAdapter = stringUtilAdapter; }
public UserFriendMutation(IUserFriendRepository repository) { FieldAsync <UserFriendQueryType>( "addFriend", arguments: new QueryArguments( new QueryArgument <NonNullGraphType <StringGraphType> > { Name = "friendName" }, new QueryArgument <NonNullGraphType <StringGraphType> > { Name = "userId" } ), resolve: async context => { var name = context.GetArgument <string>("friendName"); var user = context.GetArgument <Guid>("userId"); return(await context.TryAsyncResolve(async _ => await repository.AddAsync(name, user))); } ); FieldAsync <UserFriendQueryType>( "removeFriend", arguments: new QueryArguments(new QueryArgument <NonNullGraphType <StringGraphType> > { Name = "id" }), resolve: async context => { var id = context.GetArgument <string>("id"); return(await context.TryAsyncResolve( async _ => await repository.RemoveAsync(Guid.Parse(id)) )); } ); }