public VehicleSubscription(VehicleReadClient vehicleReadClient) { _vehicleReadClient = vehicleReadClient; AddField(new EventStreamFieldType { Name = "vehicleChange", Type = typeof(VehicleType), Resolver = new FuncFieldResolver <Contracts.Vehicle>(ctx => ctx.Source as Contracts.Vehicle), Subscriber = new EventStreamResolver <Contracts.Vehicle>(GetVehicleChangeSubscription) }); }
public VehicleQueries(VehicleReadClient vehicleReadClient) { Name = "Vehicle"; FieldAsync <VehicleType>("vehicle", "a vehicle", new QueryArguments(new QueryArgument(typeof(StringGraphType)) { Name = "vin" }), async ctx => await ctx.TryAsyncResolve(async context => await vehicleReadClient.GetVehicleAsync(new VehicleRequest { Vin = ctx.Arguments["vin"].ToString() })) ); }