public MessageType(OrgData data) { Name = "Message"; Field <IdGraphType>("Id", resolve: context => context.Source.Id.ToString()); Field <PublicUserDataType>("From", resolve: context => data.GetUser(context.Source.From.ToString())); Field <PublicUserDataType>("To", resolve: context => data.GetUser(context.Source.To.ToString())); Field <StringGraphType>("Body", resolve: context => context.Source.Body.ToString()); Field <StringGraphType>("Type", resolve: context => context.Source.Type.ToString()); Field <BooleanGraphType>("Read", resolve: context => context.Source.Read.ToString()); }
public AnswerType(OrgData data) { Name = "Answer"; Field <IdGraphType>("Id", resolve: context => context.Source.Id.ToString()); Field <SessionType>("Session", resolve: context => data.GetSession(context.Source.SessionId)); Field <QuestionType>("Question", resolve: context => data.GetQuestion(context.Source.QuestionId.ToString())); Field <AlternativeType>("Alternative", resolve: context => data.GetAlternative( context.Source.SessionId, context.Source.QuestionId, context.Source.AlternativeId )); Field <PublicUserDataType>("User", resolve: context => data.GetUser(context.Source.UserId.ToString())); Field <StringGraphType>("Value", resolve: context => context.Source.Value.ToString()); }
public SessionType(OrgData data) { Name = "Session"; Field <IdGraphType>("Id", resolve: context => context.Source.Id.ToString()); Field <StringGraphType>("Name", resolve: context => context.Source.Name.ToString()); Field <PublicUserDataType>("Leader", resolve: context => data.GetUser(context.Source.Leader.ToString())); Field <StringGraphType>("Status", resolve: context => context.Source.Status.ToString()); Field <ListGraphType <QuestionType> >("Questions", resolve: context => context.Source.Questions); Field <QuestionType>("CurrentQuestion", resolve: context => { return(context.Source.CurrentQuestion == null ? null : data.GetQuestion(context.Source.CurrentQuestion.ToString())); }); }
public Queries(OrgData data, IHttpContextAccessor accessor) { Name = "Query"; Field <ADUserType>("my", resolve: context => data.GetDirectoryEntry(accessor.HttpContext.User.Identity.Name.Split("\\")[1])); Field <ADUserType>( "directoryEntry", arguments: new QueryArguments( new QueryArgument <NonNullGraphType <StringGraphType> > { Name = "username", Description = "sAMAccountName of the directory entry" } ), resolve: context => data.GetDirectoryEntry(context.GetArgument <string>("username")) ); Field <ListGraphType <PublicUserDataType> >("users", resolve: context => data.GetAPHUsers()); Field <PublicUserDataType>( "user", arguments: new QueryArguments( new QueryArgument <NonNullGraphType <StringGraphType> > { Name = "username", Description = "sAMAccountName of the user" } ), resolve: context => data.GetUser(context.GetArgument <string>("username")) ); Field <ListGraphType <MessageType> >( "messages", arguments: new QueryArguments( new QueryArgument <NonNullGraphType <StringGraphType> > { Name = "type", Description = "message type" } ), resolve: context => data.GetMessages(accessor.HttpContext.User.Identity.Name.Split("\\")[1], context.GetArgument <string>("type")) ); Field <ListGraphType <QuestionType> >( "questions", resolve: context => data.GetQuestions() ); Field <ListGraphType <QuestionAnalysisType> >( "analyzeQuestion", arguments: new QueryArguments( new QueryArgument <NonNullGraphType <StringGraphType> > { Name = "sessionId", Description = "session id" }, new QueryArgument <NonNullGraphType <StringGraphType> > { Name = "questionId", Description = "question id" } ), resolve: context => data.AnalyzeSessionQuestion(context.GetArgument <string>("sessionId"), context.GetArgument <string>("questionId")) ); Field <ListGraphType <StringGraphType> >( "getRespondents", arguments: new QueryArguments( new QueryArgument <NonNullGraphType <StringGraphType> > { Name = "sessionId", Description = "session id" }, new QueryArgument <NonNullGraphType <StringGraphType> > { Name = "questionId", Description = "question id" } ), resolve: context => data.GetRespondents(context.GetArgument <string>("sessionId"), context.GetArgument <string>("questionId")) ); Field <QuestionType>( "question", arguments: new QueryArguments( new QueryArgument <NonNullGraphType <StringGraphType> > { Name = "id", Description = "question id" } ), resolve: context => data.GetQuestion(context.GetArgument <string>("id")) ); Field <SessionType>( "session", arguments: new QueryArguments( new QueryArgument <NonNullGraphType <StringGraphType> > { Name = "id", Description = "session id" } ), resolve: context => data.GetSession(context.GetArgument <string>("id")) ); Field <ListGraphType <SessionType> >( "sessions", resolve: context => data.GetSessions() ); Field <ListGraphType <AnswerType> >( "answers", resolve: context => data.GetAnswers() ); Field <ListGraphType <AnswerType> >( "answersForSessionQuestion", arguments: new QueryArguments( new QueryArgument <NonNullGraphType <StringGraphType> > { Name = "sessionId", Description = "session id" }, new QueryArgument <NonNullGraphType <StringGraphType> > { Name = "questionId", Description = "question id" } ), resolve: context => data.GetAnswers(context.GetArgument <string>("sessionId"), context.GetArgument <string>("questionId")) ); Field <ListGraphType <NewUserType> >( "newUsers", resolve: context => data.GetNewUsers() ); }