aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Common.Implementations
diff options
context:
space:
mode:
authorTavares André <tavares_and@hotmail.com>2015-05-07 19:12:56 +0200
committerTavares André <tavares_and@hotmail.com>2015-05-07 19:12:56 +0200
commit48e7ca87254969f98abbedcfc46985fc1ea955c0 (patch)
treec1084f29f6529d4bf5524fdab7a723686a379b2d /MediaBrowser.Common.Implementations
parentf2b800181252b6fd0bb3b51925d1dcb0623f21d2 (diff)
parent63dc2512c5d272dbc3cb1515beb175e9b3572440 (diff)
Merge branch 'dev' of https://github.com/MediaBrowser/MediaBrowser into dev
Conflicts: MediaBrowser.Server.Implementations/Localization/Server/server.json
Diffstat (limited to 'MediaBrowser.Common.Implementations')
-rw-r--r--MediaBrowser.Common.Implementations/MediaBrowser.Common.Implementations.csproj7
-rw-r--r--MediaBrowser.Common.Implementations/Networking/BaseNetworkManager.cs43
-rw-r--r--MediaBrowser.Common.Implementations/packages.config2
3 files changed, 16 insertions, 36 deletions
diff --git a/MediaBrowser.Common.Implementations/MediaBrowser.Common.Implementations.csproj b/MediaBrowser.Common.Implementations/MediaBrowser.Common.Implementations.csproj
index 967cf54a6..e603ea373 100644
--- a/MediaBrowser.Common.Implementations/MediaBrowser.Common.Implementations.csproj
+++ b/MediaBrowser.Common.Implementations/MediaBrowser.Common.Implementations.csproj
@@ -58,11 +58,8 @@
</Reference>
<Reference Include="SimpleInjector, Version=2.7.0.0, Culture=neutral, PublicKeyToken=984cb50dea722e99, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
- <HintPath>..\packages\SimpleInjector.2.7.0\lib\net45\SimpleInjector.dll</HintPath>
- </Reference>
- <Reference Include="SimpleInjector.Diagnostics, Version=2.7.0.0, Culture=neutral, PublicKeyToken=984cb50dea722e99, processorArchitecture=MSIL">
- <SpecificVersion>False</SpecificVersion>
- <HintPath>..\packages\SimpleInjector.2.7.0\lib\net45\SimpleInjector.Diagnostics.dll</HintPath>
+ <HintPath>..\packages\SimpleInjector.2.8.0\lib\net45\SimpleInjector.dll</HintPath>
+ <Private>True</Private>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
diff --git a/MediaBrowser.Common.Implementations/Networking/BaseNetworkManager.cs b/MediaBrowser.Common.Implementations/Networking/BaseNetworkManager.cs
index 0fd4e2787..c27dfd68d 100644
--- a/MediaBrowser.Common.Implementations/Networking/BaseNetworkManager.cs
+++ b/MediaBrowser.Common.Implementations/Networking/BaseNetworkManager.cs
@@ -6,16 +6,29 @@ using System.Linq;
using System.Net;
using System.Net.NetworkInformation;
using System.Net.Sockets;
+using System.Threading;
namespace MediaBrowser.Common.Implementations.Networking
{
public abstract class BaseNetworkManager
{
protected ILogger Logger { get; private set; }
+ private Timer _clearCacheTimer;
protected BaseNetworkManager(ILogger logger)
{
Logger = logger;
+
+ // Can't use network change events due to a crash in Linux
+ _clearCacheTimer = new Timer(ClearCacheTimerCallback, null, TimeSpan.FromMinutes(1), TimeSpan.FromMinutes(1));
+ }
+
+ private void ClearCacheTimerCallback(object state)
+ {
+ lock (_localIpAddressSyncLock)
+ {
+ _localIpAddresses = null;
+ }
}
private volatile List<string> _localIpAddresses;
@@ -36,7 +49,6 @@ namespace MediaBrowser.Common.Implementations.Networking
var addresses = GetLocalIpAddressesInternal().ToList();
_localIpAddresses = addresses;
- BindEvents();
return addresses;
}
@@ -46,35 +58,6 @@ namespace MediaBrowser.Common.Implementations.Networking
return _localIpAddresses;
}
- private void BindEvents()
- {
- NetworkChange.NetworkAddressChanged -= NetworkChange_NetworkAddressChanged;
- NetworkChange.NetworkAvailabilityChanged -= NetworkChange_NetworkAvailabilityChanged;
-
- NetworkChange.NetworkAddressChanged += NetworkChange_NetworkAddressChanged;
- NetworkChange.NetworkAvailabilityChanged += NetworkChange_NetworkAvailabilityChanged;
- }
-
- void NetworkChange_NetworkAvailabilityChanged(object sender, NetworkAvailabilityEventArgs e)
- {
- Logger.Debug("NetworkAvailabilityChanged fired. Resetting cached network info.");
-
- lock (_localIpAddressSyncLock)
- {
- _localIpAddresses = null;
- }
- }
-
- void NetworkChange_NetworkAddressChanged(object sender, EventArgs e)
- {
- Logger.Debug("NetworkAddressChanged fired. Resetting cached network info.");
-
- lock (_localIpAddressSyncLock)
- {
- _localIpAddresses = null;
- }
- }
-
private IEnumerable<string> GetLocalIpAddressesInternal()
{
var list = GetIPsDefault()
diff --git a/MediaBrowser.Common.Implementations/packages.config b/MediaBrowser.Common.Implementations/packages.config
index 56cb78031..e57c874f2 100644
--- a/MediaBrowser.Common.Implementations/packages.config
+++ b/MediaBrowser.Common.Implementations/packages.config
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="NLog" version="3.2.1" targetFramework="net45" />
- <package id="SimpleInjector" version="2.7.0" targetFramework="net45" />
+ <package id="SimpleInjector" version="2.8.0" targetFramework="net45" />
</packages>