aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2016-11-03 18:34:16 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2016-11-03 18:34:16 -0400
commitf52373609eac871c2883e1052020ff5327b19707 (patch)
treedc29fc2888aeb2fe55a92b8859765caeff3f2cfb
parent1d62a88fd8147e9c1bf01cac2852b929b1737c17 (diff)
move classes to portable project
-rw-r--r--Emby.Common.Implementations/Cryptography/CryptographyProvider.cs8
-rw-r--r--Emby.Common.Implementations/Reflection/AssemblyInfo.cs (renamed from MediaBrowser.Server.Implementations/Reflection/AssemblyInfo.cs)6
-rw-r--r--Emby.Common.Implementations/TextEncoding/TextEncoding.cs (renamed from MediaBrowser.Server.Implementations/TextEncoding/TextEncoding.cs)5
-rw-r--r--Emby.Common.Implementations/Xml/XmlReaderSettingsFactory.cs (renamed from MediaBrowser.Server.Implementations/Xml/XmlReaderSettingsFactory.cs)4
-rw-r--r--Emby.Server.Implementations/Emby.Server.Implementations.csproj21
-rw-r--r--Emby.Server.Implementations/IO/ThrottledStream.cs (renamed from MediaBrowser.Server.Implementations/IO/ThrottledStream.cs)7
-rw-r--r--Emby.Server.Implementations/Sync/AppSyncProvider.cs (renamed from MediaBrowser.Server.Implementations/Sync/AppSyncProvider.cs)2
-rw-r--r--Emby.Server.Implementations/Sync/CloudSyncProfile.cs (renamed from MediaBrowser.Server.Implementations/Sync/CloudSyncProfile.cs)2
-rw-r--r--Emby.Server.Implementations/Sync/IHasSyncQuality.cs (renamed from MediaBrowser.Server.Implementations/Sync/IHasSyncQuality.cs)2
-rw-r--r--Emby.Server.Implementations/Sync/MediaSync.cs (renamed from MediaBrowser.Server.Implementations/Sync/MediaSync.cs)20
-rw-r--r--Emby.Server.Implementations/Sync/MultiProviderSync.cs (renamed from MediaBrowser.Server.Implementations/Sync/MultiProviderSync.cs)9
-rw-r--r--Emby.Server.Implementations/Sync/ServerSyncScheduledTask.cs (renamed from MediaBrowser.Server.Implementations/Sync/ServerSyncScheduledTask.cs)9
-rw-r--r--Emby.Server.Implementations/Sync/SyncConfig.cs (renamed from MediaBrowser.Server.Implementations/Sync/SyncConfig.cs)2
-rw-r--r--Emby.Server.Implementations/Sync/SyncConvertScheduledTask.cs (renamed from MediaBrowser.Server.Implementations/Sync/SyncConvertScheduledTask.cs)2
-rw-r--r--Emby.Server.Implementations/Sync/SyncHelper.cs (renamed from MediaBrowser.Server.Implementations/Sync/SyncHelper.cs)2
-rw-r--r--Emby.Server.Implementations/Sync/SyncJobOptions.cs (renamed from MediaBrowser.Server.Implementations/Sync/SyncJobOptions.cs)2
-rw-r--r--Emby.Server.Implementations/Sync/SyncJobProcessor.cs (renamed from MediaBrowser.Server.Implementations/Sync/SyncJobProcessor.cs)2
-rw-r--r--Emby.Server.Implementations/Sync/SyncManager.cs (renamed from MediaBrowser.Server.Implementations/Sync/SyncManager.cs)11
-rw-r--r--Emby.Server.Implementations/Sync/SyncNotificationEntryPoint.cs (renamed from MediaBrowser.Server.Implementations/Sync/SyncNotificationEntryPoint.cs)2
-rw-r--r--Emby.Server.Implementations/Sync/SyncRegistrationInfo.cs (renamed from MediaBrowser.Server.Implementations/Sync/SyncRegistrationInfo.cs)2
-rw-r--r--Emby.Server.Implementations/Sync/SyncedMediaSourceProvider.cs (renamed from MediaBrowser.Server.Implementations/Sync/SyncedMediaSourceProvider.cs)4
-rw-r--r--Emby.Server.Implementations/Sync/TargetDataProvider.cs (renamed from MediaBrowser.Server.Implementations/Sync/TargetDataProvider.cs)2
-rw-r--r--MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs4
-rw-r--r--MediaBrowser.Model/Cryptography/ICryptographyProvider.cs1
-rw-r--r--MediaBrowser.Server.Implementations/IO/LibraryMonitor.cs2
-rw-r--r--MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj20
-rw-r--r--MediaBrowser.Server.Startup.Common/ApplicationHost.cs7
27 files changed, 89 insertions, 71 deletions
diff --git a/Emby.Common.Implementations/Cryptography/CryptographyProvider.cs b/Emby.Common.Implementations/Cryptography/CryptographyProvider.cs
index e5e4b1c7c..7b8d95b96 100644
--- a/Emby.Common.Implementations/Cryptography/CryptographyProvider.cs
+++ b/Emby.Common.Implementations/Cryptography/CryptographyProvider.cs
@@ -35,5 +35,13 @@ namespace Emby.Common.Implementations.Cryptography
return provider.ComputeHash(str);
}
}
+
+ public byte[] GetMD5Bytes(byte[] bytes)
+ {
+ using (var provider = MD5.Create())
+ {
+ return provider.ComputeHash(bytes);
+ }
+ }
}
}
diff --git a/MediaBrowser.Server.Implementations/Reflection/AssemblyInfo.cs b/Emby.Common.Implementations/Reflection/AssemblyInfo.cs
index ec25e7951..820856da5 100644
--- a/MediaBrowser.Server.Implementations/Reflection/AssemblyInfo.cs
+++ b/Emby.Common.Implementations/Reflection/AssemblyInfo.cs
@@ -1,14 +1,18 @@
using System;
using System.IO;
using MediaBrowser.Model.Reflection;
+using System.Reflection;
-namespace MediaBrowser.Server.Implementations.Reflection
+namespace Emby.Common.Implementations.Reflection
{
public class AssemblyInfo : IAssemblyInfo
{
public Stream GetManifestResourceStream(Type type, string resource)
{
+#if NET46
return type.Assembly.GetManifestResourceStream(resource);
+#endif
+ return type.GetTypeInfo().Assembly.GetManifestResourceStream(resource);
}
}
}
diff --git a/MediaBrowser.Server.Implementations/TextEncoding/TextEncoding.cs b/Emby.Common.Implementations/TextEncoding/TextEncoding.cs
index 4c047b7d5..35b869e43 100644
--- a/MediaBrowser.Server.Implementations/TextEncoding/TextEncoding.cs
+++ b/Emby.Common.Implementations/TextEncoding/TextEncoding.cs
@@ -2,7 +2,7 @@
using MediaBrowser.Model.IO;
using MediaBrowser.Model.TextEncoding;
-namespace MediaBrowser.Server.Implementations.TextEncoding
+namespace Emby.Common.Implementations.TextEncoding
{
public class TextEncoding : IEncoding
{
@@ -42,8 +42,7 @@ namespace MediaBrowser.Server.Implementations.TextEncoding
if (buffer[0] == 0x2b && buffer[1] == 0x2f && buffer[2] == 0x76)
return Encoding.UTF7;
- // It's ok - anything aside from utf is ok since that's what we're looking for
- return Encoding.Default;
+ return null;
}
}
}
diff --git a/MediaBrowser.Server.Implementations/Xml/XmlReaderSettingsFactory.cs b/Emby.Common.Implementations/Xml/XmlReaderSettingsFactory.cs
index ae7018ad4..806290cf4 100644
--- a/MediaBrowser.Server.Implementations/Xml/XmlReaderSettingsFactory.cs
+++ b/Emby.Common.Implementations/Xml/XmlReaderSettingsFactory.cs
@@ -1,7 +1,7 @@
using System.Xml;
using MediaBrowser.Model.Xml;
-namespace MediaBrowser.Server.Implementations.Xml
+namespace Emby.Common.Implementations.Xml
{
public class XmlReaderSettingsFactory : IXmlReaderSettingsFactory
{
@@ -11,7 +11,9 @@ namespace MediaBrowser.Server.Implementations.Xml
if (!enableValidation)
{
+#if NET46
settings.ValidationType = ValidationType.None;
+#endif
}
return settings;
diff --git a/Emby.Server.Implementations/Emby.Server.Implementations.csproj b/Emby.Server.Implementations/Emby.Server.Implementations.csproj
index e3d404644..152a165e2 100644
--- a/Emby.Server.Implementations/Emby.Server.Implementations.csproj
+++ b/Emby.Server.Implementations/Emby.Server.Implementations.csproj
@@ -69,6 +69,7 @@
<Compile Include="FileOrganization\TvFolderOrganizer.cs" />
<Compile Include="Images\BaseDynamicImageProvider.cs" />
<Compile Include="Intros\DefaultIntroProvider.cs" />
+ <Compile Include="IO\ThrottledStream.cs" />
<Compile Include="Library\CoreResolutionIgnoreRule.cs" />
<Compile Include="Library\LibraryManager.cs" />
<Compile Include="Library\LocalTrailerPostScanTask.cs" />
@@ -161,14 +162,28 @@
<Compile Include="Sorting\SortNameComparer.cs" />
<Compile Include="Sorting\StartDateComparer.cs" />
<Compile Include="Sorting\StudioComparer.cs" />
+ <Compile Include="Sync\AppSyncProvider.cs" />
+ <Compile Include="Sync\CloudSyncProfile.cs" />
+ <Compile Include="Sync\IHasSyncQuality.cs" />
+ <Compile Include="Sync\MediaSync.cs" />
+ <Compile Include="Sync\MultiProviderSync.cs" />
+ <Compile Include="Sync\ServerSyncScheduledTask.cs" />
+ <Compile Include="Sync\SyncConfig.cs" />
+ <Compile Include="Sync\SyncConvertScheduledTask.cs" />
+ <Compile Include="Sync\SyncedMediaSourceProvider.cs" />
+ <Compile Include="Sync\SyncHelper.cs" />
+ <Compile Include="Sync\SyncJobOptions.cs" />
+ <Compile Include="Sync\SyncJobProcessor.cs" />
+ <Compile Include="Sync\SyncManager.cs" />
+ <Compile Include="Sync\SyncNotificationEntryPoint.cs" />
+ <Compile Include="Sync\SyncRegistrationInfo.cs" />
+ <Compile Include="Sync\TargetDataProvider.cs" />
<Compile Include="TV\TVSeriesManager.cs" />
<Compile Include="Updates\InstallationManager.cs" />
<Compile Include="UserViews\CollectionFolderImageProvider.cs" />
<Compile Include="UserViews\DynamicImageProvider.cs" />
</ItemGroup>
- <ItemGroup>
- <Folder Include="IO\" />
- </ItemGroup>
+ <ItemGroup />
<ItemGroup>
<ProjectReference Include="..\MediaBrowser.Common\MediaBrowser.Common.csproj">
<Project>{9142eefa-7570-41e1-bfcc-468bb571af2f}</Project>
diff --git a/MediaBrowser.Server.Implementations/IO/ThrottledStream.cs b/Emby.Server.Implementations/IO/ThrottledStream.cs
index 538812dc0..81760b639 100644
--- a/MediaBrowser.Server.Implementations/IO/ThrottledStream.cs
+++ b/Emby.Server.Implementations/IO/ThrottledStream.cs
@@ -3,7 +3,7 @@ using System.IO;
using System.Threading;
using System.Threading.Tasks;
-namespace MediaBrowser.Server.Implementations.IO
+namespace Emby.Server.Implementations.IO
{
/// <summary>
/// Class for streaming data with throttling support.
@@ -326,9 +326,10 @@ namespace MediaBrowser.Server.Implementations.IO
try
{
// The time to sleep is more then a millisecond, so sleep.
- Thread.Sleep(toSleep);
+ var task = Task.Delay(toSleep);
+ Task.WaitAll(task);
}
- catch (ThreadAbortException)
+ catch
{
// Eatup ThreadAbortException.
}
diff --git a/MediaBrowser.Server.Implementations/Sync/AppSyncProvider.cs b/Emby.Server.Implementations/Sync/AppSyncProvider.cs
index 408ec717e..d405a0ff9 100644
--- a/MediaBrowser.Server.Implementations/Sync/AppSyncProvider.cs
+++ b/Emby.Server.Implementations/Sync/AppSyncProvider.cs
@@ -7,7 +7,7 @@ using System;
using System.Collections.Generic;
using System.Linq;
-namespace MediaBrowser.Server.Implementations.Sync
+namespace Emby.Server.Implementations.Sync
{
public class AppSyncProvider : ISyncProvider, IHasUniqueTargetIds, IHasSyncQuality, IHasDuplicateCheck
{
diff --git a/MediaBrowser.Server.Implementations/Sync/CloudSyncProfile.cs b/Emby.Server.Implementations/Sync/CloudSyncProfile.cs
index f40b64498..1a78c8ae6 100644
--- a/MediaBrowser.Server.Implementations/Sync/CloudSyncProfile.cs
+++ b/Emby.Server.Implementations/Sync/CloudSyncProfile.cs
@@ -1,7 +1,7 @@
using MediaBrowser.Model.Dlna;
using System.Collections.Generic;
-namespace MediaBrowser.Server.Implementations.Sync
+namespace Emby.Server.Implementations.Sync
{
public class CloudSyncProfile : DeviceProfile
{
diff --git a/MediaBrowser.Server.Implementations/Sync/IHasSyncQuality.cs b/Emby.Server.Implementations/Sync/IHasSyncQuality.cs
index e7eee0923..bec8b37a7 100644
--- a/MediaBrowser.Server.Implementations/Sync/IHasSyncQuality.cs
+++ b/Emby.Server.Implementations/Sync/IHasSyncQuality.cs
@@ -1,7 +1,7 @@
using MediaBrowser.Model.Sync;
using System.Collections.Generic;
-namespace MediaBrowser.Server.Implementations.Sync
+namespace Emby.Server.Implementations.Sync
{
public interface IHasSyncQuality
{
diff --git a/MediaBrowser.Server.Implementations/Sync/MediaSync.cs b/Emby.Server.Implementations/Sync/MediaSync.cs
index b6853267e..b420a3df4 100644
--- a/MediaBrowser.Server.Implementations/Sync/MediaSync.cs
+++ b/Emby.Server.Implementations/Sync/MediaSync.cs
@@ -13,15 +13,14 @@ using System.Collections.Generic;
using System.Globalization;
using System.IO;
using System.Linq;
-using System.Security.Cryptography;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
+using Emby.Server.Implementations.IO;
+using MediaBrowser.Model.Cryptography;
using MediaBrowser.Model.IO;
-using MediaBrowser.Common.IO;
-using MediaBrowser.Server.Implementations.IO;
-namespace MediaBrowser.Server.Implementations.Sync
+namespace Emby.Server.Implementations.Sync
{
public class MediaSync
{
@@ -30,17 +29,19 @@ namespace MediaBrowser.Server.Implementations.Sync
private readonly ILogger _logger;
private readonly IFileSystem _fileSystem;
private readonly IConfigurationManager _config;
+ private readonly ICryptographyProvider _cryptographyProvider;
public const string PathSeparatorString = "/";
public const char PathSeparatorChar = '/';
- public MediaSync(ILogger logger, ISyncManager syncManager, IServerApplicationHost appHost, IFileSystem fileSystem, IConfigurationManager config)
+ public MediaSync(ILogger logger, ISyncManager syncManager, IServerApplicationHost appHost, IFileSystem fileSystem, IConfigurationManager config, ICryptographyProvider cryptographyProvider)
{
_logger = logger;
_syncManager = syncManager;
_appHost = appHost;
_fileSystem = fileSystem;
_config = config;
+ _cryptographyProvider = cryptographyProvider;
}
public async Task Sync(IServerSyncProvider provider,
@@ -360,19 +361,16 @@ namespace MediaBrowser.Server.Implementations.Sync
}
}
- private static string GetLocalId(string jobItemId, string itemId)
+ private string GetLocalId(string jobItemId, string itemId)
{
var bytes = Encoding.UTF8.GetBytes(jobItemId + itemId);
bytes = CreateMd5(bytes);
return BitConverter.ToString(bytes, 0, bytes.Length).Replace("-", string.Empty);
}
- private static byte[] CreateMd5(byte[] value)
+ private byte[] CreateMd5(byte[] value)
{
- using (var provider = MD5.Create())
- {
- return provider.ComputeHash(value);
- }
+ return _cryptographyProvider.GetMD5Bytes(value);
}
public LocalItem CreateLocalItem(IServerSyncProvider provider, SyncedItem syncedItem, SyncJob job, SyncTarget target, BaseItemDto libraryItem, string serverId, string serverName, string originalFileName)
diff --git a/MediaBrowser.Server.Implementations/Sync/MultiProviderSync.cs b/Emby.Server.Implementations/Sync/MultiProviderSync.cs
index 471604117..db6cfcbd6 100644
--- a/MediaBrowser.Server.Implementations/Sync/MultiProviderSync.cs
+++ b/Emby.Server.Implementations/Sync/MultiProviderSync.cs
@@ -11,9 +11,10 @@ using System.Threading;
using System.Threading.Tasks;
using MediaBrowser.Common.IO;
using MediaBrowser.Controller.IO;
+using MediaBrowser.Model.Cryptography;
using MediaBrowser.Model.IO;
-namespace MediaBrowser.Server.Implementations.Sync
+namespace Emby.Server.Implementations.Sync
{
public class MultiProviderSync
{
@@ -22,14 +23,16 @@ namespace MediaBrowser.Server.Implementations.Sync
private readonly ILogger _logger;
private readonly IFileSystem _fileSystem;
private readonly IConfigurationManager _config;
+ private readonly ICryptographyProvider _cryptographyProvider;
- public MultiProviderSync(SyncManager syncManager, IServerApplicationHost appHost, ILogger logger, IFileSystem fileSystem, IConfigurationManager config)
+ public MultiProviderSync(SyncManager syncManager, IServerApplicationHost appHost, ILogger logger, IFileSystem fileSystem, IConfigurationManager config, ICryptographyProvider cryptographyProvider)
{
_syncManager = syncManager;
_appHost = appHost;
_logger = logger;
_fileSystem = fileSystem;
_config = config;
+ _cryptographyProvider = cryptographyProvider;
}
public async Task Sync(IEnumerable<IServerSyncProvider> providers, IProgress<double> progress, CancellationToken cancellationToken)
@@ -61,7 +64,7 @@ namespace MediaBrowser.Server.Implementations.Sync
var dataProvider = _syncManager.GetDataProvider(target.Item1, target.Item2);
- await new MediaSync(_logger, _syncManager, _appHost, _fileSystem, _config)
+ await new MediaSync(_logger, _syncManager, _appHost, _fileSystem, _config, _cryptographyProvider)
.Sync(target.Item1, dataProvider, target.Item2, innerProgress, cancellationToken)
.ConfigureAwait(false);
diff --git a/MediaBrowser.Server.Implementations/Sync/ServerSyncScheduledTask.cs b/Emby.Server.Implementations/Sync/ServerSyncScheduledTask.cs
index dc7f925a0..17171633e 100644
--- a/MediaBrowser.Server.Implementations/Sync/ServerSyncScheduledTask.cs
+++ b/Emby.Server.Implementations/Sync/ServerSyncScheduledTask.cs
@@ -7,10 +7,11 @@ using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
+using MediaBrowser.Model.Cryptography;
using MediaBrowser.Model.IO;
using MediaBrowser.Model.Tasks;
-namespace MediaBrowser.Server.Implementations.Sync
+namespace Emby.Server.Implementations.Sync
{
class ServerSyncScheduledTask : IScheduledTask, IConfigurableScheduledTask
{
@@ -19,14 +20,16 @@ namespace MediaBrowser.Server.Implementations.Sync
private readonly IFileSystem _fileSystem;
private readonly IServerApplicationHost _appHost;
private readonly IConfigurationManager _config;
+ private readonly ICryptographyProvider _cryptographyProvider;
- public ServerSyncScheduledTask(ISyncManager syncManager, ILogger logger, IFileSystem fileSystem, IServerApplicationHost appHost, IConfigurationManager config)
+ public ServerSyncScheduledTask(ISyncManager syncManager, ILogger logger, IFileSystem fileSystem, IServerApplicationHost appHost, IConfigurationManager config, ICryptographyProvider cryptographyProvider)
{
_syncManager = syncManager;
_logger = logger;
_fileSystem = fileSystem;
_appHost = appHost;
_config = config;
+ _cryptographyProvider = cryptographyProvider;
}
public string Name
@@ -49,7 +52,7 @@ namespace MediaBrowser.Server.Implementations.Sync
public Task Execute(CancellationToken cancellationToken, IProgress<double> progress)
{
- return new MultiProviderSync((SyncManager)_syncManager, _appHost, _logger, _fileSystem, _config)
+ return new MultiProviderSync((SyncManager)_syncManager, _appHost, _logger, _fileSystem, _config, _cryptographyProvider)
.Sync(ServerSyncProviders, progress, cancellationToken);
}
diff --git a/MediaBrowser.Server.Implementations/Sync/SyncConfig.cs b/Emby.Server.Implementations/Sync/SyncConfig.cs
index 52c774330..8a97326bd 100644
--- a/MediaBrowser.Server.Implementations/Sync/SyncConfig.cs
+++ b/Emby.Server.Implementations/Sync/SyncConfig.cs
@@ -2,7 +2,7 @@
using MediaBrowser.Model.Sync;
using System.Collections.Generic;
-namespace MediaBrowser.Server.Implementations.Sync
+namespace Emby.Server.Implementations.Sync
{
public class SyncConfigurationFactory : IConfigurationFactory
{
diff --git a/MediaBrowser.Server.Implementations/Sync/SyncConvertScheduledTask.cs b/Emby.Server.Implementations/Sync/SyncConvertScheduledTask.cs
index 3a5023fe5..8dafac7e1 100644
--- a/MediaBrowser.Server.Implementations/Sync/SyncConvertScheduledTask.cs
+++ b/Emby.Server.Implementations/Sync/SyncConvertScheduledTask.cs
@@ -13,7 +13,7 @@ using MediaBrowser.Controller.IO;
using MediaBrowser.Model.IO;
using MediaBrowser.Model.Tasks;
-namespace MediaBrowser.Server.Implementations.Sync
+namespace Emby.Server.Implementations.Sync
{
public class SyncConvertScheduledTask : IScheduledTask
{
diff --git a/MediaBrowser.Server.Implementations/Sync/SyncHelper.cs b/Emby.Server.Implementations/Sync/SyncHelper.cs
index fb4e0c6be..da475f003 100644
--- a/MediaBrowser.Server.Implementations/Sync/SyncHelper.cs
+++ b/Emby.Server.Implementations/Sync/SyncHelper.cs
@@ -1,6 +1,6 @@
using System;
-namespace MediaBrowser.Server.Implementations.Sync
+namespace Emby.Server.Implementations.Sync
{
public class SyncHelper
{
diff --git a/MediaBrowser.Server.Implementations/Sync/SyncJobOptions.cs b/Emby.Server.Implementations/Sync/SyncJobOptions.cs
index cb8141c89..8e4d8e2ed 100644
--- a/MediaBrowser.Server.Implementations/Sync/SyncJobOptions.cs
+++ b/Emby.Server.Implementations/Sync/SyncJobOptions.cs
@@ -1,6 +1,6 @@
using MediaBrowser.Model.Dlna;
-namespace MediaBrowser.Server.Implementations.Sync
+namespace Emby.Server.Implementations.Sync
{
public class SyncJobOptions
{
diff --git a/MediaBrowser.Server.Implementations/Sync/SyncJobProcessor.cs b/Emby.Server.Implementations/Sync/SyncJobProcessor.cs
index 8d2c0b20c..415757609 100644
--- a/MediaBrowser.Server.Implementations/Sync/SyncJobProcessor.cs
+++ b/Emby.Server.Implementations/Sync/SyncJobProcessor.cs
@@ -28,7 +28,7 @@ using MediaBrowser.Model.IO;
using MediaBrowser.Model.Extensions;
using MediaBrowser.Model.IO;
-namespace MediaBrowser.Server.Implementations.Sync
+namespace Emby.Server.Implementations.Sync
{
public class SyncJobProcessor
{
diff --git a/MediaBrowser.Server.Implementations/Sync/SyncManager.cs b/Emby.Server.Implementations/Sync/SyncManager.cs
index 7bcb7b05e..d06ed49fd 100644
--- a/MediaBrowser.Server.Implementations/Sync/SyncManager.cs
+++ b/Emby.Server.Implementations/Sync/SyncManager.cs
@@ -23,6 +23,7 @@ using MediaBrowser.Model.Users;
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
+using System.Globalization;
using System.IO;
using System.Linq;
using System.Threading;
@@ -30,7 +31,7 @@ using System.Threading.Tasks;
using MediaBrowser.Model.IO;
using MediaBrowser.Model.Tasks;
-namespace MediaBrowser.Server.Implementations.Sync
+namespace Emby.Server.Implementations.Sync
{
public class SyncManager : ISyncManager
{
@@ -124,7 +125,7 @@ namespace MediaBrowser.Server.Implementations.Sync
if (string.IsNullOrWhiteSpace(request.Name))
{
- request.Name = DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString();
+ request.Name = DateTime.Now.ToString("f1", CultureInfo.CurrentCulture);
}
var target = GetSyncTargets(request.UserId)
@@ -419,7 +420,7 @@ namespace MediaBrowser.Server.Implementations.Sync
{
_fileSystem.DeleteDirectory(path, true);
}
- catch (DirectoryNotFoundException)
+ catch (IOException)
{
}
@@ -574,7 +575,7 @@ namespace MediaBrowser.Server.Implementations.Sync
{
_fileSystem.DeleteDirectory(jobItem.TemporaryPath, true);
}
- catch (DirectoryNotFoundException)
+ catch (IOException)
{
}
catch (Exception ex)
@@ -1061,7 +1062,7 @@ namespace MediaBrowser.Server.Implementations.Sync
{
_fileSystem.DeleteDirectory(path, true);
}
- catch (DirectoryNotFoundException)
+ catch (IOException)
{
}
diff --git a/MediaBrowser.Server.Implementations/Sync/SyncNotificationEntryPoint.cs b/Emby.Server.Implementations/Sync/SyncNotificationEntryPoint.cs
index 7017b422e..46cdb28a4 100644
--- a/MediaBrowser.Server.Implementations/Sync/SyncNotificationEntryPoint.cs
+++ b/Emby.Server.Implementations/Sync/SyncNotificationEntryPoint.cs
@@ -5,7 +5,7 @@ using MediaBrowser.Controller.Sync;
using MediaBrowser.Model.Events;
using MediaBrowser.Model.Sync;
-namespace MediaBrowser.Server.Implementations.Sync
+namespace Emby.Server.Implementations.Sync
{
public class SyncNotificationEntryPoint : IServerEntryPoint
{
diff --git a/MediaBrowser.Server.Implementations/Sync/SyncRegistrationInfo.cs b/Emby.Server.Implementations/Sync/SyncRegistrationInfo.cs
index 40b84b1c2..c2658c5c5 100644
--- a/MediaBrowser.Server.Implementations/Sync/SyncRegistrationInfo.cs
+++ b/Emby.Server.Implementations/Sync/SyncRegistrationInfo.cs
@@ -1,7 +1,7 @@
using MediaBrowser.Common.Security;
using System.Threading.Tasks;
-namespace MediaBrowser.Server.Implementations.Sync
+namespace Emby.Server.Implementations.Sync
{
public class SyncRegistrationInfo : IRequiresRegistration
{
diff --git a/MediaBrowser.Server.Implementations/Sync/SyncedMediaSourceProvider.cs b/Emby.Server.Implementations/Sync/SyncedMediaSourceProvider.cs
index e0553b1b1..1e54885e6 100644
--- a/MediaBrowser.Server.Implementations/Sync/SyncedMediaSourceProvider.cs
+++ b/Emby.Server.Implementations/Sync/SyncedMediaSourceProvider.cs
@@ -12,7 +12,7 @@ using System.Linq;
using System.Threading;
using System.Threading.Tasks;
-namespace MediaBrowser.Server.Implementations.Sync
+namespace Emby.Server.Implementations.Sync
{
public class SyncedMediaSourceProvider : IMediaSourceProvider
{
@@ -144,7 +144,7 @@ namespace MediaBrowser.Server.Implementations.Sync
{
mediaSource.Id = item.Id;
mediaSource.SupportsTranscoding = false;
- if (mediaSource.Protocol == Model.MediaInfo.MediaProtocol.File)
+ if (mediaSource.Protocol == MediaBrowser.Model.MediaInfo.MediaProtocol.File)
{
mediaSource.ETag = item.Id;
}
diff --git a/MediaBrowser.Server.Implementations/Sync/TargetDataProvider.cs b/Emby.Server.Implementations/Sync/TargetDataProvider.cs
index 03df0d4e6..a0e0f4313 100644
--- a/MediaBrowser.Server.Implementations/Sync/TargetDataProvider.cs
+++ b/Emby.Server.Implementations/Sync/TargetDataProvider.cs
@@ -11,7 +11,7 @@ using System.Threading;
using System.Threading.Tasks;
using MediaBrowser.Model.IO;
-namespace MediaBrowser.Server.Implementations.Sync
+namespace Emby.Server.Implementations.Sync
{
public class TargetDataProvider : ISyncDataProvider
{
diff --git a/MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs b/MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs
index 1248d138d..0baee67ea 100644
--- a/MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs
+++ b/MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs
@@ -793,7 +793,9 @@ namespace MediaBrowser.MediaEncoding.Subtitles
{
if (protocol == MediaProtocol.File)
{
- if (_textEncoding.GetFileEncoding(path).Equals(Encoding.UTF8))
+ var fileEncoding = _textEncoding.GetFileEncoding(path);
+
+ if (fileEncoding != null && fileEncoding.Equals(Encoding.UTF8))
{
return string.Empty;
}
diff --git a/MediaBrowser.Model/Cryptography/ICryptographyProvider.cs b/MediaBrowser.Model/Cryptography/ICryptographyProvider.cs
index 696a7c100..a3f86f9e2 100644
--- a/MediaBrowser.Model/Cryptography/ICryptographyProvider.cs
+++ b/MediaBrowser.Model/Cryptography/ICryptographyProvider.cs
@@ -9,5 +9,6 @@ namespace MediaBrowser.Model.Cryptography
byte[] GetMD5Bytes(string str);
byte[] GetSHA1Bytes(byte[] bytes);
byte[] GetMD5Bytes(Stream str);
+ byte[] GetMD5Bytes(byte[] bytes);
}
} \ No newline at end of file
diff --git a/MediaBrowser.Server.Implementations/IO/LibraryMonitor.cs b/MediaBrowser.Server.Implementations/IO/LibraryMonitor.cs
index 1f2a6255e..49cb1e75f 100644
--- a/MediaBrowser.Server.Implementations/IO/LibraryMonitor.cs
+++ b/MediaBrowser.Server.Implementations/IO/LibraryMonitor.cs
@@ -4,7 +4,6 @@ using MediaBrowser.Controller.Library;
using MediaBrowser.Controller.Plugins;
using MediaBrowser.Model.Configuration;
using MediaBrowser.Model.Logging;
-using Microsoft.Win32;
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
@@ -17,6 +16,7 @@ using MediaBrowser.Controller;
using MediaBrowser.Controller.IO;
using MediaBrowser.Model.Tasks;
using MediaBrowser.Model.Threading;
+using Microsoft.Win32;
namespace MediaBrowser.Server.Implementations.IO
{
diff --git a/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj b/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj
index b31c8286c..5d1d2fc38 100644
--- a/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj
+++ b/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj
@@ -144,7 +144,6 @@
<Compile Include="IO\FileRefresher.cs" />
<Compile Include="IO\LibraryMonitor.cs" />
<Compile Include="IO\MemoryStreamProvider.cs" />
- <Compile Include="IO\ThrottledStream.cs" />
<Compile Include="LiveTv\ChannelImageProvider.cs" />
<Compile Include="LiveTv\EmbyTV\DirectRecorder.cs" />
<Compile Include="LiveTv\EmbyTV\EmbyTV.cs" />
@@ -202,17 +201,12 @@
<Compile Include="Persistence\DataExtensions.cs" />
<Compile Include="Persistence\IDbConnector.cs" />
<Compile Include="Persistence\MediaStreamColumns.cs" />
- <Compile Include="Reflection\AssemblyInfo.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="Sync\SyncHelper.cs" />
- <Compile Include="Sync\SyncJobOptions.cs" />
- <Compile Include="Sync\SyncNotificationEntryPoint.cs" />
- <Compile Include="TextEncoding\TextEncoding.cs" />
<Compile Include="Threading\PeriodicTimer.cs" />
<Compile Include="TV\SeriesPostScanTask.cs" />
<Compile Include="Persistence\SqliteFileOrganizationRepository.cs" />
@@ -235,23 +229,9 @@
<Compile Include="Persistence\SqliteItemRepository.cs" />
<Compile Include="Persistence\SqliteUserDataRepository.cs" />
<Compile Include="Persistence\SqliteUserRepository.cs" />
- <Compile Include="Sync\AppSyncProvider.cs" />
- <Compile Include="Sync\CloudSyncProfile.cs" />
- <Compile Include="Sync\IHasSyncQuality.cs" />
- <Compile Include="Sync\MediaSync.cs" />
- <Compile Include="Sync\MultiProviderSync.cs" />
- <Compile Include="Sync\ServerSyncScheduledTask.cs" />
- <Compile Include="Sync\SyncedMediaSourceProvider.cs" />
- <Compile Include="Sync\SyncRegistrationInfo.cs" />
- <Compile Include="Sync\SyncConfig.cs" />
- <Compile Include="Sync\SyncJobProcessor.cs" />
- <Compile Include="Sync\SyncManager.cs" />
<Compile Include="Sync\SyncRepository.cs" />
- <Compile Include="Sync\SyncConvertScheduledTask.cs" />
- <Compile Include="Sync\TargetDataProvider.cs" />
<Compile Include="Udp\UdpMessageReceivedEventArgs.cs" />
<Compile Include="Udp\UdpServer.cs" />
- <Compile Include="Xml\XmlReaderSettingsFactory.cs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\MediaBrowser.Common\MediaBrowser.Common.csproj">
diff --git a/MediaBrowser.Server.Startup.Common/ApplicationHost.cs b/MediaBrowser.Server.Startup.Common/ApplicationHost.cs
index 861d59908..11d401670 100644
--- a/MediaBrowser.Server.Startup.Common/ApplicationHost.cs
+++ b/MediaBrowser.Server.Startup.Common/ApplicationHost.cs
@@ -83,7 +83,10 @@ using System.Threading;
using System.Threading.Tasks;
using Emby.Common.Implementations;
using Emby.Common.Implementations.Networking;
+using Emby.Common.Implementations.Reflection;
+using Emby.Common.Implementations.TextEncoding;
using Emby.Common.Implementations.Updates;
+using Emby.Common.Implementations.Xml;
using Emby.Photos;
using MediaBrowser.Model.IO;
using MediaBrowser.Api.Playback;
@@ -110,6 +113,7 @@ using Emby.Server.Implementations.MediaEncoder;
using Emby.Server.Implementations.Notifications;
using Emby.Server.Implementations.Persistence;
using Emby.Server.Implementations.Playlists;
+using Emby.Server.Implementations.Sync;
using Emby.Server.Implementations.TV;
using Emby.Server.Implementations.Updates;
using MediaBrowser.Model.Activity;
@@ -124,10 +128,7 @@ using MediaBrowser.Model.Social;
using MediaBrowser.Model.TextEncoding;
using MediaBrowser.Model.Xml;
using MediaBrowser.Server.Implementations.Archiving;
-using MediaBrowser.Server.Implementations.Reflection;
using MediaBrowser.Server.Implementations.Serialization;
-using MediaBrowser.Server.Implementations.TextEncoding;
-using MediaBrowser.Server.Implementations.Xml;
using OpenSubtitlesHandler;
using ServiceStack;
using StringExtensions = MediaBrowser.Controller.Extensions.StringExtensions;