Merge pull request #1252 from MediaBrowser/master

merge from master
pull/702/head
Luke 9 years ago
commit 1b0b7ac6a5

@ -10,6 +10,8 @@ using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using MediaBrowser.Controller.Entities.Audio;
using MediaBrowser.Controller.LiveTv;
namespace MediaBrowser.Server.Implementations.EntryPoints
{
@ -260,12 +262,17 @@ namespace MediaBrowser.Server.Implementations.EntryPoints
private bool FilterItem(BaseItem item)
{
if (item.LocationType == LocationType.Virtual)
if (!item.IsFolder && item.LocationType == LocationType.Virtual)
{
return false;
}
return !(item is IChannelItem);
if (item is IItemByName && !(item is MusicArtist))
{
return false;
}
return !(item is IChannelItem) && !(item is ILiveTvItem);
}
/// <summary>

@ -22,6 +22,8 @@ using System.Globalization;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using MediaBrowser.Controller.Channels;
using MediaBrowser.Controller.LiveTv;
namespace MediaBrowser.Server.Implementations.EntryPoints.Notifications
{
@ -77,9 +79,9 @@ namespace MediaBrowser.Server.Implementations.EntryPoints.Notifications
_appHost.HasPendingRestartChanged += _appHost_HasPendingRestartChanged;
_appHost.HasUpdateAvailableChanged += _appHost_HasUpdateAvailableChanged;
_appHost.ApplicationUpdated += _appHost_ApplicationUpdated;
_deviceManager.CameraImageUploaded +=_deviceManager_CameraImageUploaded;
_deviceManager.CameraImageUploaded += _deviceManager_CameraImageUploaded;
_userManager.UserLockedOut += _userManager_UserLockedOut;
_userManager.UserLockedOut += _userManager_UserLockedOut;
}
async void _userManager_UserLockedOut(object sender, GenericEventArgs<User> e)
@ -311,25 +313,42 @@ namespace MediaBrowser.Server.Implementations.EntryPoints.Notifications
private readonly List<BaseItem> _itemsAdded = new List<BaseItem>();
void _libraryManager_ItemAdded(object sender, ItemChangeEventArgs e)
{
if (e.Item.LocationType == LocationType.FileSystem && !e.Item.IsFolder)
if (!FilterItem(e.Item))
{
lock (_libraryChangedSyncLock)
return;
}
lock (_libraryChangedSyncLock)
{
if (LibraryUpdateTimer == null)
{
if (LibraryUpdateTimer == null)
{
LibraryUpdateTimer = new Timer(LibraryUpdateTimerCallback, null, 5000,
Timeout.Infinite);
}
else
{
LibraryUpdateTimer.Change(5000, Timeout.Infinite);
}
_itemsAdded.Add(e.Item);
LibraryUpdateTimer = new Timer(LibraryUpdateTimerCallback, null, 5000,
Timeout.Infinite);
}
else
{
LibraryUpdateTimer.Change(5000, Timeout.Infinite);
}
_itemsAdded.Add(e.Item);
}
}
private bool FilterItem(BaseItem item)
{
if (!item.IsFolder && item.LocationType == LocationType.Virtual)
{
return false;
}
if (item is IItemByName && !(item is MusicArtist))
{
return false;
}
return !(item is IChannelItem) && !(item is ILiveTvItem);
}
private async void LibraryUpdateTimerCallback(object state)
{
List<BaseItem> items;

@ -82,7 +82,7 @@ namespace MediaBrowser.Server.Implementations.LiveTv.Listings
UserAgent = UserAgent,
CancellationToken = cancellationToken,
// The data can be large so give it some extra time
TimeoutMs = 60000,
TimeoutMs = 120000,
LogErrorResponseBody = true
};

Loading…
Cancel
Save