public Task Post(ApplySearchCriteria request)
        {
            var item = _libraryManager.GetItemById(new Guid(request.Id));

            //foreach (var key in request.ProviderIds)
            //{
            //    var value = key.Value;

            //    if (!string.IsNullOrWhiteSpace(value))
            //    {
            //        item.SetProviderId(key.Key, value);
            //    }
            //}
            Logger.LogInformation("Setting provider id's to item {0}-{1}: {2}", item.Id, item.Name, _json.SerializeToString(request.ProviderIds));

            // Since the refresh process won't erase provider Ids, we need to set this explicitly now.
            item.ProviderIds = request.ProviderIds;
            //item.ProductionYear = request.ProductionYear;
            //item.Name = request.Name;

            return(_providerManager.RefreshFullItem(item, new MetadataRefreshOptions(new DirectoryService(Logger, _fileSystem))
            {
                MetadataRefreshMode = MetadataRefreshMode.FullRefresh,
                ImageRefreshMode = MetadataRefreshMode.FullRefresh,
                ReplaceAllMetadata = true,
                ReplaceAllImages = request.ReplaceAllImages,
                SearchResult = request
            }, CancellationToken.None));
        }
        public void Post(ApplySearchCriteria request)
        {
            var item = _libraryManager.GetItemById(new Guid(request.Id));

            //foreach (var key in request.ProviderIds)
            //{
            //    var value = key.Value;

            //    if (!string.IsNullOrWhiteSpace(value))
            //    {
            //        item.SetProviderId(key.Key, value);
            //    }
            //}
            item.ProviderIds = request.ProviderIds;

            var service = new ItemRefreshService(_libraryManager)
            {
                Logger         = Logger,
                Request        = Request,
                ResultFactory  = ResultFactory,
                SessionContext = SessionContext
            };

            service.Post(new RefreshItem
            {
                Id = request.Id,
                MetadataRefreshMode = MetadataRefreshMode.FullRefresh,
                ImageRefreshMode    = ImageRefreshMode.FullRefresh,
                ReplaceAllMetadata  = true,
                ReplaceAllImages    = true,
                Recursive           = true
            });
        }
Example #3
0
        public void Post(ApplySearchCriteria request)
        {
            var item = _libraryManager.GetItemById(new Guid(request.Id));

            //foreach (var key in request.ProviderIds)
            //{
            //    var value = key.Value;

            //    if (!string.IsNullOrWhiteSpace(value))
            //    {
            //        item.SetProviderId(key.Key, value);
            //    }
            //}
            Logger.Info("Setting provider id's to item {0}-{1}: {2}", item.Id, item.Name, _json.SerializeToString(request.ProviderIds));
            item.ProviderIds = request.ProviderIds;

            var task = _providerManager.RefreshFullItem(item, new MetadataRefreshOptions(_fileSystem)
            {
                MetadataRefreshMode = MetadataRefreshMode.FullRefresh,
                ImageRefreshMode    = ImageRefreshMode.FullRefresh,
                ReplaceAllMetadata  = true,
                ReplaceAllImages    = request.ReplaceAllImages
            }, CancellationToken.None);

            Task.WaitAll(task);
        }
Example #4
0
        public void Post(ApplySearchCriteria request)
        {
            var item = _libraryManager.GetItemById(new Guid(request.Id));

            //foreach (var key in request.ProviderIds)
            //{
            //    var value = key.Value;

            //    if (!string.IsNullOrWhiteSpace(value))
            //    {
            //        item.SetProviderId(key.Key, value);
            //    }
            //}
            item.ProviderIds = request.ProviderIds;

            var task = _providerManager.RefreshFullItem(item, new MetadataRefreshOptions
            {
                MetadataRefreshMode = MetadataRefreshMode.FullRefresh,
                ImageRefreshMode    = ImageRefreshMode.FullRefresh,
                ReplaceAllMetadata  = true,
                ReplaceAllImages    = request.ReplaceAllImages
            }, CancellationToken.None);

            Task.WaitAll(task);
        }
        public void Post(ApplySearchCriteria request)
        {
            var item = _libraryManager.GetItemById(new Guid(request.Id));

            foreach (var key in request.ProviderIds)
            {
                var value = key.Value;

                if (!string.IsNullOrWhiteSpace(value))
                {
                    item.SetProviderId(key.Key, value);
                }
            }

            var task = item.RefreshMetadata(new MetadataRefreshOptions
            {
                MetadataRefreshMode = MetadataRefreshMode.FullRefresh,
                ImageRefreshMode    = ImageRefreshMode.FullRefresh,
                ReplaceAllMetadata  = true
            }, CancellationToken.None);

            Task.WaitAll(task);
        }