public UniversitySubscription(CourseMessageService messageService) { this.messageService = messageService; Name = "Subscription"; AddField(new EventStreamFieldType { Name = "courseAdded", Type = typeof(CourseType), Resolver = new FuncFieldResolver <Course> (ResolveMessage), Subscriber = new EventStreamResolver <Course> (Subscribe) }); }
public UniversityMutation(UniversalRepository universalRepository, CourseMessageService courseMessageService) { _universalRepository = universalRepository; _courseMessageService = courseMessageService; Name = "Mutation"; Field <CourseType>( "createCourse", arguments: new QueryArguments(new QueryArgument <NonNullGraphType <CourseInputType> > { Name = "course" }), resolve: context => { var course = context.GetArgument <Course>("course"); var result = _universalRepository.AddCourse(course); return(_courseMessageService.AddMessage(result)); }); }