diff options
| author | Luke <luke.pulverenti@gmail.com> | 2015-03-19 13:21:35 -0400 |
|---|---|---|
| committer | Luke <luke.pulverenti@gmail.com> | 2015-03-19 13:21:35 -0400 |
| commit | 9926be0d9de688c04065c916e44ada4177b38a80 (patch) | |
| tree | 15338144a143948ffbee316641757e81489a7354 /MediaBrowser.Server.Mono | |
| parent | b756e677d733992c2033bdd369980a37e17609e4 (diff) | |
| parent | 0564d454e5ad4f59702aa9022af6bb8fd064a9ff (diff) | |
Merge pull request #1043 from MediaBrowser/dev
3.0.5557.0
Diffstat (limited to 'MediaBrowser.Server.Mono')
5 files changed, 44 insertions, 9 deletions
diff --git a/MediaBrowser.Server.Mono/Diagnostics/LinuxProcessManager.cs b/MediaBrowser.Server.Mono/Diagnostics/LinuxProcessManager.cs new file mode 100644 index 0000000000..a66365212b --- /dev/null +++ b/MediaBrowser.Server.Mono/Diagnostics/LinuxProcessManager.cs @@ -0,0 +1,25 @@ +using MediaBrowser.Controller.Diagnostics; +using System.Diagnostics; + +namespace MediaBrowser.Server.Mono.Diagnostics +{ + public class LinuxProcessManager : IProcessManager + { + public bool SupportsSuspension + { + get { return true; } + } + + public void SuspendProcess(Process process) + { + // http://jumptuck.com/2011/11/23/quick-tip-pause-process-linux/ + process.StandardInput.WriteLine("^Z"); + } + + public void ResumeProcess(Process process) + { + // http://jumptuck.com/2011/11/23/quick-tip-pause-process-linux/ + process.StandardInput.WriteLine("fg"); + } + } +} diff --git a/MediaBrowser.Server.Mono/ImageMagickSharp.dll.config b/MediaBrowser.Server.Mono/ImageMagickSharp.dll.config new file mode 100644 index 0000000000..ac4918ef2f --- /dev/null +++ b/MediaBrowser.Server.Mono/ImageMagickSharp.dll.config @@ -0,0 +1,4 @@ +<configuration> + <dllmap dll="CORE_RL_Wand_.dll" target="libMagickWand-6.Q8.so" os="linux"/> + <dllmap dll="CORE_RL_Wand_.dll" target="./MediaInfo/osx/libmediainfo.dylib" os="osx"/> +</configuration>
\ No newline at end of file diff --git a/MediaBrowser.Server.Mono/Imazen.WebP.dll.config b/MediaBrowser.Server.Mono/Imazen.WebP.dll.config deleted file mode 100644 index a7a2c13978..0000000000 --- a/MediaBrowser.Server.Mono/Imazen.WebP.dll.config +++ /dev/null @@ -1,4 +0,0 @@ -<configuration> - <dllmap dll="libwebp" target="./libwebp/osx/libwebp.5.dylib" os="osx"/> - <dllmap dll="libwebp" target="libwebp.so.5" os="linux"/> -</configuration> diff --git a/MediaBrowser.Server.Mono/MediaBrowser.Server.Mono.csproj b/MediaBrowser.Server.Mono/MediaBrowser.Server.Mono.csproj index 232caba4ff..8f552ee362 100644 --- a/MediaBrowser.Server.Mono/MediaBrowser.Server.Mono.csproj +++ b/MediaBrowser.Server.Mono/MediaBrowser.Server.Mono.csproj @@ -74,6 +74,7 @@ <Compile Include="..\SharedVersion.cs"> <Link>Properties\SharedVersion.cs</Link> </Compile> + <Compile Include="Diagnostics\LinuxProcessManager.cs" /> <Compile Include="Native\BaseMonoApp.cs" /> <Compile Include="Networking\CertificateGenerator.cs" /> <Compile Include="Program.cs" /> @@ -137,10 +138,6 @@ </ProjectReference> </ItemGroup> <ItemGroup> - <None Include="..\ThirdParty\libwebp\osx\libwebp.5.dylib"> - <Link>libwebp\osx\libwebp.5.dylib</Link> - <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> - </None> <None Include="..\ThirdParty\MediaInfo\osx\libmediainfo.dylib"> <Link>MediaInfo\osx\libmediainfo.dylib</Link> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> @@ -154,7 +151,7 @@ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> </None> <None Include="app.config" /> - <None Include="Imazen.WebP.dll.config"> + <None Include="ImageMagickSharp.dll.config"> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> </None> <None Include="MediaBrowser.MediaInfo.dll.config"> diff --git a/MediaBrowser.Server.Mono/Native/BaseMonoApp.cs b/MediaBrowser.Server.Mono/Native/BaseMonoApp.cs index 1ec0109ad8..139661aa28 100644 --- a/MediaBrowser.Server.Mono/Native/BaseMonoApp.cs +++ b/MediaBrowser.Server.Mono/Native/BaseMonoApp.cs @@ -1,6 +1,8 @@ using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Diagnostics; using MediaBrowser.IsoMounter; using MediaBrowser.Model.Logging; +using MediaBrowser.Server.Mono.Diagnostics; using MediaBrowser.Server.Mono.Networking; using MediaBrowser.Server.Startup.Common; using Mono.Unix.Native; @@ -189,5 +191,16 @@ namespace MediaBrowser.Server.Mono.Native public string sysname = string.Empty; public string machine = string.Empty; } + + + public IProcessManager GetProcessManager() + { + if (Environment.OperatingSystem == Startup.Common.OperatingSystem.Linux) + { + return new LinuxProcessManager(); + } + + return new ProcessManager(); + } } } |
