protected override void Configure(IObjectTypeDescriptor descriptor) { descriptor.ExtendSubscription(); descriptor.Field("onInstallationStep") .Description("A subscription for when a game installation step occurs.") .Type <NonNullType <InstallationStepPayloadType> >() .Argument("jobId", arg => arg.Type <NonNullType <UuidType> >()) .SubscribeToTopic <Guid, OnInstallationStepMessage>("jobId") .Resolve(ctx => ctx.GetEventMessage <InstallationStepPayload>()); descriptor.Field("onInstallationComplete") .Description("A subscription for when a game installation completes.") .Type <NonNullType <InstallationCompletePayloadType> >() .Argument("jobId", arg => arg.Type <NonNullType <UuidType> >()) .SubscribeToTopic <Guid, OnInstallationCompleteMessage>("jobId") .Resolve(ctx => ctx.GetEventMessage <InstallationCompletePayload>()); descriptor.Field("onInstallationCancel") .Description("A subscription for when a game installation is cancelled.") .Type <NonNullType <InstallationCancelledPayloadType> >() .Argument("jobId", arg => arg.Type <NonNullType <UuidType> >()) .SubscribeToTopic <Guid, OnInstallationCancelMessage>("jobId") .Resolve(ctx => ctx.GetEventMessage <InstallationCancelledPayload>()); }
protected override void Configure(IObjectTypeDescriptor descriptor) { descriptor.ExtendSubscription(); descriptor.Field("onEmulationCleanup") .Description("A subscription for the cleanupEmulation mutation.") .Type <NonNullType <EmulationInstancePayloadType> >() .Argument("instanceId", arg => arg.Type <NonNullType <UuidType> >()) .SubscribeToTopic <Guid, OnEmulationCleanupMessage>("instanceId") .Resolve(ctx => ctx.GetEventMessage <EmulationInstancePayload>()); descriptor.Field("onEmulationStart") .Description("A subscription for the startEmulation mutation.") .Type <NonNullType <EmulationInstancePayloadType> >() .Argument("instanceId", arg => arg.Type <NonNullType <UuidType> >()) .SubscribeToTopic <Guid, OnEmulationStartMessage>("instanceId") .Resolve(ctx => ctx.GetEventMessage <EmulationInstancePayload>()); descriptor.Field("onEmulationStop") .Description("A subscription for when an emulation ends. The payload will be the same as in the corresponding `onEmulationStart` subscription.") .Type <NonNullType <EmulationInstancePayloadType> >() .Argument("instanceId", arg => arg.Type <NonNullType <UuidType> >()) .SubscribeToTopic <Guid, OnEmulationStopMessage>("instanceId") .Resolve(ctx => ctx.GetEventMessage <EmulationInstancePayload>()); descriptor.Field("onEmulationSetupEnvironment") .Description("A subscription for the setupEmulationEnvironment mutation.") .Type <NonNullType <EmulationInstancePayloadType> >() .Argument("instanceId", arg => arg.Type <NonNullType <UuidType> >()) .SubscribeToTopic <Guid, OnEmulationSetupEnvironmentMessage>("instanceId") .Resolve(ctx => ctx.GetEventMessage <EmulationInstancePayload>()); descriptor.Field("onEmulationCompileConfiguration") .Description("A subscription for the compileEmulationConfiguration mutation.") .Type <NonNullType <EmulationInstancePayloadType> >() .Argument("instanceId", arg => arg.Type <NonNullType <UuidType> >()) .SubscribeToTopic <Guid, OnEmulationCompileConfigurationMessage>("instanceId") .Resolve(ctx => ctx.GetEventMessage <EmulationInstancePayload>()); descriptor.Field("onEmulationRestoreSave") .Description("A subscription for the restoreEmulationSave mutation.") .Type <NonNullType <EmulationInstancePayloadType> >() .Argument("instanceId", arg => arg.Type <NonNullType <UuidType> >()) .SubscribeToTopic <Guid, OnEmulationRestoreSaveMessage>("instanceId") .Resolve(ctx => ctx.GetEventMessage <EmulationInstancePayload>()); descriptor.Field("onEmulationPersistSave") .Description("A subscription for the persistEmulationSave mutation.") .Type <NonNullType <PersistEmulationSavePayloadType> >() .Argument("instanceId", arg => arg.Type <NonNullType <UuidType> >()) .SubscribeToTopic <Guid, OnEmulationPersistSaveMessage>("instanceId") .Resolve(ctx => ctx.GetEventMessage <PersistEmulationSavePayload>()); }
protected override void Configure(IObjectTypeDescriptor descriptor) { descriptor.ExtendSubscription(); descriptor.Field("onScrapeContextStep") .Description("A subscription for when a scrape context step occurs.") .Type <NonNullType <ScrapeContextStepPayloadType> >() .Argument("jobId", arg => arg.Type <NonNullType <UuidType> >()) .Resolver(ctx => { var message = ctx.GetEventMessage <OnScrapeContextStepMessage>(); return(message.Payload); }); descriptor.Field("onScrapeContextComplete") .Description("A subscription for when a scrape context completes.") .Type <NonNullType <ScrapeContextCompletePayloadType> >() .Argument("jobId", arg => arg.Type <NonNullType <UuidType> >()) .Resolver(ctx => { var message = ctx.GetEventMessage <OnScrapeContextCompleteMessage>(); return(message.Payload); }); descriptor.Field("onScrapeContextDelete") .Description("A subscription for when a scrape context is deleted.") .Type <NonNullType <DeleteScrapeContextPayloadType> >() .Argument("jobId", arg => arg.Type <NonNullType <UuidType> >()) .Resolver(ctx => { var message = ctx.GetEventMessage <OnScrapeContextDeleteMessage>(); return(message.Payload); }); descriptor.Field("onScrapeContextCancel") .Description("A subscription for when a scrape context is cancelled.") .Type <NonNullType <CancelScrapeContextPayloadType> >() .Argument("jobId", arg => arg.Type <NonNullType <UuidType> >()) .Resolver(ctx => { var message = ctx.GetEventMessage <OnScrapeContextCancelMessage>(); return(message.Payload); }); descriptor.Field("onScrapeContextApply") .Description("A subscription for when a scrape context is applied to a game.") .Type <NonNullType <ApplyScrapeContextPayloadType> >() .Argument("jobId", arg => arg.Type <NonNullType <UuidType> >()) .Resolver(ctx => { var message = ctx.GetEventMessage <OnScrapeContextApplyMessage>(); return(message.Payload); }); }