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>());
        }
示例#2
0
        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>());
        }
示例#3
0
        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);
            });
        }