Beispiel #1
0
        public Query(IDeviceDataSource deviceDataSource)
        {
            Name = "Query";

            Field <NonNullGraphType <ListGraphType <NonNullGraphType <DeviceGraphType> > > >()
            .Name("allDevices")
            .ResolveAsync(async ctx => await deviceDataSource.GetDevicesAsync());
        }
        public DeviceMutationGraphType(IDeviceDataSource deviceDataSource)
        {
            Field <NonNullGraphType <DeviceGraphType> >()
            .Name("connect")
            .Argument <NonNullGraphType <UShortGraphType> >("universe")
            .ResolveAsync(async ctx =>
            {
                string port  = (string)ctx.UserContext["port"];
                var universe = ctx.GetArgument <UInt16>("universe");
                return(await deviceDataSource.ConnectAsync(port, universe));
            });

            Field <NonNullGraphType <DeviceGraphType> >()
            .Name("disconnect")
            .ResolveAsync(async ctx =>
            {
                string port = (string)ctx.UserContext["port"];
                return(await deviceDataSource.DisconnectAsync(port));
            });
        }