aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2016-11-03 02:37:52 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2016-11-03 02:37:52 -0400
commit3eb4091808735858b01855d298226d239be464af (patch)
treea17a94e2c677d60471a79617218c8ef9a7a7dee3
parent41bef184d1036b02baec00734f3edd8abbebf5fe (diff)
move additional classes to new server lib
-rw-r--r--Emby.Server.Implementations/Activity/ActivityManager.cs (renamed from MediaBrowser.Server.Implementations/Activity/ActivityManager.cs)2
-rw-r--r--Emby.Server.Implementations/Dto/DtoService.cs (renamed from MediaBrowser.Server.Implementations/Dto/DtoService.cs)2
-rw-r--r--Emby.Server.Implementations/Emby.Server.Implementations.csproj99
-rw-r--r--Emby.Server.Implementations/FileOrganization/EpisodeFileOrganizer.cs (renamed from MediaBrowser.Server.Implementations/FileOrganization/EpisodeFileOrganizer.cs)27
-rw-r--r--Emby.Server.Implementations/FileOrganization/Extensions.cs (renamed from MediaBrowser.Server.Implementations/FileOrganization/Extensions.cs)2
-rw-r--r--Emby.Server.Implementations/FileOrganization/FileOrganizationNotifier.cs (renamed from MediaBrowser.Server.Implementations/FileOrganization/FileOrganizationNotifier.cs)2
-rw-r--r--Emby.Server.Implementations/FileOrganization/FileOrganizationService.cs (renamed from MediaBrowser.Server.Implementations/FileOrganization/FileOrganizationService.cs)2
-rw-r--r--Emby.Server.Implementations/FileOrganization/NameUtils.cs (renamed from MediaBrowser.Server.Implementations/FileOrganization/NameUtils.cs)21
-rw-r--r--Emby.Server.Implementations/FileOrganization/OrganizerScheduledTask.cs (renamed from MediaBrowser.Server.Implementations/FileOrganization/OrganizerScheduledTask.cs)2
-rw-r--r--Emby.Server.Implementations/FileOrganization/TvFolderOrganizer.cs (renamed from MediaBrowser.Server.Implementations/FileOrganization/TvFolderOrganizer.cs)4
-rw-r--r--Emby.Server.Implementations/Library/CoreResolutionIgnoreRule.cs (renamed from MediaBrowser.Server.Implementations/Library/CoreResolutionIgnoreRule.cs)2
-rw-r--r--Emby.Server.Implementations/Library/LibraryManager.cs (renamed from MediaBrowser.Server.Implementations/Library/LibraryManager.cs)55
-rw-r--r--Emby.Server.Implementations/Library/LocalTrailerPostScanTask.cs (renamed from MediaBrowser.Server.Implementations/Library/LocalTrailerPostScanTask.cs)2
-rw-r--r--Emby.Server.Implementations/Library/MediaSourceManager.cs (renamed from MediaBrowser.Server.Implementations/Library/MediaSourceManager.cs)11
-rw-r--r--Emby.Server.Implementations/Library/MusicManager.cs (renamed from MediaBrowser.Server.Implementations/Library/MusicManager.cs)2
-rw-r--r--Emby.Server.Implementations/Library/PathExtensions.cs (renamed from MediaBrowser.Server.Implementations/Library/PathExtensions.cs)2
-rw-r--r--Emby.Server.Implementations/Library/ResolverHelper.cs (renamed from MediaBrowser.Server.Implementations/Library/ResolverHelper.cs)4
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/Audio/AudioResolver.cs (renamed from MediaBrowser.Server.Implementations/Library/Resolvers/Audio/AudioResolver.cs)8
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/Audio/MusicAlbumResolver.cs (renamed from MediaBrowser.Server.Implementations/Library/Resolvers/Audio/MusicAlbumResolver.cs)4
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/Audio/MusicArtistResolver.cs (renamed from MediaBrowser.Server.Implementations/Library/Resolvers/Audio/MusicArtistResolver.cs)2
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/BaseVideoResolver.cs (renamed from MediaBrowser.Server.Implementations/Library/Resolvers/BaseVideoResolver.cs)8
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/FolderResolver.cs (renamed from MediaBrowser.Server.Implementations/Library/Resolvers/FolderResolver.cs)2
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/ItemResolver.cs (renamed from MediaBrowser.Server.Implementations/Library/Resolvers/ItemResolver.cs)2
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/Movies/BoxSetResolver.cs (renamed from MediaBrowser.Server.Implementations/Library/Resolvers/Movies/BoxSetResolver.cs)2
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs (renamed from MediaBrowser.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs)4
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/PhotoAlbumResolver.cs (renamed from MediaBrowser.Server.Implementations/Library/Resolvers/PhotoAlbumResolver.cs)2
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/PhotoResolver.cs (renamed from MediaBrowser.Server.Implementations/Library/Resolvers/PhotoResolver.cs)2
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/PlaylistResolver.cs (renamed from MediaBrowser.Server.Implementations/Library/Resolvers/PlaylistResolver.cs)2
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/SpecialFolderResolver.cs (renamed from MediaBrowser.Server.Implementations/Library/Resolvers/SpecialFolderResolver.cs)2
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/TV/EpisodeResolver.cs (renamed from MediaBrowser.Server.Implementations/Library/Resolvers/TV/EpisodeResolver.cs)2
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/TV/SeasonResolver.cs (renamed from MediaBrowser.Server.Implementations/Library/Resolvers/TV/SeasonResolver.cs)2
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs (renamed from MediaBrowser.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs)6
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/VideoResolver.cs (renamed from MediaBrowser.Server.Implementations/Library/Resolvers/VideoResolver.cs)2
-rw-r--r--Emby.Server.Implementations/Library/SearchEngine.cs (renamed from MediaBrowser.Server.Implementations/Library/SearchEngine.cs)9
-rw-r--r--Emby.Server.Implementations/Library/UserViewManager.cs (renamed from MediaBrowser.Server.Implementations/Library/UserViewManager.cs)2
-rw-r--r--Emby.Server.Implementations/Library/Validators/ArtistsPostScanTask.cs (renamed from MediaBrowser.Server.Implementations/Library/Validators/ArtistsPostScanTask.cs)2
-rw-r--r--Emby.Server.Implementations/Library/Validators/ArtistsValidator.cs (renamed from MediaBrowser.Server.Implementations/Library/Validators/ArtistsValidator.cs)2
-rw-r--r--Emby.Server.Implementations/Library/Validators/GameGenresPostScanTask.cs (renamed from MediaBrowser.Server.Implementations/Library/Validators/GameGenresPostScanTask.cs)2
-rw-r--r--Emby.Server.Implementations/Library/Validators/GameGenresValidator.cs (renamed from MediaBrowser.Server.Implementations/Library/Validators/GameGenresValidator.cs)2
-rw-r--r--Emby.Server.Implementations/Library/Validators/GenresPostScanTask.cs (renamed from MediaBrowser.Server.Implementations/Library/Validators/GenresPostScanTask.cs)2
-rw-r--r--Emby.Server.Implementations/Library/Validators/GenresValidator.cs (renamed from MediaBrowser.Server.Implementations/Library/Validators/GenresValidator.cs)2
-rw-r--r--Emby.Server.Implementations/Library/Validators/MusicGenresPostScanTask.cs (renamed from MediaBrowser.Server.Implementations/Library/Validators/MusicGenresPostScanTask.cs)2
-rw-r--r--Emby.Server.Implementations/Library/Validators/MusicGenresValidator.cs (renamed from MediaBrowser.Server.Implementations/Library/Validators/MusicGenresValidator.cs)2
-rw-r--r--Emby.Server.Implementations/Library/Validators/PeopleValidator.cs (renamed from MediaBrowser.Server.Implementations/Library/Validators/PeopleValidator.cs)2
-rw-r--r--Emby.Server.Implementations/Library/Validators/StudiosPostScanTask.cs (renamed from MediaBrowser.Server.Implementations/Library/Validators/StudiosPostScanTask.cs)2
-rw-r--r--Emby.Server.Implementations/Library/Validators/StudiosValidator.cs (renamed from MediaBrowser.Server.Implementations/Library/Validators/StudiosValidator.cs)2
-rw-r--r--Emby.Server.Implementations/Library/Validators/YearsPostScanTask.cs (renamed from MediaBrowser.Server.Implementations/Library/Validators/YearsPostScanTask.cs)2
-rw-r--r--Emby.Server.Implementations/Logging/PatternsLogger.cs63
-rw-r--r--Emby.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs (renamed from MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs)9
-rw-r--r--Emby.Server.Implementations/ScheduledTasks/RefreshMediaLibraryTask.cs (renamed from MediaBrowser.Server.Implementations/ScheduledTasks/RefreshMediaLibraryTask.cs)4
-rw-r--r--Emby.Server.Implementations/Sorting/AirTimeComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/AirTimeComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/AiredEpisodeOrderComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/AiredEpisodeOrderComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/AlbumArtistComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/AlbumArtistComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/AlbumComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/AlbumComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/AlphanumComparator.cs (renamed from MediaBrowser.Server.Implementations/Sorting/AlphanumComparator.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/ArtistComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/ArtistComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/BudgetComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/BudgetComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/CommunityRatingComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/CommunityRatingComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/CriticRatingComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/CriticRatingComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/DateCreatedComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/DateCreatedComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/DateLastMediaAddedComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/DateLastMediaAddedComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/DatePlayedComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/DatePlayedComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/GameSystemComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/GameSystemComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/IsFavoriteOrLikeComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/IsFavoriteOrLikeComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/IsFolderComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/IsFolderComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/IsPlayedComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/IsPlayedComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/IsUnplayedComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/IsUnplayedComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/MetascoreComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/MetascoreComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/NameComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/NameComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/OfficialRatingComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/OfficialRatingComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/PlayCountComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/PlayCountComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/PlayersComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/PlayersComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/PremiereDateComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/PremiereDateComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/ProductionYearComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/ProductionYearComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/RandomComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/RandomComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/RevenueComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/RevenueComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/RuntimeComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/RuntimeComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/SeriesSortNameComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/SeriesSortNameComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/SortNameComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/SortNameComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/StartDateComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/StartDateComparer.cs)2
-rw-r--r--Emby.Server.Implementations/Sorting/StudioComparer.cs (renamed from MediaBrowser.Server.Implementations/Sorting/StudioComparer.cs)2
-rw-r--r--Emby.Server.Implementations/packages.config5
-rw-r--r--MediaBrowser.Server.Implementations/IO/FileRefresher.cs22
-rw-r--r--MediaBrowser.Server.Implementations/IO/LibraryMonitor.cs9
-rw-r--r--MediaBrowser.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs45
-rw-r--r--MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj79
-rw-r--r--MediaBrowser.Server.Startup.Common/ApplicationHost.cs11
-rw-r--r--MediaBrowser.Server.Startup.Common/Migrations/DbMigration.cs1
88 files changed, 357 insertions, 281 deletions
diff --git a/MediaBrowser.Server.Implementations/Activity/ActivityManager.cs b/Emby.Server.Implementations/Activity/ActivityManager.cs
index 2af9395c3..b6095f082 100644
--- a/MediaBrowser.Server.Implementations/Activity/ActivityManager.cs
+++ b/Emby.Server.Implementations/Activity/ActivityManager.cs
@@ -8,7 +8,7 @@ using System;
using System.Linq;
using System.Threading.Tasks;
-namespace MediaBrowser.Server.Implementations.Activity
+namespace Emby.Server.Implementations.Activity
{
public class ActivityManager : IActivityManager
{
diff --git a/MediaBrowser.Server.Implementations/Dto/DtoService.cs b/Emby.Server.Implementations/Dto/DtoService.cs
index a06656b21..85549439b 100644
--- a/MediaBrowser.Server.Implementations/Dto/DtoService.cs
+++ b/Emby.Server.Implementations/Dto/DtoService.cs
@@ -29,7 +29,7 @@ using MediaBrowser.Controller.IO;
using MediaBrowser.Model.IO;
using MediaBrowser.Model.Extensions;
-namespace MediaBrowser.Server.Implementations.Dto
+namespace Emby.Server.Implementations.Dto
{
public class DtoService : IDtoService
{
diff --git a/Emby.Server.Implementations/Emby.Server.Implementations.csproj b/Emby.Server.Implementations/Emby.Server.Implementations.csproj
index af093d53f..11b3393c8 100644
--- a/Emby.Server.Implementations/Emby.Server.Implementations.csproj
+++ b/Emby.Server.Implementations/Emby.Server.Implementations.csproj
@@ -13,7 +13,7 @@
<DefaultLanguage>en-US</DefaultLanguage>
<FileAlignment>512</FileAlignment>
<ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
- <TargetFrameworkProfile>Profile75</TargetFrameworkProfile>
+ <TargetFrameworkProfile>Profile7</TargetFrameworkProfile>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
@@ -52,6 +52,7 @@
<Compile Include="..\SharedVersion.cs">
<Link>Properties\SharedVersion.cs</Link>
</Compile>
+ <Compile Include="Activity\ActivityManager.cs" />
<Compile Include="Branding\BrandingConfigurationFactory.cs" />
<Compile Include="Channels\ChannelConfigurations.cs" />
<Compile Include="Channels\ChannelDynamicMediaSourceProvider.cs" />
@@ -60,18 +61,112 @@
<Compile Include="Channels\ChannelPostScanTask.cs" />
<Compile Include="Channels\RefreshChannelsScheduledTask.cs" />
<Compile Include="Collections\CollectionManager.cs" />
+ <Compile Include="Dto\DtoService.cs" />
+ <Compile Include="FileOrganization\EpisodeFileOrganizer.cs" />
+ <Compile Include="FileOrganization\Extensions.cs" />
+ <Compile Include="FileOrganization\FileOrganizationNotifier.cs" />
+ <Compile Include="FileOrganization\FileOrganizationService.cs" />
+ <Compile Include="FileOrganization\NameUtils.cs" />
+ <Compile Include="FileOrganization\OrganizerScheduledTask.cs" />
+ <Compile Include="FileOrganization\TvFolderOrganizer.cs" />
<Compile Include="Intros\DefaultIntroProvider.cs" />
+ <Compile Include="Library\CoreResolutionIgnoreRule.cs" />
+ <Compile Include="Library\LibraryManager.cs" />
+ <Compile Include="Library\LocalTrailerPostScanTask.cs" />
+ <Compile Include="Library\MediaSourceManager.cs" />
+ <Compile Include="Library\MusicManager.cs" />
+ <Compile Include="Library\PathExtensions.cs" />
+ <Compile Include="Library\ResolverHelper.cs" />
+ <Compile Include="Library\Resolvers\Audio\AudioResolver.cs" />
+ <Compile Include="Library\Resolvers\Audio\MusicAlbumResolver.cs" />
+ <Compile Include="Library\Resolvers\Audio\MusicArtistResolver.cs" />
+ <Compile Include="Library\Resolvers\BaseVideoResolver.cs" />
+ <Compile Include="Library\Resolvers\FolderResolver.cs" />
+ <Compile Include="Library\Resolvers\ItemResolver.cs" />
+ <Compile Include="Library\Resolvers\Movies\BoxSetResolver.cs" />
+ <Compile Include="Library\Resolvers\Movies\MovieResolver.cs" />
+ <Compile Include="Library\Resolvers\PhotoAlbumResolver.cs" />
+ <Compile Include="Library\Resolvers\PhotoResolver.cs" />
+ <Compile Include="Library\Resolvers\PlaylistResolver.cs" />
+ <Compile Include="Library\Resolvers\SpecialFolderResolver.cs" />
+ <Compile Include="Library\Resolvers\TV\EpisodeResolver.cs" />
+ <Compile Include="Library\Resolvers\TV\SeasonResolver.cs" />
+ <Compile Include="Library\Resolvers\TV\SeriesResolver.cs" />
+ <Compile Include="Library\Resolvers\VideoResolver.cs" />
+ <Compile Include="Library\SearchEngine.cs" />
+ <Compile Include="Library\UserViewManager.cs" />
+ <Compile Include="Library\Validators\ArtistsPostScanTask.cs" />
+ <Compile Include="Library\Validators\ArtistsValidator.cs" />
+ <Compile Include="Library\Validators\GameGenresPostScanTask.cs" />
+ <Compile Include="Library\Validators\GameGenresValidator.cs" />
+ <Compile Include="Library\Validators\GenresPostScanTask.cs" />
+ <Compile Include="Library\Validators\GenresValidator.cs" />
+ <Compile Include="Library\Validators\MusicGenresPostScanTask.cs" />
+ <Compile Include="Library\Validators\MusicGenresValidator.cs" />
+ <Compile Include="Library\Validators\PeopleValidator.cs" />
+ <Compile Include="Library\Validators\StudiosPostScanTask.cs" />
+ <Compile Include="Library\Validators\StudiosValidator.cs" />
+ <Compile Include="Library\Validators\YearsPostScanTask.cs" />
+ <Compile Include="Logging\PatternsLogger.cs" />
<Compile Include="News\NewsService.cs" />
+ <Compile Include="Persistence\CleanDatabaseScheduledTask.cs" />
<Compile Include="Playlists\PlaylistManager.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="ScheduledTasks\ChapterImagesTask.cs" />
<Compile Include="ScheduledTasks\PeopleValidationTask.cs" />
<Compile Include="ScheduledTasks\PluginUpdateTask.cs" />
<Compile Include="ScheduledTasks\RefreshIntrosTask.cs" />
+ <Compile Include="ScheduledTasks\RefreshMediaLibraryTask.cs" />
<Compile Include="ScheduledTasks\SystemUpdateTask.cs" />
+ <Compile Include="Sorting\AiredEpisodeOrderComparer.cs" />
+ <Compile Include="Sorting\AirTimeComparer.cs" />
+ <Compile Include="Sorting\AlbumArtistComparer.cs" />
+ <Compile Include="Sorting\AlbumComparer.cs" />
+ <Compile Include="Sorting\AlphanumComparator.cs" />
+ <Compile Include="Sorting\ArtistComparer.cs" />
+ <Compile Include="Sorting\BudgetComparer.cs" />
+ <Compile Include="Sorting\CommunityRatingComparer.cs" />
+ <Compile Include="Sorting\CriticRatingComparer.cs" />
+ <Compile Include="Sorting\DateCreatedComparer.cs" />
+ <Compile Include="Sorting\DateLastMediaAddedComparer.cs" />
+ <Compile Include="Sorting\DatePlayedComparer.cs" />
+ <Compile Include="Sorting\GameSystemComparer.cs" />
+ <Compile Include="Sorting\IsFavoriteOrLikeComparer.cs" />
+ <Compile Include="Sorting\IsFolderComparer.cs" />
+ <Compile Include="Sorting\IsPlayedComparer.cs" />
+ <Compile Include="Sorting\IsUnplayedComparer.cs" />
+ <Compile Include="Sorting\MetascoreComparer.cs" />
+ <Compile Include="Sorting\NameComparer.cs" />
+ <Compile Include="Sorting\OfficialRatingComparer.cs" />
+ <Compile Include="Sorting\PlayCountComparer.cs" />
+ <Compile Include="Sorting\PlayersComparer.cs" />
+ <Compile Include="Sorting\PremiereDateComparer.cs" />
+ <Compile Include="Sorting\ProductionYearComparer.cs" />
+ <Compile Include="Sorting\RandomComparer.cs" />
+ <Compile Include="Sorting\RevenueComparer.cs" />
+ <Compile Include="Sorting\RuntimeComparer.cs" />
+ <Compile Include="Sorting\SeriesSortNameComparer.cs" />
+ <Compile Include="Sorting\SortNameComparer.cs" />
+ <Compile Include="Sorting\StartDateComparer.cs" />
+ <Compile Include="Sorting\StudioComparer.cs" />
<Compile Include="Updates\InstallationManager.cs" />
</ItemGroup>
- <ItemGroup />
+ <ItemGroup>
+ <Reference Include="MediaBrowser.Naming, Version=1.0.6146.28476, Culture=neutral, processorArchitecture=MSIL">
+ <HintPath>..\packages\MediaBrowser.Naming.1.0.0.57\lib\portable-net45+sl4+wp71+win8+wpa81\MediaBrowser.Naming.dll</HintPath>
+ <Private>True</Private>
+ </Reference>
+ <Reference Include="Patterns.Logging, Version=1.0.6149.1756, Culture=neutral, processorArchitecture=MSIL">
+ <HintPath>..\packages\Patterns.Logging.1.0.0.4\lib\portable-net45+dnxcore50+sl4+wp71+win8+wpa81\Patterns.Logging.dll</HintPath>
+ <Private>True</Private>
+ </Reference>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="packages.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Folder Include="IO\" />
+ </ItemGroup>
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\Portable\$(TargetFrameworkVersion)\Microsoft.Portable.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
diff --git a/MediaBrowser.Server.Implementations/FileOrganization/EpisodeFileOrganizer.cs b/Emby.Server.Implementations/FileOrganization/EpisodeFileOrganizer.cs
index 19592bc4e..3f4ede478 100644
--- a/MediaBrowser.Server.Implementations/FileOrganization/EpisodeFileOrganizer.cs
+++ b/Emby.Server.Implementations/FileOrganization/EpisodeFileOrganizer.cs
@@ -7,8 +7,6 @@ using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Extensions;
using MediaBrowser.Model.FileOrganization;
using MediaBrowser.Model.Logging;
-using MediaBrowser.Server.Implementations.Library;
-using MediaBrowser.Server.Implementations.Logging;
using System;
using System.Collections.Generic;
using System.Globalization;
@@ -16,11 +14,16 @@ using System.IO;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
+using Emby.Server.Implementations.Library;
+using Emby.Server.Implementations.Logging;
using MediaBrowser.Common.IO;
+using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.IO;
using MediaBrowser.Model.IO;
+using MediaBrowser.Naming.TV;
+using EpisodeInfo = MediaBrowser.Controller.Providers.EpisodeInfo;
-namespace MediaBrowser.Server.Implementations.FileOrganization
+namespace Emby.Server.Implementations.FileOrganization
{
public class EpisodeFileOrganizer
{
@@ -55,7 +58,7 @@ namespace MediaBrowser.Server.Implementations.FileOrganization
OriginalPath = path,
OriginalFileName = Path.GetFileName(path),
Type = FileOrganizerType.Episode,
- FileSize = new FileInfo(path).Length
+ FileSize = _fileSystem.GetFileInfo(path).Length
};
try
@@ -68,10 +71,10 @@ namespace MediaBrowser.Server.Implementations.FileOrganization
}
var namingOptions = ((LibraryManager)_libraryManager).GetNamingOptions();
- var resolver = new Naming.TV.EpisodeResolver(namingOptions, new PatternsLogger());
+ var resolver = new EpisodeResolver(namingOptions, new PatternsLogger());
var episodeInfo = resolver.Resolve(path, false) ??
- new Naming.TV.EpisodeInfo();
+ new MediaBrowser.Naming.TV.EpisodeInfo();
var seriesName = episodeInfo.SeriesName;
@@ -505,7 +508,7 @@ namespace MediaBrowser.Server.Implementations.FileOrganization
episodePaths.AddRange(filesOfOtherExtensions);
}
- catch (DirectoryNotFoundException)
+ catch (IOException)
{
// No big deal. Maybe the season folder doesn't already exist.
}
@@ -575,7 +578,7 @@ namespace MediaBrowser.Server.Implementations.FileOrganization
result.ExtractedName = nameWithoutYear;
result.ExtractedYear = yearInName;
- var series = _libraryManager.GetItemList(new Controller.Entities.InternalItemsQuery
+ var series = _libraryManager.GetItemList(new InternalItemsQuery
{
IncludeItemTypes = new[] { typeof(Series).Name },
Recursive = true
@@ -593,7 +596,7 @@ namespace MediaBrowser.Server.Implementations.FileOrganization
if (info != null)
{
- series = _libraryManager.GetItemList(new Controller.Entities.InternalItemsQuery
+ series = _libraryManager.GetItemList(new InternalItemsQuery
{
IncludeItemTypes = new[] { typeof(Series).Name },
Recursive = true,
@@ -808,8 +811,8 @@ namespace MediaBrowser.Server.Implementations.FileOrganization
{
try
{
- var sourceFileInfo = new FileInfo(sourcePath);
- var destinationFileInfo = new FileInfo(newPath);
+ var sourceFileInfo = _fileSystem.GetFileInfo(sourcePath);
+ var destinationFileInfo = _fileSystem.GetFileInfo(newPath);
if (sourceFileInfo.Length == destinationFileInfo.Length)
{
@@ -820,7 +823,7 @@ namespace MediaBrowser.Server.Implementations.FileOrganization
{
return false;
}
- catch (DirectoryNotFoundException)
+ catch (IOException)
{
return false;
}
diff --git a/MediaBrowser.Server.Implementations/FileOrganization/Extensions.cs b/Emby.Server.Implementations/FileOrganization/Extensions.cs
index c560152db..506bc0327 100644
--- a/MediaBrowser.Server.Implementations/FileOrganization/Extensions.cs
+++ b/Emby.Server.Implementations/FileOrganization/Extensions.cs
@@ -2,7 +2,7 @@
using MediaBrowser.Model.FileOrganization;
using System.Collections.Generic;
-namespace MediaBrowser.Server.Implementations.FileOrganization
+namespace Emby.Server.Implementations.FileOrganization
{
public static class ConfigurationExtension
{
diff --git a/MediaBrowser.Server.Implementations/FileOrganization/FileOrganizationNotifier.cs b/Emby.Server.Implementations/FileOrganization/FileOrganizationNotifier.cs
index 141dcf9b4..2a0176547 100644
--- a/MediaBrowser.Server.Implementations/FileOrganization/FileOrganizationNotifier.cs
+++ b/Emby.Server.Implementations/FileOrganization/FileOrganizationNotifier.cs
@@ -8,7 +8,7 @@ using System;
using System.Threading;
using MediaBrowser.Model.Tasks;
-namespace MediaBrowser.Server.Implementations.FileOrganization
+namespace Emby.Server.Implementations.FileOrganization
{
/// <summary>
/// Class SessionInfoWebSocketListener
diff --git a/MediaBrowser.Server.Implementations/FileOrganization/FileOrganizationService.cs b/Emby.Server.Implementations/FileOrganization/FileOrganizationService.cs
index de33c39e6..4094e6b9b 100644
--- a/MediaBrowser.Server.Implementations/FileOrganization/FileOrganizationService.cs
+++ b/Emby.Server.Implementations/FileOrganization/FileOrganizationService.cs
@@ -21,7 +21,7 @@ using MediaBrowser.Common.IO;
using MediaBrowser.Controller.IO;
using MediaBrowser.Model.Tasks;
-namespace MediaBrowser.Server.Implementations.FileOrganization
+namespace Emby.Server.Implementations.FileOrganization
{
public class FileOrganizationService : IFileOrganizationService
{
diff --git a/MediaBrowser.Server.Implementations/FileOrganization/NameUtils.cs b/Emby.Server.Implementations/FileOrganization/NameUtils.cs
index 624133d4f..eb22ca4ea 100644
--- a/MediaBrowser.Server.Implementations/FileOrganization/NameUtils.cs
+++ b/Emby.Server.Implementations/FileOrganization/NameUtils.cs
@@ -2,10 +2,9 @@
using MediaBrowser.Controller.Entities;
using System;
using System.Globalization;
-using System.Linq;
-using System.Text;
+using MediaBrowser.Controller.Extensions;
-namespace MediaBrowser.Server.Implementations.FileOrganization
+namespace Emby.Server.Implementations.FileOrganization
{
public static class NameUtils
{
@@ -54,7 +53,7 @@ namespace MediaBrowser.Server.Implementations.FileOrganization
private static string GetComparableName(string name)
{
- name = RemoveDiacritics(name);
+ name = name.RemoveDiacritics();
name = " " + name + " ";
@@ -78,19 +77,5 @@ namespace MediaBrowser.Server.Implementations.FileOrganization
return name.Trim();
}
-
- /// <summary>
- /// Removes the diacritics.
- /// </summary>
- /// <param name="text">The text.</param>
- /// <returns>System.String.</returns>
- private static string RemoveDiacritics(string text)
- {
- return String.Concat(
- text.Normalize(NormalizationForm.FormD)
- .Where(ch => CharUnicodeInfo.GetUnicodeCategory(ch) !=
- UnicodeCategory.NonSpacingMark)
- ).Normalize(NormalizationForm.FormC);
- }
}
}
diff --git a/MediaBrowser.Server.Implementations/FileOrganization/OrganizerScheduledTask.cs b/Emby.Server.Implementations/FileOrganization/OrganizerScheduledTask.cs
index ca41db80c..5be7ba7ad 100644
--- a/MediaBrowser.Server.Implementations/FileOrganization/OrganizerScheduledTask.cs
+++ b/Emby.Server.Implementations/FileOrganization/OrganizerScheduledTask.cs
@@ -13,7 +13,7 @@ using MediaBrowser.Controller.IO;
using MediaBrowser.Model.IO;
using MediaBrowser.Model.Tasks;
-namespace MediaBrowser.Server.Implementations.FileOrganization
+namespace Emby.Server.Implementations.FileOrganization
{
public class OrganizerScheduledTask : IScheduledTask, IConfigurableScheduledTask
{
diff --git a/MediaBrowser.Server.Implementations/FileOrganization/TvFolderOrganizer.cs b/Emby.Server.Implementations/FileOrganization/TvFolderOrganizer.cs
index d83aee25b..2850c3a61 100644
--- a/MediaBrowser.Server.Implementations/FileOrganization/TvFolderOrganizer.cs
+++ b/Emby.Server.Implementations/FileOrganization/TvFolderOrganizer.cs
@@ -14,7 +14,7 @@ using MediaBrowser.Common.IO;
using MediaBrowser.Controller.IO;
using MediaBrowser.Model.IO;
-namespace MediaBrowser.Server.Implementations.FileOrganization
+namespace Emby.Server.Implementations.FileOrganization
{
public class TvFolderOrganizer
{
@@ -191,7 +191,7 @@ namespace MediaBrowser.Server.Implementations.FileOrganization
_fileSystem.DeleteDirectory(path, false);
}
catch (UnauthorizedAccessException) { }
- catch (DirectoryNotFoundException) { }
+ catch (IOException) { }
}
}
catch (UnauthorizedAccessException) { }
diff --git a/MediaBrowser.Server.Implementations/Library/CoreResolutionIgnoreRule.cs b/Emby.Server.Implementations/Library/CoreResolutionIgnoreRule.cs
index f20d87c4b..2e69cd2ef 100644
--- a/MediaBrowser.Server.Implementations/Library/CoreResolutionIgnoreRule.cs
+++ b/Emby.Server.Implementations/Library/CoreResolutionIgnoreRule.cs
@@ -10,7 +10,7 @@ using MediaBrowser.Common.IO;
using MediaBrowser.Controller.IO;
using MediaBrowser.Model.IO;
-namespace MediaBrowser.Server.Implementations.Library
+namespace Emby.Server.Implementations.Library
{
/// <summary>
/// Provides the core resolver ignore rules
diff --git a/MediaBrowser.Server.Implementations/Library/LibraryManager.cs b/Emby.Server.Implementations/Library/LibraryManager.cs
index 18feaa849..7ae00d94c 100644
--- a/MediaBrowser.Server.Implementations/Library/LibraryManager.cs
+++ b/Emby.Server.Implementations/Library/LibraryManager.cs
@@ -18,9 +18,6 @@ using MediaBrowser.Naming.Audio;
using MediaBrowser.Naming.Common;
using MediaBrowser.Naming.TV;
using MediaBrowser.Naming.Video;
-using MediaBrowser.Server.Implementations.Library.Validators;
-using MediaBrowser.Server.Implementations.Logging;
-using MediaBrowser.Server.Implementations.ScheduledTasks;
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
@@ -30,6 +27,10 @@ using System.Linq;
using System.Net;
using System.Threading;
using System.Threading.Tasks;
+using Emby.Server.Implementations.Library.Resolvers;
+using Emby.Server.Implementations.Library.Validators;
+using Emby.Server.Implementations.Logging;
+using Emby.Server.Implementations.ScheduledTasks;
using MediaBrowser.Model.IO;
using MediaBrowser.Controller.Channels;
using MediaBrowser.Model.Channels;
@@ -37,14 +38,13 @@ using MediaBrowser.Model.Dto;
using MediaBrowser.Model.Extensions;
using MediaBrowser.Model.Library;
using MediaBrowser.Model.Net;
-using MediaBrowser.Server.Implementations.Library.Resolvers;
using SortOrder = MediaBrowser.Model.Entities.SortOrder;
using VideoResolver = MediaBrowser.Naming.Video.VideoResolver;
using MediaBrowser.Common.Configuration;
using MediaBrowser.Common.IO;
using MediaBrowser.Model.Tasks;
-namespace MediaBrowser.Server.Implementations.Library
+namespace Emby.Server.Implementations.Library
{
/// <summary>
/// Class LibraryManager
@@ -403,7 +403,7 @@ namespace MediaBrowser.Server.Implementations.Library
{
_fileSystem.DeleteDirectory(metadataPath, true);
}
- catch (DirectoryNotFoundException)
+ catch (IOException)
{
}
@@ -1189,7 +1189,8 @@ namespace MediaBrowser.Server.Implementations.Library
{
Name = Path.GetFileName(dir),
- Locations = Directory.EnumerateFiles(dir, "*.mblink", SearchOption.TopDirectoryOnly)
+ Locations = _fileSystem.GetFilePaths(dir, false)
+ .Where(i => string.Equals(ShortcutFileExtension, Path.GetExtension(i), StringComparison.OrdinalIgnoreCase))
.Select(_fileSystem.ResolveShortcut)
.OrderBy(i => i)
.ToList(),
@@ -2302,11 +2303,11 @@ namespace MediaBrowser.Server.Implementations.Library
var episodeInfo = locationType == LocationType.FileSystem || locationType == LocationType.Offline ?
resolver.Resolve(episode.Path, isFolder) :
- new Naming.TV.EpisodeInfo();
+ new MediaBrowser.Naming.TV.EpisodeInfo();
if (episodeInfo == null)
{
- episodeInfo = new Naming.TV.EpisodeInfo();
+ episodeInfo = new MediaBrowser.Naming.TV.EpisodeInfo();
}
var changed = false;
@@ -2787,10 +2788,7 @@ namespace MediaBrowser.Server.Implementations.Library
{
var path = Path.Combine(virtualFolderPath, collectionType + ".collection");
- using (File.Create(path))
- {
-
- }
+ _fileSystem.WriteAllBytes(path, new byte[] {});
}
CollectionFolder.SaveLibraryOptions(virtualFolderPath, options);
@@ -2827,21 +2825,20 @@ namespace MediaBrowser.Server.Implementations.Library
private bool ValidateNetworkPath(string path)
{
- if (Environment.OSVersion.Platform == PlatformID.Win32NT)
- {
- // We can't validate protocol-based paths, so just allow them
- if (path.IndexOf("://", StringComparison.OrdinalIgnoreCase) == -1)
- {
- return Directory.Exists(path);
- }
- }
+ //if (Environment.OSVersion.Platform == PlatformID.Win32NT)
+ //{
+ // // We can't validate protocol-based paths, so just allow them
+ // if (path.IndexOf("://", StringComparison.OrdinalIgnoreCase) == -1)
+ // {
+ // return _fileSystem.DirectoryExists(path);
+ // }
+ //}
// Without native support for unc, we cannot validate this when running under mono
return true;
}
private const string ShortcutFileExtension = ".mblink";
- private const string ShortcutFileSearch = "*" + ShortcutFileExtension;
public void AddMediaPath(string virtualFolderName, MediaPathInfo pathInfo)
{
AddMediaPathInternal(virtualFolderName, pathInfo, true);
@@ -2863,12 +2860,12 @@ namespace MediaBrowser.Server.Implementations.Library
if (!_fileSystem.DirectoryExists(path))
{
- throw new DirectoryNotFoundException("The path does not exist.");
+ throw new FileNotFoundException("The path does not exist.");
}
if (!string.IsNullOrWhiteSpace(pathInfo.NetworkPath) && !ValidateNetworkPath(pathInfo.NetworkPath))
{
- throw new DirectoryNotFoundException("The network path does not exist.");
+ throw new FileNotFoundException("The network path does not exist.");
}
var rootFolderPath = ConfigurationManager.ApplicationPaths.DefaultUserViewsPath;
@@ -2911,7 +2908,7 @@ namespace MediaBrowser.Server.Implementations.Library
if (!string.IsNullOrWhiteSpace(pathInfo.NetworkPath) && !ValidateNetworkPath(pathInfo.NetworkPath))
{
- throw new DirectoryNotFoundException("The network path does not exist.");
+ throw new FileNotFoundException("The network path does not exist.");
}
var rootFolderPath = ConfigurationManager.ApplicationPaths.DefaultUserViewsPath;
@@ -2973,7 +2970,7 @@ namespace MediaBrowser.Server.Implementations.Library
if (!_fileSystem.DirectoryExists(path))
{
- throw new DirectoryNotFoundException("The media folder does not exist");
+ throw new FileNotFoundException("The media folder does not exist");
}
_libraryMonitorFactory().Stop();
@@ -3044,10 +3041,12 @@ namespace MediaBrowser.Server.Implementations.Library
if (!_fileSystem.DirectoryExists(virtualFolderPath))
{
- throw new DirectoryNotFoundException(string.Format("The media collection {0} does not exist", virtualFolderName));
+ throw new FileNotFoundException(string.Format("The media collection {0} does not exist", virtualFolderName));
}
- var shortcut = Directory.EnumerateFiles(virtualFolderPath, ShortcutFileSearch, SearchOption.AllDirectories).FirstOrDefault(f => _fileSystem.ResolveShortcut(f).Equals(mediaPath, StringComparison.OrdinalIgnoreCase));
+ var shortcut = _fileSystem.GetFilePaths(virtualFolderPath, true)
+ .Where(i => string.Equals(ShortcutFileExtension, Path.GetExtension(i), StringComparison.OrdinalIgnoreCase))
+ .FirstOrDefault(f => _fileSystem.ResolveShortcut(f).Equals(mediaPath, StringComparison.OrdinalIgnoreCase));
if (!string.IsNullOrEmpty(shortcut))
{
diff --git a/MediaBrowser.Server.Implementations/Library/LocalTrailerPostScanTask.cs b/Emby.Server.Implementations/Library/LocalTrailerPostScanTask.cs
index 78107b82d..7424ed5e5 100644
--- a/MediaBrowser.Server.Implementations/Library/LocalTrailerPostScanTask.cs
+++ b/Emby.Server.Implementations/Library/LocalTrailerPostScanTask.cs
@@ -9,7 +9,7 @@ using System.Threading.Tasks;
using MediaBrowser.Controller.Entities.Movies;
using MediaBrowser.Controller.Entities.TV;
-namespace MediaBrowser.Server.Implementations.Library
+namespace Emby.Server.Implementations.Library
{
public class LocalTrailerPostScanTask : ILibraryPostScanTask
{
diff --git a/MediaBrowser.Server.Implementations/Library/MediaSourceManager.cs b/Emby.Server.Implementations/Library/MediaSourceManager.cs
index 0f1931dda..93c406ebc 100644
--- a/MediaBrowser.Server.Implementations/Library/MediaSourceManager.cs
+++ b/Emby.Server.Implementations/Library/MediaSourceManager.cs
@@ -18,8 +18,9 @@ using MediaBrowser.Common.IO;
using MediaBrowser.Controller.IO;
using MediaBrowser.Model.IO;
using MediaBrowser.Model.Configuration;
+using MediaBrowser.Model.Threading;
-namespace MediaBrowser.Server.Implementations.Library
+namespace Emby.Server.Implementations.Library
{
public class MediaSourceManager : IMediaSourceManager, IDisposable
{
@@ -32,8 +33,9 @@ namespace MediaBrowser.Server.Implementations.Library
private IMediaSourceProvider[] _providers;
private readonly ILogger _logger;
private readonly IUserDataManager _userDataManager;
+ private readonly ITimerFactory _timerFactory;
- public MediaSourceManager(IItemRepository itemRepo, IUserManager userManager, ILibraryManager libraryManager, ILogger logger, IJsonSerializer jsonSerializer, IFileSystem fileSystem, IUserDataManager userDataManager)
+ public MediaSourceManager(IItemRepository itemRepo, IUserManager userManager, ILibraryManager libraryManager, ILogger logger, IJsonSerializer jsonSerializer, IFileSystem fileSystem, IUserDataManager userDataManager, ITimerFactory timerFactory)
{
_itemRepo = itemRepo;
_userManager = userManager;
@@ -42,6 +44,7 @@ namespace MediaBrowser.Server.Implementations.Library
_jsonSerializer = jsonSerializer;
_fileSystem = fileSystem;
_userDataManager = userDataManager;
+ _timerFactory = timerFactory;
}
public void AddParts(IEnumerable<IMediaSourceProvider> providers)
@@ -551,14 +554,14 @@ namespace MediaBrowser.Server.Implementations.Library
return new Tuple<IMediaSourceProvider, string>(provider, keyId);
}
- private Timer _closeTimer;
+ private ITimer _closeTimer;
private readonly TimeSpan _openStreamMaxAge = TimeSpan.FromSeconds(180);
private void StartCloseTimer()
{
StopCloseTimer();
- _closeTimer = new Timer(CloseTimerCallback, null, _openStreamMaxAge, _openStreamMaxAge);
+ _closeTimer = _timerFactory.Create(CloseTimerCallback, null, _openStreamMaxAge, _openStreamMaxAge);
}
private void StopCloseTimer()
diff --git a/MediaBrowser.Server.Implementations/Library/MusicManager.cs b/Emby.Server.Implementations/Library/MusicManager.cs
index 3ff434898..7669dd0bf 100644
--- a/MediaBrowser.Server.Implementations/Library/MusicManager.cs
+++ b/Emby.Server.Implementations/Library/MusicManager.cs
@@ -6,7 +6,7 @@ using System;
using System.Collections.Generic;
using System.Linq;
-namespace MediaBrowser.Server.Implementations.Library
+namespace Emby.Server.Implementations.Library
{
public class MusicManager : IMusicManager
{
diff --git a/MediaBrowser.Server.Implementations/Library/PathExtensions.cs b/Emby.Server.Implementations/Library/PathExtensions.cs
index 6c0e3237e..28ed2f53c 100644
--- a/MediaBrowser.Server.Implementations/Library/PathExtensions.cs
+++ b/Emby.Server.Implementations/Library/PathExtensions.cs
@@ -1,7 +1,7 @@
using System;
using System.Text.RegularExpressions;
-namespace MediaBrowser.Server.Implementations.Library
+namespace Emby.Server.Implementations.Library
{
public static class PathExtensions
{
diff --git a/MediaBrowser.Server.Implementations/Library/ResolverHelper.cs b/Emby.Server.Implementations/Library/ResolverHelper.cs
index c7d9d39b8..1d3cacc1d 100644
--- a/MediaBrowser.Server.Implementations/Library/ResolverHelper.cs
+++ b/Emby.Server.Implementations/Library/ResolverHelper.cs
@@ -9,7 +9,7 @@ using MediaBrowser.Common.IO;
using MediaBrowser.Controller.IO;
using MediaBrowser.Model.IO;
-namespace MediaBrowser.Server.Implementations.Library
+namespace Emby.Server.Implementations.Library
{
/// <summary>
/// Class ResolverHelper
@@ -112,7 +112,7 @@ namespace MediaBrowser.Server.Implementations.Library
/// <summary>
/// The MB name regex
/// </summary>
- private static readonly Regex MbNameRegex = new Regex(@"(\[.*?\])", RegexOptions.Compiled);
+ private static readonly Regex MbNameRegex = new Regex(@"(\[.*?\])");
internal static string StripBrackets(string inputString)
{
diff --git a/MediaBrowser.Server.Implementations/Library/Resolvers/Audio/AudioResolver.cs b/Emby.Server.Implementations/Library/Resolvers/Audio/AudioResolver.cs
index 039a17100..d8805355a 100644
--- a/MediaBrowser.Server.Implementations/Library/Resolvers/Audio/AudioResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/Audio/AudioResolver.cs
@@ -3,12 +3,12 @@ using MediaBrowser.Controller.Resolvers;
using MediaBrowser.Model.Entities;
using System;
-namespace MediaBrowser.Server.Implementations.Library.Resolvers.Audio
+namespace Emby.Server.Implementations.Library.Resolvers.Audio
{
/// <summary>
/// Class AudioResolver
/// </summary>
- public class AudioResolver : ItemResolver<Controller.Entities.Audio.Audio>
+ public class AudioResolver : ItemResolver<MediaBrowser.Controller.Entities.Audio.Audio>
{
private readonly ILibraryManager _libraryManager;
@@ -31,7 +31,7 @@ namespace MediaBrowser.Server.Implementations.Library.Resolvers.Audio
/// </summary>
/// <param name="args">The args.</param>
/// <returns>Entities.Audio.Audio.</returns>
- protected override Controller.Entities.Audio.Audio Resolve(ItemResolveArgs args)
+ protected override MediaBrowser.Controller.Entities.Audio.Audio Resolve(ItemResolveArgs args)
{
// Return audio if the path is a file and has a matching extension
@@ -57,7 +57,7 @@ namespace MediaBrowser.Server.Implementations.Library.Resolvers.Audio
string.Equals(collectionType, CollectionType.Music, StringComparison.OrdinalIgnoreCase) ||
isMixed)
{
- return new Controller.Entities.Audio.Audio();
+ return new MediaBrowser.Controller.Entities.Audio.Audio();
}
}
}
diff --git a/MediaBrowser.Server.Implementations/Library/Resolvers/Audio/MusicAlbumResolver.cs b/Emby.Server.Implementations/Library/Resolvers/Audio/MusicAlbumResolver.cs
index c1ac7d68c..f8e105195 100644
--- a/MediaBrowser.Server.Implementations/Library/Resolvers/Audio/MusicAlbumResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/Audio/MusicAlbumResolver.cs
@@ -5,17 +5,17 @@ using MediaBrowser.Controller.Resolvers;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Logging;
using MediaBrowser.Naming.Audio;
-using MediaBrowser.Server.Implementations.Logging;
using System;
using System.Collections.Generic;
using System.IO;
+using Emby.Server.Implementations.Logging;
using MediaBrowser.Common.IO;
using MediaBrowser.Model.IO;
using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.IO;
using MediaBrowser.Model.Configuration;
-namespace MediaBrowser.Server.Implementations.Library.Resolvers.Audio
+namespace Emby.Server.Implementations.Library.Resolvers.Audio
{
/// <summary>
/// Class MusicAlbumResolver
diff --git a/MediaBrowser.Server.Implementations/Library/Resolvers/Audio/MusicArtistResolver.cs b/Emby.Server.Implementations/Library/Resolvers/Audio/MusicArtistResolver.cs
index be651b9c8..2971405b9 100644
--- a/MediaBrowser.Server.Implementations/Library/Resolvers/Audio/MusicArtistResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/Audio/MusicArtistResolver.cs
@@ -11,7 +11,7 @@ using MediaBrowser.Model.IO;
using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.IO;
-namespace MediaBrowser.Server.Implementations.Library.Resolvers.Audio
+namespace Emby.Server.Implementations.Library.Resolvers.Audio
{
/// <summary>
/// Class MusicArtistResolver
diff --git a/MediaBrowser.Server.Implementations/Library/Resolvers/BaseVideoResolver.cs b/Emby.Server.Implementations/Library/Resolvers/BaseVideoResolver.cs
index 4dce16139..b7819eb68 100644
--- a/MediaBrowser.Server.Implementations/Library/Resolvers/BaseVideoResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/BaseVideoResolver.cs
@@ -2,17 +2,17 @@
using MediaBrowser.Controller.Library;
using MediaBrowser.Model.Entities;
using MediaBrowser.Naming.Video;
-using MediaBrowser.Server.Implementations.Logging;
using System;
using System.IO;
+using Emby.Server.Implementations.Logging;
-namespace MediaBrowser.Server.Implementations.Library.Resolvers
+namespace Emby.Server.Implementations.Library.Resolvers
{
/// <summary>
/// Resolves a Path into a Video or Video subclass
/// </summary>
/// <typeparam name="T"></typeparam>
- public abstract class BaseVideoResolver<T> : Controller.Resolvers.ItemResolver<T>
+ public abstract class BaseVideoResolver<T> : MediaBrowser.Controller.Resolvers.ItemResolver<T>
where T : Video, new()
{
protected readonly ILibraryManager LibraryManager;
@@ -45,7 +45,7 @@ namespace MediaBrowser.Server.Implementations.Library.Resolvers
var namingOptions = ((LibraryManager)LibraryManager).GetNamingOptions();
// If the path is a file check for a matching extensions
- var parser = new Naming.Video.VideoResolver(namingOptions, new PatternsLogger());
+ var parser = new MediaBrowser.Naming.Video.VideoResolver(namingOptions, new PatternsLogger());
if (args.IsDirectory)
{
diff --git a/MediaBrowser.Server.Implementations/Library/Resolvers/FolderResolver.cs b/Emby.Server.Implementations/Library/Resolvers/FolderResolver.cs
index ff07c5282..5e73baa5c 100644
--- a/MediaBrowser.Server.Implementations/Library/Resolvers/FolderResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/FolderResolver.cs
@@ -2,7 +2,7 @@
using MediaBrowser.Controller.Library;
using MediaBrowser.Controller.Resolvers;
-namespace MediaBrowser.Server.Implementations.Library.Resolvers
+namespace Emby.Server.Implementations.Library.Resolvers
{
/// <summary>
/// Class FolderResolver
diff --git a/MediaBrowser.Server.Implementations/Library/Resolvers/ItemResolver.cs b/Emby.Server.Implementations/Library/Resolvers/ItemResolver.cs
index a03eda263..b4a37be5f 100644
--- a/MediaBrowser.Server.Implementations/Library/Resolvers/ItemResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/ItemResolver.cs
@@ -2,7 +2,7 @@
using MediaBrowser.Controller.Library;
using MediaBrowser.Controller.Resolvers;
-namespace MediaBrowser.Server.Implementations.Library.Resolvers
+namespace Emby.Server.Implementations.Library.Resolvers
{
/// <summary>
/// Class ItemResolver
diff --git a/MediaBrowser.Server.Implementations/Library/Resolvers/Movies/BoxSetResolver.cs b/Emby.Server.Implementations/Library/Resolvers/Movies/BoxSetResolver.cs
index e3447afc9..df441c5ed 100644
--- a/MediaBrowser.Server.Implementations/Library/Resolvers/Movies/BoxSetResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/Movies/BoxSetResolver.cs
@@ -5,7 +5,7 @@ using MediaBrowser.Model.Entities;
using System;
using System.IO;
-namespace MediaBrowser.Server.Implementations.Library.Resolvers.Movies
+namespace Emby.Server.Implementations.Library.Resolvers.Movies
{
/// <summary>
/// Class BoxSetResolver
diff --git a/MediaBrowser.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs b/Emby.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs
index bb1d57688..d8c8b2024 100644
--- a/MediaBrowser.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs
@@ -7,16 +7,16 @@ using MediaBrowser.Controller.Resolvers;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Extensions;
using MediaBrowser.Naming.Video;
-using MediaBrowser.Server.Implementations.Logging;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
+using Emby.Server.Implementations.Logging;
using MediaBrowser.Common.IO;
using MediaBrowser.Controller.IO;
using MediaBrowser.Model.IO;
-namespace MediaBrowser.Server.Implementations.Library.Resolvers.Movies
+namespace Emby.Server.Implementations.Library.Resolvers.Movies
{
/// <summary>
/// Class MovieResolver
diff --git a/MediaBrowser.Server.Implementations/Library/Resolvers/PhotoAlbumResolver.cs b/Emby.Server.Implementations/Library/Resolvers/PhotoAlbumResolver.cs
index 957fafb92..3d7ede879 100644
--- a/MediaBrowser.Server.Implementations/Library/Resolvers/PhotoAlbumResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/PhotoAlbumResolver.cs
@@ -7,7 +7,7 @@ using System;
using System.IO;
using System.Linq;
-namespace MediaBrowser.Server.Implementations.Library.Resolvers
+namespace Emby.Server.Implementations.Library.Resolvers
{
public class PhotoAlbumResolver : FolderResolver<PhotoAlbum>
{
diff --git a/MediaBrowser.Server.Implementations/Library/Resolvers/PhotoResolver.cs b/Emby.Server.Implementations/Library/Resolvers/PhotoResolver.cs
index 549ad522e..df39e57ad 100644
--- a/MediaBrowser.Server.Implementations/Library/Resolvers/PhotoResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/PhotoResolver.cs
@@ -11,7 +11,7 @@ using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.IO;
using MediaBrowser.Model.Configuration;
-namespace MediaBrowser.Server.Implementations.Library.Resolvers
+namespace Emby.Server.Implementations.Library.Resolvers
{
public class PhotoResolver : ItemResolver<Photo>
{
diff --git a/MediaBrowser.Server.Implementations/Library/Resolvers/PlaylistResolver.cs b/Emby.Server.Implementations/Library/Resolvers/PlaylistResolver.cs
index a95739f22..8c59cf20f 100644
--- a/MediaBrowser.Server.Implementations/Library/Resolvers/PlaylistResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/PlaylistResolver.cs
@@ -3,7 +3,7 @@ using MediaBrowser.Controller.Playlists;
using System;
using System.IO;
-namespace MediaBrowser.Server.Implementations.Library.Resolvers
+namespace Emby.Server.Implementations.Library.Resolvers
{
public class PlaylistResolver : FolderResolver<Playlist>
{
diff --git a/MediaBrowser.Server.Implementations/Library/Resolvers/SpecialFolderResolver.cs b/Emby.Server.Implementations/Library/Resolvers/SpecialFolderResolver.cs
index 7a6198a00..1bec1073d 100644
--- a/MediaBrowser.Server.Implementations/Library/Resolvers/SpecialFolderResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/SpecialFolderResolver.cs
@@ -9,7 +9,7 @@ using MediaBrowser.Common.IO;
using MediaBrowser.Controller.IO;
using MediaBrowser.Model.IO;
-namespace MediaBrowser.Server.Implementations.Library.Resolvers
+namespace Emby.Server.Implementations.Library.Resolvers
{
class SpecialFolderResolver : FolderResolver<Folder>
{
diff --git a/MediaBrowser.Server.Implementations/Library/Resolvers/TV/EpisodeResolver.cs b/Emby.Server.Implementations/Library/Resolvers/TV/EpisodeResolver.cs
index 6edc4a009..2a4cc49b7 100644
--- a/MediaBrowser.Server.Implementations/Library/Resolvers/TV/EpisodeResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/TV/EpisodeResolver.cs
@@ -4,7 +4,7 @@ using MediaBrowser.Controller.Library;
using System.Linq;
using MediaBrowser.Model.Entities;
-namespace MediaBrowser.Server.Implementations.Library.Resolvers.TV
+namespace Emby.Server.Implementations.Library.Resolvers.TV
{
/// <summary>
/// Class EpisodeResolver
diff --git a/MediaBrowser.Server.Implementations/Library/Resolvers/TV/SeasonResolver.cs b/Emby.Server.Implementations/Library/Resolvers/TV/SeasonResolver.cs
index fc4929748..c065feda1 100644
--- a/MediaBrowser.Server.Implementations/Library/Resolvers/TV/SeasonResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/TV/SeasonResolver.cs
@@ -4,7 +4,7 @@ using MediaBrowser.Controller.Library;
using MediaBrowser.Naming.Common;
using MediaBrowser.Naming.TV;
-namespace MediaBrowser.Server.Implementations.Library.Resolvers.TV
+namespace Emby.Server.Implementations.Library.Resolvers.TV
{
/// <summary>
/// Class SeasonResolver
diff --git a/MediaBrowser.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs b/Emby.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs
index 83566e2c1..44eb0e3e2 100644
--- a/MediaBrowser.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs
@@ -6,18 +6,18 @@ using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Logging;
using MediaBrowser.Naming.Common;
using MediaBrowser.Naming.TV;
-using MediaBrowser.Server.Implementations.Logging;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
+using Emby.Server.Implementations.Logging;
using MediaBrowser.Common.IO;
using MediaBrowser.Model.IO;
using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.IO;
using MediaBrowser.Model.Configuration;
-namespace MediaBrowser.Server.Implementations.Library.Resolvers.TV
+namespace Emby.Server.Implementations.Library.Resolvers.TV
{
/// <summary>
/// Class SeriesResolver
@@ -171,7 +171,7 @@ namespace MediaBrowser.Server.Implementations.Library.Resolvers.TV
.ToList();
}
- var episodeResolver = new Naming.TV.EpisodeResolver(namingOptions, new PatternsLogger());
+ var episodeResolver = new MediaBrowser.Naming.TV.EpisodeResolver(namingOptions, new PatternsLogger());
var episodeInfo = episodeResolver.Resolve(fullName, false, false);
if (episodeInfo != null && episodeInfo.EpisodeNumber.HasValue)
{
diff --git a/MediaBrowser.Server.Implementations/Library/Resolvers/VideoResolver.cs b/Emby.Server.Implementations/Library/Resolvers/VideoResolver.cs
index c7f21cef1..b5e1bf5f7 100644
--- a/MediaBrowser.Server.Implementations/Library/Resolvers/VideoResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/VideoResolver.cs
@@ -2,7 +2,7 @@
using MediaBrowser.Controller.Library;
using MediaBrowser.Controller.Resolvers;
-namespace MediaBrowser.Server.Implementations.Library.Resolvers
+namespace Emby.Server.Implementations.Library.Resolvers
{
/// <summary>
/// Resolves a Path into a Video
diff --git a/MediaBrowser.Server.Implementations/Library/SearchEngine.cs b/Emby.Server.Implementations/Library/SearchEngine.cs
index c266fb191..afdf65c06 100644
--- a/MediaBrowser.Server.Implementations/Library/SearchEngine.cs
+++ b/Emby.Server.Implementations/Library/SearchEngine.cs
@@ -1,7 +1,5 @@
-using MediaBrowser.Common.Extensions;
-using MediaBrowser.Controller.Entities;
+using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Entities.Audio;
-using MediaBrowser.Controller.Entities.TV;
using MediaBrowser.Controller.Library;
using MediaBrowser.Model.Logging;
using MediaBrowser.Model.Querying;
@@ -11,13 +9,10 @@ using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using MediaBrowser.Controller.Extensions;
-using MediaBrowser.Model.Extensions;
-namespace MediaBrowser.Server.Implementations.Library
+namespace Emby.Server.Implementations.Library
{
/// <summary>
- /// Class LuceneSearchEngine
- /// http://www.codeproject.com/Articles/320219/Lucene-Net-ultra-fast-search-for-MVC-or-WebForms
/// </summary>
public class SearchEngine : ISearchEngine
{
diff --git a/MediaBrowser.Server.Implementations/Library/UserViewManager.cs b/Emby.Server.Implementations/Library/UserViewManager.cs
index 6a4e26ff9..b93f565a3 100644
--- a/MediaBrowser.Server.Implementations/Library/UserViewManager.cs
+++ b/Emby.Server.Implementations/Library/UserViewManager.cs
@@ -15,7 +15,7 @@ using System.Threading.Tasks;
using MediaBrowser.Controller.Entities.Audio;
using MediaBrowser.Model.Globalization;
-namespace MediaBrowser.Server.Implementations.Library
+namespace Emby.Server.Implementations.Library
{
public class UserViewManager : IUserViewManager
{
diff --git a/MediaBrowser.Server.Implementations/Library/Validators/ArtistsPostScanTask.cs b/Emby.Server.Implementations/Library/Validators/ArtistsPostScanTask.cs
index 91b035a35..4d718dbee 100644
--- a/MediaBrowser.Server.Implementations/Library/Validators/ArtistsPostScanTask.cs
+++ b/Emby.Server.Implementations/Library/Validators/ArtistsPostScanTask.cs
@@ -5,7 +5,7 @@ using System.Threading;
using System.Threading.Tasks;
using MediaBrowser.Controller.Persistence;
-namespace MediaBrowser.Server.Implementations.Library.Validators
+namespace Emby.Server.Implementations.Library.Validators
{
/// <summary>
/// Class ArtistsPostScanTask
diff --git a/MediaBrowser.Server.Implementations/Library/Validators/ArtistsValidator.cs b/Emby.Server.Implementations/Library/Validators/ArtistsValidator.cs
index 3dcdbeae9..643c5970e 100644
--- a/MediaBrowser.Server.Implementations/Library/Validators/ArtistsValidator.cs
+++ b/Emby.Server.Implementations/Library/Validators/ArtistsValidator.cs
@@ -9,7 +9,7 @@ using System.Threading.Tasks;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Persistence;
-namespace MediaBrowser.Server.Implementations.Library.Validators
+namespace Emby.Server.Implementations.Library.Validators
{
/// <summary>
/// Class ArtistsValidator
diff --git a/MediaBrowser.Server.Implementations/Library/Validators/GameGenresPostScanTask.cs b/Emby.Server.Implementations/Library/Validators/GameGenresPostScanTask.cs
index f3891180e..ee6c4461c 100644
--- a/MediaBrowser.Server.Implementations/Library/Validators/GameGenresPostScanTask.cs
+++ b/Emby.Server.Implementations/Library/Validators/GameGenresPostScanTask.cs
@@ -5,7 +5,7 @@ using System.Threading;
using System.Threading.Tasks;
using MediaBrowser.Controller.Persistence;
-namespace MediaBrowser.Server.Implementations.Library.Validators
+namespace Emby.Server.Implementations.Library.Validators
{
/// <summary>
/// Class GameGenresPostScanTask
diff --git a/MediaBrowser.Server.Implementations/Library/Validators/GameGenresValidator.cs b/Emby.Server.Implementations/Library/Validators/GameGenresValidator.cs
index b06c0b3b9..b1820bb91 100644
--- a/MediaBrowser.Server.Implementations/Library/Validators/GameGenresValidator.cs
+++ b/Emby.Server.Implementations/Library/Validators/GameGenresValidator.cs
@@ -7,7 +7,7 @@ using System.Threading;
using System.Threading.Tasks;
using MediaBrowser.Controller.Persistence;
-namespace MediaBrowser.Server.Implementations.Library.Validators
+namespace Emby.Server.Implementations.Library.Validators
{
class GameGenresValidator
{
diff --git a/MediaBrowser.Server.Implementations/Library/Validators/GenresPostScanTask.cs b/Emby.Server.Implementations/Library/Validators/GenresPostScanTask.cs
index ed2429769..be46decfb 100644
--- a/MediaBrowser.Server.Implementations/Library/Validators/GenresPostScanTask.cs
+++ b/Emby.Server.Implementations/Library/Validators/GenresPostScanTask.cs
@@ -5,7 +5,7 @@ using System.Threading.Tasks;
using MediaBrowser.Controller.Persistence;
using MediaBrowser.Model.Logging;
-namespace MediaBrowser.Server.Implementations.Library.Validators
+namespace Emby.Server.Implementations.Library.Validators
{
public class GenresPostScanTask : ILibraryPostScanTask
{
diff --git a/MediaBrowser.Server.Implementations/Library/Validators/GenresValidator.cs b/Emby.Server.Implementations/Library/Validators/GenresValidator.cs
index f35bb5136..d8956f78a 100644
--- a/MediaBrowser.Server.Implementations/Library/Validators/GenresValidator.cs
+++ b/Emby.Server.Implementations/Library/Validators/GenresValidator.cs
@@ -8,7 +8,7 @@ using System.Threading;
using System.Threading.Tasks;
using MediaBrowser.Controller.Persistence;
-namespace MediaBrowser.Server.Implementations.Library.Validators
+namespace Emby.Server.Implementations.Library.Validators
{
class GenresValidator
{
diff --git a/MediaBrowser.Server.Implementations/Library/Validators/MusicGenresPostScanTask.cs b/Emby.Server.Implementations/Library/Validators/MusicGenresPostScanTask.cs
index 777532ff8..cd4021548 100644
--- a/MediaBrowser.Server.Implementations/Library/Validators/MusicGenresPostScanTask.cs
+++ b/Emby.Server.Implementations/Library/Validators/MusicGenresPostScanTask.cs
@@ -5,7 +5,7 @@ using System.Threading;
using System.Threading.Tasks;
using MediaBrowser.Controller.Persistence;
-namespace MediaBrowser.Server.Implementations.Library.Validators
+namespace Emby.Server.Implementations.Library.Validators
{
/// <summary>
/// Class MusicGenresPostScanTask
diff --git a/MediaBrowser.Server.Implementations/Library/Validators/MusicGenresValidator.cs b/Emby.Server.Implementations/Library/Validators/MusicGenresValidator.cs
index 2be99f106..983c881b7 100644
--- a/MediaBrowser.Server.Implementations/Library/Validators/MusicGenresValidator.cs
+++ b/Emby.Server.Implementations/Library/Validators/MusicGenresValidator.cs
@@ -8,7 +8,7 @@ using System.Threading.Tasks;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Persistence;
-namespace MediaBrowser.Server.Implementations.Library.Validators
+namespace Emby.Server.Implementations.Library.Validators
{
class MusicGenresValidator
{
diff --git a/MediaBrowser.Server.Implementations/Library/Validators/PeopleValidator.cs b/Emby.Server.Implementations/Library/Validators/PeopleValidator.cs
index d9a7199be..813f07fff 100644
--- a/MediaBrowser.Server.Implementations/Library/Validators/PeopleValidator.cs
+++ b/Emby.Server.Implementations/Library/Validators/PeopleValidator.cs
@@ -15,7 +15,7 @@ using MediaBrowser.Common.IO;
using MediaBrowser.Controller.IO;
using MediaBrowser.Model.IO;
-namespace MediaBrowser.Server.Implementations.Library.Validators
+namespace Emby.Server.Implementations.Library.Validators
{
/// <summary>
/// Class PeopleValidator
diff --git a/MediaBrowser.Server.Implementations/Library/Validators/StudiosPostScanTask.cs b/Emby.Server.Implementations/Library/Validators/StudiosPostScanTask.cs
index 77c6d5146..d23efb6d3 100644
--- a/MediaBrowser.Server.Implementations/Library/Validators/StudiosPostScanTask.cs
+++ b/Emby.Server.Implementations/Library/Validators/StudiosPostScanTask.cs
@@ -5,7 +5,7 @@ using System.Threading;
using System.Threading.Tasks;
using MediaBrowser.Controller.Persistence;
-namespace MediaBrowser.Server.Implementations.Library.Validators
+namespace Emby.Server.Implementations.Library.Validators
{
/// <summary>
/// Class MusicGenresPostScanTask
diff --git a/MediaBrowser.Server.Implementations/Library/Validators/StudiosValidator.cs b/Emby.Server.Implementations/Library/Validators/StudiosValidator.cs
index a19b8158a..6faab7bb9 100644
--- a/MediaBrowser.Server.Implementations/Library/Validators/StudiosValidator.cs
+++ b/Emby.Server.Implementations/Library/Validators/StudiosValidator.cs
@@ -7,7 +7,7 @@ using System.Threading.Tasks;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Persistence;
-namespace MediaBrowser.Server.Implementations.Library.Validators
+namespace Emby.Server.Implementations.Library.Validators
{
class StudiosValidator
{
diff --git a/MediaBrowser.Server.Implementations/Library/Validators/YearsPostScanTask.cs b/Emby.Server.Implementations/Library/Validators/YearsPostScanTask.cs
index 164b14223..ae43c77f0 100644
--- a/MediaBrowser.Server.Implementations/Library/Validators/YearsPostScanTask.cs
+++ b/Emby.Server.Implementations/Library/Validators/YearsPostScanTask.cs
@@ -4,7 +4,7 @@ using System;
using System.Threading;
using System.Threading.Tasks;
-namespace MediaBrowser.Server.Implementations.Library.Validators
+namespace Emby.Server.Implementations.Library.Validators
{
public class YearsPostScanTask : ILibraryPostScanTask
{
diff --git a/Emby.Server.Implementations/Logging/PatternsLogger.cs b/Emby.Server.Implementations/Logging/PatternsLogger.cs
new file mode 100644
index 000000000..6dbf33d61
--- /dev/null
+++ b/Emby.Server.Implementations/Logging/PatternsLogger.cs
@@ -0,0 +1,63 @@
+using Patterns.Logging;
+using System;
+
+namespace Emby.Server.Implementations.Logging
+{
+ public class PatternsLogger : ILogger
+ {
+ private readonly MediaBrowser.Model.Logging.ILogger _logger;
+
+ public PatternsLogger()
+ : this(new MediaBrowser.Model.Logging.NullLogger())
+ {
+ }
+
+ public PatternsLogger(MediaBrowser.Model.Logging.ILogger logger)
+ {
+ _logger = logger;
+ }
+
+ public void Debug(string message, params object[] paramList)
+ {
+ _logger.Debug(message, paramList);
+ }
+
+ public void Error(string message, params object[] paramList)
+ {
+ _logger.Error(message, paramList);
+ }
+
+ public void ErrorException(string message, Exception exception, params object[] paramList)
+ {
+ _logger.ErrorException(message, exception, paramList);
+ }
+
+ public void Fatal(string message, params object[] paramList)
+ {
+ _logger.Fatal(message, paramList);
+ }
+
+ public void FatalException(string message, Exception exception, params object[] paramList)
+ {
+ _logger.FatalException(message, exception, paramList);
+ }
+
+ public void Info(string message, params object[] paramList)
+ {
+ _logger.Info(message, paramList);
+ }
+
+ public void Warn(string message, params object[] paramList)
+ {
+ _logger.Warn(message, paramList);
+ }
+
+ public void Log(LogSeverity severity, string message, params object[] paramList)
+ {
+ }
+
+ public void LogMultiline(string message, LogSeverity severity, System.Text.StringBuilder additionalContent)
+ {
+ }
+ }
+}
diff --git a/MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs b/Emby.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs
index ed1d21d9a..88f4f1f81 100644
--- a/MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs
+++ b/Emby.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs
@@ -20,9 +20,9 @@ using MediaBrowser.Controller.LiveTv;
using MediaBrowser.Controller.Net;
using MediaBrowser.Model.Globalization;
using MediaBrowser.Model.Tasks;
-using MediaBrowser.Server.Implementations.ScheduledTasks;
+using Emby.Server.Implementations.ScheduledTasks;
-namespace MediaBrowser.Server.Implementations.Persistence
+namespace Emby.Server.Implementations.Persistence
{
public class CleanDatabaseScheduledTask : IScheduledTask
{
@@ -37,6 +37,7 @@ namespace MediaBrowser.Server.Implementations.Persistence
public const int MigrationVersion = 23;
public static bool EnableUnavailableMessage = false;
+ const int LatestSchemaVersion = 109;
public CleanDatabaseScheduledTask(ILibraryManager libraryManager, IItemRepository itemRepo, ILogger logger, IServerConfigurationManager config, IFileSystem fileSystem, IHttpServer httpServer, ILocalizationManager localization, ITaskManager taskManager)
{
@@ -113,9 +114,9 @@ namespace MediaBrowser.Server.Implementations.Persistence
_config.SaveConfiguration();
}
- if (_config.Configuration.SchemaVersion < SqliteItemRepository.LatestSchemaVersion)
+ if (_config.Configuration.SchemaVersion < LatestSchemaVersion)
{
- _config.Configuration.SchemaVersion = SqliteItemRepository.LatestSchemaVersion;
+ _config.Configuration.SchemaVersion = LatestSchemaVersion;
_config.SaveConfiguration();
}
diff --git a/MediaBrowser.Server.Implementations/ScheduledTasks/RefreshMediaLibraryTask.cs b/Emby.Server.Implementations/ScheduledTasks/RefreshMediaLibraryTask.cs
index e695adb54..fb07b8e99 100644
--- a/MediaBrowser.Server.Implementations/ScheduledTasks/RefreshMediaLibraryTask.cs
+++ b/Emby.Server.Implementations/ScheduledTasks/RefreshMediaLibraryTask.cs
@@ -1,13 +1,13 @@
using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.Library;
-using MediaBrowser.Server.Implementations.Library;
using System;
using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
+using Emby.Server.Implementations.Library;
using MediaBrowser.Model.Tasks;
-namespace MediaBrowser.Server.Implementations.ScheduledTasks
+namespace Emby.Server.Implementations.ScheduledTasks
{
/// <summary>
/// Class RefreshMediaLibraryTask
diff --git a/MediaBrowser.Server.Implementations/Sorting/AirTimeComparer.cs b/Emby.Server.Implementations/Sorting/AirTimeComparer.cs
index 7e6a252cd..bc05e9af3 100644
--- a/MediaBrowser.Server.Implementations/Sorting/AirTimeComparer.cs
+++ b/Emby.Server.Implementations/Sorting/AirTimeComparer.cs
@@ -4,7 +4,7 @@ using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
using System;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
public class AirTimeComparer : IBaseItemComparer
{
diff --git a/MediaBrowser.Server.Implementations/Sorting/AiredEpisodeOrderComparer.cs b/Emby.Server.Implementations/Sorting/AiredEpisodeOrderComparer.cs
index 91abbe34c..494668cb9 100644
--- a/MediaBrowser.Server.Implementations/Sorting/AiredEpisodeOrderComparer.cs
+++ b/Emby.Server.Implementations/Sorting/AiredEpisodeOrderComparer.cs
@@ -4,7 +4,7 @@ using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
using System;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
class AiredEpisodeOrderComparer : IBaseItemComparer
{
diff --git a/MediaBrowser.Server.Implementations/Sorting/AlbumArtistComparer.cs b/Emby.Server.Implementations/Sorting/AlbumArtistComparer.cs
index 3c79b0c32..cd3834080 100644
--- a/MediaBrowser.Server.Implementations/Sorting/AlbumArtistComparer.cs
+++ b/Emby.Server.Implementations/Sorting/AlbumArtistComparer.cs
@@ -5,7 +5,7 @@ using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
using System;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
/// <summary>
/// Class AlbumArtistComparer
diff --git a/MediaBrowser.Server.Implementations/Sorting/AlbumComparer.cs b/Emby.Server.Implementations/Sorting/AlbumComparer.cs
index f455d5c2b..68f5f173e 100644
--- a/MediaBrowser.Server.Implementations/Sorting/AlbumComparer.cs
+++ b/Emby.Server.Implementations/Sorting/AlbumComparer.cs
@@ -4,7 +4,7 @@ using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
using System;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
/// <summary>
/// Class AlbumComparer
diff --git a/MediaBrowser.Server.Implementations/Sorting/AlphanumComparator.cs b/Emby.Server.Implementations/Sorting/AlphanumComparator.cs
index 232bdb3b5..4bfcda1ac 100644
--- a/MediaBrowser.Server.Implementations/Sorting/AlphanumComparator.cs
+++ b/Emby.Server.Implementations/Sorting/AlphanumComparator.cs
@@ -2,7 +2,7 @@
using System.Text;
using MediaBrowser.Controller.Sorting;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
public class AlphanumComparator : IComparer<string>
{
diff --git a/MediaBrowser.Server.Implementations/Sorting/ArtistComparer.cs b/Emby.Server.Implementations/Sorting/ArtistComparer.cs
index 9ff8a5ace..edb195820 100644
--- a/MediaBrowser.Server.Implementations/Sorting/ArtistComparer.cs
+++ b/Emby.Server.Implementations/Sorting/ArtistComparer.cs
@@ -4,7 +4,7 @@ using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
using System;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
/// <summary>
/// Class ArtistComparer
diff --git a/MediaBrowser.Server.Implementations/Sorting/BudgetComparer.cs b/Emby.Server.Implementations/Sorting/BudgetComparer.cs
index 87a7325c6..f3aef69f1 100644
--- a/MediaBrowser.Server.Implementations/Sorting/BudgetComparer.cs
+++ b/Emby.Server.Implementations/Sorting/BudgetComparer.cs
@@ -2,7 +2,7 @@
using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
public class BudgetComparer : IBaseItemComparer
{
diff --git a/MediaBrowser.Server.Implementations/Sorting/CommunityRatingComparer.cs b/Emby.Server.Implementations/Sorting/CommunityRatingComparer.cs
index bdd18a648..396bbbdb9 100644
--- a/MediaBrowser.Server.Implementations/Sorting/CommunityRatingComparer.cs
+++ b/Emby.Server.Implementations/Sorting/CommunityRatingComparer.cs
@@ -2,7 +2,7 @@
using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
public class CommunityRatingComparer : IBaseItemComparer
{
diff --git a/MediaBrowser.Server.Implementations/Sorting/CriticRatingComparer.cs b/Emby.Server.Implementations/Sorting/CriticRatingComparer.cs
index 9484130cb..877dbfcc1 100644
--- a/MediaBrowser.Server.Implementations/Sorting/CriticRatingComparer.cs
+++ b/Emby.Server.Implementations/Sorting/CriticRatingComparer.cs
@@ -2,7 +2,7 @@
using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
/// <summary>
/// Class CriticRatingComparer
diff --git a/MediaBrowser.Server.Implementations/Sorting/DateCreatedComparer.cs b/Emby.Server.Implementations/Sorting/DateCreatedComparer.cs
index 9862f0a8a..c436fcb4a 100644
--- a/MediaBrowser.Server.Implementations/Sorting/DateCreatedComparer.cs
+++ b/Emby.Server.Implementations/Sorting/DateCreatedComparer.cs
@@ -3,7 +3,7 @@ using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
using System;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
/// <summary>
/// Class DateCreatedComparer
diff --git a/MediaBrowser.Server.Implementations/Sorting/DateLastMediaAddedComparer.cs b/Emby.Server.Implementations/Sorting/DateLastMediaAddedComparer.cs
index 5080edffd..fc92505ac 100644
--- a/MediaBrowser.Server.Implementations/Sorting/DateLastMediaAddedComparer.cs
+++ b/Emby.Server.Implementations/Sorting/DateLastMediaAddedComparer.cs
@@ -4,7 +4,7 @@ using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
using System;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
public class DateLastMediaAddedComparer : IUserBaseItemComparer
{
diff --git a/MediaBrowser.Server.Implementations/Sorting/DatePlayedComparer.cs b/Emby.Server.Implementations/Sorting/DatePlayedComparer.cs
index 3edf23020..388d2772e 100644
--- a/MediaBrowser.Server.Implementations/Sorting/DatePlayedComparer.cs
+++ b/Emby.Server.Implementations/Sorting/DatePlayedComparer.cs
@@ -4,7 +4,7 @@ using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
using System;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
/// <summary>
/// Class DatePlayedComparer
diff --git a/MediaBrowser.Server.Implementations/Sorting/GameSystemComparer.cs b/Emby.Server.Implementations/Sorting/GameSystemComparer.cs
index eb83b98e9..4ee30397d 100644
--- a/MediaBrowser.Server.Implementations/Sorting/GameSystemComparer.cs
+++ b/Emby.Server.Implementations/Sorting/GameSystemComparer.cs
@@ -3,7 +3,7 @@ using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
using System;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
public class GameSystemComparer : IBaseItemComparer
{
diff --git a/MediaBrowser.Server.Implementations/Sorting/IsFavoriteOrLikeComparer.cs b/Emby.Server.Implementations/Sorting/IsFavoriteOrLikeComparer.cs
index 658708dba..27485f09e 100644
--- a/MediaBrowser.Server.Implementations/Sorting/IsFavoriteOrLikeComparer.cs
+++ b/Emby.Server.Implementations/Sorting/IsFavoriteOrLikeComparer.cs
@@ -3,7 +3,7 @@ using MediaBrowser.Controller.Library;
using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
public class IsFavoriteOrLikeComparer : IUserBaseItemComparer
{
diff --git a/MediaBrowser.Server.Implementations/Sorting/IsFolderComparer.cs b/Emby.Server.Implementations/Sorting/IsFolderComparer.cs
index d2341d065..756d13bd8 100644
--- a/MediaBrowser.Server.Implementations/Sorting/IsFolderComparer.cs
+++ b/Emby.Server.Implementations/Sorting/IsFolderComparer.cs
@@ -2,7 +2,7 @@
using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
public class IsFolderComparer : IBaseItemComparer
{
diff --git a/MediaBrowser.Server.Implementations/Sorting/IsPlayedComparer.cs b/Emby.Server.Implementations/Sorting/IsPlayedComparer.cs
index aebfbdb1c..987dc54a5 100644
--- a/MediaBrowser.Server.Implementations/Sorting/IsPlayedComparer.cs
+++ b/Emby.Server.Implementations/Sorting/IsPlayedComparer.cs
@@ -3,7 +3,7 @@ using MediaBrowser.Controller.Library;
using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
public class IsPlayedComparer : IUserBaseItemComparer
{
diff --git a/MediaBrowser.Server.Implementations/Sorting/IsUnplayedComparer.cs b/Emby.Server.Implementations/Sorting/IsUnplayedComparer.cs
index f1c6a5a4e..0f4e4c37e 100644
--- a/MediaBrowser.Server.Implementations/Sorting/IsUnplayedComparer.cs
+++ b/Emby.Server.Implementations/Sorting/IsUnplayedComparer.cs
@@ -3,7 +3,7 @@ using MediaBrowser.Controller.Library;
using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
public class IsUnplayedComparer : IUserBaseItemComparer
{
diff --git a/MediaBrowser.Server.Implementations/Sorting/MetascoreComparer.cs b/Emby.Server.Implementations/Sorting/MetascoreComparer.cs
index bfd162661..9759e0228 100644
--- a/MediaBrowser.Server.Implementations/Sorting/MetascoreComparer.cs
+++ b/Emby.Server.Implementations/Sorting/MetascoreComparer.cs
@@ -2,7 +2,7 @@
using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
public class MetascoreComparer : IBaseItemComparer
{
diff --git a/MediaBrowser.Server.Implementations/Sorting/NameComparer.cs b/Emby.Server.Implementations/Sorting/NameComparer.cs
index 49f86c485..8ab5e5172 100644
--- a/MediaBrowser.Server.Implementations/Sorting/NameComparer.cs
+++ b/Emby.Server.Implementations/Sorting/NameComparer.cs
@@ -3,7 +3,7 @@ using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
using System;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
/// <summary>
/// Class NameComparer
diff --git a/MediaBrowser.Server.Implementations/Sorting/OfficialRatingComparer.cs b/Emby.Server.Implementations/Sorting/OfficialRatingComparer.cs
index 3b1939b70..3eab4fccc 100644
--- a/MediaBrowser.Server.Implementations/Sorting/OfficialRatingComparer.cs
+++ b/Emby.Server.Implementations/Sorting/OfficialRatingComparer.cs
@@ -3,7 +3,7 @@ using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Globalization;
using MediaBrowser.Model.Querying;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
public class OfficialRatingComparer : IBaseItemComparer
{
diff --git a/MediaBrowser.Server.Implementations/Sorting/PlayCountComparer.cs b/Emby.Server.Implementations/Sorting/PlayCountComparer.cs
index 8b14efffc..aecad7c58 100644
--- a/MediaBrowser.Server.Implementations/Sorting/PlayCountComparer.cs
+++ b/Emby.Server.Implementations/Sorting/PlayCountComparer.cs
@@ -3,7 +3,7 @@ using MediaBrowser.Controller.Library;
using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
/// <summary>
/// Class PlayCountComparer
diff --git a/MediaBrowser.Server.Implementations/Sorting/PlayersComparer.cs b/Emby.Server.Implementations/Sorting/PlayersComparer.cs
index 5bcd080d7..3b54517c3 100644
--- a/MediaBrowser.Server.Implementations/Sorting/PlayersComparer.cs
+++ b/Emby.Server.Implementations/Sorting/PlayersComparer.cs
@@ -2,7 +2,7 @@
using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
public class PlayersComparer : IBaseItemComparer
{
diff --git a/MediaBrowser.Server.Implementations/Sorting/PremiereDateComparer.cs b/Emby.Server.Implementations/Sorting/PremiereDateComparer.cs
index ffe1fc24a..d7219c86f 100644
--- a/MediaBrowser.Server.Implementations/Sorting/PremiereDateComparer.cs
+++ b/Emby.Server.Implementations/Sorting/PremiereDateComparer.cs
@@ -3,7 +3,7 @@ using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
using System;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
/// <summary>
/// Class PremiereDateComparer
diff --git a/MediaBrowser.Server.Implementations/Sorting/ProductionYearComparer.cs b/Emby.Server.Implementations/Sorting/ProductionYearComparer.cs
index 16d531334..ea479419a 100644
--- a/MediaBrowser.Server.Implementations/Sorting/ProductionYearComparer.cs
+++ b/Emby.Server.Implementations/Sorting/ProductionYearComparer.cs
@@ -2,7 +2,7 @@
using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
/// <summary>
/// Class ProductionYearComparer
diff --git a/MediaBrowser.Server.Implementations/Sorting/RandomComparer.cs b/Emby.Server.Implementations/Sorting/RandomComparer.cs
index b1677331a..1fbecde56 100644
--- a/MediaBrowser.Server.Implementations/Sorting/RandomComparer.cs
+++ b/Emby.Server.Implementations/Sorting/RandomComparer.cs
@@ -3,7 +3,7 @@ using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
using System;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
/// <summary>
/// Class RandomComparer
diff --git a/MediaBrowser.Server.Implementations/Sorting/RevenueComparer.cs b/Emby.Server.Implementations/Sorting/RevenueComparer.cs
index 6caa27ac3..62e43eac1 100644
--- a/MediaBrowser.Server.Implementations/Sorting/RevenueComparer.cs
+++ b/Emby.Server.Implementations/Sorting/RevenueComparer.cs
@@ -2,7 +2,7 @@
using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
public class RevenueComparer : IBaseItemComparer
{
diff --git a/MediaBrowser.Server.Implementations/Sorting/RuntimeComparer.cs b/Emby.Server.Implementations/Sorting/RuntimeComparer.cs
index 793cb265e..63c4758cb 100644
--- a/MediaBrowser.Server.Implementations/Sorting/RuntimeComparer.cs
+++ b/Emby.Server.Implementations/Sorting/RuntimeComparer.cs
@@ -2,7 +2,7 @@
using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
/// <summary>
/// Class RuntimeComparer
diff --git a/MediaBrowser.Server.Implementations/Sorting/SeriesSortNameComparer.cs b/Emby.Server.Implementations/Sorting/SeriesSortNameComparer.cs
index 6bc1264a4..b315d33c3 100644
--- a/MediaBrowser.Server.Implementations/Sorting/SeriesSortNameComparer.cs
+++ b/Emby.Server.Implementations/Sorting/SeriesSortNameComparer.cs
@@ -3,7 +3,7 @@ using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
using System;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
class SeriesSortNameComparer : IBaseItemComparer
{
diff --git a/MediaBrowser.Server.Implementations/Sorting/SortNameComparer.cs b/Emby.Server.Implementations/Sorting/SortNameComparer.cs
index 873753a2b..f2a764840 100644
--- a/MediaBrowser.Server.Implementations/Sorting/SortNameComparer.cs
+++ b/Emby.Server.Implementations/Sorting/SortNameComparer.cs
@@ -3,7 +3,7 @@ using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
using System;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
/// <summary>
/// Class SortNameComparer
diff --git a/MediaBrowser.Server.Implementations/Sorting/StartDateComparer.cs b/Emby.Server.Implementations/Sorting/StartDateComparer.cs
index 7e6f24ec1..6be5f4883 100644
--- a/MediaBrowser.Server.Implementations/Sorting/StartDateComparer.cs
+++ b/Emby.Server.Implementations/Sorting/StartDateComparer.cs
@@ -4,7 +4,7 @@ using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
using System;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
public class StartDateComparer : IBaseItemComparer
{
diff --git a/MediaBrowser.Server.Implementations/Sorting/StudioComparer.cs b/Emby.Server.Implementations/Sorting/StudioComparer.cs
index 83ab4dfc2..6735022af 100644
--- a/MediaBrowser.Server.Implementations/Sorting/StudioComparer.cs
+++ b/Emby.Server.Implementations/Sorting/StudioComparer.cs
@@ -3,7 +3,7 @@ using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
using System.Linq;
-namespace MediaBrowser.Server.Implementations.Sorting
+namespace Emby.Server.Implementations.Sorting
{
public class StudioComparer : IBaseItemComparer
{
diff --git a/Emby.Server.Implementations/packages.config b/Emby.Server.Implementations/packages.config
new file mode 100644
index 000000000..97e40a2f4
--- /dev/null
+++ b/Emby.Server.Implementations/packages.config
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="MediaBrowser.Naming" version="1.0.0.57" targetFramework="portable45-net45+win8" />
+ <package id="Patterns.Logging" version="1.0.0.4" targetFramework="portable45-net45+win8" />
+</packages> \ No newline at end of file
diff --git a/MediaBrowser.Server.Implementations/IO/FileRefresher.cs b/MediaBrowser.Server.Implementations/IO/FileRefresher.cs
index eeefdd65a..2742e1a26 100644
--- a/MediaBrowser.Server.Implementations/IO/FileRefresher.cs
+++ b/MediaBrowser.Server.Implementations/IO/FileRefresher.cs
@@ -14,7 +14,7 @@ using MediaBrowser.Controller.Library;
using MediaBrowser.Model.Extensions;
using MediaBrowser.Model.Logging;
using MediaBrowser.Model.Tasks;
-using MediaBrowser.Server.Implementations.ScheduledTasks;
+using MediaBrowser.Model.Threading;
namespace MediaBrowser.Server.Implementations.IO
{
@@ -26,13 +26,14 @@ namespace MediaBrowser.Server.Implementations.IO
private IServerConfigurationManager ConfigurationManager { get; set; }
private readonly IFileSystem _fileSystem;
private readonly List<string> _affectedPaths = new List<string>();
- private Timer _timer;
+ private ITimer _timer;
+ private readonly ITimerFactory _timerFactory;
private readonly object _timerLock = new object();
public string Path { get; private set; }
public event EventHandler<EventArgs> Completed;
- public FileRefresher(string path, IFileSystem fileSystem, IServerConfigurationManager configurationManager, ILibraryManager libraryManager, ITaskManager taskManager, ILogger logger)
+ public FileRefresher(string path, IFileSystem fileSystem, IServerConfigurationManager configurationManager, ILibraryManager libraryManager, ITaskManager taskManager, ILogger logger, ITimerFactory timerFactory)
{
logger.Debug("New file refresher created for {0}", path);
Path = path;
@@ -42,6 +43,7 @@ namespace MediaBrowser.Server.Implementations.IO
LibraryManager = libraryManager;
TaskManager = taskManager;
Logger = logger;
+ _timerFactory = timerFactory;
AddPath(path);
}
@@ -88,7 +90,7 @@ namespace MediaBrowser.Server.Implementations.IO
if (_timer == null)
{
- _timer = new Timer(OnTimerCallback, null, TimeSpan.FromSeconds(ConfigurationManager.Configuration.LibraryMonitorDelay), TimeSpan.FromMilliseconds(-1));
+ _timer = _timerFactory.Create(OnTimerCallback, null, TimeSpan.FromSeconds(ConfigurationManager.Configuration.LibraryMonitorDelay), TimeSpan.FromMilliseconds(-1));
}
else
{
@@ -163,7 +165,7 @@ namespace MediaBrowser.Server.Implementations.IO
// If the root folder changed, run the library task so the user can see it
if (itemsToRefresh.Any(i => i is AggregateFolder))
{
- TaskManager.CancelIfRunningAndQueue<RefreshMediaLibraryTask>();
+ LibraryManager.ValidateMediaLibrary(new Progress<double>(), CancellationToken.None);
return;
}
@@ -268,11 +270,11 @@ namespace MediaBrowser.Server.Implementations.IO
return false;
}
}
- catch (DirectoryNotFoundException)
- {
- // File may have been deleted
- return false;
- }
+ //catch (DirectoryNotFoundException)
+ //{
+ // // File may have been deleted
+ // return false;
+ //}
catch (FileNotFoundException)
{
// File may have been deleted
diff --git a/MediaBrowser.Server.Implementations/IO/LibraryMonitor.cs b/MediaBrowser.Server.Implementations/IO/LibraryMonitor.cs
index 77981b528..1f2a6255e 100644
--- a/MediaBrowser.Server.Implementations/IO/LibraryMonitor.cs
+++ b/MediaBrowser.Server.Implementations/IO/LibraryMonitor.cs
@@ -16,6 +16,7 @@ using MediaBrowser.Model.IO;
using MediaBrowser.Controller;
using MediaBrowser.Controller.IO;
using MediaBrowser.Model.Tasks;
+using MediaBrowser.Model.Threading;
namespace MediaBrowser.Server.Implementations.IO
{
@@ -136,12 +137,12 @@ namespace MediaBrowser.Server.Implementations.IO
private IServerConfigurationManager ConfigurationManager { get; set; }
private readonly IFileSystem _fileSystem;
- private readonly IServerApplicationHost _appHost;
+ private readonly ITimerFactory _timerFactory;
/// <summary>
/// Initializes a new instance of the <see cref="LibraryMonitor" /> class.
/// </summary>
- public LibraryMonitor(ILogManager logManager, ITaskManager taskManager, ILibraryManager libraryManager, IServerConfigurationManager configurationManager, IFileSystem fileSystem, IServerApplicationHost appHost)
+ public LibraryMonitor(ILogManager logManager, ITaskManager taskManager, ILibraryManager libraryManager, IServerConfigurationManager configurationManager, IFileSystem fileSystem, ITimerFactory timerFactory)
{
if (taskManager == null)
{
@@ -153,7 +154,7 @@ namespace MediaBrowser.Server.Implementations.IO
Logger = logManager.GetLogger(GetType().Name);
ConfigurationManager = configurationManager;
_fileSystem = fileSystem;
- _appHost = appHost;
+ _timerFactory = timerFactory;
SystemEvents.PowerModeChanged += SystemEvents_PowerModeChanged;
}
@@ -528,7 +529,7 @@ namespace MediaBrowser.Server.Implementations.IO
}
}
- var newRefresher = new FileRefresher(path, _fileSystem, ConfigurationManager, LibraryManager, TaskManager, Logger);
+ var newRefresher = new FileRefresher(path, _fileSystem, ConfigurationManager, LibraryManager, TaskManager, Logger, _timerFactory);
newRefresher.Completed += NewRefresher_Completed;
_activeRefreshers.Add(newRefresher);
}
diff --git a/MediaBrowser.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs b/MediaBrowser.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs
index 397e5fc9f..1e5f760ca 100644
--- a/MediaBrowser.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs
+++ b/MediaBrowser.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs
@@ -15,7 +15,6 @@ using MediaBrowser.Model.Events;
using MediaBrowser.Model.LiveTv;
using MediaBrowser.Model.Logging;
using MediaBrowser.Model.Serialization;
-using MediaBrowser.Server.Implementations.FileOrganization;
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
@@ -1528,28 +1527,28 @@ namespace MediaBrowser.Server.Implementations.LiveTv.EmbyTV
private async void OnSuccessfulRecording(TimerInfo timer, string path)
{
- if (timer.IsProgramSeries && GetConfiguration().EnableAutoOrganize)
- {
- try
- {
- // this is to account for the library monitor holding a lock for additional time after the change is complete.
- // ideally this shouldn't be hard-coded
- await Task.Delay(30000).ConfigureAwait(false);
-
- var organize = new EpisodeFileOrganizer(_organizationService, _config, _fileSystem, _logger, _libraryManager, _libraryMonitor, _providerManager);
-
- var result = await organize.OrganizeEpisodeFile(path, _config.GetAutoOrganizeOptions(), false, CancellationToken.None).ConfigureAwait(false);
-
- if (result.Status == FileSortingStatus.Success)
- {
- return;
- }
- }
- catch (Exception ex)
- {
- _logger.ErrorException("Error processing new recording", ex);
- }
- }
+ //if (timer.IsProgramSeries && GetConfiguration().EnableAutoOrganize)
+ //{
+ // try
+ // {
+ // // this is to account for the library monitor holding a lock for additional time after the change is complete.
+ // // ideally this shouldn't be hard-coded
+ // await Task.Delay(30000).ConfigureAwait(false);
+
+ // var organize = new EpisodeFileOrganizer(_organizationService, _config, _fileSystem, _logger, _libraryManager, _libraryMonitor, _providerManager);
+
+ // var result = await organize.OrganizeEpisodeFile(path, _config.GetAutoOrganizeOptions(), false, CancellationToken.None).ConfigureAwait(false);
+
+ // if (result.Status == FileSortingStatus.Success)
+ // {
+ // return;
+ // }
+ // }
+ // catch (Exception ex)
+ // {
+ // _logger.ErrorException("Error processing new recording", ex);
+ // }
+ //}
}
private void SaveNfo(TimerInfo timer, string recordingPath, string seriesPath)
diff --git a/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj b/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj
index 037c6bd0c..fc71ef8a0 100644
--- a/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj
+++ b/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj
@@ -108,7 +108,6 @@
<Compile Include="..\SharedVersion.cs">
<Link>Properties\SharedVersion.cs</Link>
</Compile>
- <Compile Include="Activity\ActivityManager.cs" />
<Compile Include="Activity\ActivityRepository.cs" />
<Compile Include="Archiving\ZipClient.cs" />
<Compile Include="Collections\CollectionsDynamicFolder.cs" />
@@ -122,7 +121,6 @@
<Compile Include="Devices\DeviceManager.cs" />
<Compile Include="Devices\DeviceRepository.cs" />
<Compile Include="Devices\CameraUploadsFolder.cs" />
- <Compile Include="Dto\DtoService.cs" />
<Compile Include="EntryPoints\ActivityLogEntryPoint.cs" />
<Compile Include="EntryPoints\AutomaticRestartEntryPoint.cs" />
<Compile Include="EntryPoints\ExternalPortForwarding.cs" />
@@ -134,16 +132,9 @@
<Compile Include="EntryPoints\RefreshUsersMetadata.cs" />
<Compile Include="EntryPoints\UsageEntryPoint.cs" />
<Compile Include="EntryPoints\UsageReporter.cs" />
- <Compile Include="FileOrganization\EpisodeFileOrganizer.cs" />
- <Compile Include="FileOrganization\Extensions.cs" />
- <Compile Include="FileOrganization\FileOrganizationNotifier.cs" />
- <Compile Include="FileOrganization\FileOrganizationService.cs" />
- <Compile Include="FileOrganization\NameUtils.cs" />
- <Compile Include="FileOrganization\TvFolderOrganizer.cs" />
<Compile Include="EntryPoints\UdpServerEntryPoint.cs" />
<Compile Include="EntryPoints\ServerEventNotifier.cs" />
<Compile Include="EntryPoints\UserDataChangeNotifier.cs" />
- <Compile Include="FileOrganization\OrganizerScheduledTask.cs" />
<Compile Include="HttpServer\IHttpListener.cs" />
<Compile Include="HttpServer\Security\AuthorizationContext.cs" />
<Compile Include="HttpServer\ContainerAdapter.cs" />
@@ -171,45 +162,8 @@
<Compile Include="IO\LibraryMonitor.cs" />
<Compile Include="IO\MemoryStreamProvider.cs" />
<Compile Include="IO\ThrottledStream.cs" />
- <Compile Include="Library\CoreResolutionIgnoreRule.cs" />
- <Compile Include="Library\LibraryManager.cs" />
- <Compile Include="Library\LocalTrailerPostScanTask.cs" />
- <Compile Include="Library\MediaSourceManager.cs" />
- <Compile Include="Library\MusicManager.cs" />
- <Compile Include="Library\PathExtensions.cs" />
- <Compile Include="Library\Resolvers\SpecialFolderResolver.cs" />
- <Compile Include="Library\Resolvers\BaseVideoResolver.cs" />
- <Compile Include="Library\Resolvers\PhotoAlbumResolver.cs" />
- <Compile Include="Library\Resolvers\PhotoResolver.cs" />
- <Compile Include="Library\Resolvers\PlaylistResolver.cs" />
- <Compile Include="Library\SearchEngine.cs" />
- <Compile Include="Library\ResolverHelper.cs" />
- <Compile Include="Library\Resolvers\Audio\AudioResolver.cs" />
- <Compile Include="Library\Resolvers\Audio\MusicAlbumResolver.cs" />
- <Compile Include="Library\Resolvers\Audio\MusicArtistResolver.cs" />
- <Compile Include="Library\Resolvers\ItemResolver.cs" />
- <Compile Include="Library\Resolvers\FolderResolver.cs" />
- <Compile Include="Library\Resolvers\Movies\BoxSetResolver.cs" />
- <Compile Include="Library\Resolvers\Movies\MovieResolver.cs" />
- <Compile Include="Library\Resolvers\TV\EpisodeResolver.cs" />
- <Compile Include="Library\Resolvers\TV\SeasonResolver.cs" />
- <Compile Include="Library\Resolvers\TV\SeriesResolver.cs" />
- <Compile Include="Library\Resolvers\VideoResolver.cs" />
<Compile Include="Library\UserDataManager.cs" />
<Compile Include="Library\UserManager.cs" />
- <Compile Include="Library\UserViewManager.cs" />
- <Compile Include="Library\Validators\ArtistsPostScanTask.cs" />
- <Compile Include="Library\Validators\ArtistsValidator.cs" />
- <Compile Include="Library\Validators\GameGenresPostScanTask.cs" />
- <Compile Include="Library\Validators\GameGenresValidator.cs" />
- <Compile Include="Library\Validators\GenresPostScanTask.cs" />
- <Compile Include="Library\Validators\GenresValidator.cs" />
- <Compile Include="Library\Validators\MusicGenresPostScanTask.cs" />
- <Compile Include="Library\Validators\MusicGenresValidator.cs" />
- <Compile Include="Library\Validators\PeopleValidator.cs" />
- <Compile Include="Library\Validators\StudiosPostScanTask.cs" />
- <Compile Include="Library\Validators\StudiosValidator.cs" />
- <Compile Include="Library\Validators\YearsPostScanTask.cs" />
<Compile Include="LiveTv\ChannelImageProvider.cs" />
<Compile Include="LiveTv\EmbyTV\DirectRecorder.cs" />
<Compile Include="LiveTv\EmbyTV\EmbyTV.cs" />
@@ -267,19 +221,16 @@
<Compile Include="News\NewsEntryPoint.cs" />
<Compile Include="Notifications\IConfigurableNotificationService.cs" />
<Compile Include="Persistence\BaseSqliteRepository.cs" />
- <Compile Include="Persistence\CleanDatabaseScheduledTask.cs" />
<Compile Include="Persistence\DataExtensions.cs" />
<Compile Include="Persistence\IDbConnector.cs" />
<Compile Include="Persistence\MediaStreamColumns.cs" />
<Compile Include="Reflection\AssemblyInfo.cs" />
- <Compile Include="ScheduledTasks\RefreshMediaLibraryTask.cs" />
<Compile Include="Security\MBLicenseFile.cs" />
<Compile Include="Security\PluginSecurityManager.cs" />
<Compile Include="Security\RegRecord.cs" />
<Compile Include="Serialization\JsonSerializer.cs" />
<Compile Include="Social\SharingManager.cs" />
<Compile Include="Social\SharingRepository.cs" />
- <Compile Include="Sorting\StartDateComparer.cs" />
<Compile Include="Sync\SyncHelper.cs" />
<Compile Include="Sync\SyncJobOptions.cs" />
<Compile Include="Sync\SyncNotificationEntryPoint.cs" />
@@ -311,40 +262,10 @@
</Compile>
<Compile Include="Session\SessionWebSocketListener.cs" />
<Compile Include="Session\WebSocketController.cs" />
- <Compile Include="Sorting\AiredEpisodeOrderComparer.cs" />
- <Compile Include="Sorting\AirTimeComparer.cs" />
- <Compile Include="Sorting\AlbumArtistComparer.cs" />
- <Compile Include="Sorting\AlbumComparer.cs" />
- <Compile Include="Sorting\AlphanumComparator.cs" />
- <Compile Include="Sorting\ArtistComparer.cs" />
- <Compile Include="Sorting\BudgetComparer.cs" />
- <Compile Include="Sorting\CommunityRatingComparer.cs" />
- <Compile Include="Sorting\CriticRatingComparer.cs" />
- <Compile Include="Sorting\DateCreatedComparer.cs" />
- <Compile Include="Sorting\DateLastMediaAddedComparer.cs" />
- <Compile Include="Sorting\DatePlayedComparer.cs" />
- <Compile Include="Sorting\GameSystemComparer.cs" />
- <Compile Include="Sorting\IsFavoriteOrLikeComparer.cs" />
- <Compile Include="Sorting\IsFolderComparer.cs" />
- <Compile Include="Sorting\IsPlayedComparer.cs" />
- <Compile Include="Sorting\IsUnplayedComparer.cs" />
- <Compile Include="Sorting\MetascoreComparer.cs" />
- <Compile Include="Sorting\NameComparer.cs" />
- <Compile Include="Sorting\OfficialRatingComparer.cs" />
- <Compile Include="Sorting\PlayCountComparer.cs" />
- <Compile Include="Sorting\PlayersComparer.cs" />
- <Compile Include="Sorting\PremiereDateComparer.cs" />
- <Compile Include="Sorting\ProductionYearComparer.cs" />
- <Compile Include="Sorting\RandomComparer.cs" />
- <Compile Include="Sorting\RevenueComparer.cs" />
- <Compile Include="Sorting\RuntimeComparer.cs" />
- <Compile Include="Sorting\SeriesSortNameComparer.cs" />
- <Compile Include="Sorting\SortNameComparer.cs" />
<Compile Include="Persistence\SqliteDisplayPreferencesRepository.cs" />
<Compile Include="Persistence\SqliteItemRepository.cs" />
<Compile Include="Persistence\SqliteUserDataRepository.cs" />
<Compile Include="Persistence\SqliteUserRepository.cs" />
- <Compile Include="Sorting\StudioComparer.cs" />
<Compile Include="Sync\AppSyncProvider.cs" />
<Compile Include="Sync\CloudSyncProfile.cs" />
<Compile Include="Sync\IHasSyncQuality.cs" />
diff --git a/MediaBrowser.Server.Startup.Common/ApplicationHost.cs b/MediaBrowser.Server.Startup.Common/ApplicationHost.cs
index c5a9fbc19..eb5a8a2e5 100644
--- a/MediaBrowser.Server.Startup.Common/ApplicationHost.cs
+++ b/MediaBrowser.Server.Startup.Common/ApplicationHost.cs
@@ -54,9 +54,7 @@ using MediaBrowser.Server.Implementations.Collections;
using MediaBrowser.Server.Implementations.Configuration;
using MediaBrowser.Server.Implementations.Connect;
using MediaBrowser.Server.Implementations.Devices;
-using MediaBrowser.Server.Implementations.Dto;
using MediaBrowser.Server.Implementations.EntryPoints;
-using MediaBrowser.Server.Implementations.FileOrganization;
using MediaBrowser.Server.Implementations.HttpServer;
using MediaBrowser.Server.Implementations.HttpServer.Security;
using MediaBrowser.Server.Implementations.IO;
@@ -107,8 +105,13 @@ using Emby.Dlna.ContentDirectory;
using Emby.Dlna.Main;
using Emby.Dlna.MediaReceiverRegistrar;
using Emby.Dlna.Ssdp;
+using Emby.Server.Implementations.Activity;
using Emby.Server.Implementations.Channels;
using Emby.Server.Implementations.Collections;
+using Emby.Server.Implementations.Dto;
+using Emby.Server.Implementations.FileOrganization;
+using Emby.Server.Implementations.Library;
+using Emby.Server.Implementations.Persistence;
using Emby.Server.Implementations.Playlists;
using Emby.Server.Implementations.Updates;
using MediaBrowser.Model.Activity;
@@ -588,7 +591,7 @@ namespace MediaBrowser.Server.Startup.Common
var musicManager = new MusicManager(LibraryManager);
RegisterSingleInstance<IMusicManager>(new MusicManager(LibraryManager));
- LibraryMonitor = new LibraryMonitor(LogManager, TaskManager, LibraryManager, ServerConfigurationManager, FileSystemManager, this);
+ LibraryMonitor = new LibraryMonitor(LogManager, TaskManager, LibraryManager, ServerConfigurationManager, FileSystemManager, TimerFactory);
RegisterSingleInstance(LibraryMonitor);
ProviderManager = new ProviderManager(HttpClient, ServerConfigurationManager, LibraryMonitor, LogManager, FileSystemManager, ApplicationPaths, () => LibraryManager, JsonSerializer, MemoryStreamProvider);
@@ -639,7 +642,7 @@ namespace MediaBrowser.Server.Startup.Common
ChannelManager = new ChannelManager(UserManager, DtoService, LibraryManager, LogManager.GetLogger("ChannelManager"), ServerConfigurationManager, FileSystemManager, UserDataManager, JsonSerializer, LocalizationManager, HttpClient, ProviderManager);
RegisterSingleInstance(ChannelManager);
- MediaSourceManager = new MediaSourceManager(ItemRepository, UserManager, LibraryManager, LogManager.GetLogger("MediaSourceManager"), JsonSerializer, FileSystemManager, UserDataManager);
+ MediaSourceManager = new MediaSourceManager(ItemRepository, UserManager, LibraryManager, LogManager.GetLogger("MediaSourceManager"), JsonSerializer, FileSystemManager, UserDataManager, TimerFactory);
RegisterSingleInstance(MediaSourceManager);
SessionManager = new SessionManager(UserDataManager, LogManager.GetLogger("SessionManager"), LibraryManager, UserManager, musicManager, DtoService, ImageProcessor, JsonSerializer, this, HttpClient, AuthenticationRepository, DeviceManager, MediaSourceManager);
diff --git a/MediaBrowser.Server.Startup.Common/Migrations/DbMigration.cs b/MediaBrowser.Server.Startup.Common/Migrations/DbMigration.cs
index 4a1b4000e..e095275b1 100644
--- a/MediaBrowser.Server.Startup.Common/Migrations/DbMigration.cs
+++ b/MediaBrowser.Server.Startup.Common/Migrations/DbMigration.cs
@@ -1,4 +1,5 @@
using System.Threading.Tasks;
+using Emby.Server.Implementations.Persistence;
using MediaBrowser.Controller.Configuration;
using MediaBrowser.Model.Tasks;
using MediaBrowser.Server.Implementations.Persistence;