aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Startup.Common
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2015-10-04 00:23:11 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2015-10-04 00:23:11 -0400
commit078277ebc29bd749045e5d109024d9d08aa8edea (patch)
tree9d47f711b41522ac0b58519cb3fa838f9d4f1fd7 /MediaBrowser.Server.Startup.Common
parent8ad702060ea31a3862598056509a2597f6a2b639 (diff)
continue file system rework
Diffstat (limited to 'MediaBrowser.Server.Startup.Common')
-rw-r--r--MediaBrowser.Server.Startup.Common/ApplicationHost.cs1
-rw-r--r--MediaBrowser.Server.Startup.Common/FFMpeg/FFMpegDownloader.cs1
-rw-r--r--MediaBrowser.Server.Startup.Common/FFMpeg/FFmpegValidator.cs1
-rw-r--r--MediaBrowser.Server.Startup.Common/MbLinkShortcutHandler.cs53
-rw-r--r--MediaBrowser.Server.Startup.Common/MediaBrowser.Server.Startup.Common.csproj8
-rw-r--r--MediaBrowser.Server.Startup.Common/Migrations/DeleteDlnaProfiles.cs1
-rw-r--r--MediaBrowser.Server.Startup.Common/Migrations/DeprecatePlugins.cs1
-rw-r--r--MediaBrowser.Server.Startup.Common/Migrations/MigrateUserFolders.cs1
-rw-r--r--MediaBrowser.Server.Startup.Common/packages.config2
9 files changed, 69 insertions, 0 deletions
diff --git a/MediaBrowser.Server.Startup.Common/ApplicationHost.cs b/MediaBrowser.Server.Startup.Common/ApplicationHost.cs
index 29841011bd..f1833f4fc0 100644
--- a/MediaBrowser.Server.Startup.Common/ApplicationHost.cs
+++ b/MediaBrowser.Server.Startup.Common/ApplicationHost.cs
@@ -99,6 +99,7 @@ using System.Linq;
using System.Reflection;
using System.Threading;
using System.Threading.Tasks;
+using CommonIO;
namespace MediaBrowser.Server.Startup.Common
{
diff --git a/MediaBrowser.Server.Startup.Common/FFMpeg/FFMpegDownloader.cs b/MediaBrowser.Server.Startup.Common/FFMpeg/FFMpegDownloader.cs
index 16864898a6..00df7593b0 100644
--- a/MediaBrowser.Server.Startup.Common/FFMpeg/FFMpegDownloader.cs
+++ b/MediaBrowser.Server.Startup.Common/FFMpeg/FFMpegDownloader.cs
@@ -12,6 +12,7 @@ using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
+using CommonIO;
namespace MediaBrowser.Server.Startup.Common.FFMpeg
{
diff --git a/MediaBrowser.Server.Startup.Common/FFMpeg/FFmpegValidator.cs b/MediaBrowser.Server.Startup.Common/FFMpeg/FFmpegValidator.cs
index d3388f47e5..5c3ada82b4 100644
--- a/MediaBrowser.Server.Startup.Common/FFMpeg/FFmpegValidator.cs
+++ b/MediaBrowser.Server.Startup.Common/FFMpeg/FFmpegValidator.cs
@@ -8,6 +8,7 @@ using System.IO;
using System.Text;
using MediaBrowser.Common.IO;
using System.Collections.Generic;
+using CommonIO;
namespace MediaBrowser.Server.Startup.Common.FFMpeg
{
diff --git a/MediaBrowser.Server.Startup.Common/MbLinkShortcutHandler.cs b/MediaBrowser.Server.Startup.Common/MbLinkShortcutHandler.cs
new file mode 100644
index 0000000000..14588b427a
--- /dev/null
+++ b/MediaBrowser.Server.Startup.Common/MbLinkShortcutHandler.cs
@@ -0,0 +1,53 @@
+using System;
+using System.IO;
+using CommonIO;
+
+namespace MediaBrowser.Server.Startup.Common
+{
+ public class MbLinkShortcutHandler : IShortcutHandler
+ {
+ private readonly IFileSystem _fileSystem;
+
+ public MbLinkShortcutHandler(IFileSystem fileSystem)
+ {
+ _fileSystem = fileSystem;
+ }
+
+ public string Extension
+ {
+ get { return ".mblink"; }
+ }
+
+ public string Resolve(string shortcutPath)
+ {
+ if (string.IsNullOrEmpty(shortcutPath))
+ {
+ throw new ArgumentNullException("filenshortcutPathame");
+ }
+
+ if (string.Equals(Path.GetExtension(shortcutPath), ".mblink", StringComparison.OrdinalIgnoreCase))
+ {
+ var path = _fileSystem.ReadAllText(shortcutPath);
+
+ return _fileSystem.NormalizePath(path);
+ }
+
+ return null;
+ }
+
+ public void Create(string shortcutPath, string targetPath)
+ {
+ if (string.IsNullOrEmpty(shortcutPath))
+ {
+ throw new ArgumentNullException("shortcutPath");
+ }
+
+ if (string.IsNullOrEmpty(targetPath))
+ {
+ throw new ArgumentNullException("targetPath");
+ }
+
+ File.WriteAllText(shortcutPath, targetPath);
+ }
+ }
+}
diff --git a/MediaBrowser.Server.Startup.Common/MediaBrowser.Server.Startup.Common.csproj b/MediaBrowser.Server.Startup.Common/MediaBrowser.Server.Startup.Common.csproj
index 4653e6ac77..86ceb4e6a8 100644
--- a/MediaBrowser.Server.Startup.Common/MediaBrowser.Server.Startup.Common.csproj
+++ b/MediaBrowser.Server.Startup.Common/MediaBrowser.Server.Startup.Common.csproj
@@ -32,10 +32,17 @@
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
+ <Reference Include="CommonIO">
+ <HintPath>..\packages\CommonIO.1.0.0.3\lib\net45\CommonIO.dll</HintPath>
+ </Reference>
<Reference Include="Mono.Posix, Version=4.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\packages\Mono.Posix.4.0.0.0\lib\net40\Mono.Posix.dll</HintPath>
</Reference>
+ <Reference Include="Patterns.Logging, Version=1.0.5494.41209, Culture=neutral, processorArchitecture=MSIL">
+ <SpecificVersion>False</SpecificVersion>
+ <HintPath>..\packages\Patterns.Logging.1.0.0.2\lib\portable-net45+sl4+wp71+win8+wpa81\Patterns.Logging.dll</HintPath>
+ </Reference>
<Reference Include="ServiceStack.Interfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=e06fbc6124f57c43, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\ThirdParty\ServiceStack\ServiceStack.Interfaces.dll</HintPath>
@@ -63,6 +70,7 @@
<Compile Include="FFMpeg\FFMpegInfo.cs" />
<Compile Include="FFMpeg\FFmpegValidator.cs" />
<Compile Include="INativeApp.cs" />
+ <Compile Include="MbLinkShortcutHandler.cs" />
<Compile Include="Migrations\DeleteDlnaProfiles.cs" />
<Compile Include="Migrations\DeprecatePlugins.cs" />
<Compile Include="Migrations\IVersionMigration.cs" />
diff --git a/MediaBrowser.Server.Startup.Common/Migrations/DeleteDlnaProfiles.cs b/MediaBrowser.Server.Startup.Common/Migrations/DeleteDlnaProfiles.cs
index 166c2627f1..7b61522202 100644
--- a/MediaBrowser.Server.Startup.Common/Migrations/DeleteDlnaProfiles.cs
+++ b/MediaBrowser.Server.Startup.Common/Migrations/DeleteDlnaProfiles.cs
@@ -1,6 +1,7 @@
using MediaBrowser.Common.IO;
using MediaBrowser.Controller;
using System.IO;
+using CommonIO;
namespace MediaBrowser.Server.Startup.Common.Migrations
{
diff --git a/MediaBrowser.Server.Startup.Common/Migrations/DeprecatePlugins.cs b/MediaBrowser.Server.Startup.Common/Migrations/DeprecatePlugins.cs
index afdd4e623f..a7f1d332eb 100644
--- a/MediaBrowser.Server.Startup.Common/Migrations/DeprecatePlugins.cs
+++ b/MediaBrowser.Server.Startup.Common/Migrations/DeprecatePlugins.cs
@@ -1,6 +1,7 @@
using MediaBrowser.Common.IO;
using MediaBrowser.Controller;
using System.IO;
+using CommonIO;
namespace MediaBrowser.Server.Startup.Common.Migrations
{
diff --git a/MediaBrowser.Server.Startup.Common/Migrations/MigrateUserFolders.cs b/MediaBrowser.Server.Startup.Common/Migrations/MigrateUserFolders.cs
index 1dfe4c0b5d..4a40090f06 100644
--- a/MediaBrowser.Server.Startup.Common/Migrations/MigrateUserFolders.cs
+++ b/MediaBrowser.Server.Startup.Common/Migrations/MigrateUserFolders.cs
@@ -3,6 +3,7 @@ using MediaBrowser.Controller;
using System;
using System.IO;
using System.Linq;
+using CommonIO;
namespace MediaBrowser.Server.Startup.Common.Migrations
{
diff --git a/MediaBrowser.Server.Startup.Common/packages.config b/MediaBrowser.Server.Startup.Common/packages.config
index 120360cd44..ddb2b92023 100644
--- a/MediaBrowser.Server.Startup.Common/packages.config
+++ b/MediaBrowser.Server.Startup.Common/packages.config
@@ -1,4 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
+ <package id="CommonIO" version="1.0.0.3" targetFramework="net45" />
<package id="Mono.Posix" version="4.0.0.0" targetFramework="net45" />
+ <package id="Patterns.Logging" version="1.0.0.2" targetFramework="net45" />
</packages> \ No newline at end of file