コード例 #1
0
        public static IMagicMediaServerBuilder AddCoreMediaServices(
            this IMagicMediaServerBuilder builder)
        {
            builder.Services.AddCoreMediaServices(builder.Configuration);

            return(builder);
        }
コード例 #2
0
        private static MessagingOptions GetOptions(this IMagicMediaServerBuilder builder)
        {
            MessagingOptions options = builder.Configuration.GetSection("MagicMedia:Messaging")
                                       .Get <MessagingOptions>();

            return(options);
        }
コード例 #3
0
        public static IMagicMediaServerBuilder AddMongoDbStore(
            this IMagicMediaServerBuilder builder)
        {
            builder.Services.AddMongoDbStore(builder.Configuration);

            return(builder);
        }
コード例 #4
0
        public static IMagicMediaServerBuilder AddFileSystemDiscovery(
            this IMagicMediaServerBuilder builder)
        {
            builder.Services.AddSingleton <IMediaSourceDiscovery, FileSystemSourceDiscovery>();
            builder.Services.AddSingleton <IMediaSourceDiscoveryFactory, MediaSourceDiscoveryFactory>();

            return(builder);
        }
コード例 #5
0
        public static IMagicMediaServerBuilder AddJobs(this IMagicMediaServerBuilder builder)
        {
            builder.Services.AddSingleton <IJob, ImportNewMediaJob>();
            builder.Services.AddSingleton <IJob, UpdateAllAlbumSummaryJob>();
            builder.Services.AddSingleton <IJob, UpdateAllPersonSummaryJob>();

            return(builder);
        }
コード例 #6
0
        public static IMagicMediaServerBuilder AddGraphQLServer(
            this IMagicMediaServerBuilder builder)
        {
            builder.Services.AddGraphQLServer()
            .AddMagicMediaGrapQL();

            return(builder);
        }
コード例 #7
0
        public static IMagicMediaServerBuilder AddBingMaps(
            this IMagicMediaServerBuilder builder,
            BingMapsOptions options)
        {
            builder.Services.AddSingleton(options);
            builder.Services.AddSingleton <IGeoDecoderService, BingMapsGeoDecoderService>();

            return(builder);
        }
コード例 #8
0
        public static IMagicMediaServerBuilder AddAzureAI(
            this IMagicMediaServerBuilder builder)
        {
            AzureAIOptions options = builder.Configuration
                                     .GetSection("MagicMedia:AzureAI")
                                     .Get <AzureAIOptions>();

            builder.Services.AddAzureAI(options);

            return(builder);
        }
コード例 #9
0
        public static IMagicMediaServerBuilder AddBingMaps(
            this IMagicMediaServerBuilder builder)
        {
            BingMapsOptions options = builder.Configuration
                                      .GetSection("MagicMedia:BingMaps")
                                      .Get <BingMapsOptions>();

            builder.AddBingMaps(options);

            return(builder);
        }
コード例 #10
0
        public static IMagicMediaServerBuilder AddWorkerMessaging(
            this IMagicMediaServerBuilder builder)
        {
            MessagingOptions options = builder.GetOptions();

            builder.Services.AddMassTransit(s =>
            {
                s.AddWorkerConsumers();
                s.ConfigureBus(options.ServiceBus?.WorkerQueueName, options);
            });

            return(builder);
        }
コード例 #11
0
        public static IMagicMediaServerBuilder AddProcessingMediaServices(this IMagicMediaServerBuilder builder)
        {
            builder.Services.AddSingleton <IMediaProcessorTask, AutoOrientTask>();
            builder.Services.AddSingleton <IMediaProcessorTask, ExtractMetadataTask>();
            builder.Services.AddSingleton <IMediaProcessorTask, GenerateThumbnailsTask>();
            builder.Services.AddSingleton <IMediaProcessorTask, BuildFaceDataTask>();
            builder.Services.AddSingleton <IMediaProcessorTask, GenerateWebImageTask>();
            builder.Services.AddSingleton <IMediaProcessorTask, SaveMediaTask>();
            builder.Services.AddSingleton <IMediaProcessorTask, PredictPersonsTask>();
            builder.Services.AddSingleton <IMediaProcessorTask, SaveFaceDataAsync>();
            builder.Services.AddSingleton <IMediaProcessorTask, ExtractVideoDataTask>();
            builder.Services.AddSingleton <IMediaProcessorTask, CleanUpSourceTask>();
            builder.Services.AddSingleton <IMediaProcessorTask, BuildVideoPreviewTask>();
            builder.Services.AddSingleton <IMediaProcessorTask, BuildGifVideoPreviewTask>();
            builder.Services.AddSingleton <IMediaProcesserTaskFactory, MediaProcesserTaskFactory>();
            builder.Services.AddSingleton <IMediaProcessorFlowFactory, MediaProcessorFlowFactory>();
            builder.Services.AddSingleton <IMediaProcessorFlowFactory, MediaProcessorFlowFactory>();
            builder.Services.AddSingleton <IMediaFaceScanner, MediaFaceScanner>();
            builder.Services.AddSingleton <IMediaSourceScanner, MediaSourceScanner>();
            builder.Services.AddSingleton <IRescanFacesHandler, RescanFacesHandler>();

            return(builder);
        }