aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller
diff options
context:
space:
mode:
authorLuke <luke.pulverenti@gmail.com>2016-10-27 23:17:31 -0400
committerGitHub <noreply@github.com>2016-10-27 23:17:31 -0400
commit57f83a2744fb5ebdf5774d51d2125ea46f4ce8ab (patch)
treef0a8c9137d24160fe8e2955bff7010163f2d4066 /MediaBrowser.Controller
parent8fcc7a0385b9db202c1f93ee897eb5a11d2759da (diff)
parentf6acc5fbff081728138564867a58b7848c92c467 (diff)
Merge pull request #2256 from MediaBrowser/dev
Dev
Diffstat (limited to 'MediaBrowser.Controller')
-rw-r--r--MediaBrowser.Controller/Activity/IActivityManager.cs17
-rw-r--r--MediaBrowser.Controller/Activity/IActivityRepository.cs14
-rw-r--r--MediaBrowser.Controller/Channels/Channel.cs2
-rw-r--r--MediaBrowser.Controller/Dlna/IDeviceDiscovery.cs5
-rw-r--r--MediaBrowser.Controller/Dlna/SsdpMessageEventArgs.cs23
-rw-r--r--MediaBrowser.Controller/Entities/AggregateFolder.cs5
-rw-r--r--MediaBrowser.Controller/Entities/Audio/Audio.cs2
-rw-r--r--MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs2
-rw-r--r--MediaBrowser.Controller/Entities/Audio/MusicArtist.cs2
-rw-r--r--MediaBrowser.Controller/Entities/Audio/MusicGenre.cs2
-rw-r--r--MediaBrowser.Controller/Entities/BaseItem.cs14
-rw-r--r--MediaBrowser.Controller/Entities/BasePluginFolder.cs2
-rw-r--r--MediaBrowser.Controller/Entities/Book.cs2
-rw-r--r--MediaBrowser.Controller/Entities/CollectionFolder.cs18
-rw-r--r--MediaBrowser.Controller/Entities/Folder.cs8
-rw-r--r--MediaBrowser.Controller/Entities/Game.cs2
-rw-r--r--MediaBrowser.Controller/Entities/GameGenre.cs2
-rw-r--r--MediaBrowser.Controller/Entities/GameSystem.cs2
-rw-r--r--MediaBrowser.Controller/Entities/Genre.cs2
-rw-r--r--MediaBrowser.Controller/Entities/IHasImages.cs4
-rw-r--r--MediaBrowser.Controller/Entities/ItemImageInfo.cs2
-rw-r--r--MediaBrowser.Controller/Entities/LinkedChild.cs2
-rw-r--r--MediaBrowser.Controller/Entities/Movies/BoxSet.cs2
-rw-r--r--MediaBrowser.Controller/Entities/Movies/Movie.cs6
-rw-r--r--MediaBrowser.Controller/Entities/MusicVideo.cs2
-rw-r--r--MediaBrowser.Controller/Entities/Person.cs2
-rw-r--r--MediaBrowser.Controller/Entities/Photo.cs2
-rw-r--r--MediaBrowser.Controller/Entities/PhotoAlbum.cs2
-rw-r--r--MediaBrowser.Controller/Entities/Studio.cs2
-rw-r--r--MediaBrowser.Controller/Entities/TV/Episode.cs2
-rw-r--r--MediaBrowser.Controller/Entities/TV/Season.cs2
-rw-r--r--MediaBrowser.Controller/Entities/TV/Series.cs2
-rw-r--r--MediaBrowser.Controller/Entities/Trailer.cs2
-rw-r--r--MediaBrowser.Controller/Entities/User.cs17
-rw-r--r--MediaBrowser.Controller/Entities/UserItemData.cs2
-rw-r--r--MediaBrowser.Controller/Entities/UserRootFolder.cs2
-rw-r--r--MediaBrowser.Controller/Entities/UserView.cs2
-rw-r--r--MediaBrowser.Controller/Entities/Video.cs6
-rw-r--r--MediaBrowser.Controller/Entities/Year.cs2
-rw-r--r--MediaBrowser.Controller/Extensions/StringExtensions.cs13
-rw-r--r--MediaBrowser.Controller/IO/FileData.cs3
-rw-r--r--MediaBrowser.Controller/IO/ThrottledStream.cs393
-rw-r--r--MediaBrowser.Controller/IServerApplicationHost.cs7
-rw-r--r--MediaBrowser.Controller/Library/ILibraryManager.cs4
-rw-r--r--MediaBrowser.Controller/Library/ItemResolveArgs.cs16
-rw-r--r--MediaBrowser.Controller/Library/NameExtensions.cs16
-rw-r--r--MediaBrowser.Controller/LiveTv/LiveTvAudioRecording.cs2
-rw-r--r--MediaBrowser.Controller/LiveTv/LiveTvChannel.cs2
-rw-r--r--MediaBrowser.Controller/LiveTv/LiveTvProgram.cs2
-rw-r--r--MediaBrowser.Controller/LiveTv/LiveTvVideoRecording.cs2
-rw-r--r--MediaBrowser.Controller/LiveTv/RecordingGroup.cs2
-rw-r--r--MediaBrowser.Controller/Localization/ILocalizationManager.cs55
-rw-r--r--MediaBrowser.Controller/MediaBrowser.Controller.csproj42
-rw-r--r--MediaBrowser.Controller/MediaBrowser.Controller.nuget.targets6
-rw-r--r--MediaBrowser.Controller/MediaEncoding/MediaEncoderHelpers.cs3
-rw-r--r--MediaBrowser.Controller/Net/AuthenticatedAttribute.cs6
-rw-r--r--MediaBrowser.Controller/Net/BasePeriodicWebSocketListener.cs341
-rw-r--r--MediaBrowser.Controller/Net/IAsyncStreamSource.cs18
-rw-r--r--MediaBrowser.Controller/Net/IHasResultFactory.cs2
-rw-r--r--MediaBrowser.Controller/Net/IHttpResultFactory.cs10
-rw-r--r--MediaBrowser.Controller/Net/IHttpServer.cs3
-rw-r--r--MediaBrowser.Controller/Net/IRestfulService.cs12
-rw-r--r--MediaBrowser.Controller/Net/IServiceRequest.cs7
-rw-r--r--MediaBrowser.Controller/Net/IWebSocketConnection.cs4
-rw-r--r--MediaBrowser.Controller/Net/LoggedAttribute.cs44
-rw-r--r--MediaBrowser.Controller/Net/ServiceRequest.cs42
-rw-r--r--MediaBrowser.Controller/Net/ServiceStackServiceRequest.cs62
-rw-r--r--MediaBrowser.Controller/Net/StaticResultOptions.cs6
-rw-r--r--MediaBrowser.Controller/Net/WebSocketConnectEventArgs.cs7
-rw-r--r--MediaBrowser.Controller/News/INewsService.cs18
-rw-r--r--MediaBrowser.Controller/Playlists/Playlist.cs2
-rw-r--r--MediaBrowser.Controller/Providers/BaseItemXmlParser.cs1392
-rw-r--r--MediaBrowser.Controller/Providers/DirectoryService.cs6
-rw-r--r--MediaBrowser.Controller/Providers/IDirectoryService.cs4
-rw-r--r--MediaBrowser.Controller/Providers/LocalImageInfo.cs4
-rw-r--r--MediaBrowser.Controller/Providers/MetadataRefreshOptions.cs4
-rw-r--r--MediaBrowser.Controller/Resolvers/IItemResolver.cs4
-rw-r--r--MediaBrowser.Controller/Resolvers/IResolverIgnoreRule.cs4
-rw-r--r--MediaBrowser.Controller/Social/ISharingManager.cs28
-rw-r--r--MediaBrowser.Controller/Threading/PeriodicTimer.cs72
-rw-r--r--MediaBrowser.Controller/packages.config1
-rw-r--r--MediaBrowser.Controller/project.json17
-rw-r--r--MediaBrowser.Controller/project.lock.json3965
83 files changed, 4198 insertions, 2646 deletions
diff --git a/MediaBrowser.Controller/Activity/IActivityManager.cs b/MediaBrowser.Controller/Activity/IActivityManager.cs
deleted file mode 100644
index 7285489112..0000000000
--- a/MediaBrowser.Controller/Activity/IActivityManager.cs
+++ /dev/null
@@ -1,17 +0,0 @@
-using MediaBrowser.Model.Activity;
-using MediaBrowser.Model.Events;
-using MediaBrowser.Model.Querying;
-using System;
-using System.Threading.Tasks;
-
-namespace MediaBrowser.Controller.Activity
-{
- public interface IActivityManager
- {
- event EventHandler<GenericEventArgs<ActivityLogEntry>> EntryCreated;
-
- Task Create(ActivityLogEntry entry);
-
- QueryResult<ActivityLogEntry> GetActivityLogEntries(DateTime? minDate, int? startIndex, int? limit);
- }
-}
diff --git a/MediaBrowser.Controller/Activity/IActivityRepository.cs b/MediaBrowser.Controller/Activity/IActivityRepository.cs
deleted file mode 100644
index 7ccbc2e99b..0000000000
--- a/MediaBrowser.Controller/Activity/IActivityRepository.cs
+++ /dev/null
@@ -1,14 +0,0 @@
-using MediaBrowser.Model.Activity;
-using MediaBrowser.Model.Querying;
-using System;
-using System.Threading.Tasks;
-
-namespace MediaBrowser.Controller.Activity
-{
- public interface IActivityRepository
- {
- Task Create(ActivityLogEntry entry);
-
- QueryResult<ActivityLogEntry> GetActivityLogEntries(DateTime? minDate, int? startIndex, int? limit);
- }
-}
diff --git a/MediaBrowser.Controller/Channels/Channel.cs b/MediaBrowser.Controller/Channels/Channel.cs
index e0b7204b87..a2590dec72 100644
--- a/MediaBrowser.Controller/Channels/Channel.cs
+++ b/MediaBrowser.Controller/Channels/Channel.cs
@@ -3,7 +3,7 @@ using MediaBrowser.Model.Channels;
using MediaBrowser.Model.Querying;
using System;
using System.Linq;
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
using System.Threading;
using System.Threading.Tasks;
diff --git a/MediaBrowser.Controller/Dlna/IDeviceDiscovery.cs b/MediaBrowser.Controller/Dlna/IDeviceDiscovery.cs
index d2c5b9e4e8..6a57d9b197 100644
--- a/MediaBrowser.Controller/Dlna/IDeviceDiscovery.cs
+++ b/MediaBrowser.Controller/Dlna/IDeviceDiscovery.cs
@@ -1,7 +1,7 @@
using System;
using System.Collections.Generic;
-using System.Net;
using MediaBrowser.Model.Events;
+using MediaBrowser.Model.Net;
namespace MediaBrowser.Controller.Dlna
{
@@ -15,6 +15,7 @@ namespace MediaBrowser.Controller.Dlna
{
public Uri Location { get; set; }
public Dictionary<string, string> Headers { get; set; }
- public IPEndPoint LocalEndPoint { get; set; }
+ public IpAddressInfo LocalIpAddress { get; set; }
+ public int LocalPort { get; set; }
}
}
diff --git a/MediaBrowser.Controller/Dlna/SsdpMessageEventArgs.cs b/MediaBrowser.Controller/Dlna/SsdpMessageEventArgs.cs
deleted file mode 100644
index 804f34311a..0000000000
--- a/MediaBrowser.Controller/Dlna/SsdpMessageEventArgs.cs
+++ /dev/null
@@ -1,23 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Net;
-
-namespace MediaBrowser.Controller.Dlna
-{
- public class SsdpMessageEventArgs
- {
- public string Method { get; set; }
-
- public EndPoint EndPoint { get; set; }
-
- public Dictionary<string, string> Headers { get; set; }
-
- public IPEndPoint LocalEndPoint { get; set; }
- public byte[] Message { get; set; }
-
- public SsdpMessageEventArgs()
- {
- Headers = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
- }
- }
-}
diff --git a/MediaBrowser.Controller/Entities/AggregateFolder.cs b/MediaBrowser.Controller/Entities/AggregateFolder.cs
index 7b769deb3e..a6b9d860a0 100644
--- a/MediaBrowser.Controller/Entities/AggregateFolder.cs
+++ b/MediaBrowser.Controller/Entities/AggregateFolder.cs
@@ -4,11 +4,12 @@ using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Linq;
-using System.Runtime.Serialization;
using System.Threading;
using System.Threading.Tasks;
-using CommonIO;
+using MediaBrowser.Common.IO;
using MediaBrowser.Controller.Providers;
+using MediaBrowser.Model.IO;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.Entities
{
diff --git a/MediaBrowser.Controller/Entities/Audio/Audio.cs b/MediaBrowser.Controller/Entities/Audio/Audio.cs
index 56c3248f33..e9a3eb5123 100644
--- a/MediaBrowser.Controller/Entities/Audio/Audio.cs
+++ b/MediaBrowser.Controller/Entities/Audio/Audio.cs
@@ -7,10 +7,10 @@ using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
-using System.Runtime.Serialization;
using System.Threading;
using MediaBrowser.Common.Extensions;
using MediaBrowser.Controller.Channels;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.Entities.Audio
{
diff --git a/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs b/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs
index 3f457d89a9..569b422cbc 100644
--- a/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs
+++ b/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs
@@ -5,7 +5,7 @@ using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Users;
using System.Collections.Generic;
using System.Linq;
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
using System.Threading;
using System.Threading.Tasks;
using MediaBrowser.Controller.Library;
diff --git a/MediaBrowser.Controller/Entities/Audio/MusicArtist.cs b/MediaBrowser.Controller/Entities/Audio/MusicArtist.cs
index 4fdd809e0d..fd20f2ab44 100644
--- a/MediaBrowser.Controller/Entities/Audio/MusicArtist.cs
+++ b/MediaBrowser.Controller/Entities/Audio/MusicArtist.cs
@@ -6,7 +6,7 @@ using MediaBrowser.Model.Users;
using System;
using System.Collections.Generic;
using System.Linq;
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
using System.Threading;
using System.Threading.Tasks;
using MediaBrowser.Common.Extensions;
diff --git a/MediaBrowser.Controller/Entities/Audio/MusicGenre.cs b/MediaBrowser.Controller/Entities/Audio/MusicGenre.cs
index cb17ea2659..c930f2563f 100644
--- a/MediaBrowser.Controller/Entities/Audio/MusicGenre.cs
+++ b/MediaBrowser.Controller/Entities/Audio/MusicGenre.cs
@@ -1,7 +1,7 @@
using System;
using System.Collections.Generic;
using System.Linq;
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
using MediaBrowser.Common.Extensions;
using MediaBrowser.Controller.Extensions;
using MediaBrowser.Model.Extensions;
diff --git a/MediaBrowser.Controller/Entities/BaseItem.cs b/MediaBrowser.Controller/Entities/BaseItem.cs
index 4836aca8b4..ea3a7f79c5 100644
--- a/MediaBrowser.Controller/Entities/BaseItem.cs
+++ b/MediaBrowser.Controller/Entities/BaseItem.cs
@@ -5,7 +5,6 @@ using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.Drawing;
using MediaBrowser.Controller.Library;
using MediaBrowser.Controller.LiveTv;
-using MediaBrowser.Controller.Localization;
using MediaBrowser.Controller.Persistence;
using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Configuration;
@@ -19,16 +18,19 @@ using System.Collections.Generic;
using System.Globalization;
using System.IO;
using System.Linq;
-using System.Runtime.Serialization;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
-using CommonIO;
+using MediaBrowser.Common.IO;
using MediaBrowser.Controller.Extensions;
+using MediaBrowser.Controller.IO;
using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Extensions;
+using MediaBrowser.Model.Globalization;
+using MediaBrowser.Model.IO;
using MediaBrowser.Model.LiveTv;
using MediaBrowser.Model.Providers;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.Entities
{
@@ -1878,14 +1880,14 @@ namespace MediaBrowser.Controller.Entities
if (info.IsLocalFile)
{
// Delete the source file
- var currentFile = new FileInfo(info.Path);
+ var currentFile = FileSystem.GetFileInfo(info.Path);
// Deletion will fail if the file is hidden so remove the attribute first
if (currentFile.Exists)
{
- if ((currentFile.Attributes & FileAttributes.Hidden) == FileAttributes.Hidden)
+ if (currentFile.IsHidden)
{
- currentFile.Attributes &= ~FileAttributes.Hidden;
+ FileSystem.SetHidden(currentFile.FullName, false);
}
FileSystem.DeleteFile(currentFile.FullName);
diff --git a/MediaBrowser.Controller/Entities/BasePluginFolder.cs b/MediaBrowser.Controller/Entities/BasePluginFolder.cs
index bd109af7a7..7dbea317c8 100644
--- a/MediaBrowser.Controller/Entities/BasePluginFolder.cs
+++ b/MediaBrowser.Controller/Entities/BasePluginFolder.cs
@@ -1,5 +1,5 @@

-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.Entities
{
diff --git a/MediaBrowser.Controller/Entities/Book.cs b/MediaBrowser.Controller/Entities/Book.cs
index 56f9fa784a..9ccc7125a6 100644
--- a/MediaBrowser.Controller/Entities/Book.cs
+++ b/MediaBrowser.Controller/Entities/Book.cs
@@ -2,7 +2,7 @@
using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Configuration;
using System.Linq;
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
using MediaBrowser.Model.Entities;
namespace MediaBrowser.Controller.Entities
diff --git a/MediaBrowser.Controller/Entities/CollectionFolder.cs b/MediaBrowser.Controller/Entities/CollectionFolder.cs
index 414b2b2c3a..68dd055f34 100644
--- a/MediaBrowser.Controller/Entities/CollectionFolder.cs
+++ b/MediaBrowser.Controller/Entities/CollectionFolder.cs
@@ -5,13 +5,13 @@ using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
-using System.Runtime.Serialization;
using System.Threading;
using System.Threading.Tasks;
-using CommonIO;
+using MediaBrowser.Common.IO;
using MediaBrowser.Controller.Configuration;
using MediaBrowser.Model.Configuration;
using MediaBrowser.Model.Extensions;
+using MediaBrowser.Model.IO;
using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.Entities
@@ -29,7 +29,7 @@ namespace MediaBrowser.Controller.Entities
PhysicalLocationsList = new List<string>();
}
- [System.Runtime.Serialization.IgnoreDataMember]
+ [IgnoreDataMember]
protected override bool SupportsShortcutChildren
{
get
@@ -38,7 +38,7 @@ namespace MediaBrowser.Controller.Entities
}
}
- [System.Runtime.Serialization.IgnoreDataMember]
+ [IgnoreDataMember]
public override bool SupportsPlayedStatus
{
get
@@ -77,7 +77,7 @@ namespace MediaBrowser.Controller.Entities
{
return new LibraryOptions();
}
- catch (DirectoryNotFoundException)
+ catch (IOException)
{
return new LibraryOptions();
}
@@ -129,7 +129,7 @@ namespace MediaBrowser.Controller.Entities
/// Allow different display preferences for each collection folder
/// </summary>
/// <value>The display prefs id.</value>
- [System.Runtime.Serialization.IgnoreDataMember]
+ [IgnoreDataMember]
public override Guid DisplayPreferencesId
{
get
@@ -138,7 +138,7 @@ namespace MediaBrowser.Controller.Entities
}
}
- [System.Runtime.Serialization.IgnoreDataMember]
+ [IgnoreDataMember]
public override IEnumerable<string> PhysicalLocations
{
get
@@ -283,7 +283,7 @@ namespace MediaBrowser.Controller.Entities
/// Our children are actually just references to the ones in the physical root...
/// </summary>
/// <value>The actual children.</value>
- [System.Runtime.Serialization.IgnoreDataMember]
+ [IgnoreDataMember]
protected override IEnumerable<BaseItem> ActualChildren
{
get { return GetActualChildren(); }
@@ -322,7 +322,7 @@ namespace MediaBrowser.Controller.Entities
return result;
}
- [System.Runtime.Serialization.IgnoreDataMember]
+ [IgnoreDataMember]
public override bool SupportsPeople
{
get
diff --git a/MediaBrowser.Controller/Entities/Folder.cs b/MediaBrowser.Controller/Entities/Folder.cs
index cc71ab43e3..3df77673f7 100644
--- a/MediaBrowser.Controller/Entities/Folder.cs
+++ b/MediaBrowser.Controller/Entities/Folder.cs
@@ -8,14 +8,16 @@ using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
-using System.Runtime.Serialization;
using System.Threading;
using System.Threading.Tasks;
-using CommonIO;
+using MediaBrowser.Common.IO;
using MediaBrowser.Controller.Channels;
using MediaBrowser.Controller.Entities.Audio;
using MediaBrowser.Controller.Entities.TV;
+using MediaBrowser.Controller.IO;
using MediaBrowser.Model.Channels;
+using MediaBrowser.Model.IO;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.Entities
{
@@ -1217,7 +1219,7 @@ namespace MediaBrowser.Controller.Entities
if (SupportsShortcutChildren)
{
newShortcutLinks = fileSystemChildren
- .Where(i => (i.Attributes & FileAttributes.Directory) != FileAttributes.Directory && FileSystem.IsShortcut(i.FullName))
+ .Where(i => !i.IsDirectory && FileSystem.IsShortcut(i.FullName))
.Select(i =>
{
try
diff --git a/MediaBrowser.Controller/Entities/Game.cs b/MediaBrowser.Controller/Entities/Game.cs
index aa2ccf4bc0..8bfb8be99d 100644
--- a/MediaBrowser.Controller/Entities/Game.cs
+++ b/MediaBrowser.Controller/Entities/Game.cs
@@ -4,7 +4,7 @@ using MediaBrowser.Model.Entities;
using System;
using System.Collections.Generic;
using System.Linq;
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.Entities
{
diff --git a/MediaBrowser.Controller/Entities/GameGenre.cs b/MediaBrowser.Controller/Entities/GameGenre.cs
index 545bef44c1..d62d3c8fd7 100644
--- a/MediaBrowser.Controller/Entities/GameGenre.cs
+++ b/MediaBrowser.Controller/Entities/GameGenre.cs
@@ -1,7 +1,7 @@
using System;
using System.Collections.Generic;
using System.Linq;
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
using MediaBrowser.Common.Extensions;
using MediaBrowser.Controller.Extensions;
using MediaBrowser.Model.Extensions;
diff --git a/MediaBrowser.Controller/Entities/GameSystem.cs b/MediaBrowser.Controller/Entities/GameSystem.cs
index 9e00ab260d..d8879155af 100644
--- a/MediaBrowser.Controller/Entities/GameSystem.cs
+++ b/MediaBrowser.Controller/Entities/GameSystem.cs
@@ -1,4 +1,4 @@
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Configuration;
using System;
diff --git a/MediaBrowser.Controller/Entities/Genre.cs b/MediaBrowser.Controller/Entities/Genre.cs
index 6fefdfa558..731391bc4c 100644
--- a/MediaBrowser.Controller/Entities/Genre.cs
+++ b/MediaBrowser.Controller/Entities/Genre.cs
@@ -1,4 +1,4 @@
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
using MediaBrowser.Controller.Entities.Audio;
using System;
using System.Collections.Generic;
diff --git a/MediaBrowser.Controller/Entities/IHasImages.cs b/MediaBrowser.Controller/Entities/IHasImages.cs
index 1ab0566e0e..888e2080de 100644
--- a/MediaBrowser.Controller/Entities/IHasImages.cs
+++ b/MediaBrowser.Controller/Entities/IHasImages.cs
@@ -3,8 +3,10 @@ using MediaBrowser.Model.Entities;
using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
-using CommonIO;
+using MediaBrowser.Common.IO;
+using MediaBrowser.Controller.IO;
using MediaBrowser.Controller.Library;
+using MediaBrowser.Model.IO;
namespace MediaBrowser.Controller.Entities
{
diff --git a/MediaBrowser.Controller/Entities/ItemImageInfo.cs b/MediaBrowser.Controller/Entities/ItemImageInfo.cs
index aa3917c15f..672595db84 100644
--- a/MediaBrowser.Controller/Entities/ItemImageInfo.cs
+++ b/MediaBrowser.Controller/Entities/ItemImageInfo.cs
@@ -1,6 +1,6 @@
using MediaBrowser.Model.Entities;
using System;
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.Entities
{
diff --git a/MediaBrowser.Controller/Entities/LinkedChild.cs b/MediaBrowser.Controller/Entities/LinkedChild.cs
index ac13657b94..4d3c13c6e3 100644
--- a/MediaBrowser.Controller/Entities/LinkedChild.cs
+++ b/MediaBrowser.Controller/Entities/LinkedChild.cs
@@ -1,6 +1,6 @@
using System;
using System.Collections.Generic;
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.Entities
{
diff --git a/MediaBrowser.Controller/Entities/Movies/BoxSet.cs b/MediaBrowser.Controller/Entities/Movies/BoxSet.cs
index 6d5278f1fe..52fb7e2817 100644
--- a/MediaBrowser.Controller/Entities/Movies/BoxSet.cs
+++ b/MediaBrowser.Controller/Entities/Movies/BoxSet.cs
@@ -7,7 +7,7 @@ using MediaBrowser.Model.Users;
using System;
using System.Collections.Generic;
using System.Linq;
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
using MediaBrowser.Controller.Entities.Audio;
namespace MediaBrowser.Controller.Entities.Movies
diff --git a/MediaBrowser.Controller/Entities/Movies/Movie.cs b/MediaBrowser.Controller/Entities/Movies/Movie.cs
index f13adb21c7..5fee87b7ae 100644
--- a/MediaBrowser.Controller/Entities/Movies/Movie.cs
+++ b/MediaBrowser.Controller/Entities/Movies/Movie.cs
@@ -4,11 +4,13 @@ using MediaBrowser.Model.Entities;
using System;
using System.Collections.Generic;
using System.Linq;
-using System.Runtime.Serialization;
using System.Threading;
using System.Threading.Tasks;
-using CommonIO;
+using MediaBrowser.Common.IO;
+using MediaBrowser.Controller.IO;
+using MediaBrowser.Model.IO;
using MediaBrowser.Model.Providers;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.Entities.Movies
{
diff --git a/MediaBrowser.Controller/Entities/MusicVideo.cs b/MediaBrowser.Controller/Entities/MusicVideo.cs
index 6e632a26cf..e3fc4259ae 100644
--- a/MediaBrowser.Controller/Entities/MusicVideo.cs
+++ b/MediaBrowser.Controller/Entities/MusicVideo.cs
@@ -2,7 +2,7 @@
using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Configuration;
using System.Collections.Generic;
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.Entities
{
diff --git a/MediaBrowser.Controller/Entities/Person.cs b/MediaBrowser.Controller/Entities/Person.cs
index 6f7a32a663..79d2a2ee5d 100644
--- a/MediaBrowser.Controller/Entities/Person.cs
+++ b/MediaBrowser.Controller/Entities/Person.cs
@@ -2,11 +2,11 @@
using System;
using System.Collections.Generic;
using System.Linq;
-using System.Runtime.Serialization;
using MediaBrowser.Common.Extensions;
using MediaBrowser.Controller.Extensions;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Extensions;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.Entities
{
diff --git a/MediaBrowser.Controller/Entities/Photo.cs b/MediaBrowser.Controller/Entities/Photo.cs
index a42fce8bbd..e95ceee52c 100644
--- a/MediaBrowser.Controller/Entities/Photo.cs
+++ b/MediaBrowser.Controller/Entities/Photo.cs
@@ -1,6 +1,6 @@
using MediaBrowser.Model.Drawing;
using System.Linq;
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.Entities
{
diff --git a/MediaBrowser.Controller/Entities/PhotoAlbum.cs b/MediaBrowser.Controller/Entities/PhotoAlbum.cs
index cb5c5c4539..c902ac8cda 100644
--- a/MediaBrowser.Controller/Entities/PhotoAlbum.cs
+++ b/MediaBrowser.Controller/Entities/PhotoAlbum.cs
@@ -1,7 +1,7 @@
using MediaBrowser.Model.Configuration;
using MediaBrowser.Model.Users;
using System.Linq;
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.Entities
{
diff --git a/MediaBrowser.Controller/Entities/Studio.cs b/MediaBrowser.Controller/Entities/Studio.cs
index 114c141554..508eb1514d 100644
--- a/MediaBrowser.Controller/Entities/Studio.cs
+++ b/MediaBrowser.Controller/Entities/Studio.cs
@@ -1,7 +1,7 @@
using System;
using System.Collections.Generic;
using System.Linq;
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
using MediaBrowser.Common.Extensions;
using MediaBrowser.Controller.Extensions;
using MediaBrowser.Model.Extensions;
diff --git a/MediaBrowser.Controller/Entities/TV/Episode.cs b/MediaBrowser.Controller/Entities/TV/Episode.cs
index 1a02043d6f..99abf56119 100644
--- a/MediaBrowser.Controller/Entities/TV/Episode.cs
+++ b/MediaBrowser.Controller/Entities/TV/Episode.cs
@@ -4,7 +4,7 @@ using MediaBrowser.Model.Entities;
using System;
using System.Collections.Generic;
using System.Linq;
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.Entities.TV
{
diff --git a/MediaBrowser.Controller/Entities/TV/Season.cs b/MediaBrowser.Controller/Entities/TV/Season.cs
index fa713c5cab..d8a9a16c17 100644
--- a/MediaBrowser.Controller/Entities/TV/Season.cs
+++ b/MediaBrowser.Controller/Entities/TV/Season.cs
@@ -4,9 +4,9 @@ using MediaBrowser.Model.Querying;
using MediaBrowser.Model.Users;
using System.Collections.Generic;
using System.Linq;
-using System.Runtime.Serialization;
using System.Threading.Tasks;
using MediaBrowser.Model.Configuration;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.Entities.TV
{
diff --git a/MediaBrowser.Controller/Entities/TV/Series.cs b/MediaBrowser.Controller/Entities/TV/Series.cs
index df464b52a8..64520646bc 100644
--- a/MediaBrowser.Controller/Entities/TV/Series.cs
+++ b/MediaBrowser.Controller/Entities/TV/Series.cs
@@ -6,11 +6,11 @@ using MediaBrowser.Model.Users;
using System;
using System.Collections.Generic;
using System.Linq;
-using System.Runtime.Serialization;
using System.Threading;
using System.Threading.Tasks;
using MediaBrowser.Model.Extensions;
using MediaBrowser.Model.Providers;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.Entities.TV
{
diff --git a/MediaBrowser.Controller/Entities/Trailer.cs b/MediaBrowser.Controller/Entities/Trailer.cs
index 0780cfec5e..08fd867436 100644
--- a/MediaBrowser.Controller/Entities/Trailer.cs
+++ b/MediaBrowser.Controller/Entities/Trailer.cs
@@ -2,8 +2,8 @@
using MediaBrowser.Model.Configuration;
using MediaBrowser.Model.Entities;
using System.Collections.Generic;
-using System.Runtime.Serialization;
using MediaBrowser.Model.Providers;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.Entities
{
diff --git a/MediaBrowser.Controller/Entities/User.cs b/MediaBrowser.Controller/Entities/User.cs
index 00320e9b77..d5d229bb35 100644
--- a/MediaBrowser.Controller/Entities/User.cs
+++ b/MediaBrowser.Controller/Entities/User.cs
@@ -6,7 +6,6 @@ using MediaBrowser.Model.Serialization;
using MediaBrowser.Model.Users;
using System;
using System.Linq;
-using System.Runtime.Serialization;
using System.Threading;
using System.Threading.Tasks;
@@ -42,7 +41,7 @@ namespace MediaBrowser.Controller.Entities
/// Gets or sets the path.
/// </summary>
/// <value>The path.</value>
- [System.Runtime.Serialization.IgnoreDataMember]
+ [IgnoreDataMember]
public override string Path
{
get
@@ -81,7 +80,7 @@ namespace MediaBrowser.Controller.Entities
/// If the item is a folder, it returns the folder itself
/// </summary>
/// <value>The containing folder path.</value>
- [System.Runtime.Serialization.IgnoreDataMember]
+ [IgnoreDataMember]
public override string ContainingFolderPath
{
get
@@ -94,7 +93,7 @@ namespace MediaBrowser.Controller.Entities
/// Gets a value indicating whether this instance is owned item.
/// </summary>
/// <value><c>true</c> if this instance is owned item; otherwise, <c>false</c>.</value>
- [System.Runtime.Serialization.IgnoreDataMember]
+ [IgnoreDataMember]
public override bool IsOwnedItem
{
get
@@ -107,7 +106,7 @@ namespace MediaBrowser.Controller.Entities
/// Gets the root folder.
/// </summary>
/// <value>The root folder.</value>
- [System.Runtime.Serialization.IgnoreDataMember]
+ [IgnoreDataMember]
public Folder RootFolder
{
get
@@ -129,7 +128,7 @@ namespace MediaBrowser.Controller.Entities
private volatile UserConfiguration _config;
private readonly object _configSyncLock = new object();
- [System.Runtime.Serialization.IgnoreDataMember]
+ [IgnoreDataMember]
public UserConfiguration Configuration
{
get
@@ -152,7 +151,7 @@ namespace MediaBrowser.Controller.Entities
private volatile UserPolicy _policy;
private readonly object _policySyncLock = new object();
- [System.Runtime.Serialization.IgnoreDataMember]
+ [IgnoreDataMember]
public UserPolicy Policy
{
get
@@ -232,7 +231,7 @@ namespace MediaBrowser.Controller.Entities
/// Gets the path to the user's configuration directory
/// </summary>
/// <value>The configuration directory path.</value>
- [System.Runtime.Serialization.IgnoreDataMember]
+ [IgnoreDataMember]
public string ConfigurationDirectoryPath
{
get
@@ -308,7 +307,7 @@ namespace MediaBrowser.Controller.Entities
return Configuration.GroupedFolders.Select(i => new Guid(i)).Contains(id);
}
- [System.Runtime.Serialization.IgnoreDataMember]
+ [IgnoreDataMember]
public override bool SupportsPeople
{
get
diff --git a/MediaBrowser.Controller/Entities/UserItemData.cs b/MediaBrowser.Controller/Entities/UserItemData.cs
index f95fd70364..0e13269499 100644
--- a/MediaBrowser.Controller/Entities/UserItemData.cs
+++ b/MediaBrowser.Controller/Entities/UserItemData.cs
@@ -1,5 +1,5 @@
using System;
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.Entities
{
diff --git a/MediaBrowser.Controller/Entities/UserRootFolder.cs b/MediaBrowser.Controller/Entities/UserRootFolder.cs
index b67817846f..b602990ac8 100644
--- a/MediaBrowser.Controller/Entities/UserRootFolder.cs
+++ b/MediaBrowser.Controller/Entities/UserRootFolder.cs
@@ -1,4 +1,4 @@
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Library;
using MediaBrowser.Model.Querying;
diff --git a/MediaBrowser.Controller/Entities/UserView.cs b/MediaBrowser.Controller/Entities/UserView.cs
index a689e0d091..5ac5843d70 100644
--- a/MediaBrowser.Controller/Entities/UserView.cs
+++ b/MediaBrowser.Controller/Entities/UserView.cs
@@ -4,7 +4,7 @@ using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Querying;
using System;
using System.Collections.Generic;
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
using System.Threading.Tasks;
using System.Linq;
diff --git a/MediaBrowser.Controller/Entities/Video.cs b/MediaBrowser.Controller/Entities/Video.cs
index 78d7a7fdd9..d865578401 100644
--- a/MediaBrowser.Controller/Entities/Video.cs
+++ b/MediaBrowser.Controller/Entities/Video.cs
@@ -8,12 +8,14 @@ using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
-using System.Runtime.Serialization;
using System.Threading;
using System.Threading.Tasks;
-using CommonIO;
using MediaBrowser.Common.Extensions;
+using MediaBrowser.Common.IO;
using MediaBrowser.Controller.Channels;
+using MediaBrowser.Controller.IO;
+using MediaBrowser.Model.IO;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.Entities
{
diff --git a/MediaBrowser.Controller/Entities/Year.cs b/MediaBrowser.Controller/Entities/Year.cs
index 4197ea93e5..ab904cbd83 100644
--- a/MediaBrowser.Controller/Entities/Year.cs
+++ b/MediaBrowser.Controller/Entities/Year.cs
@@ -2,7 +2,7 @@
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.Entities
{
diff --git a/MediaBrowser.Controller/Extensions/StringExtensions.cs b/MediaBrowser.Controller/Extensions/StringExtensions.cs
index 4f58d1bc52..60e7815dbe 100644
--- a/MediaBrowser.Controller/Extensions/StringExtensions.cs
+++ b/MediaBrowser.Controller/Extensions/StringExtensions.cs
@@ -1,7 +1,4 @@
-using System;
-using System.Globalization;
-using System.Linq;
-using System.Text;
+using MediaBrowser.Model.Globalization;
namespace MediaBrowser.Controller.Extensions
{
@@ -10,13 +7,11 @@ namespace MediaBrowser.Controller.Extensions
/// </summary>
public static class StringExtensions
{
+ public static ILocalizationManager LocalizationManager { get; set; }
+
public static string RemoveDiacritics(this string text)
{
- return String.Concat(
- text.Normalize(NormalizationForm.FormD)
- .Where(ch => CharUnicodeInfo.GetUnicodeCategory(ch) !=
- UnicodeCategory.NonSpacingMark)
- ).Normalize(NormalizationForm.FormC);
+ return LocalizationManager.RemoveDiacritics(text);
}
}
}
diff --git a/MediaBrowser.Controller/IO/FileData.cs b/MediaBrowser.Controller/IO/FileData.cs
index 6e7e60f88c..d40829d44b 100644
--- a/MediaBrowser.Controller/IO/FileData.cs
+++ b/MediaBrowser.Controller/IO/FileData.cs
@@ -3,7 +3,8 @@ using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Logging;
using System;
using System.Collections.Generic;
-using CommonIO;
+using MediaBrowser.Common.IO;
+using MediaBrowser.Model.IO;
namespace MediaBrowser.Controller.IO
{
diff --git a/MediaBrowser.Controller/IO/ThrottledStream.cs b/MediaBrowser.Controller/IO/ThrottledStream.cs
deleted file mode 100644
index 1df00b45a2..0000000000
--- a/MediaBrowser.Controller/IO/ThrottledStream.cs
+++ /dev/null
@@ -1,393 +0,0 @@
-using System;
-using System.IO;
-using System.Threading;
-using System.Threading.Tasks;
-
-namespace MediaBrowser.Controller.IO
-{
- /// <summary>
- /// Class for streaming data with throttling support.
- /// </summary>
- public class ThrottledStream : Stream
- {
- /// <summary>
- /// A constant used to specify an infinite number of bytes that can be transferred per second.
- /// </summary>
- public const long Infinite = 0;
-
- #region Private members
- /// <summary>
- /// The base stream.
- /// </summary>
- private readonly Stream _baseStream;
-
- /// <summary>
- /// The maximum bytes per second that can be transferred through the base stream.
- /// </summary>
- private long _maximumBytesPerSecond;
-
- /// <summary>
- /// The number of bytes that has been transferred since the last throttle.
- /// </summary>
- private long _byteCount;
-
- /// <summary>
- /// The start time in milliseconds of the last throttle.
- /// </summary>
- private long _start;
- #endregion
-
- #region Properties
- /// <summary>
- /// Gets the current milliseconds.
- /// </summary>
- /// <value>The current milliseconds.</value>
- protected long CurrentMilliseconds
- {
- get
- {
- return Environment.TickCount;
- }
- }
-
- /// <summary>
- /// Gets or sets the maximum bytes per second that can be transferred through the base stream.
- /// </summary>
- /// <value>The maximum bytes per second.</value>
- public long MaximumBytesPerSecond
- {
- get
- {
- return _maximumBytesPerSecond;
- }
- set
- {
- if (MaximumBytesPerSecond != value)
- {
- _maximumBytesPerSecond = value;
- Reset();
- }
- }
- }
-
- /// <summary>
- /// Gets a value indicating whether the current stream supports reading.
- /// </summary>
- /// <returns>true if the stream supports reading; otherwise, false.</returns>
- public override bool CanRead
- {
- get
- {
- return _baseStream.CanRead;
- }
- }
-
- /// <summary>
- /// Gets a value indicating whether the current stream supports seeking.
- /// </summary>
- /// <value></value>
- /// <returns>true if the stream supports seeking; otherwise, false.</returns>
- public override bool CanSeek
- {
- get
- {
- return _baseStream.CanSeek;
- }
- }
-
- /// <summary>
- /// Gets a value indicating whether the current stream supports writing.
- /// </summary>
- /// <value></value>
- /// <returns>true if the stream supports writing; otherwise, false.</returns>
- public override bool CanWrite
- {
- get
- {
- return _baseStream.CanWrite;
- }
- }
-
- /// <summary>
- /// Gets the length in bytes of the stream.
- /// </summary>
- /// <value></value>
- /// <returns>A long value representing the length of the stream in bytes.</returns>
- /// <exception cref="T:System.NotSupportedException">The base stream does not support seeking. </exception>
- /// <exception cref="T:System.ObjectDisposedException">Methods were called after the stream was closed. </exception>
- public override long Length
- {
- get
- {
- return _baseStream.Length;
- }
- }
-
- /// <summary>
- /// Gets or sets the position within the current stream.
- /// </summary>
- /// <value></value>
- /// <returns>The current position within the stream.</returns>
- /// <exception cref="T:System.IO.IOException">An I/O error occurs. </exception>
- /// <exception cref="T:System.NotSupportedException">The base stream does not support seeking. </exception>
- /// <exception cref="T:System.ObjectDisposedException">Methods were called after the stream was closed. </exception>
- public override long Position
- {
- get
- {
- return _baseStream.Position;
- }
- set
- {
- _baseStream.Position = value;
- }
- }
- #endregion
-
- public long MinThrottlePosition;
-
- #region Ctor
- /// <summary>
- /// Initializes a new instance of the <see cref="T:ThrottledStream"/> class.
- /// </summary>
- /// <param name="baseStream">The base stream.</param>
- /// <param name="maximumBytesPerSecond">The maximum bytes per second that can be transferred through the base stream.</param>
- /// <exception cref="ArgumentNullException">Thrown when <see cref="baseStream"/> is a null reference.</exception>
- /// <exception cref="ArgumentOutOfRangeException">Thrown when <see cref="maximumBytesPerSecond"/> is a negative value.</exception>
- public ThrottledStream(Stream baseStream, long maximumBytesPerSecond)
- {
- if (baseStream == null)
- {
- throw new ArgumentNullException("baseStream");
- }
-
- if (maximumBytesPerSecond < 0)
- {
- throw new ArgumentOutOfRangeException("maximumBytesPerSecond",
- maximumBytesPerSecond, "The maximum number of bytes per second can't be negative.");
- }
-
- _baseStream = baseStream;
- _maximumBytesPerSecond = maximumBytesPerSecond;
- _start = CurrentMilliseconds;
- _byteCount = 0;
- }
- #endregion
-
- #region Public methods
- /// <summary>
- /// Clears all buffers for this stream and causes any buffered data to be written to the underlying device.
- /// </summary>
- /// <exception cref="T:System.IO.IOException">An I/O error occurs.</exception>
- public override void Flush()
- {
- _baseStream.Flush();
- }
-
- /// <summary>
- /// Reads a sequence of bytes from the current stream and advances the position within the stream by the number of bytes read.
- /// </summary>
- /// <param name="buffer">An array of bytes. When this method returns, the buffer contains the specified byte array with the values between offset and (offset + count - 1) replaced by the bytes read from the current source.</param>
- /// <param name="offset">The zero-based byte offset in buffer at which to begin storing the data read from the current stream.</param>
- /// <param name="count">The maximum number of bytes to be read from the current stream.</param>
- /// <returns>
- /// The total number of bytes read into the buffer. This can be less than the number of bytes requested if that many bytes are not currently available, or zero (0) if the end of the stream has been reached.
- /// </returns>
- /// <exception cref="T:System.ArgumentException">The sum of offset and count is larger than the buffer length. </exception>
- /// <exception cref="T:System.ObjectDisposedException">Methods were called after the stream was closed. </exception>
- /// <exception cref="T:System.NotSupportedException">The base stream does not support reading. </exception>
- /// <exception cref="T:System.ArgumentNullException">buffer is null. </exception>
- /// <exception cref="T:System.IO.IOException">An I/O error occurs. </exception>
- /// <exception cref="T:System.ArgumentOutOfRangeException">offset or count is negative. </exception>
- public override int Read(byte[] buffer, int offset, int count)
- {
- Throttle(count);
-
- return _baseStream.Read(buffer, offset, count);
- }
-
- /// <summary>
- /// Sets the position within the current stream.
- /// </summary>
- /// <param name="offset">A byte offset relative to the origin parameter.</param>
- /// <param name="origin">A value of type <see cref="T:System.IO.SeekOrigin"></see> indicating the reference point used to obtain the new position.</param>
- /// <returns>
- /// The new position within the current stream.
- /// </returns>
- /// <exception cref="T:System.IO.IOException">An I/O error occurs. </exception>
- /// <exception cref="T:System.NotSupportedException">The base stream does not support seeking, such as if the stream is constructed from a pipe or console output. </exception>
- /// <exception cref="T:System.ObjectDisposedException">Methods were called after the stream was closed. </exception>
- public override long Seek(long offset, SeekOrigin origin)
- {
- return _baseStream.Seek(offset, origin);
- }
-
- /// <summary>
- /// Sets the length of the current stream.
- /// </summary>
- /// <param name="value">The desired length of the current stream in bytes.</param>
- /// <exception cref="T:System.NotSupportedException">The base stream does not support both writing and seeking, such as if the stream is constructed from a pipe or console output. </exception>
- /// <exception cref="T:System.IO.IOException">An I/O error occurs. </exception>
- /// <exception cref="T:System.ObjectDisposedException">Methods were called after the stream was closed. </exception>
- public override void SetLength(long value)
- {
- _baseStream.SetLength(value);
- }
-
- private long _bytesWritten;
-
- /// <summary>
- /// Writes a sequence of bytes to the current stream and advances the current position within this stream by the number of bytes written.
- /// </summary>
- /// <param name="buffer">An array of bytes. This method copies count bytes from buffer to the current stream.</param>
- /// <param name="offset">The zero-based byte offset in buffer at which to begin copying bytes to the current stream.</param>
- /// <param name="count">The number of bytes to be written to the current stream.</param>
- /// <exception cref="T:System.IO.IOException">An I/O error occurs. </exception>
- /// <exception cref="T:System.NotSupportedException">The base stream does not support writing. </exception>
- /// <exception cref="T:System.ObjectDisposedException">Methods were called after the stream was closed. </exception>
- /// <exception cref="T:System.ArgumentNullException">buffer is null. </exception>
- /// <exception cref="T:System.ArgumentException">The sum of offset and count is greater than the buffer length. </exception>
- /// <exception cref="T:System.ArgumentOutOfRangeException">offset or count is negative. </exception>
- public override void Write(byte[] buffer, int offset, int count)
- {
- Throttle(count);
-
- _baseStream.Write(buffer, offset, count);
-
- _bytesWritten += count;
- }
-
- public override async Task WriteAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken)
- {
- await ThrottleAsync(count, cancellationToken).ConfigureAwait(false);
-
- await _baseStream.WriteAsync(buffer, offset, count, cancellationToken).ConfigureAwait(false);
-
- _bytesWritten += count;
- }
-
- /// <summary>
- /// Returns a <see cref="T:System.String"></see> that represents the current <see cref="T:System.Object"></see>.
- /// </summary>
- /// <returns>
- /// A <see cref="T:System.String"></see> that represents the current <see cref="T:System.Object"></see>.
- /// </returns>
- public override string ToString()
- {
- return _baseStream.ToString();
- }
- #endregion
-
- private bool ThrottleCheck(int bufferSizeInBytes)
- {
- if (_bytesWritten < MinThrottlePosition)
- {
- return false;
- }
-
- // Make sure the buffer isn't empty.
- if (_maximumBytesPerSecond <= 0 || bufferSizeInBytes <= 0)
- {
- return false;
- }
-
- return true;
- }
-
- #region Protected methods
- /// <summary>
- /// Throttles for the specified buffer size in bytes.
- /// </summary>
- /// <param name="bufferSizeInBytes">The buffer size in bytes.</param>
- protected void Throttle(int bufferSizeInBytes)
- {
- if (!ThrottleCheck(bufferSizeInBytes))
- {
- return ;
- }
-
- _byteCount += bufferSizeInBytes;
- long elapsedMilliseconds = CurrentMilliseconds - _start;
-
- if (elapsedMilliseconds > 0)
- {
- // Calculate the current bps.
- long bps = _byteCount * 1000L / elapsedMilliseconds;
-
- // If the bps are more then the maximum bps, try to throttle.
- if (bps > _maximumBytesPerSecond)
- {
- // Calculate the time to sleep.
- long wakeElapsed = _byteCount * 1000L / _maximumBytesPerSecond;
- int toSleep = (int)(wakeElapsed - elapsedMilliseconds);
-
- if (toSleep > 1)
- {
- try
- {
- // The time to sleep is more then a millisecond, so sleep.
- Thread.Sleep(toSleep);
- }
- catch (ThreadAbortException)
- {
- // Eatup ThreadAbortException.
- }
-
- // A sleep has been done, reset.
- Reset();
- }
- }
- }
- }
-
- protected async Task ThrottleAsync(int bufferSizeInBytes, CancellationToken cancellationToken)
- {
- if (!ThrottleCheck(bufferSizeInBytes))
- {
- return;
- }
-
- _byteCount += bufferSizeInBytes;
- long elapsedMilliseconds = CurrentMilliseconds - _start;
-
- if (elapsedMilliseconds > 0)
- {
- // Calculate the current bps.
- long bps = _byteCount * 1000L / elapsedMilliseconds;
-
- // If the bps are more then the maximum bps, try to throttle.
- if (bps > _maximumBytesPerSecond)
- {
- // Calculate the time to sleep.
- long wakeElapsed = _byteCount * 1000L / _maximumBytesPerSecond;
- int toSleep = (int)(wakeElapsed - elapsedMilliseconds);
-
- if (toSleep > 1)
- {
- // The time to sleep is more then a millisecond, so sleep.
- await Task.Delay(toSleep, cancellationToken).ConfigureAwait(false);
-
- // A sleep has been done, reset.
- Reset();
- }
- }
- }
- }
-
- /// <summary>
- /// Will reset the bytecount to 0 and reset the start time to the current time.
- /// </summary>
- protected void Reset()
- {
- long difference = CurrentMilliseconds - _start;
-
- // Only reset counters when a known history is available of more then 1 second.
- if (difference > 1000)
- {
- _byteCount = 0;
- _start = CurrentMilliseconds;
- }
- }
- #endregion
- }
-} \ No newline at end of file
diff --git a/MediaBrowser.Controller/IServerApplicationHost.cs b/MediaBrowser.Controller/IServerApplicationHost.cs
index d6744e8043..2fd96577a8 100644
--- a/MediaBrowser.Controller/IServerApplicationHost.cs
+++ b/MediaBrowser.Controller/IServerApplicationHost.cs
@@ -4,6 +4,7 @@ using System;
using System.Collections.Generic;
using System.Net;
using System.Threading.Tasks;
+using MediaBrowser.Model.Net;
namespace MediaBrowser.Controller
{
@@ -66,7 +67,7 @@ namespace MediaBrowser.Controller
/// Gets the local ip address.
/// </summary>
/// <value>The local ip address.</value>
- Task<List<IPAddress>> GetLocalIpAddresses();
+ Task<List<IpAddressInfo>> GetLocalIpAddresses();
/// <summary>
/// Gets the local API URL.
@@ -84,9 +85,7 @@ namespace MediaBrowser.Controller
/// <summary>
/// Gets the local API URL.
/// </summary>
- /// <param name="ipAddress">The ip address.</param>
- /// <returns>System.String.</returns>
- string GetLocalApiUrl(IPAddress ipAddress);
+ string GetLocalApiUrl(string ipAddress, bool isIpv6);
void LaunchUrl(string url);
diff --git a/MediaBrowser.Controller/Library/ILibraryManager.cs b/MediaBrowser.Controller/Library/ILibraryManager.cs
index 975c596594..acdd9a0423 100644
--- a/MediaBrowser.Controller/Library/ILibraryManager.cs
+++ b/MediaBrowser.Controller/Library/ILibraryManager.cs
@@ -10,10 +10,12 @@ using System;
using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
-using CommonIO;
+using MediaBrowser.Common.IO;
using MediaBrowser.Controller.Configuration;
+using MediaBrowser.Controller.IO;
using MediaBrowser.Model.Configuration;
using MediaBrowser.Model.Dto;
+using MediaBrowser.Model.IO;
namespace MediaBrowser.Controller.Library
{
diff --git a/MediaBrowser.Controller/Library/ItemResolveArgs.cs b/MediaBrowser.Controller/Library/ItemResolveArgs.cs
index ec0ac325bc..763d27ebaf 100644
--- a/MediaBrowser.Controller/Library/ItemResolveArgs.cs
+++ b/MediaBrowser.Controller/Library/ItemResolveArgs.cs
@@ -4,9 +4,11 @@ using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
-using CommonIO;
+using MediaBrowser.Common.IO;
using MediaBrowser.Controller.Configuration;
+using MediaBrowser.Controller.IO;
using MediaBrowser.Model.Configuration;
+using MediaBrowser.Model.IO;
namespace MediaBrowser.Controller.Library
{
@@ -97,18 +99,6 @@ namespace MediaBrowser.Controller.Library
}
/// <summary>
- /// Gets a value indicating whether this instance is hidden.
- /// </summary>
- /// <value><c>true</c> if this instance is hidden; otherwise, <c>false</c>.</value>
- public bool IsHidden
- {
- get
- {
- return (FileInfo.Attributes & FileAttributes.Hidden) == FileAttributes.Hidden;
- }
- }
-
- /// <summary>
/// Gets a value indicating whether this instance is vf.
/// </summary>
/// <value><c>true</c> if this instance is vf; otherwise, <c>false</c>.</value>
diff --git a/MediaBrowser.Controller/Library/NameExtensions.cs b/MediaBrowser.Controller/Library/NameExtensions.cs
index 5f52a93c94..693b7b2217 100644
--- a/MediaBrowser.Controller/Library/NameExtensions.cs
+++ b/MediaBrowser.Controller/Library/NameExtensions.cs
@@ -1,5 +1,4 @@
-using MediaBrowser.Common.Extensions;
-using System;
+using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
@@ -10,21 +9,12 @@ namespace MediaBrowser.Controller.Library
{
public static class NameExtensions
{
- public static bool AreEqual(string x, string y)
- {
- if (string.IsNullOrWhiteSpace(x) && string.IsNullOrWhiteSpace(y))
- {
- return true;
- }
-
- return string.Compare(x, y, CultureInfo.InvariantCulture, CompareOptions.IgnoreCase | CompareOptions.IgnoreNonSpace) == 0;
- }
-
public static bool EqualsAny(IEnumerable<string> names, string x)
{
x = NormalizeForComparison(x);
- return names.Any(y => string.Compare(x, y, CultureInfo.InvariantCulture, CompareOptions.IgnoreCase | CompareOptions.IgnoreNonSpace) == 0);
+ return names.Any(y => string.Compare(x, y, StringComparison.OrdinalIgnoreCase) == 0);
+ //return names.Any(y => string.Compare(x, y, CultureInfo.InvariantCulture, CompareOptions.IgnoreCase | CompareOptions.IgnoreNonSpace) == 0);
}
private static string NormalizeForComparison(string name)
diff --git a/MediaBrowser.Controller/LiveTv/LiveTvAudioRecording.cs b/MediaBrowser.Controller/LiveTv/LiveTvAudioRecording.cs
index de5ffcd588..88e5b28026 100644
--- a/MediaBrowser.Controller/LiveTv/LiveTvAudioRecording.cs
+++ b/MediaBrowser.Controller/LiveTv/LiveTvAudioRecording.cs
@@ -7,7 +7,7 @@ using MediaBrowser.Model.LiveTv;
using System;
using System.Collections.Generic;
using System.Linq;
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
using System.Threading.Tasks;
using MediaBrowser.Controller.Library;
diff --git a/MediaBrowser.Controller/LiveTv/LiveTvChannel.cs b/MediaBrowser.Controller/LiveTv/LiveTvChannel.cs
index 5e99d6fa3f..f568ae6ae6 100644
--- a/MediaBrowser.Controller/LiveTv/LiveTvChannel.cs
+++ b/MediaBrowser.Controller/LiveTv/LiveTvChannel.cs
@@ -6,7 +6,7 @@ using MediaBrowser.Model.LiveTv;
using MediaBrowser.Model.MediaInfo;
using System.Collections.Generic;
using System.Globalization;
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.LiveTv
{
diff --git a/MediaBrowser.Controller/LiveTv/LiveTvProgram.cs b/MediaBrowser.Controller/LiveTv/LiveTvProgram.cs
index c7f47b825b..fd9507afa0 100644
--- a/MediaBrowser.Controller/LiveTv/LiveTvProgram.cs
+++ b/MediaBrowser.Controller/LiveTv/LiveTvProgram.cs
@@ -4,9 +4,9 @@ using MediaBrowser.Model.Configuration;
using MediaBrowser.Model.LiveTv;
using System;
using System.Collections.Generic;
-using System.Runtime.Serialization;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Providers;
+using MediaBrowser.Model.Serialization;
namespace MediaBrowser.Controller.LiveTv
{
diff --git a/MediaBrowser.Controller/LiveTv/LiveTvVideoRecording.cs b/MediaBrowser.Controller/LiveTv/LiveTvVideoRecording.cs
index 2c0ced0e6c..18894120a8 100644
--- a/MediaBrowser.Controller/LiveTv/LiveTvVideoRecording.cs
+++ b/MediaBrowser.Controller/LiveTv/LiveTvVideoRecording.cs
@@ -6,7 +6,7 @@ using MediaBrowser.Model.LiveTv;
using System;
using System.Collections.Generic;
using System.Linq;
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
using System.Threading.Tasks;
using MediaBrowser.Controller.Library;
diff --git a/MediaBrowser.Controller/LiveTv/RecordingGroup.cs b/MediaBrowser.Controller/LiveTv/RecordingGroup.cs
index 5c86de08b8..8093b5a768 100644
--- a/MediaBrowser.Controller/LiveTv/RecordingGroup.cs
+++ b/MediaBrowser.Controller/LiveTv/RecordingGroup.cs
@@ -1,4 +1,4 @@
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Model.Configuration;
using MediaBrowser.Model.Users;
diff --git a/MediaBrowser.Controller/Localization/ILocalizationManager.cs b/MediaBrowser.Controller/Localization/ILocalizationManager.cs
deleted file mode 100644
index 5742d235cd..0000000000
--- a/MediaBrowser.Controller/Localization/ILocalizationManager.cs
+++ /dev/null
@@ -1,55 +0,0 @@
-using MediaBrowser.Model.Entities;
-using MediaBrowser.Model.Globalization;
-using System.Collections.Generic;
-
-namespace MediaBrowser.Controller.Localization
-{
- /// <summary>
- /// Interface ILocalizationManager
- /// </summary>
- public interface ILocalizationManager
- {
- /// <summary>
- /// Gets the cultures.
- /// </summary>
- /// <returns>IEnumerable{CultureDto}.</returns>
- IEnumerable<CultureDto> GetCultures();
- /// <summary>
- /// Gets the countries.
- /// </summary>
- /// <returns>IEnumerable{CountryInfo}.</returns>
- IEnumerable<CountryInfo> GetCountries();
- /// <summary>
- /// Gets the parental ratings.
- /// </summary>
- /// <returns>IEnumerable{ParentalRating}.</returns>
- IEnumerable<ParentalRating> GetParentalRatings();
- /// <summary>
- /// Gets the rating level.
- /// </summary>
- /// <param name="rating">The rating.</param>
- /// <returns>System.Int32.</returns>
- int? GetRatingLevel(string rating);
-
- /// <summary>
- /// Gets the localized string.
- /// </summary>
- /// <param name="phrase">The phrase.</param>
- /// <param name="culture">The culture.</param>
- /// <returns>System.String.</returns>
- string GetLocalizedString(string phrase, string culture);
-
- /// <summary>
- /// Gets the localized string.
- /// </summary>
- /// <param name="phrase">The phrase.</param>
- /// <returns>System.String.</returns>
- string GetLocalizedString(string phrase);
-
- /// <summary>
- /// Gets the localization options.
- /// </summary>
- /// <returns>IEnumerable{LocalizatonOption}.</returns>
- IEnumerable<LocalizatonOption> GetLocalizationOptions();
- }
-}
diff --git a/MediaBrowser.Controller/MediaBrowser.Controller.csproj b/MediaBrowser.Controller/MediaBrowser.Controller.csproj
index 670b08a3fa..cf20f7bbb9 100644
--- a/MediaBrowser.Controller/MediaBrowser.Controller.csproj
+++ b/MediaBrowser.Controller/MediaBrowser.Controller.csproj
@@ -11,10 +11,9 @@
<AssemblyName>MediaBrowser.Controller</AssemblyName>
<FileAlignment>512</FileAlignment>
<SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
- <TargetFrameworkVersion>v4.6</TargetFrameworkVersion>
- <ReleaseVersion>
- </ReleaseVersion>
- <TargetFrameworkProfile />
+ <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <TargetFrameworkProfile>Profile7</TargetFrameworkProfile>
+ <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
@@ -45,34 +44,21 @@
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
- <Reference Include="CommonIO, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
- <SpecificVersion>False</SpecificVersion>
- <HintPath>..\packages\CommonIO.1.0.0.9\lib\net45\CommonIO.dll</HintPath>
- </Reference>
+ <None Include="project.json" />
+ <!-- A reference to the entire .NET Framework is automatically included -->
+ </ItemGroup>
+ <ItemGroup>
<Reference Include="Interfaces.IO">
<HintPath>..\packages\Interfaces.IO.1.0.0.5\lib\portable-net45+sl4+wp71+win8+wpa81\Interfaces.IO.dll</HintPath>
</Reference>
<Reference Include="Patterns.Logging">
<HintPath>..\packages\Patterns.Logging.1.0.0.2\lib\portable-net45+sl4+wp71+win8+wpa81\Patterns.Logging.dll</HintPath>
</Reference>
- <Reference Include="System" />
- <Reference Include="System.Core" />
- <Reference Include="System.Data" />
- <Reference Include="System.Net" />
- <Reference Include="System.Runtime.Serialization" />
- <Reference Include="Microsoft.CSharp" />
- <Reference Include="System.Xml" />
- <Reference Include="System.Xml.Linq" />
- <Reference Include="ServiceStack.Interfaces">
- <HintPath>..\ThirdParty\ServiceStack\ServiceStack.Interfaces.dll</HintPath>
- </Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="..\SharedVersion.cs">
<Link>Properties\SharedVersion.cs</Link>
</Compile>
- <Compile Include="Activity\IActivityManager.cs" />
- <Compile Include="Activity\IActivityRepository.cs" />
<Compile Include="Channels\ChannelItemInfo.cs" />
<Compile Include="Channels\ChannelItemResult.cs" />
<Compile Include="Channels\ChannelItemType.cs" />
@@ -110,7 +96,6 @@
<Compile Include="Dlna\IEventManager.cs" />
<Compile Include="Dlna\IMediaReceiverRegistrar.cs" />
<Compile Include="Dlna\IUpnpService.cs" />
- <Compile Include="Dlna\SsdpMessageEventArgs.cs" />
<Compile Include="Drawing\IImageProcessor.cs" />
<Compile Include="Drawing\ImageCollageOptions.cs" />
<Compile Include="Drawing\ImageProcessingOptions.cs" />
@@ -167,7 +152,6 @@
<Compile Include="Entities\UserViewBuilder.cs" />
<Compile Include="Extensions\StringExtensions.cs" />
<Compile Include="FileOrganization\IFileOrganizationService.cs" />
- <Compile Include="IO\ThrottledStream.cs" />
<Compile Include="Library\DeleteOptions.cs" />
<Compile Include="Library\ILibraryPostScanTask.cs" />
<Compile Include="Library\IMediaSourceManager.cs" />
@@ -207,7 +191,6 @@
<Compile Include="LiveTv\TimerEventInfo.cs" />
<Compile Include="LiveTv\TimerInfo.cs" />
<Compile Include="LiveTv\TunerChannelMapping.cs" />
- <Compile Include="Localization\ILocalizationManager.cs" />
<Compile Include="MediaEncoding\ChapterImageRefreshOptions.cs" />
<Compile Include="MediaEncoding\EncodingJobOptions.cs" />
<Compile Include="MediaEncoding\IEncodingManager.cs" />
@@ -218,16 +201,13 @@
<Compile Include="MediaEncoding\MediaStreamSelector.cs" />
<Compile Include="Net\AuthenticatedAttribute.cs" />
<Compile Include="Net\AuthorizationInfo.cs" />
- <Compile Include="Net\BasePeriodicWebSocketListener.cs" />
<Compile Include="Net\IAuthorizationContext.cs" />
<Compile Include="Net\IAuthService.cs" />
<Compile Include="Net\IHasAuthorization.cs" />
- <Compile Include="Net\IAsyncStreamSource.cs" />
<Compile Include="Net\IHasResultFactory.cs" />
<Compile Include="Net\IHasSession.cs" />
<Compile Include="Net\IHttpResultFactory.cs" />
<Compile Include="Net\IHttpServer.cs" />
- <Compile Include="Net\IRestfulService.cs" />
<Compile Include="Net\IServerManager.cs" />
<Compile Include="Net\IServiceRequest.cs" />
<Compile Include="Net\ISessionContext.cs" />
@@ -236,11 +216,10 @@
<Compile Include="Net\IWebSocketListener.cs" />
<Compile Include="Net\LoggedAttribute.cs" />
<Compile Include="Net\SecurityException.cs" />
- <Compile Include="Net\ServiceStackServiceRequest.cs" />
+ <Compile Include="Net\ServiceRequest.cs" />
<Compile Include="Net\StaticResultOptions.cs" />
<Compile Include="Net\WebSocketConnectEventArgs.cs" />
<Compile Include="Net\WebSocketMessageInfo.cs" />
- <Compile Include="News\INewsService.cs" />
<Compile Include="Notifications\INotificationManager.cs" />
<Compile Include="Notifications\INotificationService.cs" />
<Compile Include="Notifications\INotificationsRepository.cs" />
@@ -307,7 +286,6 @@
<Compile Include="Security\IAuthenticationRepository.cs" />
<Compile Include="Security\IEncryptionManager.cs" />
<Compile Include="Session\AuthenticationRequest.cs" />
- <Compile Include="Social\ISharingManager.cs" />
<Compile Include="Sorting\SortHelper.cs" />
<Compile Include="Subtitles\ISubtitleManager.cs" />
<Compile Include="Subtitles\ISubtitleProvider.cs" />
@@ -375,7 +353,6 @@
<Compile Include="Session\SessionInfo.cs" />
<Compile Include="Sorting\IBaseItemComparer.cs" />
<Compile Include="Sorting\IUserBaseItemComparer.cs" />
- <Compile Include="Providers\BaseItemXmlParser.cs" />
<Compile Include="Sorting\SortExtensions.cs" />
<Compile Include="Subtitles\SubtitleDownloadEventArgs.cs" />
<Compile Include="Subtitles\SubtitleResponse.cs" />
@@ -389,7 +366,6 @@
<Compile Include="Sync\ISyncRepository.cs" />
<Compile Include="Sync\SyncedFileInfo.cs" />
<Compile Include="Sync\SyncedItemProgress.cs" />
- <Compile Include="Threading\PeriodicTimer.cs" />
<Compile Include="TV\ITVSeriesManager.cs" />
</ItemGroup>
<ItemGroup>
@@ -405,7 +381,7 @@
<ItemGroup>
<None Include="packages.config" />
</ItemGroup>
- <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+ <Import Project="$(MSBuildExtensionsPath32)\Microsoft\Portable\$(TargetFrameworkVersion)\Microsoft.Portable.CSharp.targets" />
<PropertyGroup>
<PostBuildEvent />
</PropertyGroup>
diff --git a/MediaBrowser.Controller/MediaBrowser.Controller.nuget.targets b/MediaBrowser.Controller/MediaBrowser.Controller.nuget.targets
new file mode 100644
index 0000000000..e69ce0e64f
--- /dev/null
+++ b/MediaBrowser.Controller/MediaBrowser.Controller.nuget.targets
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>
+<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <Target Name="EmitMSBuildWarning" BeforeTargets="Build">
+ <Warning Text="Packages containing MSBuild targets and props files cannot be fully installed in projects targeting multiple frameworks. The MSBuild targets and props files have been ignored." />
+ </Target>
+</Project> \ No newline at end of file
diff --git a/MediaBrowser.Controller/MediaEncoding/MediaEncoderHelpers.cs b/MediaBrowser.Controller/MediaEncoding/MediaEncoderHelpers.cs
index 96a3753e19..0b1ca08e51 100644
--- a/MediaBrowser.Controller/MediaEncoding/MediaEncoderHelpers.cs
+++ b/MediaBrowser.Controller/MediaEncoding/MediaEncoderHelpers.cs
@@ -4,7 +4,8 @@ using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
-using CommonIO;
+using MediaBrowser.Common.IO;
+using MediaBrowser.Controller.IO;
namespace MediaBrowser.Controller.MediaEncoding
{
diff --git a/MediaBrowser.Controller/Net/AuthenticatedAttribute.cs b/MediaBrowser.Controller/Net/AuthenticatedAttribute.cs
index b1bab79c5c..d45416f53f 100644
--- a/MediaBrowser.Controller/Net/AuthenticatedAttribute.cs
+++ b/MediaBrowser.Controller/Net/AuthenticatedAttribute.cs
@@ -1,7 +1,7 @@
-using ServiceStack.Web;
-using System;
+using System;
using System.Collections.Generic;
using System.Linq;
+using MediaBrowser.Model.Services;
namespace MediaBrowser.Controller.Net
{
@@ -35,7 +35,7 @@ namespace MediaBrowser.Controller.Net
/// <param name="requestDto">The request DTO</param>
public void RequestFilter(IRequest request, IResponse response, object requestDto)
{
- var serviceRequest = new ServiceStackServiceRequest(request);
+ var serviceRequest = new ServiceRequest(request);
AuthService.Authenticate(serviceRequest, this);
}
diff --git a/MediaBrowser.Controller/Net/BasePeriodicWebSocketListener.cs b/MediaBrowser.Controller/Net/BasePeriodicWebSocketListener.cs
deleted file mode 100644
index be177cb02c..0000000000
--- a/MediaBrowser.Controller/Net/BasePeriodicWebSocketListener.cs
+++ /dev/null
@@ -1,341 +0,0 @@
-using MediaBrowser.Model.Logging;
-using MediaBrowser.Model.Net;
-using System;
-using System.Collections.Generic;
-using System.Globalization;
-using System.Linq;
-using System.Threading;
-using System.Threading.Tasks;
-
-namespace MediaBrowser.Controller.Net
-{
- /// <summary>
- /// Starts sending data over a web socket periodically when a message is received, and then stops when a corresponding stop message is received
- /// </summary>
- /// <typeparam name="TReturnDataType">The type of the T return data type.</typeparam>
- /// <typeparam name="TStateType">The type of the T state type.</typeparam>
- public abstract class BasePeriodicWebSocketListener<TReturnDataType, TStateType> : IWebSocketListener, IDisposable
- where TStateType : WebSocketListenerState, new()
- where TReturnDataType : class
- {
- /// <summary>
- /// The _active connections
- /// </summary>
- protected readonly List<Tuple<IWebSocketConnection, CancellationTokenSource, Timer, TStateType, SemaphoreSlim>> ActiveConnections =
- new List<Tuple<IWebSocketConnection, CancellationTokenSource, Timer, TStateType, SemaphoreSlim>>();
-
- /// <summary>
- /// Gets the name.
- /// </summary>
- /// <value>The name.</value>
- protected abstract string Name { get; }
-
- /// <summary>
- /// Gets the data to send.
- /// </summary>
- /// <param name="state">The state.</param>
- /// <returns>Task{`1}.</returns>
- protected abstract Task<TReturnDataType> GetDataToSend(TStateType state);
-
- /// <summary>
- /// The logger
- /// </summary>
- protected ILogger Logger;
-
- /// <summary>
- /// Initializes a new instance of the <see cref="BasePeriodicWebSocketListener{TStateType}" /> class.
- /// </summary>
- /// <param name="logger">The logger.</param>
- /// <exception cref="System.ArgumentNullException">logger</exception>
- protected BasePeriodicWebSocketListener(ILogger logger)
- {
- if (logger == null)
- {
- throw new ArgumentNullException("logger");
- }
-
- Logger = logger;
- }
-
- /// <summary>
- /// The null task result
- /// </summary>
- protected Task NullTaskResult = Task.FromResult(true);
-
- /// <summary>
- /// Processes the message.
- /// </summary>
- /// <param name="message">The message.</param>
- /// <returns>Task.</returns>
- public Task ProcessMessage(WebSocketMessageInfo message)
- {
- if (message == null)
- {
- throw new ArgumentNullException("message");
- }
-
- if (string.Equals(message.MessageType, Name + "Start", StringComparison.OrdinalIgnoreCase))
- {
- Start(message);
- }
-
- if (string.Equals(message.MessageType, Name + "Stop", StringComparison.OrdinalIgnoreCase))
- {
- Stop(message);
- }
-
- return NullTaskResult;
- }
-
- protected readonly CultureInfo UsCulture = new CultureInfo("en-US");
-
- protected virtual bool SendOnTimer
- {
- get
- {
- return true;
- }
- }
-
- protected virtual void ParseMessageParams(string[] values)
- {
-
- }
-
- /// <summary>
- /// Starts sending messages over a web socket
- /// </summary>
- /// <param name="message">The message.</param>
- private void Start(WebSocketMessageInfo message)
- {
- var vals = message.Data.Split(',');
-
- var dueTimeMs = long.Parse(vals[0], UsCulture);
- var periodMs = long.Parse(vals[1], UsCulture);
-
- if (vals.Length > 2)
- {
- ParseMessageParams(vals.Skip(2).ToArray());
- }
-
- var cancellationTokenSource = new CancellationTokenSource();
-
- Logger.Debug("{1} Begin transmitting over websocket to {0}", message.Connection.RemoteEndPoint, GetType().Name);
-
- var timer = SendOnTimer ?
- new Timer(TimerCallback, message.Connection, Timeout.Infinite, Timeout.Infinite) :
- null;
-
- var state = new TStateType
- {
- IntervalMs = periodMs,
- InitialDelayMs = dueTimeMs
- };
-
- var semaphore = new SemaphoreSlim(1, 1);
-
- lock (ActiveConnections)
- {
- ActiveConnections.Add(new Tuple<IWebSocketConnection, CancellationTokenSource, Timer, TStateType, SemaphoreSlim>(message.Connection, cancellationTokenSource, timer, state, semaphore));
- }
-
- if (timer != null)
- {
- timer.Change(TimeSpan.FromMilliseconds(dueTimeMs), TimeSpan.FromMilliseconds(periodMs));
- }
- }
-
- /// <summary>
- /// Timers the callback.
- /// </summary>
- /// <param name="state">The state.</param>
- private void TimerCallback(object state)
- {
- var connection = (IWebSocketConnection)state;
-
- Tuple<IWebSocketConnection, CancellationTokenSource, Timer, TStateType, SemaphoreSlim> tuple;
-
- lock (ActiveConnections)
- {
- tuple = ActiveConnections.FirstOrDefault(c => c.Item1 == connection);
- }
-
- if (tuple == null)
- {
- return;
- }
-
- if (connection.State != WebSocketState.Open || tuple.Item2.IsCancellationRequested)
- {
- DisposeConnection(tuple);
- return;
- }
-
- SendData(tuple);
- }
-
- protected void SendData(bool force)
- {
- List<Tuple<IWebSocketConnection, CancellationTokenSource, Timer, TStateType, SemaphoreSlim>> tuples;
-
- lock (ActiveConnections)
- {
- tuples = ActiveConnections
- .Where(c =>
- {
- if (c.Item1.State == WebSocketState.Open && !c.Item2.IsCancellationRequested)
- {
- var state = c.Item4;
-
- if (force || (DateTime.UtcNow - state.DateLastSendUtc).TotalMilliseconds >= state.IntervalMs)
- {
- return true;
- }
- }
-
- return false;
- })
- .ToList();
- }
-
- foreach (var tuple in tuples)
- {
- SendData(tuple);
- }
- }
-
- private async void SendData(Tuple<IWebSocketConnection, CancellationTokenSource, Timer, TStateType, SemaphoreSlim> tuple)
- {
- var connection = tuple.Item1;
-
- try
- {
- await tuple.Item5.WaitAsync(tuple.Item2.Token).ConfigureAwait(false);
-
- var state = tuple.Item4;
-
- var data = await GetDataToSend(state).ConfigureAwait(false);
-
- if (data != null)
- {
- await connection.SendAsync(new WebSocketMessage<TReturnDataType>
- {
- MessageType = Name,
- Data = data
-
- }, tuple.Item2.Token).ConfigureAwait(false);
-
- state.DateLastSendUtc = DateTime.UtcNow;
- }
-
- tuple.Item5.Release();
- }
- catch (OperationCanceledException)
- {
- if (tuple.Item2.IsCancellationRequested)
- {
- DisposeConnection(tuple);
- }
- }
- catch (Exception ex)
- {
- Logger.ErrorException("Error sending web socket message {0}", ex, Name);
- DisposeConnection(tuple);
- }
- }
-
- /// <summary>
- /// Stops sending messages over a web socket
- /// </summary>
- /// <param name="message">The message.</param>
- private void Stop(WebSocketMessageInfo message)
- {
- lock (ActiveConnections)
- {
- var connection = ActiveConnections.FirstOrDefault(c => c.Item1 == message.Connection);
-
- if (connection != null)
- {
- DisposeConnection(connection);
- }
- }
- }
-
- /// <summary>
- /// Disposes the connection.
- /// </summary>
- /// <param name="connection">The connection.</param>
- private void DisposeConnection(Tuple<IWebSocketConnection, CancellationTokenSource, Timer, TStateType, SemaphoreSlim> connection)
- {
- Logger.Debug("{1} stop transmitting over websocket to {0}", connection.Item1.RemoteEndPoint, GetType().Name);
-
- var timer = connection.Item3;
-
- if (timer != null)
- {
- try
- {
- timer.Dispose();
- }
- catch (ObjectDisposedException)
- {
-
- }
- }
-
- try
- {
- connection.Item2.Cancel();
- connection.Item2.Dispose();
- }
- catch (ObjectDisposedException)
- {
-
- }
-
- try
- {
- connection.Item5.Dispose();
- }
- catch (ObjectDisposedException)
- {
-
- }
-
- ActiveConnections.Remove(connection);
- }
-
- /// <summary>
- /// Releases unmanaged and - optionally - managed resources.
- /// </summary>
- /// <param name="dispose"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
- protected virtual void Dispose(bool dispose)
- {
- if (dispose)
- {
- lock (ActiveConnections)
- {
- foreach (var connection in ActiveConnections.ToList())
- {
- DisposeConnection(connection);
- }
- }
- }
- }
-
- /// <summary>
- /// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
- /// </summary>
- public void Dispose()
- {
- Dispose(true);
- }
- }
-
- public class WebSocketListenerState
- {
- public DateTime DateLastSendUtc { get; set; }
- public long InitialDelayMs { get; set; }
- public long IntervalMs { get; set; }
- }
-}
diff --git a/MediaBrowser.Controller/Net/IAsyncStreamSource.cs b/MediaBrowser.Controller/Net/IAsyncStreamSource.cs
deleted file mode 100644
index 0f41f60a55..0000000000
--- a/MediaBrowser.Controller/Net/IAsyncStreamSource.cs
+++ /dev/null
@@ -1,18 +0,0 @@
-using ServiceStack.Web;
-using System.IO;
-using System.Threading.Tasks;
-
-namespace MediaBrowser.Controller.Net
-{
- /// <summary>
- /// Interface IAsyncStreamSource
- /// Enables asynchronous writing to http resonse streams
- /// </summary>
- public interface IAsyncStreamSource
- {
- /// <summary>
- /// Asynchronously write to the response stream.
- /// </summary>
- Task WriteToAsync(Stream responseStream);
- }
-}
diff --git a/MediaBrowser.Controller/Net/IHasResultFactory.cs b/MediaBrowser.Controller/Net/IHasResultFactory.cs
index 3988b8d615..03144e4b88 100644
--- a/MediaBrowser.Controller/Net/IHasResultFactory.cs
+++ b/MediaBrowser.Controller/Net/IHasResultFactory.cs
@@ -1,4 +1,4 @@
-using ServiceStack.Web;
+using MediaBrowser.Model.Services;
namespace MediaBrowser.Controller.Net
{
diff --git a/MediaBrowser.Controller/Net/IHttpResultFactory.cs b/MediaBrowser.Controller/Net/IHttpResultFactory.cs
index ca453840fe..9f295c71d8 100644
--- a/MediaBrowser.Controller/Net/IHttpResultFactory.cs
+++ b/MediaBrowser.Controller/Net/IHttpResultFactory.cs
@@ -1,8 +1,10 @@
-using ServiceStack.Web;
-using System;
+using System;
using System.Collections.Generic;
using System.IO;
using System.Threading.Tasks;
+using MediaBrowser.Common.IO;
+using MediaBrowser.Model.IO;
+using MediaBrowser.Model.Services;
namespace MediaBrowser.Controller.Net
{
@@ -20,8 +22,6 @@ namespace MediaBrowser.Controller.Net
/// <returns>System.Object.</returns>
object GetResult(object content, string contentType, IDictionary<string,string> responseHeaders = null);
- object GetAsyncStreamWriter(IAsyncStreamSource streamSource);
-
/// <summary>
/// Gets the optimized result.
/// </summary>
@@ -97,7 +97,7 @@ namespace MediaBrowser.Controller.Net
/// <param name="path">The path.</param>
/// <param name="fileShare">The file share.</param>
/// <returns>System.Object.</returns>
- Task<object> GetStaticFileResult(IRequest requestContext, string path, FileShare fileShare = FileShare.Read);
+ Task<object> GetStaticFileResult(IRequest requestContext, string path, FileShareMode fileShare = FileShareMode.Read);
/// <summary>
/// Gets the static file result.
diff --git a/MediaBrowser.Controller/Net/IHttpServer.cs b/MediaBrowser.Controller/Net/IHttpServer.cs
index 97c5dd31b6..8c503c199b 100644
--- a/MediaBrowser.Controller/Net/IHttpServer.cs
+++ b/MediaBrowser.Controller/Net/IHttpServer.cs
@@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
+using MediaBrowser.Model.Services;
namespace MediaBrowser.Controller.Net
{
@@ -46,7 +47,7 @@ namespace MediaBrowser.Controller.Net
/// <summary>
/// Inits this instance.
/// </summary>
- void Init(IEnumerable<IRestfulService> services);
+ void Init(IEnumerable<IService> services);
/// <summary>
/// If set, all requests will respond with this message
diff --git a/MediaBrowser.Controller/Net/IRestfulService.cs b/MediaBrowser.Controller/Net/IRestfulService.cs
deleted file mode 100644
index 7d07bb0941..0000000000
--- a/MediaBrowser.Controller/Net/IRestfulService.cs
+++ /dev/null
@@ -1,12 +0,0 @@
-using ServiceStack;
-
-namespace MediaBrowser.Controller.Net
-{
- /// <summary>
- /// Interface IRestfulService
- /// </summary>
- [Logged]
- public interface IRestfulService : IService
- {
- }
-}
diff --git a/MediaBrowser.Controller/Net/IServiceRequest.cs b/MediaBrowser.Controller/Net/IServiceRequest.cs
index e48247362b..ebc7e8d65d 100644
--- a/MediaBrowser.Controller/Net/IServiceRequest.cs
+++ b/MediaBrowser.Controller/Net/IServiceRequest.cs
@@ -1,14 +1,13 @@
using System.Collections.Generic;
-using System.Collections.Specialized;
+using MediaBrowser.Model.Services;
namespace MediaBrowser.Controller.Net
{
public interface IServiceRequest
{
- object OriginalRequest { get; }
string RemoteIp { get; }
- NameValueCollection Headers { get; }
- NameValueCollection QueryString { get; }
+ QueryParamCollection Headers { get; }
+ QueryParamCollection QueryString { get; }
IDictionary<string,object> Items { get; }
void AddResponseHeader(string name, string value);
}
diff --git a/MediaBrowser.Controller/Net/IWebSocketConnection.cs b/MediaBrowser.Controller/Net/IWebSocketConnection.cs
index e21df3c395..dad2388914 100644
--- a/MediaBrowser.Controller/Net/IWebSocketConnection.cs
+++ b/MediaBrowser.Controller/Net/IWebSocketConnection.cs
@@ -1,8 +1,8 @@
using MediaBrowser.Model.Net;
using System;
-using System.Collections.Specialized;
using System.Threading;
using System.Threading.Tasks;
+using MediaBrowser.Model.Services;
namespace MediaBrowser.Controller.Net
{
@@ -34,7 +34,7 @@ namespace MediaBrowser.Controller.Net
/// Gets or sets the query string.
/// </summary>
/// <value>The query string.</value>
- NameValueCollection QueryString { get; set; }
+ QueryParamCollection QueryString { get; set; }
/// <summary>
/// Gets or sets the receive action.
diff --git a/MediaBrowser.Controller/Net/LoggedAttribute.cs b/MediaBrowser.Controller/Net/LoggedAttribute.cs
index d56a015a86..6a2a5e2e3b 100644
--- a/MediaBrowser.Controller/Net/LoggedAttribute.cs
+++ b/MediaBrowser.Controller/Net/LoggedAttribute.cs
@@ -2,17 +2,25 @@
using MediaBrowser.Controller.Library;
using MediaBrowser.Controller.Session;
using MediaBrowser.Model.Logging;
-using ServiceStack.Web;
using System;
+using MediaBrowser.Model.Services;
namespace MediaBrowser.Controller.Net
{
- public class LoggedAttribute : Attribute, IHasRequestFilter
+ public class LoggedAttribute : IRequestFilter
{
- public ILogger Logger { get; set; }
- public IUserManager UserManager { get; set; }
- public ISessionManager SessionManager { get; set; }
- public IAuthorizationContext AuthorizationContext { get; set; }
+ public LoggedAttribute(ILogger logger, IUserManager userManager, ISessionManager sessionManager, IAuthorizationContext authorizationContext)
+ {
+ Logger = logger;
+ UserManager = userManager;
+ SessionManager = sessionManager;
+ AuthorizationContext = authorizationContext;
+ }
+
+ public ILogger Logger { get; private set; }
+ public IUserManager UserManager { get; private set; }
+ public ISessionManager SessionManager { get; private set; }
+ public IAuthorizationContext AuthorizationContext { get; private set; }
/// <summary>
/// The request filter is executed before the service.
@@ -20,9 +28,9 @@ namespace MediaBrowser.Controller.Net
/// <param name="request">The http request wrapper</param>
/// <param name="response">The http response wrapper</param>
/// <param name="requestDto">The request DTO</param>
- public void RequestFilter(IRequest request, IResponse response, object requestDto)
+ public void Filter(IRequest request, IResponse response, object requestDto)
{
- var serviceRequest = new ServiceStackServiceRequest(request);
+ var serviceRequest = new ServiceRequest(request);
//This code is executed before the service
var auth = AuthorizationContext.GetAuthorizationInfo(serviceRequest);
@@ -51,25 +59,5 @@ namespace MediaBrowser.Controller.Net
}
}
}
-
- /// <summary>
- /// A new shallow copy of this filter is used on every request.
- /// </summary>
- /// <returns>IHasRequestFilter.</returns>
- public IHasRequestFilter Copy()
- {
- return this;
- }
-
- /// <summary>
- /// Order in which Request Filters are executed.
- /// &lt;0 Executed before global request filters
- /// &gt;0 Executed after global request filters
- /// </summary>
- /// <value>The priority.</value>
- public int Priority
- {
- get { return 0; }
- }
}
}
diff --git a/MediaBrowser.Controller/Net/ServiceRequest.cs b/MediaBrowser.Controller/Net/ServiceRequest.cs
new file mode 100644
index 0000000000..1f72d0eb29
--- /dev/null
+++ b/MediaBrowser.Controller/Net/ServiceRequest.cs
@@ -0,0 +1,42 @@
+using System;
+using System.Collections.Generic;
+using System.Collections.Specialized;
+using MediaBrowser.Model.Services;
+
+namespace MediaBrowser.Controller.Net
+{
+ public class ServiceRequest : IServiceRequest
+ {
+ private readonly IRequest _request;
+
+ public ServiceRequest(IRequest request)
+ {
+ _request = request;
+ }
+
+ public string RemoteIp
+ {
+ get { return _request.RemoteIp; }
+ }
+
+ public QueryParamCollection Headers
+ {
+ get { return _request.Headers; }
+ }
+
+ public QueryParamCollection QueryString
+ {
+ get { return _request.QueryString; }
+ }
+
+ public IDictionary<string, object> Items
+ {
+ get { return _request.Items; }
+ }
+
+ public void AddResponseHeader(string name, string value)
+ {
+ _request.Response.AddHeader(name, value);
+ }
+ }
+}
diff --git a/MediaBrowser.Controller/Net/ServiceStackServiceRequest.cs b/MediaBrowser.Controller/Net/ServiceStackServiceRequest.cs
deleted file mode 100644
index a33e9c1c6e..0000000000
--- a/MediaBrowser.Controller/Net/ServiceStackServiceRequest.cs
+++ /dev/null
@@ -1,62 +0,0 @@
-using ServiceStack.Web;
-using System;
-using System.Collections.Generic;
-using System.Collections.Specialized;
-
-namespace MediaBrowser.Controller.Net
-{
- public class ServiceStackServiceRequest : IServiceRequest
- {
- private readonly IRequest _request;
-
- public ServiceStackServiceRequest(IRequest request)
- {
- _request = request;
- }
-
- public object OriginalRequest
- {
- get { return _request; }
- }
-
- public string RemoteIp
- {
- get { return _request.RemoteIp; }
- }
-
- private NameValueCollection _headers;
- public NameValueCollection Headers
- {
- get { return _headers ?? (_headers = Get(_request.Headers)); }
- }
-
- private NameValueCollection _query;
- public NameValueCollection QueryString
- {
- get { return _query ?? (_query = Get(_request.QueryString)); }
- }
-
- private NameValueCollection Get(INameValueCollection coll)
- {
- var nv = new NameValueCollection(StringComparer.OrdinalIgnoreCase);
-
- foreach (var key in coll.AllKeys)
- {
- nv[key] = coll[key];
- }
-
- return nv;
- //return coll.ToNameValueCollection();
- }
-
- public IDictionary<string, object> Items
- {
- get { return _request.Items; }
- }
-
- public void AddResponseHeader(string name, string value)
- {
- _request.Response.AddHeader(name, value);
- }
- }
-}
diff --git a/MediaBrowser.Controller/Net/StaticResultOptions.cs b/MediaBrowser.Controller/Net/StaticResultOptions.cs
index b5efc1b8fb..272fa8b3ba 100644
--- a/MediaBrowser.Controller/Net/StaticResultOptions.cs
+++ b/MediaBrowser.Controller/Net/StaticResultOptions.cs
@@ -2,6 +2,8 @@
using System.Collections.Generic;
using System.IO;
using System.Threading.Tasks;
+using MediaBrowser.Common.IO;
+using MediaBrowser.Model.IO;
namespace MediaBrowser.Controller.Net
{
@@ -31,11 +33,11 @@ namespace MediaBrowser.Controller.Net
{
public string Path { get; set; }
- public FileShare FileShare { get; set; }
+ public FileShareMode FileShare { get; set; }
public StaticFileResultOptions()
{
- FileShare = FileShare.Read;
+ FileShare = FileShareMode.Read;
}
}
}
diff --git a/MediaBrowser.Controller/Net/WebSocketConnectEventArgs.cs b/MediaBrowser.Controller/Net/WebSocketConnectEventArgs.cs
index ffeaf286e2..0ad80d3748 100644
--- a/MediaBrowser.Controller/Net/WebSocketConnectEventArgs.cs
+++ b/MediaBrowser.Controller/Net/WebSocketConnectEventArgs.cs
@@ -1,5 +1,6 @@
using System;
using System.Collections.Specialized;
+using MediaBrowser.Model.Services;
namespace MediaBrowser.Controller.Net
{
@@ -17,7 +18,7 @@ namespace MediaBrowser.Controller.Net
/// Gets or sets the query string.
/// </summary>
/// <value>The query string.</value>
- public NameValueCollection QueryString { get; set; }
+ public QueryParamCollection QueryString { get; set; }
/// <summary>
/// Gets or sets the web socket.
/// </summary>
@@ -46,7 +47,7 @@ namespace MediaBrowser.Controller.Net
/// Gets or sets the query string.
/// </summary>
/// <value>The query string.</value>
- public NameValueCollection QueryString { get; set; }
+ public QueryParamCollection QueryString { get; set; }
/// <summary>
/// Gets or sets a value indicating whether [allow connection].
/// </summary>
@@ -55,7 +56,7 @@ namespace MediaBrowser.Controller.Net
public WebSocketConnectingEventArgs()
{
- QueryString = new NameValueCollection();
+ QueryString = new QueryParamCollection();
AllowConnection = true;
}
}
diff --git a/MediaBrowser.Controller/News/INewsService.cs b/MediaBrowser.Controller/News/INewsService.cs
deleted file mode 100644
index 8237764df4..0000000000
--- a/MediaBrowser.Controller/News/INewsService.cs
+++ /dev/null
@@ -1,18 +0,0 @@
-using MediaBrowser.Model.News;
-using MediaBrowser.Model.Querying;
-
-namespace MediaBrowser.Controller.News
-{
- /// <summary>
- /// Interface INewsFeed
- /// </summary>
- public interface INewsService
- {
- /// <summary>
- /// Gets the product news.
- /// </summary>
- /// <param name="query">The query.</param>
- /// <returns>QueryResult{NewsItem}.</returns>
- QueryResult<NewsItem> GetProductNews(NewsQuery query);
- }
-}
diff --git a/MediaBrowser.Controller/Playlists/Playlist.cs b/MediaBrowser.Controller/Playlists/Playlist.cs
index 6ab85f079c..02e736d999 100644
--- a/MediaBrowser.Controller/Playlists/Playlist.cs
+++ b/MediaBrowser.Controller/Playlists/Playlist.cs
@@ -5,7 +5,7 @@ using MediaBrowser.Model.Querying;
using System;
using System.Collections.Generic;
using System.Linq;
-using System.Runtime.Serialization;
+using MediaBrowser.Model.Serialization;
using System.Threading.Tasks;
using MediaBrowser.Controller.Providers;
diff --git a/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs b/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs
deleted file mode 100644
index 931af293cc..0000000000
--- a/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs
+++ /dev/null
@@ -1,1392 +0,0 @@
-using MediaBrowser.Controller.Entities;
-using MediaBrowser.Model.Entities;
-using MediaBrowser.Model.Logging;
-using System;
-using System.Collections.Generic;
-using System.Globalization;
-using System.IO;
-using System.Linq;
-using System.Text;
-using System.Threading;
-using System.Xml;
-
-namespace MediaBrowser.Controller.Providers
-{
- /// <summary>
- /// Provides a base class for parsing metadata xml
- /// </summary>
- /// <typeparam name="T"></typeparam>
- public class BaseItemXmlParser<T>
- where T : BaseItem
- {
- /// <summary>
- /// The logger
- /// </summary>
- protected ILogger Logger { get; private set; }
- protected IProviderManager ProviderManager { get; private set; }
-
- private Dictionary<string, string> _validProviderIds;
-
- /// <summary>
- /// Initializes a new instance of the <see cref="BaseItemXmlParser{T}" /> class.
- /// </summary>
- /// <param name="logger">The logger.</param>
- public BaseItemXmlParser(ILogger logger, IProviderManager providerManager)
- {
- Logger = logger;
- ProviderManager = providerManager;
- }
-
- /// <summary>
- /// Fetches metadata for an item from one xml file
- /// </summary>
- /// <param name="item">The item.</param>
- /// <param name="metadataFile">The metadata file.</param>
- /// <param name="cancellationToken">The cancellation token.</param>
- /// <exception cref="System.ArgumentNullException"></exception>
- public void Fetch(MetadataResult<T> item, string metadataFile, CancellationToken cancellationToken)
- {
- if (item == null)
- {
- throw new ArgumentNullException();
- }
-
- if (string.IsNullOrEmpty(metadataFile))
- {
- throw new ArgumentNullException();
- }
-
- var settings = new XmlReaderSettings
- {
- CheckCharacters = false,
- IgnoreProcessingInstructions = true,
- IgnoreComments = true,
- ValidationType = ValidationType.None
- };
-
- _validProviderIds = _validProviderIds = new Dictionary<string, string>(StringComparer.InvariantCultureIgnoreCase);
-
- var idInfos = ProviderManager.GetExternalIdInfos(item.Item);
-
- foreach (var info in idInfos)
- {
- var id = info.Key + "Id";
- if (!_validProviderIds.ContainsKey(id))
- {
- _validProviderIds.Add(id, info.Key);
- }
- }
-
- //Additional Mappings
- _validProviderIds.Add("IMDB", "Imdb");
-
- //Fetch(item, metadataFile, settings, Encoding.GetEncoding("ISO-8859-1"), cancellationToken);
- Fetch(item, metadataFile, settings, Encoding.UTF8, cancellationToken);
- }
-
- /// <summary>
- /// Fetches the specified item.
- /// </summary>
- /// <param name="item">The item.</param>
- /// <param name="metadataFile">The metadata file.</param>
- /// <param name="settings">The settings.</param>
- /// <param name="encoding">The encoding.</param>
- /// <param name="cancellationToken">The cancellation token.</param>
- private void Fetch(MetadataResult<T> item, string metadataFile, XmlReaderSettings settings, Encoding encoding, CancellationToken cancellationToken)
- {
- item.ResetPeople();
-
- using (var streamReader = new StreamReader(metadataFile, encoding))
- {
- // Use XmlReader for best performance
- using (var reader = XmlReader.Create(streamReader, settings))
- {
- reader.MoveToContent();
-
- // Loop through each element
- while (reader.Read())
- {
- cancellationToken.ThrowIfCancellationRequested();
-
- if (reader.NodeType == XmlNodeType.Element)
- {
- FetchDataFromXmlNode(reader, item);
- }
- }
- }
- }
- }
-
- private readonly CultureInfo _usCulture = new CultureInfo("en-US");
-
- /// <summary>
- /// Fetches metadata from one Xml Element
- /// </summary>
- /// <param name="reader">The reader.</param>
- /// <param name="itemResult">The item result.</param>
- protected virtual void FetchDataFromXmlNode(XmlReader reader, MetadataResult<T> itemResult)
- {
- var item = itemResult.Item;
-
- switch (reader.Name)
- {
- // DateCreated
- case "Added":
- {
- var val = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(val))
- {
- DateTime added;
- if (DateTime.TryParse(val, out added))
- {
- item.DateCreated = added.ToUniversalTime();
- }
- else
- {
- Logger.Warn("Invalid Added value found: " + val);
- }
- }
- break;
- }
-
- case "OriginalTitle":
- {
- var val = reader.ReadElementContentAsString();
-
- var hasOriginalTitle = item as IHasOriginalTitle;
- if (hasOriginalTitle != null)
- {
- if (!string.IsNullOrEmpty(hasOriginalTitle.OriginalTitle))
- {
- hasOriginalTitle.OriginalTitle = val;
- }
- }
- break;
- }
-
- case "LocalTitle":
- item.Name = reader.ReadElementContentAsString();
- break;
-
- case "Type":
- {
- var type = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(type) && !type.Equals("none", StringComparison.OrdinalIgnoreCase))
- {
- item.DisplayMediaType = type;
- }
-
- break;
- }
-
- case "CriticRating":
- {
- var text = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrEmpty(text))
- {
- float value;
- if (float.TryParse(text, NumberStyles.Any, _usCulture, out value))
- {
- item.CriticRating = value;
- }
- }
-
- break;
- }
-
- case "Budget":
- {
- var text = reader.ReadElementContentAsString();
- var hasBudget = item as IHasBudget;
- if (hasBudget != null)
- {
- double value;
- if (double.TryParse(text, NumberStyles.Any, _usCulture, out value))
- {
- hasBudget.Budget = value;
- }
- }
-
- break;
- }
-
- case "Revenue":
- {
- var text = reader.ReadElementContentAsString();
- var hasBudget = item as IHasBudget;
- if (hasBudget != null)
- {
- double value;
- if (double.TryParse(text, NumberStyles.Any, _usCulture, out value))
- {
- hasBudget.Revenue = value;
- }
- }
-
- break;
- }
-
- case "Metascore":
- {
- var text = reader.ReadElementContentAsString();
- var hasMetascore = item as IHasMetascore;
- if (hasMetascore != null)
- {
- float value;
- if (float.TryParse(text, NumberStyles.Any, _usCulture, out value))
- {
- hasMetascore.Metascore = value;
- }
- }
-
- break;
- }
-
- case "AwardSummary":
- {
- var text = reader.ReadElementContentAsString();
- var hasAwards = item as IHasAwards;
- if (hasAwards != null)
- {
- if (!string.IsNullOrWhiteSpace(text))
- {
- hasAwards.AwardSummary = text;
- }
- }
-
- break;
- }
-
- case "SortTitle":
- {
- var val = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(val))
- {
- item.ForcedSortName = val;
- }
- break;
- }
-
- case "Overview":
- case "Description":
- {
- var val = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(val))
- {
- item.Overview = val;
- }
-
- break;
- }
-
- case "ShortOverview":
- {
- var val = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(val))
- {
- item.ShortOverview = val;
- }
-
- break;
- }
-
- case "CriticRatingSummary":
- {
- var val = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(val))
- {
- item.CriticRatingSummary = val;
- }
-
- break;
- }
-
- case "Language":
- {
- var val = reader.ReadElementContentAsString();
-
- item.PreferredMetadataLanguage = val;
-
- break;
- }
-
- case "CountryCode":
- {
- var val = reader.ReadElementContentAsString();
-
- item.PreferredMetadataCountryCode = val;
-
- break;
- }
-
- case "PlaceOfBirth":
- {
- var val = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(val))
- {
- var person = item as Person;
- if (person != null)
- {
- person.ProductionLocations = new List<string> { val };
- }
- }
-
- break;
- }
-
- case "Website":
- {
- var val = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(val))
- {
- item.HomePageUrl = val;
- }
-
- break;
- }
-
- case "LockedFields":
- {
- var fields = new List<MetadataFields>();
-
- var val = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(val))
- {
- var list = val.Split('|').Select(i =>
- {
- MetadataFields field;
-
- if (Enum.TryParse<MetadataFields>(i, true, out field))
- {
- return (MetadataFields?)field;
- }
-
- return null;
-
- }).Where(i => i.HasValue).Select(i => i.Value);
-
- fields.AddRange(list);
- }
-
- item.LockedFields = fields;
-
- break;
- }
-
- case "TagLines":
- {
- using (var subtree = reader.ReadSubtree())
- {
- FetchFromTaglinesNode(subtree, item);
- }
- break;
- }
-
- case "Countries":
- {
- using (var subtree = reader.ReadSubtree())
- {
- FetchFromCountriesNode(subtree, item);
- }
- break;
- }
-
- case "ContentRating":
- case "MPAARating":
- {
- var rating = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(rating))
- {
- item.OfficialRating = rating;
- }
- break;
- }
-
- case "MPAADescription":
- {
- var rating = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(rating))
- {
- item.OfficialRatingDescription = rating;
- }
- break;
- }
-
- case "CustomRating":
- {
- var val = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(val))
- {
- item.CustomRating = val;
- }
- break;
- }
-
- case "RunningTime":
- {
- var text = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(text))
- {
- int runtime;
- if (int.TryParse(text.Split(' ')[0], NumberStyles.Integer, _usCulture, out runtime))
- {
- item.RunTimeTicks = TimeSpan.FromMinutes(runtime).Ticks;
- }
- }
- break;
- }
-
- case "AspectRatio":
- {
- var val = reader.ReadElementContentAsString();
-
- var hasAspectRatio = item as IHasAspectRatio;
- if (!string.IsNullOrWhiteSpace(val) && hasAspectRatio != null)
- {
- hasAspectRatio.AspectRatio = val;
- }
- break;
- }
-
- case "LockData":
- {
- var val = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(val))
- {
- item.IsLocked = string.Equals("true", val, StringComparison.OrdinalIgnoreCase);
- }
- break;
- }
-
- case "Network":
- {
- foreach (var name in SplitNames(reader.ReadElementContentAsString()))
- {
- if (string.IsNullOrWhiteSpace(name))
- {
- continue;
- }
- item.AddStudio(name);
- }
- break;
- }
-
- case "Director":
- {
- foreach (var p in SplitNames(reader.ReadElementContentAsString()).Select(v => new Entities.PersonInfo { Name = v.Trim(), Type = PersonType.Director }))
- {
- if (string.IsNullOrWhiteSpace(p.Name))
- {
- continue;
- }
- itemResult.AddPerson(p);
- }
- break;
- }
- case "Writer":
- {
- foreach (var p in SplitNames(reader.ReadElementContentAsString()).Select(v => new Entities.PersonInfo { Name = v.Trim(), Type = PersonType.Writer }))
- {
- if (string.IsNullOrWhiteSpace(p.Name))
- {
- continue;
- }
- itemResult.AddPerson(p);
- }
- break;
- }
-
- case "Actors":
- {
-
- var actors = reader.ReadInnerXml();
-
- if (actors.Contains("<"))
- {
- // This is one of the mis-named "Actors" full nodes created by MB2
- // Create a reader and pass it to the persons node processor
- FetchDataFromPersonsNode(new XmlTextReader(new StringReader("<Persons>" + actors + "</Persons>")), itemResult);
- }
- else
- {
- // Old-style piped string
- foreach (var p in SplitNames(actors).Select(v => new Entities.PersonInfo { Name = v.Trim(), Type = PersonType.Actor }))
- {
- if (string.IsNullOrWhiteSpace(p.Name))
- {
- continue;
- }
- itemResult.AddPerson(p);
- }
- }
- break;
- }
-
- case "GuestStars":
- {
- foreach (var p in SplitNames(reader.ReadElementContentAsString()).Select(v => new Entities.PersonInfo { Name = v.Trim(), Type = PersonType.GuestStar }))
- {
- if (string.IsNullOrWhiteSpace(p.Name))
- {
- continue;
- }
- itemResult.AddPerson(p);
- }
- break;
- }
-
- case "Trailer":
- {
- var val = reader.ReadElementContentAsString();
-
- var hasTrailers = item as IHasTrailers;
- if (hasTrailers != null)
- {
- if (!string.IsNullOrWhiteSpace(val))
- {
- hasTrailers.AddTrailerUrl(val, false);
- }
- }
- break;
- }
-
- case "DisplayOrder":
- {
- var val = reader.ReadElementContentAsString();
-
- var hasDisplayOrder = item as IHasDisplayOrder;
- if (hasDisplayOrder != null)
- {
- if (!string.IsNullOrWhiteSpace(val))
- {
- hasDisplayOrder.DisplayOrder = val;
- }
- }
- break;
- }
-
- case "Trailers":
- {
- using (var subtree = reader.ReadSubtree())
- {
- var hasTrailers = item as IHasTrailers;
- if (hasTrailers != null)
- {
- FetchDataFromTrailersNode(subtree, hasTrailers);
- }
- }
- break;
- }
-
- case "ProductionYear":
- {
- var val = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(val))
- {
- int productionYear;
- if (int.TryParse(val, out productionYear) && productionYear > 1850)
- {
- item.ProductionYear = productionYear;
- }
- }
-
- break;
- }
-
- case "Rating":
- case "IMDBrating":
- {
-
- var rating = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(rating))
- {
- float val;
- // All external meta is saving this as '.' for decimal I believe...but just to be sure
- if (float.TryParse(rating.Replace(',', '.'), NumberStyles.AllowDecimalPoint, CultureInfo.InvariantCulture, out val))
- {
- item.CommunityRating = val;
- }
- }
- break;
- }
-
- case "BirthDate":
- case "PremiereDate":
- case "FirstAired":
- {
- var firstAired = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(firstAired))
- {
- DateTime airDate;
-
- if (DateTime.TryParseExact(firstAired, "yyyy-MM-dd", CultureInfo.InvariantCulture, DateTimeStyles.AssumeLocal, out airDate) && airDate.Year > 1850)
- {
- item.PremiereDate = airDate.ToUniversalTime();
- item.ProductionYear = airDate.Year;
- }
- }
-
- break;
- }
-
- case "DeathDate":
- case "EndDate":
- {
- var firstAired = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(firstAired))
- {
- DateTime airDate;
-
- if (DateTime.TryParseExact(firstAired, "yyyy-MM-dd", CultureInfo.InvariantCulture, DateTimeStyles.AssumeLocal, out airDate) && airDate.Year > 1850)
- {
- item.EndDate = airDate.ToUniversalTime();
- }
- }
-
- break;
- }
-
- case "VoteCount":
- {
- var val = reader.ReadElementContentAsString();
- if (!string.IsNullOrWhiteSpace(val))
- {
- int num;
-
- if (int.TryParse(val, NumberStyles.Integer, _usCulture, out num))
- {
- item.VoteCount = num;
- }
- }
- break;
- }
- case "CollectionNumber":
- var tmdbCollection = reader.ReadElementContentAsString();
- if (!string.IsNullOrWhiteSpace(tmdbCollection))
- {
- item.SetProviderId(MetadataProviders.TmdbCollection, tmdbCollection);
- }
- break;
-
- case "Genres":
- {
- using (var subtree = reader.ReadSubtree())
- {
- FetchFromGenresNode(subtree, item);
- }
- break;
- }
-
- case "Tags":
- {
- using (var subtree = reader.ReadSubtree())
- {
- FetchFromTagsNode(subtree, item);
- }
- break;
- }
-
- case "PlotKeywords":
- {
- using (var subtree = reader.ReadSubtree())
- {
- FetchFromKeywordsNode(subtree, item);
- }
- break;
- }
-
- case "Persons":
- {
- using (var subtree = reader.ReadSubtree())
- {
- FetchDataFromPersonsNode(subtree, itemResult);
- }
- break;
- }
-
- case "Studios":
- {
- using (var subtree = reader.ReadSubtree())
- {
- FetchFromStudiosNode(subtree, item);
- }
- break;
- }
-
- case "Shares":
- {
- using (var subtree = reader.ReadSubtree())
- {
- var hasShares = item as IHasShares;
- if (hasShares != null)
- {
- FetchFromSharesNode(subtree, hasShares);
- }
- }
- break;
- }
-
- case "Format3D":
- {
- var video = item as Video;
-
- if (video != null)
- {
- var val = reader.ReadElementContentAsString();
-
- if (string.Equals("HSBS", val, StringComparison.OrdinalIgnoreCase))
- {
- video.Video3DFormat = Video3DFormat.HalfSideBySide;
- }
- else if (string.Equals("HTAB", val, StringComparison.OrdinalIgnoreCase))
- {
- video.Video3DFormat = Video3DFormat.HalfTopAndBottom;
- }
- else if (string.Equals("FTAB", val, StringComparison.OrdinalIgnoreCase))
- {
- video.Video3DFormat = Video3DFormat.FullTopAndBottom;
- }
- else if (string.Equals("FSBS", val, StringComparison.OrdinalIgnoreCase))
- {
- video.Video3DFormat = Video3DFormat.FullSideBySide;
- }
- else if (string.Equals("MVC", val, StringComparison.OrdinalIgnoreCase))
- {
- video.Video3DFormat = Video3DFormat.MVC;
- }
- }
- break;
- }
-
- default:
- {
- string readerName = reader.Name;
- string providerIdValue;
- if (_validProviderIds.TryGetValue(readerName, out providerIdValue))
- {
- var id = reader.ReadElementContentAsString();
- if (!string.IsNullOrWhiteSpace(id))
- {
- item.SetProviderId(providerIdValue, id);
- }
- }
- else
- {
- reader.Skip();
- }
-
- break;
-
- }
- }
- }
-
- private void FetchFromSharesNode(XmlReader reader, IHasShares item)
- {
- reader.MoveToContent();
-
- while (reader.Read())
- {
- if (reader.NodeType == XmlNodeType.Element)
- {
- switch (reader.Name)
- {
- case "Share":
- {
- using (var subtree = reader.ReadSubtree())
- {
- var share = GetShareFromNode(subtree);
- if (share != null)
- {
- item.Shares.Add(share);
- }
- }
- break;
- }
-
- default:
- reader.Skip();
- break;
- }
- }
- }
- }
-
- private Share GetShareFromNode(XmlReader reader)
- {
- var share = new Share();
-
- reader.MoveToContent();
-
- while (reader.Read())
- {
- if (reader.NodeType == XmlNodeType.Element)
- {
- switch (reader.Name)
- {
- case "UserId":
- {
- share.UserId = reader.ReadElementContentAsString();
- break;
- }
-
- case "CanEdit":
- {
- share.CanEdit = string.Equals(reader.ReadElementContentAsString(), true.ToString(), StringComparison.OrdinalIgnoreCase);
- break;
- }
-
- default:
- reader.Skip();
- break;
- }
- }
- }
-
- return share;
- }
-
- private void FetchFromCountriesNode(XmlReader reader, T item)
- {
- reader.MoveToContent();
-
- while (reader.Read())
- {
- if (reader.NodeType == XmlNodeType.Element)
- {
- switch (reader.Name)
- {
- case "Country":
- {
- var val = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(val))
- {
- }
- break;
- }
-
- default:
- reader.Skip();
- break;
- }
- }
- }
- }
-
- /// <summary>
- /// Fetches from taglines node.
- /// </summary>
- /// <param name="reader">The reader.</param>
- /// <param name="item">The item.</param>
- private void FetchFromTaglinesNode(XmlReader reader, T item)
- {
- reader.MoveToContent();
-
- while (reader.Read())
- {
- if (reader.NodeType == XmlNodeType.Element)
- {
- switch (reader.Name)
- {
- case "Tagline":
- {
- var val = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(val))
- {
- item.Tagline = val;
- }
- break;
- }
-
- default:
- reader.Skip();
- break;
- }
- }
- }
- }
-
- /// <summary>
- /// Fetches from genres node.
- /// </summary>
- /// <param name="reader">The reader.</param>
- /// <param name="item">The item.</param>
- private void FetchFromGenresNode(XmlReader reader, T item)
- {
- reader.MoveToContent();
-
- while (reader.Read())
- {
- if (reader.NodeType == XmlNodeType.Element)
- {
- switch (reader.Name)
- {
- case "Genre":
- {
- var genre = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(genre))
- {
- item.AddGenre(genre);
- }
- break;
- }
-
- default:
- reader.Skip();
- break;
- }
- }
- }
- }
-
- private void FetchFromTagsNode(XmlReader reader, BaseItem item)
- {
- reader.MoveToContent();
-
- while (reader.Read())
- {
- if (reader.NodeType == XmlNodeType.Element)
- {
- switch (reader.Name)
- {
- case "Tag":
- {
- var tag = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(tag))
- {
- item.AddTag(tag);
- }
- break;
- }
-
- default:
- reader.Skip();
- break;
- }
- }
- }
- }
-
- private void FetchFromKeywordsNode(XmlReader reader, BaseItem item)
- {
- reader.MoveToContent();
-
- while (reader.Read())
- {
- if (reader.NodeType == XmlNodeType.Element)
- {
- switch (reader.Name)
- {
- case "PlotKeyword":
- {
- var tag = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(tag))
- {
- item.AddKeyword(tag);
- }
- break;
- }
-
- default:
- reader.Skip();
- break;
- }
- }
- }
- }
-
- /// <summary>
- /// Fetches the data from persons node.
- /// </summary>
- /// <param name="reader">The reader.</param>
- /// <param name="item">The item.</param>
- private void FetchDataFromPersonsNode(XmlReader reader, MetadataResult<T> item)
- {
- reader.MoveToContent();
-
- while (reader.Read())
- {
- if (reader.NodeType == XmlNodeType.Element)
- {
- switch (reader.Name)
- {
- case "Person":
- case "Actor":
- {
- using (var subtree = reader.ReadSubtree())
- {
- foreach (var person in GetPersonsFromXmlNode(subtree))
- {
- if (string.IsNullOrWhiteSpace(person.Name))
- {
- continue;
- }
- item.AddPerson(person);
- }
- }
- break;
- }
-
- default:
- reader.Skip();
- break;
- }
- }
- }
- }
-
- private void FetchDataFromTrailersNode(XmlReader reader, IHasTrailers item)
- {
- reader.MoveToContent();
-
- while (reader.Read())
- {
- if (reader.NodeType == XmlNodeType.Element)
- {
- switch (reader.Name)
- {
- case "Trailer":
- {
- var val = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(val))
- {
- item.AddTrailerUrl(val, false);
- }
- break;
- }
-
- default:
- reader.Skip();
- break;
- }
- }
- }
- }
-
- protected List<ChapterInfo> FetchChaptersFromXmlNode(BaseItem item, XmlReader reader)
- {
- using (reader)
- {
- return GetChaptersFromXmlNode(reader)
- .Where(i => i.StartPositionTicks >= 0)
- .ToList();
- }
- }
-
- private IEnumerable<ChapterInfo> GetChaptersFromXmlNode(XmlReader reader)
- {
- var chapters = new List<ChapterInfo>();
-
- reader.MoveToContent();
-
- while (reader.Read())
- {
- if (reader.NodeType == XmlNodeType.Element)
- {
- switch (reader.Name)
- {
- case "Chapter":
- {
- using (var subtree = reader.ReadSubtree())
- {
- chapters.Add(GetChapterInfoFromXmlNode(subtree));
- }
- break;
- }
-
- default:
- reader.Skip();
- break;
- }
- }
- }
-
- return chapters;
- }
-
- private ChapterInfo GetChapterInfoFromXmlNode(XmlReader reader)
- {
- var chapter = new ChapterInfo();
-
- reader.MoveToContent();
-
- while (reader.Read())
- {
- if (reader.NodeType == XmlNodeType.Element)
- {
- switch (reader.Name)
- {
- case "StartPositionMs":
- {
- var val = reader.ReadElementContentAsString();
-
- var ms = long.Parse(val, _usCulture);
-
- chapter.StartPositionTicks = TimeSpan.FromMilliseconds(ms).Ticks;
-
- break;
- }
-
- case "Name":
- {
- chapter.Name = reader.ReadElementContentAsString();
- break;
- }
-
- default:
- reader.Skip();
- break;
- }
- }
- }
-
- return chapter;
- }
-
- /// <summary>
- /// Fetches from studios node.
- /// </summary>
- /// <param name="reader">The reader.</param>
- /// <param name="item">The item.</param>
- private void FetchFromStudiosNode(XmlReader reader, T item)
- {
- reader.MoveToContent();
-
- while (reader.Read())
- {
- if (reader.NodeType == XmlNodeType.Element)
- {
- switch (reader.Name)
- {
- case "Studio":
- {
- var studio = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(studio))
- {
- item.AddStudio(studio);
- }
- break;
- }
-
- default:
- reader.Skip();
- break;
- }
- }
- }
- }
-
- /// <summary>
- /// Gets the persons from XML node.
- /// </summary>
- /// <param name="reader">The reader.</param>
- /// <returns>IEnumerable{PersonInfo}.</returns>
- private IEnumerable<PersonInfo> GetPersonsFromXmlNode(XmlReader reader)
- {
- var name = string.Empty;
- var type = PersonType.Actor; // If type is not specified assume actor
- var role = string.Empty;
- int? sortOrder = null;
-
- reader.MoveToContent();
-
- while (reader.Read())
- {
- if (reader.NodeType == XmlNodeType.Element)
- {
- switch (reader.Name)
- {
- case "Name":
- name = reader.ReadElementContentAsString() ?? string.Empty;
- break;
-
- case "Type":
- {
- var val = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(val))
- {
- type = val;
- }
- break;
- }
-
- case "Role":
- {
- var val = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(val))
- {
- role = val;
- }
- break;
- }
- case "SortOrder":
- {
- var val = reader.ReadElementContentAsString();
-
- if (!string.IsNullOrWhiteSpace(val))
- {
- int intVal;
- if (int.TryParse(val, NumberStyles.Integer, _usCulture, out intVal))
- {
- sortOrder = intVal;
- }
- }
- break;
- }
-
- default:
- reader.Skip();
- break;
- }
- }
- }
-
- var personInfo = new PersonInfo
- {
- Name = name.Trim(),
- Role = role,
- Type = type,
- SortOrder = sortOrder
- };
-
- return new[] { personInfo };
- }
-
- protected LinkedChild GetLinkedChild(XmlReader reader)
- {
- reader.MoveToContent();
-
- var linkedItem = new LinkedChild
- {
- Type = LinkedChildType.Manual
- };
-
- while (reader.Read())
- {
- if (reader.NodeType == XmlNodeType.Element)
- {
- switch (reader.Name)
- {
- case "Path":
- {
- linkedItem.Path = reader.ReadElementContentAsString();
- break;
- }
-
- default:
- reader.Skip();
- break;
- }
- }
- }
-
- // This is valid
- if (!string.IsNullOrWhiteSpace(linkedItem.Path))
- {
- return linkedItem;
- }
-
- return null;
- }
-
- protected Share GetShare(XmlReader reader)
- {
- reader.MoveToContent();
-
- var item = new Share();
-
- while (reader.Read())
- {
- if (reader.NodeType == XmlNodeType.Element)
- {
- switch (reader.Name)
- {
- case "UserId":
- {
- item.UserId = reader.ReadElementContentAsString();
- break;
- }
-
- case "CanEdit":
- {
- item.CanEdit = string.Equals(reader.ReadElementContentAsString(), "true", StringComparison.OrdinalIgnoreCase);
- break;
- }
-
- default:
- reader.Skip();
- break;
- }
- }
- }
-
- // This is valid
- if (!string.IsNullOrWhiteSpace(item.UserId))
- {
- return item;
- }
-
- return null;
- }
-
-
- /// <summary>
- /// Used to split names of comma or pipe delimeted genres and people
- /// </summary>
- /// <param name="value">The value.</param>
- /// <returns>IEnumerable{System.String}.</returns>
- private IEnumerable<string> SplitNames(string value)
- {
- value = value ?? string.Empty;
-
- // Only split by comma if there is no pipe in the string
- // We have to be careful to not split names like Matthew, Jr.
- var separator = value.IndexOf('|') == -1 && value.IndexOf(';') == -1 ? new[] { ',' } : new[] { '|', ';' };
-
- value = value.Trim().Trim(separator);
-
- return string.IsNullOrWhiteSpace(value) ? new string[] { } : Split(value, separator, StringSplitOptions.RemoveEmptyEntries);
- }
-
- /// <summary>
- /// Provides an additional overload for string.split
- /// </summary>
- /// <param name="val">The val.</param>
- /// <param name="separators">The separators.</param>
- /// <param name="options">The options.</param>
- /// <returns>System.String[][].</returns>
- private static string[] Split(string val, char[] separators, StringSplitOptions options)
- {
- return val.Split(separators, options);
- }
-
- }
-}
diff --git a/MediaBrowser.Controller/Providers/DirectoryService.cs b/MediaBrowser.Controller/Providers/DirectoryService.cs
index ee2b28c60a..01218c293a 100644
--- a/MediaBrowser.Controller/Providers/DirectoryService.cs
+++ b/MediaBrowser.Controller/Providers/DirectoryService.cs
@@ -4,7 +4,9 @@ using System.Collections.Concurrent;
using System.Collections.Generic;
using System.IO;
using System.Linq;
-using CommonIO;
+using MediaBrowser.Common.IO;
+using MediaBrowser.Controller.IO;
+using MediaBrowser.Model.IO;
namespace MediaBrowser.Controller.Providers
{
@@ -74,7 +76,7 @@ namespace MediaBrowser.Controller.Providers
entries[item.FullName] = item;
}
}
- catch (DirectoryNotFoundException)
+ catch (IOException)
{
}
diff --git a/MediaBrowser.Controller/Providers/IDirectoryService.cs b/MediaBrowser.Controller/Providers/IDirectoryService.cs
index 09f9ba8c02..54ae7e12be 100644
--- a/MediaBrowser.Controller/Providers/IDirectoryService.cs
+++ b/MediaBrowser.Controller/Providers/IDirectoryService.cs
@@ -1,5 +1,7 @@
using System.Collections.Generic;
-using CommonIO;
+using MediaBrowser.Common.IO;
+using MediaBrowser.Controller.IO;
+using MediaBrowser.Model.IO;
namespace MediaBrowser.Controller.Providers
{
diff --git a/MediaBrowser.Controller/Providers/LocalImageInfo.cs b/MediaBrowser.Controller/Providers/LocalImageInfo.cs
index 14f292bece..63651fce85 100644
--- a/MediaBrowser.Controller/Providers/LocalImageInfo.cs
+++ b/MediaBrowser.Controller/Providers/LocalImageInfo.cs
@@ -1,5 +1,7 @@
-using CommonIO;
+using MediaBrowser.Common.IO;
+using MediaBrowser.Controller.IO;
using MediaBrowser.Model.Entities;
+using MediaBrowser.Model.IO;
namespace MediaBrowser.Controller.Providers
{
diff --git a/MediaBrowser.Controller/Providers/MetadataRefreshOptions.cs b/MediaBrowser.Controller/Providers/MetadataRefreshOptions.cs
index 87c3b36a27..7d9dab92b2 100644
--- a/MediaBrowser.Controller/Providers/MetadataRefreshOptions.cs
+++ b/MediaBrowser.Controller/Providers/MetadataRefreshOptions.cs
@@ -1,5 +1,7 @@
using System.Linq;
-using CommonIO;
+using MediaBrowser.Common.IO;
+using MediaBrowser.Controller.IO;
+using MediaBrowser.Model.IO;
using MediaBrowser.Model.Logging;
using MediaBrowser.Model.Providers;
diff --git a/MediaBrowser.Controller/Resolvers/IItemResolver.cs b/MediaBrowser.Controller/Resolvers/IItemResolver.cs
index bdff5fffad..fcb162b9e6 100644
--- a/MediaBrowser.Controller/Resolvers/IItemResolver.cs
+++ b/MediaBrowser.Controller/Resolvers/IItemResolver.cs
@@ -2,7 +2,9 @@
using MediaBrowser.Controller.Library;
using MediaBrowser.Controller.Providers;
using System.Collections.Generic;
-using CommonIO;
+using MediaBrowser.Common.IO;
+using MediaBrowser.Controller.IO;
+using MediaBrowser.Model.IO;
namespace MediaBrowser.Controller.Resolvers
{
diff --git a/MediaBrowser.Controller/Resolvers/IResolverIgnoreRule.cs b/MediaBrowser.Controller/Resolvers/IResolverIgnoreRule.cs
index 2c82882c68..06372395ec 100644
--- a/MediaBrowser.Controller/Resolvers/IResolverIgnoreRule.cs
+++ b/MediaBrowser.Controller/Resolvers/IResolverIgnoreRule.cs
@@ -1,5 +1,7 @@
-using CommonIO;
+using MediaBrowser.Common.IO;
using MediaBrowser.Controller.Entities;
+using MediaBrowser.Controller.IO;
+using MediaBrowser.Model.IO;
namespace MediaBrowser.Controller.Resolvers
{
diff --git a/MediaBrowser.Controller/Social/ISharingManager.cs b/MediaBrowser.Controller/Social/ISharingManager.cs
deleted file mode 100644
index ded37771af..0000000000
--- a/MediaBrowser.Controller/Social/ISharingManager.cs
+++ /dev/null
@@ -1,28 +0,0 @@
-using MediaBrowser.Model.Social;
-using System.Threading.Tasks;
-
-namespace MediaBrowser.Controller.Social
-{
- public interface ISharingManager
- {
- /// <summary>
- /// Creates the share.
- /// </summary>
- /// <param name="itemId">The item identifier.</param>
- /// <param name="userId">The user identifier.</param>
- /// <returns>Task&lt;SocialShareInfo&gt;.</returns>
- Task<SocialShareInfo> CreateShare(string itemId, string userId);
- /// <summary>
- /// Gets the share information.
- /// </summary>
- /// <param name="id">The identifier.</param>
- /// <returns>SocialShareInfo.</returns>
- SocialShareInfo GetShareInfo(string id);
- /// <summary>
- /// Deletes the share.
- /// </summary>
- /// <param name="id">The identifier.</param>
- /// <returns>Task.</returns>
- Task DeleteShare(string id);
- }
-}
diff --git a/MediaBrowser.Controller/Threading/PeriodicTimer.cs b/MediaBrowser.Controller/Threading/PeriodicTimer.cs
deleted file mode 100644
index f9d19b9a10..0000000000
--- a/MediaBrowser.Controller/Threading/PeriodicTimer.cs
+++ /dev/null
@@ -1,72 +0,0 @@
-using System;
-using System.Threading;
-using Microsoft.Win32;
-
-namespace MediaBrowser.Controller.Threading
-{
- public class PeriodicTimer : IDisposable
- {
- public Action<object> Callback { get; set; }
- private Timer _timer;
- private readonly object _state;
- private readonly object _timerLock = new object();
- private readonly TimeSpan _period;
-
- public PeriodicTimer(Action<object> callback, object state, TimeSpan dueTime, TimeSpan period)
- {
- if (callback == null)
- {
- throw new ArgumentNullException("callback");
- }
-
- Callback = callback;
- _period = period;
- _state = state;
-
- StartTimer(dueTime);
- }
-
- void SystemEvents_PowerModeChanged(object sender, PowerModeChangedEventArgs e)
- {
- if (e.Mode == PowerModes.Resume)
- {
- DisposeTimer();
- StartTimer(Timeout.InfiniteTimeSpan);
- }
- }
-
- private void TimerCallback(object state)
- {
- Callback(state);
- }
-
- private void StartTimer(TimeSpan dueTime)
- {
- lock (_timerLock)
- {
- _timer = new Timer(TimerCallback, _state, dueTime, _period);
-
- SystemEvents.PowerModeChanged += SystemEvents_PowerModeChanged;
- }
- }
-
- private void DisposeTimer()
- {
- SystemEvents.PowerModeChanged -= SystemEvents_PowerModeChanged;
-
- lock (_timerLock)
- {
- if (_timer != null)
- {
- _timer.Dispose();
- _timer = null;
- }
- }
- }
-
- public void Dispose()
- {
- DisposeTimer();
- }
- }
-}
diff --git a/MediaBrowser.Controller/packages.config b/MediaBrowser.Controller/packages.config
index 08345d1c58..25ec4346f5 100644
--- a/MediaBrowser.Controller/packages.config
+++ b/MediaBrowser.Controller/packages.config
@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
- <package id="CommonIO" version="1.0.0.9" targetFramework="net45" />
<package id="Interfaces.IO" version="1.0.0.5" targetFramework="net45" />
<package id="Patterns.Logging" version="1.0.0.2" targetFramework="net45" />
</packages> \ No newline at end of file
diff --git a/MediaBrowser.Controller/project.json b/MediaBrowser.Controller/project.json
new file mode 100644
index 0000000000..fbbe9eaf32
--- /dev/null
+++ b/MediaBrowser.Controller/project.json
@@ -0,0 +1,17 @@
+{
+ "frameworks":{
+ "netstandard1.6":{
+ "dependencies":{
+ "NETStandard.Library":"1.6.0",
+ }
+ },
+ ".NETPortable,Version=v4.5,Profile=Profile7":{
+ "buildOptions": {
+ "define": [ ]
+ },
+ "frameworkAssemblies":{
+
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/MediaBrowser.Controller/project.lock.json b/MediaBrowser.Controller/project.lock.json
new file mode 100644
index 0000000000..a42f93878d
--- /dev/null
+++ b/MediaBrowser.Controller/project.lock.json
@@ -0,0 +1,3965 @@
+{
+ "locked": false,
+ "version": 1,
+ "targets": {
+ ".NETPortable,Version=v4.5,Profile=Profile7": {},
+ ".NETStandard,Version=v1.6": {
+ "Microsoft.NETCore.Platforms/1.0.1": {
+ "compile": {
+ "lib/netstandard1.0/_._": {}
+ },
+ "runtime": {
+ "lib/netstandard1.0/_._": {}
+ }
+ },
+ "Microsoft.NETCore.Targets/1.0.1": {
+ "compile": {
+ "lib/netstandard1.0/_._": {}
+ },
+ "runtime": {
+ "lib/netstandard1.0/_._": {}
+ }
+ },
+ "Microsoft.Win32.Primitives/4.0.1": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.Runtime": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.3/Microsoft.Win32.Primitives.dll": {}
+ }
+ },
+ "NETStandard.Library/1.6.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.Win32.Primitives": "4.0.1",
+ "System.AppContext": "4.1.0",
+ "System.Collections": "4.0.11",
+ "System.Collections.Concurrent": "4.0.12",
+ "System.Console": "4.0.0",
+ "System.Diagnostics.Debug": "4.0.11",
+ "System.Diagnostics.Tools": "4.0.1",
+ "System.Diagnostics.Tracing": "4.1.0",
+ "System.Globalization": "4.0.11",
+ "System.Globalization.Calendars": "4.0.1",
+ "System.IO": "4.1.0",
+ "System.IO.Compression": "4.1.0",
+ "System.IO.Compression.ZipFile": "4.0.1",
+ "System.IO.FileSystem": "4.0.1",
+ "System.IO.FileSystem.Primitives": "4.0.1",
+ "System.Linq": "4.1.0",
+ "System.Linq.Expressions": "4.1.0",
+ "System.Net.Http": "4.1.0",
+ "System.Net.Primitives": "4.0.11",
+ "System.Net.Sockets": "4.1.0",
+ "System.ObjectModel": "4.0.12",
+ "System.Reflection": "4.1.0",
+ "System.Reflection.Extensions": "4.0.1",
+ "System.Reflection.Primitives": "4.0.1",
+ "System.Resources.ResourceManager": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Runtime.Extensions": "4.1.0",
+ "System.Runtime.Handles": "4.0.1",
+ "System.Runtime.InteropServices": "4.1.0",
+ "System.Runtime.InteropServices.RuntimeInformation": "4.0.0",
+ "System.Runtime.Numerics": "4.0.1",
+ "System.Security.Cryptography.Algorithms": "4.2.0",
+ "System.Security.Cryptography.Encoding": "4.0.0",
+ "System.Security.Cryptography.Primitives": "4.0.0",
+ "System.Security.Cryptography.X509Certificates": "4.1.0",
+ "System.Text.Encoding": "4.0.11",
+ "System.Text.Encoding.Extensions": "4.0.11",
+ "System.Text.RegularExpressions": "4.1.0",
+ "System.Threading": "4.0.11",
+ "System.Threading.Tasks": "4.0.11",
+ "System.Threading.Timer": "4.0.1",
+ "System.Xml.ReaderWriter": "4.0.11",
+ "System.Xml.XDocument": "4.0.11"
+ }
+ },
+ "runtime.native.System/4.0.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1"
+ },
+ "compile": {
+ "lib/netstandard1.0/_._": {}
+ },
+ "runtime": {
+ "lib/netstandard1.0/_._": {}
+ }
+ },
+ "runtime.native.System.IO.Compression/4.1.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1"
+ },
+ "compile": {
+ "lib/netstandard1.0/_._": {}
+ },
+ "runtime": {
+ "lib/netstandard1.0/_._": {}
+ }
+ },
+ "runtime.native.System.Net.Http/4.0.1": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1"
+ },
+ "compile": {
+ "lib/netstandard1.0/_._": {}
+ },
+ "runtime": {
+ "lib/netstandard1.0/_._": {}
+ }
+ },
+ "runtime.native.System.Security.Cryptography/4.0.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1"
+ },
+ "compile": {
+ "lib/netstandard1.0/_._": {}
+ },
+ "runtime": {
+ "lib/netstandard1.0/_._": {}
+ }
+ },
+ "System.AppContext/4.1.0": {
+ "dependencies": {
+ "System.Runtime": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.6/System.AppContext.dll": {}
+ },
+ "runtime": {
+ "lib/netstandard1.6/System.AppContext.dll": {}
+ }
+ },
+ "System.Buffers/4.0.0": {
+ "dependencies": {
+ "System.Diagnostics.Debug": "4.0.11",
+ "System.Diagnostics.Tracing": "4.1.0",
+ "System.Resources.ResourceManager": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Threading": "4.0.11"
+ },
+ "compile": {
+ "lib/netstandard1.1/_._": {}
+ },
+ "runtime": {
+ "lib/netstandard1.1/System.Buffers.dll": {}
+ }
+ },
+ "System.Collections/4.0.11": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.Runtime": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.Collections.dll": {}
+ }
+ },
+ "System.Collections.Concurrent/4.0.12": {
+ "dependencies": {
+ "System.Collections": "4.0.11",
+ "System.Diagnostics.Debug": "4.0.11",
+ "System.Diagnostics.Tracing": "4.1.0",
+ "System.Globalization": "4.0.11",
+ "System.Reflection": "4.1.0",
+ "System.Resources.ResourceManager": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Runtime.Extensions": "4.1.0",
+ "System.Threading": "4.0.11",
+ "System.Threading.Tasks": "4.0.11"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.Collections.Concurrent.dll": {}
+ },
+ "runtime": {
+ "lib/netstandard1.3/System.Collections.Concurrent.dll": {}
+ }
+ },
+ "System.Console/4.0.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.IO": "4.1.0",
+ "System.Runtime": "4.1.0",
+ "System.Text.Encoding": "4.0.11"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.Console.dll": {}
+ }
+ },
+ "System.Diagnostics.Debug/4.0.11": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.Runtime": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.Diagnostics.Debug.dll": {}
+ }
+ },
+ "System.Diagnostics.DiagnosticSource/4.0.0": {
+ "dependencies": {
+ "System.Collections": "4.0.11",
+ "System.Diagnostics.Tracing": "4.1.0",
+ "System.Reflection": "4.1.0",
+ "System.Runtime": "4.1.0",
+ "System.Threading": "4.0.11"
+ },
+ "compile": {
+ "lib/netstandard1.3/_._": {}
+ },
+ "runtime": {
+ "lib/netstandard1.3/System.Diagnostics.DiagnosticSource.dll": {}
+ }
+ },
+ "System.Diagnostics.Tools/4.0.1": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.Runtime": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.0/System.Diagnostics.Tools.dll": {}
+ }
+ },
+ "System.Diagnostics.Tracing/4.1.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.Runtime": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.5/System.Diagnostics.Tracing.dll": {}
+ }
+ },
+ "System.Globalization/4.0.11": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.Runtime": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.Globalization.dll": {}
+ }
+ },
+ "System.Globalization.Calendars/4.0.1": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.Globalization": "4.0.11",
+ "System.Runtime": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.Globalization.Calendars.dll": {}
+ }
+ },
+ "System.Globalization.Extensions/4.0.1": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "System.Globalization": "4.0.11",
+ "System.Resources.ResourceManager": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Runtime.Extensions": "4.1.0",
+ "System.Runtime.InteropServices": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.3/_._": {}
+ },
+ "runtimeTargets": {
+ "runtimes/unix/lib/netstandard1.3/System.Globalization.Extensions.dll": {
+ "assetType": "runtime",
+ "rid": "unix"
+ },
+ "runtimes/win/lib/netstandard1.3/System.Globalization.Extensions.dll": {
+ "assetType": "runtime",
+ "rid": "win"
+ }
+ }
+ },
+ "System.IO/4.1.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Text.Encoding": "4.0.11",
+ "System.Threading.Tasks": "4.0.11"
+ },
+ "compile": {
+ "ref/netstandard1.5/System.IO.dll": {}
+ }
+ },
+ "System.IO.Compression/4.1.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "System.Collections": "4.0.11",
+ "System.Diagnostics.Debug": "4.0.11",
+ "System.IO": "4.1.0",
+ "System.Resources.ResourceManager": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Runtime.Extensions": "4.1.0",
+ "System.Runtime.Handles": "4.0.1",
+ "System.Runtime.InteropServices": "4.1.0",
+ "System.Text.Encoding": "4.0.11",
+ "System.Threading": "4.0.11",
+ "System.Threading.Tasks": "4.0.11",
+ "runtime.native.System": "4.0.0",
+ "runtime.native.System.IO.Compression": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.IO.Compression.dll": {}
+ },
+ "runtimeTargets": {
+ "runtimes/unix/lib/netstandard1.3/System.IO.Compression.dll": {
+ "assetType": "runtime",
+ "rid": "unix"
+ },
+ "runtimes/win/lib/netstandard1.3/System.IO.Compression.dll": {
+ "assetType": "runtime",
+ "rid": "win"
+ }
+ }
+ },
+ "System.IO.Compression.ZipFile/4.0.1": {
+ "dependencies": {
+ "System.Buffers": "4.0.0",
+ "System.IO": "4.1.0",
+ "System.IO.Compression": "4.1.0",
+ "System.IO.FileSystem": "4.0.1",
+ "System.IO.FileSystem.Primitives": "4.0.1",
+ "System.Resources.ResourceManager": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Runtime.Extensions": "4.1.0",
+ "System.Text.Encoding": "4.0.11"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.IO.Compression.ZipFile.dll": {}
+ },
+ "runtime": {
+ "lib/netstandard1.3/System.IO.Compression.ZipFile.dll": {}
+ }
+ },
+ "System.IO.FileSystem/4.0.1": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.IO": "4.1.0",
+ "System.IO.FileSystem.Primitives": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Runtime.Handles": "4.0.1",
+ "System.Text.Encoding": "4.0.11",
+ "System.Threading.Tasks": "4.0.11"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.IO.FileSystem.dll": {}
+ }
+ },
+ "System.IO.FileSystem.Primitives/4.0.1": {
+ "dependencies": {
+ "System.Runtime": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.IO.FileSystem.Primitives.dll": {}
+ },
+ "runtime": {
+ "lib/netstandard1.3/System.IO.FileSystem.Primitives.dll": {}
+ }
+ },
+ "System.Linq/4.1.0": {
+ "dependencies": {
+ "System.Collections": "4.0.11",
+ "System.Diagnostics.Debug": "4.0.11",
+ "System.Resources.ResourceManager": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Runtime.Extensions": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.6/System.Linq.dll": {}
+ },
+ "runtime": {
+ "lib/netstandard1.6/System.Linq.dll": {}
+ }
+ },
+ "System.Linq.Expressions/4.1.0": {
+ "dependencies": {
+ "System.Collections": "4.0.11",
+ "System.Diagnostics.Debug": "4.0.11",
+ "System.Globalization": "4.0.11",
+ "System.IO": "4.1.0",
+ "System.Linq": "4.1.0",
+ "System.ObjectModel": "4.0.12",
+ "System.Reflection": "4.1.0",
+ "System.Reflection.Emit": "4.0.1",
+ "System.Reflection.Emit.ILGeneration": "4.0.1",
+ "System.Reflection.Emit.Lightweight": "4.0.1",
+ "System.Reflection.Extensions": "4.0.1",
+ "System.Reflection.Primitives": "4.0.1",
+ "System.Reflection.TypeExtensions": "4.1.0",
+ "System.Resources.ResourceManager": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Runtime.Extensions": "4.1.0",
+ "System.Threading": "4.0.11"
+ },
+ "compile": {
+ "ref/netstandard1.6/System.Linq.Expressions.dll": {}
+ },
+ "runtime": {
+ "lib/netstandard1.6/System.Linq.Expressions.dll": {}
+ }
+ },
+ "System.Net.Http/4.1.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "System.Collections": "4.0.11",
+ "System.Diagnostics.Debug": "4.0.11",
+ "System.Diagnostics.DiagnosticSource": "4.0.0",
+ "System.Diagnostics.Tracing": "4.1.0",
+ "System.Globalization": "4.0.11",
+ "System.Globalization.Extensions": "4.0.1",
+ "System.IO": "4.1.0",
+ "System.IO.FileSystem": "4.0.1",
+ "System.Net.Primitives": "4.0.11",
+ "System.Resources.ResourceManager": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Runtime.Extensions": "4.1.0",
+ "System.Runtime.Handles": "4.0.1",
+ "System.Runtime.InteropServices": "4.1.0",
+ "System.Security.Cryptography.Algorithms": "4.2.0",
+ "System.Security.Cryptography.Encoding": "4.0.0",
+ "System.Security.Cryptography.OpenSsl": "4.0.0",
+ "System.Security.Cryptography.Primitives": "4.0.0",
+ "System.Security.Cryptography.X509Certificates": "4.1.0",
+ "System.Text.Encoding": "4.0.11",
+ "System.Threading": "4.0.11",
+ "System.Threading.Tasks": "4.0.11",
+ "runtime.native.System": "4.0.0",
+ "runtime.native.System.Net.Http": "4.0.1",
+ "runtime.native.System.Security.Cryptography": "4.0.0"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.Net.Http.dll": {}
+ },
+ "runtimeTargets": {
+ "runtimes/unix/lib/netstandard1.6/System.Net.Http.dll": {
+ "assetType": "runtime",
+ "rid": "unix"
+ },
+ "runtimes/win/lib/netstandard1.3/System.Net.Http.dll": {
+ "assetType": "runtime",
+ "rid": "win"
+ }
+ }
+ },
+ "System.Net.Primitives/4.0.11": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Runtime.Handles": "4.0.1"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.Net.Primitives.dll": {}
+ }
+ },
+ "System.Net.Sockets/4.1.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.IO": "4.1.0",
+ "System.Net.Primitives": "4.0.11",
+ "System.Runtime": "4.1.0",
+ "System.Threading.Tasks": "4.0.11"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.Net.Sockets.dll": {}
+ }
+ },
+ "System.ObjectModel/4.0.12": {
+ "dependencies": {
+ "System.Collections": "4.0.11",
+ "System.Diagnostics.Debug": "4.0.11",
+ "System.Resources.ResourceManager": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Threading": "4.0.11"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.ObjectModel.dll": {}
+ },
+ "runtime": {
+ "lib/netstandard1.3/System.ObjectModel.dll": {}
+ }
+ },
+ "System.Reflection/4.1.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.IO": "4.1.0",
+ "System.Reflection.Primitives": "4.0.1",
+ "System.Runtime": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.5/System.Reflection.dll": {}
+ }
+ },
+ "System.Reflection.Emit/4.0.1": {
+ "dependencies": {
+ "System.IO": "4.1.0",
+ "System.Reflection": "4.1.0",
+ "System.Reflection.Emit.ILGeneration": "4.0.1",
+ "System.Reflection.Primitives": "4.0.1",
+ "System.Runtime": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.1/_._": {}
+ },
+ "runtime": {
+ "lib/netstandard1.3/System.Reflection.Emit.dll": {}
+ }
+ },
+ "System.Reflection.Emit.ILGeneration/4.0.1": {
+ "dependencies": {
+ "System.Reflection": "4.1.0",
+ "System.Reflection.Primitives": "4.0.1",
+ "System.Runtime": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.0/_._": {}
+ },
+ "runtime": {
+ "lib/netstandard1.3/System.Reflection.Emit.ILGeneration.dll": {}
+ }
+ },
+ "System.Reflection.Emit.Lightweight/4.0.1": {
+ "dependencies": {
+ "System.Reflection": "4.1.0",
+ "System.Reflection.Emit.ILGeneration": "4.0.1",
+ "System.Reflection.Primitives": "4.0.1",
+ "System.Runtime": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.0/_._": {}
+ },
+ "runtime": {
+ "lib/netstandard1.3/System.Reflection.Emit.Lightweight.dll": {}
+ }
+ },
+ "System.Reflection.Extensions/4.0.1": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.Reflection": "4.1.0",
+ "System.Runtime": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.0/System.Reflection.Extensions.dll": {}
+ }
+ },
+ "System.Reflection.Primitives/4.0.1": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.Runtime": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.0/System.Reflection.Primitives.dll": {}
+ }
+ },
+ "System.Reflection.TypeExtensions/4.1.0": {
+ "dependencies": {
+ "System.Reflection": "4.1.0",
+ "System.Runtime": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.5/_._": {}
+ },
+ "runtime": {
+ "lib/netstandard1.5/System.Reflection.TypeExtensions.dll": {}
+ }
+ },
+ "System.Resources.ResourceManager/4.0.1": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.Globalization": "4.0.11",
+ "System.Reflection": "4.1.0",
+ "System.Runtime": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.0/System.Resources.ResourceManager.dll": {}
+ }
+ },
+ "System.Runtime/4.1.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1"
+ },
+ "compile": {
+ "ref/netstandard1.5/System.Runtime.dll": {}
+ }
+ },
+ "System.Runtime.Extensions/4.1.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.Runtime": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.5/System.Runtime.Extensions.dll": {}
+ }
+ },
+ "System.Runtime.Handles/4.0.1": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.Runtime": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.Runtime.Handles.dll": {}
+ }
+ },
+ "System.Runtime.InteropServices/4.1.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.Reflection": "4.1.0",
+ "System.Reflection.Primitives": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Runtime.Handles": "4.0.1"
+ },
+ "compile": {
+ "ref/netstandard1.5/System.Runtime.InteropServices.dll": {}
+ }
+ },
+ "System.Runtime.InteropServices.RuntimeInformation/4.0.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "System.Reflection": "4.1.0",
+ "System.Resources.ResourceManager": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Runtime.InteropServices": "4.1.0",
+ "System.Threading": "4.0.11",
+ "runtime.native.System": "4.0.0"
+ },
+ "compile": {
+ "ref/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": {}
+ },
+ "runtimeTargets": {
+ "runtimes/unix/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": {
+ "assetType": "runtime",
+ "rid": "unix"
+ },
+ "runtimes/win/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": {
+ "assetType": "runtime",
+ "rid": "win"
+ }
+ }
+ },
+ "System.Runtime.Numerics/4.0.1": {
+ "dependencies": {
+ "System.Globalization": "4.0.11",
+ "System.Resources.ResourceManager": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Runtime.Extensions": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.1/System.Runtime.Numerics.dll": {}
+ },
+ "runtime": {
+ "lib/netstandard1.3/System.Runtime.Numerics.dll": {}
+ }
+ },
+ "System.Security.Cryptography.Algorithms/4.2.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "System.Collections": "4.0.11",
+ "System.IO": "4.1.0",
+ "System.Resources.ResourceManager": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Runtime.Extensions": "4.1.0",
+ "System.Runtime.Handles": "4.0.1",
+ "System.Runtime.InteropServices": "4.1.0",
+ "System.Runtime.Numerics": "4.0.1",
+ "System.Security.Cryptography.Encoding": "4.0.0",
+ "System.Security.Cryptography.Primitives": "4.0.0",
+ "System.Text.Encoding": "4.0.11",
+ "runtime.native.System.Security.Cryptography": "4.0.0"
+ },
+ "compile": {
+ "ref/netstandard1.6/System.Security.Cryptography.Algorithms.dll": {}
+ },
+ "runtimeTargets": {
+ "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll": {
+ "assetType": "runtime",
+ "rid": "unix"
+ },
+ "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll": {
+ "assetType": "runtime",
+ "rid": "win"
+ }
+ }
+ },
+ "System.Security.Cryptography.Cng/4.2.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "System.IO": "4.1.0",
+ "System.Resources.ResourceManager": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Runtime.Extensions": "4.1.0",
+ "System.Runtime.Handles": "4.0.1",
+ "System.Runtime.InteropServices": "4.1.0",
+ "System.Security.Cryptography.Algorithms": "4.2.0",
+ "System.Security.Cryptography.Encoding": "4.0.0",
+ "System.Security.Cryptography.Primitives": "4.0.0",
+ "System.Text.Encoding": "4.0.11"
+ },
+ "compile": {
+ "ref/netstandard1.6/_._": {}
+ },
+ "runtimeTargets": {
+ "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Cng.dll": {
+ "assetType": "runtime",
+ "rid": "unix"
+ },
+ "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Cng.dll": {
+ "assetType": "runtime",
+ "rid": "win"
+ }
+ }
+ },
+ "System.Security.Cryptography.Csp/4.0.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "System.IO": "4.1.0",
+ "System.Reflection": "4.1.0",
+ "System.Resources.ResourceManager": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Runtime.Extensions": "4.1.0",
+ "System.Runtime.Handles": "4.0.1",
+ "System.Runtime.InteropServices": "4.1.0",
+ "System.Security.Cryptography.Algorithms": "4.2.0",
+ "System.Security.Cryptography.Encoding": "4.0.0",
+ "System.Security.Cryptography.Primitives": "4.0.0",
+ "System.Text.Encoding": "4.0.11",
+ "System.Threading": "4.0.11"
+ },
+ "compile": {
+ "ref/netstandard1.3/_._": {}
+ },
+ "runtimeTargets": {
+ "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Csp.dll": {
+ "assetType": "runtime",
+ "rid": "unix"
+ },
+ "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Csp.dll": {
+ "assetType": "runtime",
+ "rid": "win"
+ }
+ }
+ },
+ "System.Security.Cryptography.Encoding/4.0.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "System.Collections": "4.0.11",
+ "System.Collections.Concurrent": "4.0.12",
+ "System.Linq": "4.1.0",
+ "System.Resources.ResourceManager": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Runtime.Extensions": "4.1.0",
+ "System.Runtime.Handles": "4.0.1",
+ "System.Runtime.InteropServices": "4.1.0",
+ "System.Security.Cryptography.Primitives": "4.0.0",
+ "System.Text.Encoding": "4.0.11",
+ "runtime.native.System.Security.Cryptography": "4.0.0"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.Security.Cryptography.Encoding.dll": {}
+ },
+ "runtimeTargets": {
+ "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll": {
+ "assetType": "runtime",
+ "rid": "unix"
+ },
+ "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll": {
+ "assetType": "runtime",
+ "rid": "win"
+ }
+ }
+ },
+ "System.Security.Cryptography.OpenSsl/4.0.0": {
+ "dependencies": {
+ "System.Collections": "4.0.11",
+ "System.IO": "4.1.0",
+ "System.Resources.ResourceManager": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Runtime.Extensions": "4.1.0",
+ "System.Runtime.Handles": "4.0.1",
+ "System.Runtime.InteropServices": "4.1.0",
+ "System.Runtime.Numerics": "4.0.1",
+ "System.Security.Cryptography.Algorithms": "4.2.0",
+ "System.Security.Cryptography.Encoding": "4.0.0",
+ "System.Security.Cryptography.Primitives": "4.0.0",
+ "System.Text.Encoding": "4.0.11",
+ "runtime.native.System.Security.Cryptography": "4.0.0"
+ },
+ "compile": {
+ "ref/netstandard1.6/_._": {}
+ },
+ "runtime": {
+ "lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll": {}
+ },
+ "runtimeTargets": {
+ "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll": {
+ "assetType": "runtime",
+ "rid": "unix"
+ }
+ }
+ },
+ "System.Security.Cryptography.Primitives/4.0.0": {
+ "dependencies": {
+ "System.Diagnostics.Debug": "4.0.11",
+ "System.Globalization": "4.0.11",
+ "System.IO": "4.1.0",
+ "System.Resources.ResourceManager": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Threading": "4.0.11",
+ "System.Threading.Tasks": "4.0.11"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.Security.Cryptography.Primitives.dll": {}
+ },
+ "runtime": {
+ "lib/netstandard1.3/System.Security.Cryptography.Primitives.dll": {}
+ }
+ },
+ "System.Security.Cryptography.X509Certificates/4.1.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "System.Collections": "4.0.11",
+ "System.Diagnostics.Debug": "4.0.11",
+ "System.Globalization": "4.0.11",
+ "System.Globalization.Calendars": "4.0.1",
+ "System.IO": "4.1.0",
+ "System.IO.FileSystem": "4.0.1",
+ "System.IO.FileSystem.Primitives": "4.0.1",
+ "System.Resources.ResourceManager": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Runtime.Extensions": "4.1.0",
+ "System.Runtime.Handles": "4.0.1",
+ "System.Runtime.InteropServices": "4.1.0",
+ "System.Runtime.Numerics": "4.0.1",
+ "System.Security.Cryptography.Algorithms": "4.2.0",
+ "System.Security.Cryptography.Cng": "4.2.0",
+ "System.Security.Cryptography.Csp": "4.0.0",
+ "System.Security.Cryptography.Encoding": "4.0.0",
+ "System.Security.Cryptography.OpenSsl": "4.0.0",
+ "System.Security.Cryptography.Primitives": "4.0.0",
+ "System.Text.Encoding": "4.0.11",
+ "System.Threading": "4.0.11",
+ "runtime.native.System": "4.0.0",
+ "runtime.native.System.Net.Http": "4.0.1",
+ "runtime.native.System.Security.Cryptography": "4.0.0"
+ },
+ "compile": {
+ "ref/netstandard1.4/System.Security.Cryptography.X509Certificates.dll": {}
+ },
+ "runtimeTargets": {
+ "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll": {
+ "assetType": "runtime",
+ "rid": "unix"
+ },
+ "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll": {
+ "assetType": "runtime",
+ "rid": "win"
+ }
+ }
+ },
+ "System.Text.Encoding/4.0.11": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.Runtime": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.Text.Encoding.dll": {}
+ }
+ },
+ "System.Text.Encoding.Extensions/4.0.11": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Text.Encoding": "4.0.11"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.Text.Encoding.Extensions.dll": {}
+ }
+ },
+ "System.Text.RegularExpressions/4.1.0": {
+ "dependencies": {
+ "System.Collections": "4.0.11",
+ "System.Globalization": "4.0.11",
+ "System.Resources.ResourceManager": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Runtime.Extensions": "4.1.0",
+ "System.Threading": "4.0.11"
+ },
+ "compile": {
+ "ref/netstandard1.6/System.Text.RegularExpressions.dll": {}
+ },
+ "runtime": {
+ "lib/netstandard1.6/System.Text.RegularExpressions.dll": {}
+ }
+ },
+ "System.Threading/4.0.11": {
+ "dependencies": {
+ "System.Runtime": "4.1.0",
+ "System.Threading.Tasks": "4.0.11"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.Threading.dll": {}
+ },
+ "runtime": {
+ "lib/netstandard1.3/System.Threading.dll": {}
+ }
+ },
+ "System.Threading.Tasks/4.0.11": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.Runtime": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.Threading.Tasks.dll": {}
+ }
+ },
+ "System.Threading.Tasks.Extensions/4.0.0": {
+ "dependencies": {
+ "System.Collections": "4.0.11",
+ "System.Runtime": "4.1.0",
+ "System.Threading.Tasks": "4.0.11"
+ },
+ "compile": {
+ "lib/netstandard1.0/_._": {}
+ },
+ "runtime": {
+ "lib/netstandard1.0/System.Threading.Tasks.Extensions.dll": {}
+ }
+ },
+ "System.Threading.Timer/4.0.1": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.0.1",
+ "Microsoft.NETCore.Targets": "1.0.1",
+ "System.Runtime": "4.1.0"
+ },
+ "compile": {
+ "ref/netstandard1.2/System.Threading.Timer.dll": {}
+ }
+ },
+ "System.Xml.ReaderWriter/4.0.11": {
+ "dependencies": {
+ "System.Collections": "4.0.11",
+ "System.Diagnostics.Debug": "4.0.11",
+ "System.Globalization": "4.0.11",
+ "System.IO": "4.1.0",
+ "System.IO.FileSystem": "4.0.1",
+ "System.IO.FileSystem.Primitives": "4.0.1",
+ "System.Resources.ResourceManager": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Runtime.Extensions": "4.1.0",
+ "System.Runtime.InteropServices": "4.1.0",
+ "System.Text.Encoding": "4.0.11",
+ "System.Text.Encoding.Extensions": "4.0.11",
+ "System.Text.RegularExpressions": "4.1.0",
+ "System.Threading.Tasks": "4.0.11",
+ "System.Threading.Tasks.Extensions": "4.0.0"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.Xml.ReaderWriter.dll": {}
+ },
+ "runtime": {
+ "lib/netstandard1.3/System.Xml.ReaderWriter.dll": {}
+ }
+ },
+ "System.Xml.XDocument/4.0.11": {
+ "dependencies": {
+ "System.Collections": "4.0.11",
+ "System.Diagnostics.Debug": "4.0.11",
+ "System.Diagnostics.Tools": "4.0.1",
+ "System.Globalization": "4.0.11",
+ "System.IO": "4.1.0",
+ "System.Reflection": "4.1.0",
+ "System.Resources.ResourceManager": "4.0.1",
+ "System.Runtime": "4.1.0",
+ "System.Runtime.Extensions": "4.1.0",
+ "System.Text.Encoding": "4.0.11",
+ "System.Threading": "4.0.11",
+ "System.Xml.ReaderWriter": "4.0.11"
+ },
+ "compile": {
+ "ref/netstandard1.3/System.Xml.XDocument.dll": {}
+ },
+ "runtime": {
+ "lib/netstandard1.3/System.Xml.XDocument.dll": {}
+ }
+ }
+ }
+ },
+ "libraries": {
+ "Microsoft.NETCore.Platforms/1.0.1": {
+ "sha512": "2G6OjjJzwBfNOO8myRV/nFrbTw5iA+DEm0N+qUqhrOmaVtn4pC77h38I1jsXGw5VH55+dPfQsqHD0We9sCl9FQ==",
+ "type": "package",
+ "path": "Microsoft.NETCore.Platforms/1.0.1",
+ "files": [
+ "Microsoft.NETCore.Platforms.1.0.1.nupkg.sha512",
+ "Microsoft.NETCore.Platforms.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/netstandard1.0/_._",
+ "runtime.json"
+ ]
+ },
+ "Microsoft.NETCore.Targets/1.0.1": {
+ "sha512": "rkn+fKobF/cbWfnnfBOQHKVKIOpxMZBvlSHkqDWgBpwGDcLRduvs3D9OLGeV6GWGvVwNlVi2CBbTjuPmtHvyNw==",
+ "type": "package",
+ "path": "Microsoft.NETCore.Targets/1.0.1",
+ "files": [
+ "Microsoft.NETCore.Targets.1.0.1.nupkg.sha512",
+ "Microsoft.NETCore.Targets.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/netstandard1.0/_._",
+ "runtime.json"
+ ]
+ },
+ "Microsoft.Win32.Primitives/4.0.1": {
+ "sha512": "fQnBHO9DgcmkC9dYSJoBqo6sH1VJwJprUHh8F3hbcRlxiQiBUuTntdk8tUwV490OqC2kQUrinGwZyQHTieuXRA==",
+ "type": "package",
+ "path": "Microsoft.Win32.Primitives/4.0.1",
+ "files": [
+ "Microsoft.Win32.Primitives.4.0.1.nupkg.sha512",
+ "Microsoft.Win32.Primitives.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/Microsoft.Win32.Primitives.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/Microsoft.Win32.Primitives.dll",
+ "ref/netstandard1.3/Microsoft.Win32.Primitives.dll",
+ "ref/netstandard1.3/Microsoft.Win32.Primitives.xml",
+ "ref/netstandard1.3/de/Microsoft.Win32.Primitives.xml",
+ "ref/netstandard1.3/es/Microsoft.Win32.Primitives.xml",
+ "ref/netstandard1.3/fr/Microsoft.Win32.Primitives.xml",
+ "ref/netstandard1.3/it/Microsoft.Win32.Primitives.xml",
+ "ref/netstandard1.3/ja/Microsoft.Win32.Primitives.xml",
+ "ref/netstandard1.3/ko/Microsoft.Win32.Primitives.xml",
+ "ref/netstandard1.3/ru/Microsoft.Win32.Primitives.xml",
+ "ref/netstandard1.3/zh-hans/Microsoft.Win32.Primitives.xml",
+ "ref/netstandard1.3/zh-hant/Microsoft.Win32.Primitives.xml",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "NETStandard.Library/1.6.0": {
+ "sha512": "ypsCvIdCZ4IoYASJHt6tF2fMo7N30NLgV1EbmC+snO490OMl9FvVxmumw14rhReWU3j3g7BYudG6YCrchwHJlA==",
+ "type": "package",
+ "path": "NETStandard.Library/1.6.0",
+ "files": [
+ "NETStandard.Library.1.6.0.nupkg.sha512",
+ "NETStandard.Library.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt"
+ ]
+ },
+ "runtime.native.System/4.0.0": {
+ "sha512": "QfS/nQI7k/BLgmLrw7qm7YBoULEvgWnPI+cYsbfCVFTW8Aj+i8JhccxcFMu1RWms0YZzF+UHguNBK4Qn89e2Sg==",
+ "type": "package",
+ "path": "runtime.native.System/4.0.0",
+ "files": [
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/netstandard1.0/_._",
+ "runtime.native.System.4.0.0.nupkg.sha512",
+ "runtime.native.System.nuspec"
+ ]
+ },
+ "runtime.native.System.IO.Compression/4.1.0": {
+ "sha512": "Ob7nvnJBox1aaB222zSVZSkf4WrebPG4qFscfK7vmD7P7NxoSxACQLtO7ytWpqXDn2wcd/+45+EAZ7xjaPip8A==",
+ "type": "package",
+ "path": "runtime.native.System.IO.Compression/4.1.0",
+ "files": [
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/netstandard1.0/_._",
+ "runtime.native.System.IO.Compression.4.1.0.nupkg.sha512",
+ "runtime.native.System.IO.Compression.nuspec"
+ ]
+ },
+ "runtime.native.System.Net.Http/4.0.1": {
+ "sha512": "Nh0UPZx2Vifh8r+J+H2jxifZUD3sBrmolgiFWJd2yiNrxO0xTa6bAw3YwRn1VOiSen/tUXMS31ttNItCZ6lKuA==",
+ "type": "package",
+ "path": "runtime.native.System.Net.Http/4.0.1",
+ "files": [
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/netstandard1.0/_._",
+ "runtime.native.System.Net.Http.4.0.1.nupkg.sha512",
+ "runtime.native.System.Net.Http.nuspec"
+ ]
+ },
+ "runtime.native.System.Security.Cryptography/4.0.0": {
+ "sha512": "2CQK0jmO6Eu7ZeMgD+LOFbNJSXHFVQbCJJkEyEwowh1SCgYnrn9W9RykMfpeeVGw7h4IBvYikzpGUlmZTUafJw==",
+ "type": "package",
+ "path": "runtime.native.System.Security.Cryptography/4.0.0",
+ "files": [
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/netstandard1.0/_._",
+ "runtime.native.System.Security.Cryptography.4.0.0.nupkg.sha512",
+ "runtime.native.System.Security.Cryptography.nuspec"
+ ]
+ },
+ "System.AppContext/4.1.0": {
+ "sha512": "3QjO4jNV7PdKkmQAVp9atA+usVnKRwI3Kx1nMwJ93T0LcQfx7pKAYk0nKz5wn1oP5iqlhZuy6RXOFdhr7rDwow==",
+ "type": "package",
+ "path": "System.AppContext/4.1.0",
+ "files": [
+ "System.AppContext.4.1.0.nupkg.sha512",
+ "System.AppContext.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.AppContext.dll",
+ "lib/net463/System.AppContext.dll",
+ "lib/netcore50/System.AppContext.dll",
+ "lib/netstandard1.6/System.AppContext.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.AppContext.dll",
+ "ref/net463/System.AppContext.dll",
+ "ref/netstandard/_._",
+ "ref/netstandard1.3/System.AppContext.dll",
+ "ref/netstandard1.3/System.AppContext.xml",
+ "ref/netstandard1.3/de/System.AppContext.xml",
+ "ref/netstandard1.3/es/System.AppContext.xml",
+ "ref/netstandard1.3/fr/System.AppContext.xml",
+ "ref/netstandard1.3/it/System.AppContext.xml",
+ "ref/netstandard1.3/ja/System.AppContext.xml",
+ "ref/netstandard1.3/ko/System.AppContext.xml",
+ "ref/netstandard1.3/ru/System.AppContext.xml",
+ "ref/netstandard1.3/zh-hans/System.AppContext.xml",
+ "ref/netstandard1.3/zh-hant/System.AppContext.xml",
+ "ref/netstandard1.6/System.AppContext.dll",
+ "ref/netstandard1.6/System.AppContext.xml",
+ "ref/netstandard1.6/de/System.AppContext.xml",
+ "ref/netstandard1.6/es/System.AppContext.xml",
+ "ref/netstandard1.6/fr/System.AppContext.xml",
+ "ref/netstandard1.6/it/System.AppContext.xml",
+ "ref/netstandard1.6/ja/System.AppContext.xml",
+ "ref/netstandard1.6/ko/System.AppContext.xml",
+ "ref/netstandard1.6/ru/System.AppContext.xml",
+ "ref/netstandard1.6/zh-hans/System.AppContext.xml",
+ "ref/netstandard1.6/zh-hant/System.AppContext.xml",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._",
+ "runtimes/aot/lib/netcore50/System.AppContext.dll"
+ ]
+ },
+ "System.Buffers/4.0.0": {
+ "sha512": "msXumHfjjURSkvxUjYuq4N2ghHoRi2VpXcKMA7gK6ujQfU3vGpl+B6ld0ATRg+FZFpRyA6PgEPA+VlIkTeNf2w==",
+ "type": "package",
+ "path": "System.Buffers/4.0.0",
+ "files": [
+ "System.Buffers.4.0.0.nupkg.sha512",
+ "System.Buffers.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/netstandard1.1/.xml",
+ "lib/netstandard1.1/System.Buffers.dll"
+ ]
+ },
+ "System.Collections/4.0.11": {
+ "sha512": "YUJGz6eFKqS0V//mLt25vFGrrCvOnsXjlvFQs+KimpwNxug9x0Pzy4PlFMU3Q2IzqAa9G2L4LsK3+9vCBK7oTg==",
+ "type": "package",
+ "path": "System.Collections/4.0.11",
+ "files": [
+ "System.Collections.4.0.11.nupkg.sha512",
+ "System.Collections.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/portable-net45+win8+wp8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/netcore50/System.Collections.dll",
+ "ref/netcore50/System.Collections.xml",
+ "ref/netcore50/de/System.Collections.xml",
+ "ref/netcore50/es/System.Collections.xml",
+ "ref/netcore50/fr/System.Collections.xml",
+ "ref/netcore50/it/System.Collections.xml",
+ "ref/netcore50/ja/System.Collections.xml",
+ "ref/netcore50/ko/System.Collections.xml",
+ "ref/netcore50/ru/System.Collections.xml",
+ "ref/netcore50/zh-hans/System.Collections.xml",
+ "ref/netcore50/zh-hant/System.Collections.xml",
+ "ref/netstandard1.0/System.Collections.dll",
+ "ref/netstandard1.0/System.Collections.xml",
+ "ref/netstandard1.0/de/System.Collections.xml",
+ "ref/netstandard1.0/es/System.Collections.xml",
+ "ref/netstandard1.0/fr/System.Collections.xml",
+ "ref/netstandard1.0/it/System.Collections.xml",
+ "ref/netstandard1.0/ja/System.Collections.xml",
+ "ref/netstandard1.0/ko/System.Collections.xml",
+ "ref/netstandard1.0/ru/System.Collections.xml",
+ "ref/netstandard1.0/zh-hans/System.Collections.xml",
+ "ref/netstandard1.0/zh-hant/System.Collections.xml",
+ "ref/netstandard1.3/System.Collections.dll",
+ "ref/netstandard1.3/System.Collections.xml",
+ "ref/netstandard1.3/de/System.Collections.xml",
+ "ref/netstandard1.3/es/System.Collections.xml",
+ "ref/netstandard1.3/fr/System.Collections.xml",
+ "ref/netstandard1.3/it/System.Collections.xml",
+ "ref/netstandard1.3/ja/System.Collections.xml",
+ "ref/netstandard1.3/ko/System.Collections.xml",
+ "ref/netstandard1.3/ru/System.Collections.xml",
+ "ref/netstandard1.3/zh-hans/System.Collections.xml",
+ "ref/netstandard1.3/zh-hant/System.Collections.xml",
+ "ref/portable-net45+win8+wp8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Collections.Concurrent/4.0.12": {
+ "sha512": "2gBcbb3drMLgxlI0fBfxMA31ec6AEyYCHygGse4vxceJan8mRIWeKJ24BFzN7+bi/NFTgdIgufzb94LWO5EERQ==",
+ "type": "package",
+ "path": "System.Collections.Concurrent/4.0.12",
+ "files": [
+ "System.Collections.Concurrent.4.0.12.nupkg.sha512",
+ "System.Collections.Concurrent.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/netcore50/System.Collections.Concurrent.dll",
+ "lib/netstandard1.3/System.Collections.Concurrent.dll",
+ "lib/portable-net45+win8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/netcore50/System.Collections.Concurrent.dll",
+ "ref/netcore50/System.Collections.Concurrent.xml",
+ "ref/netcore50/de/System.Collections.Concurrent.xml",
+ "ref/netcore50/es/System.Collections.Concurrent.xml",
+ "ref/netcore50/fr/System.Collections.Concurrent.xml",
+ "ref/netcore50/it/System.Collections.Concurrent.xml",
+ "ref/netcore50/ja/System.Collections.Concurrent.xml",
+ "ref/netcore50/ko/System.Collections.Concurrent.xml",
+ "ref/netcore50/ru/System.Collections.Concurrent.xml",
+ "ref/netcore50/zh-hans/System.Collections.Concurrent.xml",
+ "ref/netcore50/zh-hant/System.Collections.Concurrent.xml",
+ "ref/netstandard1.1/System.Collections.Concurrent.dll",
+ "ref/netstandard1.1/System.Collections.Concurrent.xml",
+ "ref/netstandard1.1/de/System.Collections.Concurrent.xml",
+ "ref/netstandard1.1/es/System.Collections.Concurrent.xml",
+ "ref/netstandard1.1/fr/System.Collections.Concurrent.xml",
+ "ref/netstandard1.1/it/System.Collections.Concurrent.xml",
+ "ref/netstandard1.1/ja/System.Collections.Concurrent.xml",
+ "ref/netstandard1.1/ko/System.Collections.Concurrent.xml",
+ "ref/netstandard1.1/ru/System.Collections.Concurrent.xml",
+ "ref/netstandard1.1/zh-hans/System.Collections.Concurrent.xml",
+ "ref/netstandard1.1/zh-hant/System.Collections.Concurrent.xml",
+ "ref/netstandard1.3/System.Collections.Concurrent.dll",
+ "ref/netstandard1.3/System.Collections.Concurrent.xml",
+ "ref/netstandard1.3/de/System.Collections.Concurrent.xml",
+ "ref/netstandard1.3/es/System.Collections.Concurrent.xml",
+ "ref/netstandard1.3/fr/System.Collections.Concurrent.xml",
+ "ref/netstandard1.3/it/System.Collections.Concurrent.xml",
+ "ref/netstandard1.3/ja/System.Collections.Concurrent.xml",
+ "ref/netstandard1.3/ko/System.Collections.Concurrent.xml",
+ "ref/netstandard1.3/ru/System.Collections.Concurrent.xml",
+ "ref/netstandard1.3/zh-hans/System.Collections.Concurrent.xml",
+ "ref/netstandard1.3/zh-hant/System.Collections.Concurrent.xml",
+ "ref/portable-net45+win8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Console/4.0.0": {
+ "sha512": "qSKUSOIiYA/a0g5XXdxFcUFmv1hNICBD7QZ0QhGYVipPIhvpiydY8VZqr1thmCXvmn8aipMg64zuanB4eotK9A==",
+ "type": "package",
+ "path": "System.Console/4.0.0",
+ "files": [
+ "System.Console.4.0.0.nupkg.sha512",
+ "System.Console.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.Console.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.Console.dll",
+ "ref/netstandard1.3/System.Console.dll",
+ "ref/netstandard1.3/System.Console.xml",
+ "ref/netstandard1.3/de/System.Console.xml",
+ "ref/netstandard1.3/es/System.Console.xml",
+ "ref/netstandard1.3/fr/System.Console.xml",
+ "ref/netstandard1.3/it/System.Console.xml",
+ "ref/netstandard1.3/ja/System.Console.xml",
+ "ref/netstandard1.3/ko/System.Console.xml",
+ "ref/netstandard1.3/ru/System.Console.xml",
+ "ref/netstandard1.3/zh-hans/System.Console.xml",
+ "ref/netstandard1.3/zh-hant/System.Console.xml",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Diagnostics.Debug/4.0.11": {
+ "sha512": "w5U95fVKHY4G8ASs/K5iK3J5LY+/dLFd4vKejsnI/ZhBsWS9hQakfx3Zr7lRWKg4tAw9r4iktyvsTagWkqYCiw==",
+ "type": "package",
+ "path": "System.Diagnostics.Debug/4.0.11",
+ "files": [
+ "System.Diagnostics.Debug.4.0.11.nupkg.sha512",
+ "System.Diagnostics.Debug.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/portable-net45+win8+wp8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/netcore50/System.Diagnostics.Debug.dll",
+ "ref/netcore50/System.Diagnostics.Debug.xml",
+ "ref/netcore50/de/System.Diagnostics.Debug.xml",
+ "ref/netcore50/es/System.Diagnostics.Debug.xml",
+ "ref/netcore50/fr/System.Diagnostics.Debug.xml",
+ "ref/netcore50/it/System.Diagnostics.Debug.xml",
+ "ref/netcore50/ja/System.Diagnostics.Debug.xml",
+ "ref/netcore50/ko/System.Diagnostics.Debug.xml",
+ "ref/netcore50/ru/System.Diagnostics.Debug.xml",
+ "ref/netcore50/zh-hans/System.Diagnostics.Debug.xml",
+ "ref/netcore50/zh-hant/System.Diagnostics.Debug.xml",
+ "ref/netstandard1.0/System.Diagnostics.Debug.dll",
+ "ref/netstandard1.0/System.Diagnostics.Debug.xml",
+ "ref/netstandard1.0/de/System.Diagnostics.Debug.xml",
+ "ref/netstandard1.0/es/System.Diagnostics.Debug.xml",
+ "ref/netstandard1.0/fr/System.Diagnostics.Debug.xml",
+ "ref/netstandard1.0/it/System.Diagnostics.Debug.xml",
+ "ref/netstandard1.0/ja/System.Diagnostics.Debug.xml",
+ "ref/netstandard1.0/ko/System.Diagnostics.Debug.xml",
+ "ref/netstandard1.0/ru/System.Diagnostics.Debug.xml",
+ "ref/netstandard1.0/zh-hans/System.Diagnostics.Debug.xml",
+ "ref/netstandard1.0/zh-hant/System.Diagnostics.Debug.xml",
+ "ref/netstandard1.3/System.Diagnostics.Debug.dll",
+ "ref/netstandard1.3/System.Diagnostics.Debug.xml",
+ "ref/netstandard1.3/de/System.Diagnostics.Debug.xml",
+ "ref/netstandard1.3/es/System.Diagnostics.Debug.xml",
+ "ref/netstandard1.3/fr/System.Diagnostics.Debug.xml",
+ "ref/netstandard1.3/it/System.Diagnostics.Debug.xml",
+ "ref/netstandard1.3/ja/System.Diagnostics.Debug.xml",
+ "ref/netstandard1.3/ko/System.Diagnostics.Debug.xml",
+ "ref/netstandard1.3/ru/System.Diagnostics.Debug.xml",
+ "ref/netstandard1.3/zh-hans/System.Diagnostics.Debug.xml",
+ "ref/netstandard1.3/zh-hant/System.Diagnostics.Debug.xml",
+ "ref/portable-net45+win8+wp8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Diagnostics.DiagnosticSource/4.0.0": {
+ "sha512": "YKglnq4BMTJxfcr6nuT08g+yJ0UxdePIHxosiLuljuHIUR6t4KhFsyaHOaOc1Ofqp0PUvJ0EmcgiEz6T7vEx3w==",
+ "type": "package",
+ "path": "System.Diagnostics.DiagnosticSource/4.0.0",
+ "files": [
+ "System.Diagnostics.DiagnosticSource.4.0.0.nupkg.sha512",
+ "System.Diagnostics.DiagnosticSource.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/net46/System.Diagnostics.DiagnosticSource.dll",
+ "lib/net46/System.Diagnostics.DiagnosticSource.xml",
+ "lib/netstandard1.1/System.Diagnostics.DiagnosticSource.dll",
+ "lib/netstandard1.1/System.Diagnostics.DiagnosticSource.xml",
+ "lib/netstandard1.3/System.Diagnostics.DiagnosticSource.dll",
+ "lib/netstandard1.3/System.Diagnostics.DiagnosticSource.xml",
+ "lib/portable-net45+win8+wpa81/System.Diagnostics.DiagnosticSource.dll",
+ "lib/portable-net45+win8+wpa81/System.Diagnostics.DiagnosticSource.xml"
+ ]
+ },
+ "System.Diagnostics.Tools/4.0.1": {
+ "sha512": "xBfJ8pnd4C17dWaC9FM6aShzbJcRNMChUMD42I6772KGGrqaFdumwhn9OdM68erj1ueNo3xdQ1EwiFjK5k8p0g==",
+ "type": "package",
+ "path": "System.Diagnostics.Tools/4.0.1",
+ "files": [
+ "System.Diagnostics.Tools.4.0.1.nupkg.sha512",
+ "System.Diagnostics.Tools.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/portable-net45+win8+wp8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/netcore50/System.Diagnostics.Tools.dll",
+ "ref/netcore50/System.Diagnostics.Tools.xml",
+ "ref/netcore50/de/System.Diagnostics.Tools.xml",
+ "ref/netcore50/es/System.Diagnostics.Tools.xml",
+ "ref/netcore50/fr/System.Diagnostics.Tools.xml",
+ "ref/netcore50/it/System.Diagnostics.Tools.xml",
+ "ref/netcore50/ja/System.Diagnostics.Tools.xml",
+ "ref/netcore50/ko/System.Diagnostics.Tools.xml",
+ "ref/netcore50/ru/System.Diagnostics.Tools.xml",
+ "ref/netcore50/zh-hans/System.Diagnostics.Tools.xml",
+ "ref/netcore50/zh-hant/System.Diagnostics.Tools.xml",
+ "ref/netstandard1.0/System.Diagnostics.Tools.dll",
+ "ref/netstandard1.0/System.Diagnostics.Tools.xml",
+ "ref/netstandard1.0/de/System.Diagnostics.Tools.xml",
+ "ref/netstandard1.0/es/System.Diagnostics.Tools.xml",
+ "ref/netstandard1.0/fr/System.Diagnostics.Tools.xml",
+ "ref/netstandard1.0/it/System.Diagnostics.Tools.xml",
+ "ref/netstandard1.0/ja/System.Diagnostics.Tools.xml",
+ "ref/netstandard1.0/ko/System.Diagnostics.Tools.xml",
+ "ref/netstandard1.0/ru/System.Diagnostics.Tools.xml",
+ "ref/netstandard1.0/zh-hans/System.Diagnostics.Tools.xml",
+ "ref/netstandard1.0/zh-hant/System.Diagnostics.Tools.xml",
+ "ref/portable-net45+win8+wp8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Diagnostics.Tracing/4.1.0": {
+ "sha512": "vDN1PoMZCkkdNjvZLql592oYJZgS7URcJzJ7bxeBgGtx5UtR5leNm49VmfHGqIffX4FKacHbI3H6UyNSHQknBg==",
+ "type": "package",
+ "path": "System.Diagnostics.Tracing/4.1.0",
+ "files": [
+ "System.Diagnostics.Tracing.4.1.0.nupkg.sha512",
+ "System.Diagnostics.Tracing.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/net462/System.Diagnostics.Tracing.dll",
+ "lib/portable-net45+win8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/net462/System.Diagnostics.Tracing.dll",
+ "ref/netcore50/System.Diagnostics.Tracing.dll",
+ "ref/netcore50/System.Diagnostics.Tracing.xml",
+ "ref/netcore50/de/System.Diagnostics.Tracing.xml",
+ "ref/netcore50/es/System.Diagnostics.Tracing.xml",
+ "ref/netcore50/fr/System.Diagnostics.Tracing.xml",
+ "ref/netcore50/it/System.Diagnostics.Tracing.xml",
+ "ref/netcore50/ja/System.Diagnostics.Tracing.xml",
+ "ref/netcore50/ko/System.Diagnostics.Tracing.xml",
+ "ref/netcore50/ru/System.Diagnostics.Tracing.xml",
+ "ref/netcore50/zh-hans/System.Diagnostics.Tracing.xml",
+ "ref/netcore50/zh-hant/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.1/System.Diagnostics.Tracing.dll",
+ "ref/netstandard1.1/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.1/de/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.1/es/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.1/fr/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.1/it/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.1/ja/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.1/ko/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.1/ru/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.1/zh-hans/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.1/zh-hant/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.2/System.Diagnostics.Tracing.dll",
+ "ref/netstandard1.2/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.2/de/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.2/es/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.2/fr/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.2/it/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.2/ja/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.2/ko/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.2/ru/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.2/zh-hans/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.2/zh-hant/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.3/System.Diagnostics.Tracing.dll",
+ "ref/netstandard1.3/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.3/de/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.3/es/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.3/fr/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.3/it/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.3/ja/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.3/ko/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.3/ru/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.3/zh-hans/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.3/zh-hant/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.5/System.Diagnostics.Tracing.dll",
+ "ref/netstandard1.5/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.5/de/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.5/es/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.5/fr/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.5/it/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.5/ja/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.5/ko/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.5/ru/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.5/zh-hans/System.Diagnostics.Tracing.xml",
+ "ref/netstandard1.5/zh-hant/System.Diagnostics.Tracing.xml",
+ "ref/portable-net45+win8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Globalization/4.0.11": {
+ "sha512": "B95h0YLEL2oSnwF/XjqSWKnwKOy/01VWkNlsCeMTFJLLabflpGV26nK164eRs5GiaRSBGpOxQ3pKoSnnyZN5pg==",
+ "type": "package",
+ "path": "System.Globalization/4.0.11",
+ "files": [
+ "System.Globalization.4.0.11.nupkg.sha512",
+ "System.Globalization.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/portable-net45+win8+wp8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/netcore50/System.Globalization.dll",
+ "ref/netcore50/System.Globalization.xml",
+ "ref/netcore50/de/System.Globalization.xml",
+ "ref/netcore50/es/System.Globalization.xml",
+ "ref/netcore50/fr/System.Globalization.xml",
+ "ref/netcore50/it/System.Globalization.xml",
+ "ref/netcore50/ja/System.Globalization.xml",
+ "ref/netcore50/ko/System.Globalization.xml",
+ "ref/netcore50/ru/System.Globalization.xml",
+ "ref/netcore50/zh-hans/System.Globalization.xml",
+ "ref/netcore50/zh-hant/System.Globalization.xml",
+ "ref/netstandard1.0/System.Globalization.dll",
+ "ref/netstandard1.0/System.Globalization.xml",
+ "ref/netstandard1.0/de/System.Globalization.xml",
+ "ref/netstandard1.0/es/System.Globalization.xml",
+ "ref/netstandard1.0/fr/System.Globalization.xml",
+ "ref/netstandard1.0/it/System.Globalization.xml",
+ "ref/netstandard1.0/ja/System.Globalization.xml",
+ "ref/netstandard1.0/ko/System.Globalization.xml",
+ "ref/netstandard1.0/ru/System.Globalization.xml",
+ "ref/netstandard1.0/zh-hans/System.Globalization.xml",
+ "ref/netstandard1.0/zh-hant/System.Globalization.xml",
+ "ref/netstandard1.3/System.Globalization.dll",
+ "ref/netstandard1.3/System.Globalization.xml",
+ "ref/netstandard1.3/de/System.Globalization.xml",
+ "ref/netstandard1.3/es/System.Globalization.xml",
+ "ref/netstandard1.3/fr/System.Globalization.xml",
+ "ref/netstandard1.3/it/System.Globalization.xml",
+ "ref/netstandard1.3/ja/System.Globalization.xml",
+ "ref/netstandard1.3/ko/System.Globalization.xml",
+ "ref/netstandard1.3/ru/System.Globalization.xml",
+ "ref/netstandard1.3/zh-hans/System.Globalization.xml",
+ "ref/netstandard1.3/zh-hant/System.Globalization.xml",
+ "ref/portable-net45+win8+wp8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Globalization.Calendars/4.0.1": {
+ "sha512": "L1c6IqeQ88vuzC1P81JeHmHA8mxq8a18NUBNXnIY/BVb+TCyAaGIFbhpZt60h9FJNmisymoQkHEFSE9Vslja1Q==",
+ "type": "package",
+ "path": "System.Globalization.Calendars/4.0.1",
+ "files": [
+ "System.Globalization.Calendars.4.0.1.nupkg.sha512",
+ "System.Globalization.Calendars.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.Globalization.Calendars.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.Globalization.Calendars.dll",
+ "ref/netstandard1.3/System.Globalization.Calendars.dll",
+ "ref/netstandard1.3/System.Globalization.Calendars.xml",
+ "ref/netstandard1.3/de/System.Globalization.Calendars.xml",
+ "ref/netstandard1.3/es/System.Globalization.Calendars.xml",
+ "ref/netstandard1.3/fr/System.Globalization.Calendars.xml",
+ "ref/netstandard1.3/it/System.Globalization.Calendars.xml",
+ "ref/netstandard1.3/ja/System.Globalization.Calendars.xml",
+ "ref/netstandard1.3/ko/System.Globalization.Calendars.xml",
+ "ref/netstandard1.3/ru/System.Globalization.Calendars.xml",
+ "ref/netstandard1.3/zh-hans/System.Globalization.Calendars.xml",
+ "ref/netstandard1.3/zh-hant/System.Globalization.Calendars.xml",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Globalization.Extensions/4.0.1": {
+ "sha512": "KKo23iKeOaIg61SSXwjANN7QYDr/3op3OWGGzDzz7mypx0Za0fZSeG0l6cco8Ntp8YMYkIQcAqlk8yhm5/Uhcg==",
+ "type": "package",
+ "path": "System.Globalization.Extensions/4.0.1",
+ "files": [
+ "System.Globalization.Extensions.4.0.1.nupkg.sha512",
+ "System.Globalization.Extensions.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.Globalization.Extensions.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.Globalization.Extensions.dll",
+ "ref/netstandard1.3/System.Globalization.Extensions.dll",
+ "ref/netstandard1.3/System.Globalization.Extensions.xml",
+ "ref/netstandard1.3/de/System.Globalization.Extensions.xml",
+ "ref/netstandard1.3/es/System.Globalization.Extensions.xml",
+ "ref/netstandard1.3/fr/System.Globalization.Extensions.xml",
+ "ref/netstandard1.3/it/System.Globalization.Extensions.xml",
+ "ref/netstandard1.3/ja/System.Globalization.Extensions.xml",
+ "ref/netstandard1.3/ko/System.Globalization.Extensions.xml",
+ "ref/netstandard1.3/ru/System.Globalization.Extensions.xml",
+ "ref/netstandard1.3/zh-hans/System.Globalization.Extensions.xml",
+ "ref/netstandard1.3/zh-hant/System.Globalization.Extensions.xml",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._",
+ "runtimes/unix/lib/netstandard1.3/System.Globalization.Extensions.dll",
+ "runtimes/win/lib/net46/System.Globalization.Extensions.dll",
+ "runtimes/win/lib/netstandard1.3/System.Globalization.Extensions.dll"
+ ]
+ },
+ "System.IO/4.1.0": {
+ "sha512": "3KlTJceQc3gnGIaHZ7UBZO26SHL1SHE4ddrmiwumFnId+CEHP+O8r386tZKaE6zlk5/mF8vifMBzHj9SaXN+mQ==",
+ "type": "package",
+ "path": "System.IO/4.1.0",
+ "files": [
+ "System.IO.4.1.0.nupkg.sha512",
+ "System.IO.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/net462/System.IO.dll",
+ "lib/portable-net45+win8+wp8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/net462/System.IO.dll",
+ "ref/netcore50/System.IO.dll",
+ "ref/netcore50/System.IO.xml",
+ "ref/netcore50/de/System.IO.xml",
+ "ref/netcore50/es/System.IO.xml",
+ "ref/netcore50/fr/System.IO.xml",
+ "ref/netcore50/it/System.IO.xml",
+ "ref/netcore50/ja/System.IO.xml",
+ "ref/netcore50/ko/System.IO.xml",
+ "ref/netcore50/ru/System.IO.xml",
+ "ref/netcore50/zh-hans/System.IO.xml",
+ "ref/netcore50/zh-hant/System.IO.xml",
+ "ref/netstandard1.0/System.IO.dll",
+ "ref/netstandard1.0/System.IO.xml",
+ "ref/netstandard1.0/de/System.IO.xml",
+ "ref/netstandard1.0/es/System.IO.xml",
+ "ref/netstandard1.0/fr/System.IO.xml",
+ "ref/netstandard1.0/it/System.IO.xml",
+ "ref/netstandard1.0/ja/System.IO.xml",
+ "ref/netstandard1.0/ko/System.IO.xml",
+ "ref/netstandard1.0/ru/System.IO.xml",
+ "ref/netstandard1.0/zh-hans/System.IO.xml",
+ "ref/netstandard1.0/zh-hant/System.IO.xml",
+ "ref/netstandard1.3/System.IO.dll",
+ "ref/netstandard1.3/System.IO.xml",
+ "ref/netstandard1.3/de/System.IO.xml",
+ "ref/netstandard1.3/es/System.IO.xml",
+ "ref/netstandard1.3/fr/System.IO.xml",
+ "ref/netstandard1.3/it/System.IO.xml",
+ "ref/netstandard1.3/ja/System.IO.xml",
+ "ref/netstandard1.3/ko/System.IO.xml",
+ "ref/netstandard1.3/ru/System.IO.xml",
+ "ref/netstandard1.3/zh-hans/System.IO.xml",
+ "ref/netstandard1.3/zh-hant/System.IO.xml",
+ "ref/netstandard1.5/System.IO.dll",
+ "ref/netstandard1.5/System.IO.xml",
+ "ref/netstandard1.5/de/System.IO.xml",
+ "ref/netstandard1.5/es/System.IO.xml",
+ "ref/netstandard1.5/fr/System.IO.xml",
+ "ref/netstandard1.5/it/System.IO.xml",
+ "ref/netstandard1.5/ja/System.IO.xml",
+ "ref/netstandard1.5/ko/System.IO.xml",
+ "ref/netstandard1.5/ru/System.IO.xml",
+ "ref/netstandard1.5/zh-hans/System.IO.xml",
+ "ref/netstandard1.5/zh-hant/System.IO.xml",
+ "ref/portable-net45+win8+wp8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.IO.Compression/4.1.0": {
+ "sha512": "TjnBS6eztThSzeSib+WyVbLzEdLKUcEHN69VtS3u8aAsSc18FU6xCZlNWWsEd8SKcXAE+y1sOu7VbU8sUeM0sg==",
+ "type": "package",
+ "path": "System.IO.Compression/4.1.0",
+ "files": [
+ "System.IO.Compression.4.1.0.nupkg.sha512",
+ "System.IO.Compression.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/net46/System.IO.Compression.dll",
+ "lib/portable-net45+win8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/net46/System.IO.Compression.dll",
+ "ref/netcore50/System.IO.Compression.dll",
+ "ref/netcore50/System.IO.Compression.xml",
+ "ref/netcore50/de/System.IO.Compression.xml",
+ "ref/netcore50/es/System.IO.Compression.xml",
+ "ref/netcore50/fr/System.IO.Compression.xml",
+ "ref/netcore50/it/System.IO.Compression.xml",
+ "ref/netcore50/ja/System.IO.Compression.xml",
+ "ref/netcore50/ko/System.IO.Compression.xml",
+ "ref/netcore50/ru/System.IO.Compression.xml",
+ "ref/netcore50/zh-hans/System.IO.Compression.xml",
+ "ref/netcore50/zh-hant/System.IO.Compression.xml",
+ "ref/netstandard1.1/System.IO.Compression.dll",
+ "ref/netstandard1.1/System.IO.Compression.xml",
+ "ref/netstandard1.1/de/System.IO.Compression.xml",
+ "ref/netstandard1.1/es/System.IO.Compression.xml",
+ "ref/netstandard1.1/fr/System.IO.Compression.xml",
+ "ref/netstandard1.1/it/System.IO.Compression.xml",
+ "ref/netstandard1.1/ja/System.IO.Compression.xml",
+ "ref/netstandard1.1/ko/System.IO.Compression.xml",
+ "ref/netstandard1.1/ru/System.IO.Compression.xml",
+ "ref/netstandard1.1/zh-hans/System.IO.Compression.xml",
+ "ref/netstandard1.1/zh-hant/System.IO.Compression.xml",
+ "ref/netstandard1.3/System.IO.Compression.dll",
+ "ref/netstandard1.3/System.IO.Compression.xml",
+ "ref/netstandard1.3/de/System.IO.Compression.xml",
+ "ref/netstandard1.3/es/System.IO.Compression.xml",
+ "ref/netstandard1.3/fr/System.IO.Compression.xml",
+ "ref/netstandard1.3/it/System.IO.Compression.xml",
+ "ref/netstandard1.3/ja/System.IO.Compression.xml",
+ "ref/netstandard1.3/ko/System.IO.Compression.xml",
+ "ref/netstandard1.3/ru/System.IO.Compression.xml",
+ "ref/netstandard1.3/zh-hans/System.IO.Compression.xml",
+ "ref/netstandard1.3/zh-hant/System.IO.Compression.xml",
+ "ref/portable-net45+win8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._",
+ "runtimes/unix/lib/netstandard1.3/System.IO.Compression.dll",
+ "runtimes/win/lib/net46/System.IO.Compression.dll",
+ "runtimes/win/lib/netstandard1.3/System.IO.Compression.dll"
+ ]
+ },
+ "System.IO.Compression.ZipFile/4.0.1": {
+ "sha512": "hBQYJzfTbQURF10nLhd+az2NHxsU6MU7AB8RUf4IolBP5lOAm4Luho851xl+CqslmhI5ZH/el8BlngEk4lBkaQ==",
+ "type": "package",
+ "path": "System.IO.Compression.ZipFile/4.0.1",
+ "files": [
+ "System.IO.Compression.ZipFile.4.0.1.nupkg.sha512",
+ "System.IO.Compression.ZipFile.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.IO.Compression.ZipFile.dll",
+ "lib/netstandard1.3/System.IO.Compression.ZipFile.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.IO.Compression.ZipFile.dll",
+ "ref/netstandard1.3/System.IO.Compression.ZipFile.dll",
+ "ref/netstandard1.3/System.IO.Compression.ZipFile.xml",
+ "ref/netstandard1.3/de/System.IO.Compression.ZipFile.xml",
+ "ref/netstandard1.3/es/System.IO.Compression.ZipFile.xml",
+ "ref/netstandard1.3/fr/System.IO.Compression.ZipFile.xml",
+ "ref/netstandard1.3/it/System.IO.Compression.ZipFile.xml",
+ "ref/netstandard1.3/ja/System.IO.Compression.ZipFile.xml",
+ "ref/netstandard1.3/ko/System.IO.Compression.ZipFile.xml",
+ "ref/netstandard1.3/ru/System.IO.Compression.ZipFile.xml",
+ "ref/netstandard1.3/zh-hans/System.IO.Compression.ZipFile.xml",
+ "ref/netstandard1.3/zh-hant/System.IO.Compression.ZipFile.xml",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.IO.FileSystem/4.0.1": {
+ "sha512": "IBErlVq5jOggAD69bg1t0pJcHaDbJbWNUZTPI96fkYWzwYbN6D9wRHMULLDd9dHsl7C2YsxXL31LMfPI1SWt8w==",
+ "type": "package",
+ "path": "System.IO.FileSystem/4.0.1",
+ "files": [
+ "System.IO.FileSystem.4.0.1.nupkg.sha512",
+ "System.IO.FileSystem.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.IO.FileSystem.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.IO.FileSystem.dll",
+ "ref/netstandard1.3/System.IO.FileSystem.dll",
+ "ref/netstandard1.3/System.IO.FileSystem.xml",
+ "ref/netstandard1.3/de/System.IO.FileSystem.xml",
+ "ref/netstandard1.3/es/System.IO.FileSystem.xml",
+ "ref/netstandard1.3/fr/System.IO.FileSystem.xml",
+ "ref/netstandard1.3/it/System.IO.FileSystem.xml",
+ "ref/netstandard1.3/ja/System.IO.FileSystem.xml",
+ "ref/netstandard1.3/ko/System.IO.FileSystem.xml",
+ "ref/netstandard1.3/ru/System.IO.FileSystem.xml",
+ "ref/netstandard1.3/zh-hans/System.IO.FileSystem.xml",
+ "ref/netstandard1.3/zh-hant/System.IO.FileSystem.xml",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.IO.FileSystem.Primitives/4.0.1": {
+ "sha512": "kWkKD203JJKxJeE74p8aF8y4Qc9r9WQx4C0cHzHPrY3fv/L/IhWnyCHaFJ3H1QPOH6A93whlQ2vG5nHlBDvzWQ==",
+ "type": "package",
+ "path": "System.IO.FileSystem.Primitives/4.0.1",
+ "files": [
+ "System.IO.FileSystem.Primitives.4.0.1.nupkg.sha512",
+ "System.IO.FileSystem.Primitives.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.IO.FileSystem.Primitives.dll",
+ "lib/netstandard1.3/System.IO.FileSystem.Primitives.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.IO.FileSystem.Primitives.dll",
+ "ref/netstandard1.3/System.IO.FileSystem.Primitives.dll",
+ "ref/netstandard1.3/System.IO.FileSystem.Primitives.xml",
+ "ref/netstandard1.3/de/System.IO.FileSystem.Primitives.xml",
+ "ref/netstandard1.3/es/System.IO.FileSystem.Primitives.xml",
+ "ref/netstandard1.3/fr/System.IO.FileSystem.Primitives.xml",
+ "ref/netstandard1.3/it/System.IO.FileSystem.Primitives.xml",
+ "ref/netstandard1.3/ja/System.IO.FileSystem.Primitives.xml",
+ "ref/netstandard1.3/ko/System.IO.FileSystem.Primitives.xml",
+ "ref/netstandard1.3/ru/System.IO.FileSystem.Primitives.xml",
+ "ref/netstandard1.3/zh-hans/System.IO.FileSystem.Primitives.xml",
+ "ref/netstandard1.3/zh-hant/System.IO.FileSystem.Primitives.xml",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Linq/4.1.0": {
+ "sha512": "bQ0iYFOQI0nuTnt+NQADns6ucV4DUvMdwN6CbkB1yj8i7arTGiTN5eok1kQwdnnNWSDZfIUySQY+J3d5KjWn0g==",
+ "type": "package",
+ "path": "System.Linq/4.1.0",
+ "files": [
+ "System.Linq.4.1.0.nupkg.sha512",
+ "System.Linq.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/net463/System.Linq.dll",
+ "lib/netcore50/System.Linq.dll",
+ "lib/netstandard1.6/System.Linq.dll",
+ "lib/portable-net45+win8+wp8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/net463/System.Linq.dll",
+ "ref/netcore50/System.Linq.dll",
+ "ref/netcore50/System.Linq.xml",
+ "ref/netcore50/de/System.Linq.xml",
+ "ref/netcore50/es/System.Linq.xml",
+ "ref/netcore50/fr/System.Linq.xml",
+ "ref/netcore50/it/System.Linq.xml",
+ "ref/netcore50/ja/System.Linq.xml",
+ "ref/netcore50/ko/System.Linq.xml",
+ "ref/netcore50/ru/System.Linq.xml",
+ "ref/netcore50/zh-hans/System.Linq.xml",
+ "ref/netcore50/zh-hant/System.Linq.xml",
+ "ref/netstandard1.0/System.Linq.dll",
+ "ref/netstandard1.0/System.Linq.xml",
+ "ref/netstandard1.0/de/System.Linq.xml",
+ "ref/netstandard1.0/es/System.Linq.xml",
+ "ref/netstandard1.0/fr/System.Linq.xml",
+ "ref/netstandard1.0/it/System.Linq.xml",
+ "ref/netstandard1.0/ja/System.Linq.xml",
+ "ref/netstandard1.0/ko/System.Linq.xml",
+ "ref/netstandard1.0/ru/System.Linq.xml",
+ "ref/netstandard1.0/zh-hans/System.Linq.xml",
+ "ref/netstandard1.0/zh-hant/System.Linq.xml",
+ "ref/netstandard1.6/System.Linq.dll",
+ "ref/netstandard1.6/System.Linq.xml",
+ "ref/netstandard1.6/de/System.Linq.xml",
+ "ref/netstandard1.6/es/System.Linq.xml",
+ "ref/netstandard1.6/fr/System.Linq.xml",
+ "ref/netstandard1.6/it/System.Linq.xml",
+ "ref/netstandard1.6/ja/System.Linq.xml",
+ "ref/netstandard1.6/ko/System.Linq.xml",
+ "ref/netstandard1.6/ru/System.Linq.xml",
+ "ref/netstandard1.6/zh-hans/System.Linq.xml",
+ "ref/netstandard1.6/zh-hant/System.Linq.xml",
+ "ref/portable-net45+win8+wp8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Linq.Expressions/4.1.0": {
+ "sha512": "I+y02iqkgmCAyfbqOmSDOgqdZQ5tTj80Akm5BPSS8EeB0VGWdy6X1KCoYe8Pk6pwDoAKZUOdLVxnTJcExiv5zw==",
+ "type": "package",
+ "path": "System.Linq.Expressions/4.1.0",
+ "files": [
+ "System.Linq.Expressions.4.1.0.nupkg.sha512",
+ "System.Linq.Expressions.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/net463/System.Linq.Expressions.dll",
+ "lib/netcore50/System.Linq.Expressions.dll",
+ "lib/netstandard1.6/System.Linq.Expressions.dll",
+ "lib/portable-net45+win8+wp8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/net463/System.Linq.Expressions.dll",
+ "ref/netcore50/System.Linq.Expressions.dll",
+ "ref/netcore50/System.Linq.Expressions.xml",
+ "ref/netcore50/de/System.Linq.Expressions.xml",
+ "ref/netcore50/es/System.Linq.Expressions.xml",
+ "ref/netcore50/fr/System.Linq.Expressions.xml",
+ "ref/netcore50/it/System.Linq.Expressions.xml",
+ "ref/netcore50/ja/System.Linq.Expressions.xml",
+ "ref/netcore50/ko/System.Linq.Expressions.xml",
+ "ref/netcore50/ru/System.Linq.Expressions.xml",
+ "ref/netcore50/zh-hans/System.Linq.Expressions.xml",
+ "ref/netcore50/zh-hant/System.Linq.Expressions.xml",
+ "ref/netstandard1.0/System.Linq.Expressions.dll",
+ "ref/netstandard1.0/System.Linq.Expressions.xml",
+ "ref/netstandard1.0/de/System.Linq.Expressions.xml",
+ "ref/netstandard1.0/es/System.Linq.Expressions.xml",
+ "ref/netstandard1.0/fr/System.Linq.Expressions.xml",
+ "ref/netstandard1.0/it/System.Linq.Expressions.xml",
+ "ref/netstandard1.0/ja/System.Linq.Expressions.xml",
+ "ref/netstandard1.0/ko/System.Linq.Expressions.xml",
+ "ref/netstandard1.0/ru/System.Linq.Expressions.xml",
+ "ref/netstandard1.0/zh-hans/System.Linq.Expressions.xml",
+ "ref/netstandard1.0/zh-hant/System.Linq.Expressions.xml",
+ "ref/netstandard1.3/System.Linq.Expressions.dll",
+ "ref/netstandard1.3/System.Linq.Expressions.xml",
+ "ref/netstandard1.3/de/System.Linq.Expressions.xml",
+ "ref/netstandard1.3/es/System.Linq.Expressions.xml",
+ "ref/netstandard1.3/fr/System.Linq.Expressions.xml",
+ "ref/netstandard1.3/it/System.Linq.Expressions.xml",
+ "ref/netstandard1.3/ja/System.Linq.Expressions.xml",
+ "ref/netstandard1.3/ko/System.Linq.Expressions.xml",
+ "ref/netstandard1.3/ru/System.Linq.Expressions.xml",
+ "ref/netstandard1.3/zh-hans/System.Linq.Expressions.xml",
+ "ref/netstandard1.3/zh-hant/System.Linq.Expressions.xml",
+ "ref/netstandard1.6/System.Linq.Expressions.dll",
+ "ref/netstandard1.6/System.Linq.Expressions.xml",
+ "ref/netstandard1.6/de/System.Linq.Expressions.xml",
+ "ref/netstandard1.6/es/System.Linq.Expressions.xml",
+ "ref/netstandard1.6/fr/System.Linq.Expressions.xml",
+ "ref/netstandard1.6/it/System.Linq.Expressions.xml",
+ "ref/netstandard1.6/ja/System.Linq.Expressions.xml",
+ "ref/netstandard1.6/ko/System.Linq.Expressions.xml",
+ "ref/netstandard1.6/ru/System.Linq.Expressions.xml",
+ "ref/netstandard1.6/zh-hans/System.Linq.Expressions.xml",
+ "ref/netstandard1.6/zh-hant/System.Linq.Expressions.xml",
+ "ref/portable-net45+win8+wp8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._",
+ "runtimes/aot/lib/netcore50/System.Linq.Expressions.dll"
+ ]
+ },
+ "System.Net.Http/4.1.0": {
+ "sha512": "ULq9g3SOPVuupt+Y3U+A37coXzdNisB1neFCSKzBwo182u0RDddKJF8I5+HfyXqK6OhJPgeoAwWXrbiUXuRDsg==",
+ "type": "package",
+ "path": "System.Net.Http/4.1.0",
+ "files": [
+ "System.Net.Http.4.1.0.nupkg.sha512",
+ "System.Net.Http.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/Xamarinmac20/_._",
+ "lib/monoandroid10/_._",
+ "lib/monotouch10/_._",
+ "lib/net45/_._",
+ "lib/net46/System.Net.Http.dll",
+ "lib/portable-net45+win8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/Xamarinmac20/_._",
+ "ref/monoandroid10/_._",
+ "ref/monotouch10/_._",
+ "ref/net45/_._",
+ "ref/net46/System.Net.Http.dll",
+ "ref/net46/System.Net.Http.xml",
+ "ref/net46/de/System.Net.Http.xml",
+ "ref/net46/es/System.Net.Http.xml",
+ "ref/net46/fr/System.Net.Http.xml",
+ "ref/net46/it/System.Net.Http.xml",
+ "ref/net46/ja/System.Net.Http.xml",
+ "ref/net46/ko/System.Net.Http.xml",
+ "ref/net46/ru/System.Net.Http.xml",
+ "ref/net46/zh-hans/System.Net.Http.xml",
+ "ref/net46/zh-hant/System.Net.Http.xml",
+ "ref/netcore50/System.Net.Http.dll",
+ "ref/netcore50/System.Net.Http.xml",
+ "ref/netcore50/de/System.Net.Http.xml",
+ "ref/netcore50/es/System.Net.Http.xml",
+ "ref/netcore50/fr/System.Net.Http.xml",
+ "ref/netcore50/it/System.Net.Http.xml",
+ "ref/netcore50/ja/System.Net.Http.xml",
+ "ref/netcore50/ko/System.Net.Http.xml",
+ "ref/netcore50/ru/System.Net.Http.xml",
+ "ref/netcore50/zh-hans/System.Net.Http.xml",
+ "ref/netcore50/zh-hant/System.Net.Http.xml",
+ "ref/netstandard1.1/System.Net.Http.dll",
+ "ref/netstandard1.1/System.Net.Http.xml",
+ "ref/netstandard1.1/de/System.Net.Http.xml",
+ "ref/netstandard1.1/es/System.Net.Http.xml",
+ "ref/netstandard1.1/fr/System.Net.Http.xml",
+ "ref/netstandard1.1/it/System.Net.Http.xml",
+ "ref/netstandard1.1/ja/System.Net.Http.xml",
+ "ref/netstandard1.1/ko/System.Net.Http.xml",
+ "ref/netstandard1.1/ru/System.Net.Http.xml",
+ "ref/netstandard1.1/zh-hans/System.Net.Http.xml",
+ "ref/netstandard1.1/zh-hant/System.Net.Http.xml",
+ "ref/netstandard1.3/System.Net.Http.dll",
+ "ref/netstandard1.3/System.Net.Http.xml",
+ "ref/netstandard1.3/de/System.Net.Http.xml",
+ "ref/netstandard1.3/es/System.Net.Http.xml",
+ "ref/netstandard1.3/fr/System.Net.Http.xml",
+ "ref/netstandard1.3/it/System.Net.Http.xml",
+ "ref/netstandard1.3/ja/System.Net.Http.xml",
+ "ref/netstandard1.3/ko/System.Net.Http.xml",
+ "ref/netstandard1.3/ru/System.Net.Http.xml",
+ "ref/netstandard1.3/zh-hans/System.Net.Http.xml",
+ "ref/netstandard1.3/zh-hant/System.Net.Http.xml",
+ "ref/portable-net45+win8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._",
+ "runtimes/unix/lib/netstandard1.6/System.Net.Http.dll",
+ "runtimes/win/lib/net46/System.Net.Http.dll",
+ "runtimes/win/lib/netcore50/System.Net.Http.dll",
+ "runtimes/win/lib/netstandard1.3/System.Net.Http.dll"
+ ]
+ },
+ "System.Net.Primitives/4.0.11": {
+ "sha512": "hVvfl4405DRjA2408luZekbPhplJK03j2Y2lSfMlny7GHXlkByw1iLnc9mgKW0GdQn73vvMcWrWewAhylXA4Nw==",
+ "type": "package",
+ "path": "System.Net.Primitives/4.0.11",
+ "files": [
+ "System.Net.Primitives.4.0.11.nupkg.sha512",
+ "System.Net.Primitives.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/portable-net45+win8+wp8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/netcore50/System.Net.Primitives.dll",
+ "ref/netcore50/System.Net.Primitives.xml",
+ "ref/netcore50/de/System.Net.Primitives.xml",
+ "ref/netcore50/es/System.Net.Primitives.xml",
+ "ref/netcore50/fr/System.Net.Primitives.xml",
+ "ref/netcore50/it/System.Net.Primitives.xml",
+ "ref/netcore50/ja/System.Net.Primitives.xml",
+ "ref/netcore50/ko/System.Net.Primitives.xml",
+ "ref/netcore50/ru/System.Net.Primitives.xml",
+ "ref/netcore50/zh-hans/System.Net.Primitives.xml",
+ "ref/netcore50/zh-hant/System.Net.Primitives.xml",
+ "ref/netstandard1.0/System.Net.Primitives.dll",
+ "ref/netstandard1.0/System.Net.Primitives.xml",
+ "ref/netstandard1.0/de/System.Net.Primitives.xml",
+ "ref/netstandard1.0/es/System.Net.Primitives.xml",
+ "ref/netstandard1.0/fr/System.Net.Primitives.xml",
+ "ref/netstandard1.0/it/System.Net.Primitives.xml",
+ "ref/netstandard1.0/ja/System.Net.Primitives.xml",
+ "ref/netstandard1.0/ko/System.Net.Primitives.xml",
+ "ref/netstandard1.0/ru/System.Net.Primitives.xml",
+ "ref/netstandard1.0/zh-hans/System.Net.Primitives.xml",
+ "ref/netstandard1.0/zh-hant/System.Net.Primitives.xml",
+ "ref/netstandard1.1/System.Net.Primitives.dll",
+ "ref/netstandard1.1/System.Net.Primitives.xml",
+ "ref/netstandard1.1/de/System.Net.Primitives.xml",
+ "ref/netstandard1.1/es/System.Net.Primitives.xml",
+ "ref/netstandard1.1/fr/System.Net.Primitives.xml",
+ "ref/netstandard1.1/it/System.Net.Primitives.xml",
+ "ref/netstandard1.1/ja/System.Net.Primitives.xml",
+ "ref/netstandard1.1/ko/System.Net.Primitives.xml",
+ "ref/netstandard1.1/ru/System.Net.Primitives.xml",
+ "ref/netstandard1.1/zh-hans/System.Net.Primitives.xml",
+ "ref/netstandard1.1/zh-hant/System.Net.Primitives.xml",
+ "ref/netstandard1.3/System.Net.Primitives.dll",
+ "ref/netstandard1.3/System.Net.Primitives.xml",
+ "ref/netstandard1.3/de/System.Net.Primitives.xml",
+ "ref/netstandard1.3/es/System.Net.Primitives.xml",
+ "ref/netstandard1.3/fr/System.Net.Primitives.xml",
+ "ref/netstandard1.3/it/System.Net.Primitives.xml",
+ "ref/netstandard1.3/ja/System.Net.Primitives.xml",
+ "ref/netstandard1.3/ko/System.Net.Primitives.xml",
+ "ref/netstandard1.3/ru/System.Net.Primitives.xml",
+ "ref/netstandard1.3/zh-hans/System.Net.Primitives.xml",
+ "ref/netstandard1.3/zh-hant/System.Net.Primitives.xml",
+ "ref/portable-net45+win8+wp8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Net.Sockets/4.1.0": {
+ "sha512": "xAz0N3dAV/aR/9g8r0Y5oEqU1JRsz29F5EGb/WVHmX3jVSLqi2/92M5hTad2aNWovruXrJpJtgZ9fccPMG9uSw==",
+ "type": "package",
+ "path": "System.Net.Sockets/4.1.0",
+ "files": [
+ "System.Net.Sockets.4.1.0.nupkg.sha512",
+ "System.Net.Sockets.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.Net.Sockets.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.Net.Sockets.dll",
+ "ref/netstandard1.3/System.Net.Sockets.dll",
+ "ref/netstandard1.3/System.Net.Sockets.xml",
+ "ref/netstandard1.3/de/System.Net.Sockets.xml",
+ "ref/netstandard1.3/es/System.Net.Sockets.xml",
+ "ref/netstandard1.3/fr/System.Net.Sockets.xml",
+ "ref/netstandard1.3/it/System.Net.Sockets.xml",
+ "ref/netstandard1.3/ja/System.Net.Sockets.xml",
+ "ref/netstandard1.3/ko/System.Net.Sockets.xml",
+ "ref/netstandard1.3/ru/System.Net.Sockets.xml",
+ "ref/netstandard1.3/zh-hans/System.Net.Sockets.xml",
+ "ref/netstandard1.3/zh-hant/System.Net.Sockets.xml",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.ObjectModel/4.0.12": {
+ "sha512": "tAgJM1xt3ytyMoW4qn4wIqgJYm7L7TShRZG4+Q4Qsi2PCcj96pXN7nRywS9KkB3p/xDUjc2HSwP9SROyPYDYKQ==",
+ "type": "package",
+ "path": "System.ObjectModel/4.0.12",
+ "files": [
+ "System.ObjectModel.4.0.12.nupkg.sha512",
+ "System.ObjectModel.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/netcore50/System.ObjectModel.dll",
+ "lib/netstandard1.3/System.ObjectModel.dll",
+ "lib/portable-net45+win8+wp8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/netcore50/System.ObjectModel.dll",
+ "ref/netcore50/System.ObjectModel.xml",
+ "ref/netcore50/de/System.ObjectModel.xml",
+ "ref/netcore50/es/System.ObjectModel.xml",
+ "ref/netcore50/fr/System.ObjectModel.xml",
+ "ref/netcore50/it/System.ObjectModel.xml",
+ "ref/netcore50/ja/System.ObjectModel.xml",
+ "ref/netcore50/ko/System.ObjectModel.xml",
+ "ref/netcore50/ru/System.ObjectModel.xml",
+ "ref/netcore50/zh-hans/System.ObjectModel.xml",
+ "ref/netcore50/zh-hant/System.ObjectModel.xml",
+ "ref/netstandard1.0/System.ObjectModel.dll",
+ "ref/netstandard1.0/System.ObjectModel.xml",
+ "ref/netstandard1.0/de/System.ObjectModel.xml",
+ "ref/netstandard1.0/es/System.ObjectModel.xml",
+ "ref/netstandard1.0/fr/System.ObjectModel.xml",
+ "ref/netstandard1.0/it/System.ObjectModel.xml",
+ "ref/netstandard1.0/ja/System.ObjectModel.xml",
+ "ref/netstandard1.0/ko/System.ObjectModel.xml",
+ "ref/netstandard1.0/ru/System.ObjectModel.xml",
+ "ref/netstandard1.0/zh-hans/System.ObjectModel.xml",
+ "ref/netstandard1.0/zh-hant/System.ObjectModel.xml",
+ "ref/netstandard1.3/System.ObjectModel.dll",
+ "ref/netstandard1.3/System.ObjectModel.xml",
+ "ref/netstandard1.3/de/System.ObjectModel.xml",
+ "ref/netstandard1.3/es/System.ObjectModel.xml",
+ "ref/netstandard1.3/fr/System.ObjectModel.xml",
+ "ref/netstandard1.3/it/System.ObjectModel.xml",
+ "ref/netstandard1.3/ja/System.ObjectModel.xml",
+ "ref/netstandard1.3/ko/System.ObjectModel.xml",
+ "ref/netstandard1.3/ru/System.ObjectModel.xml",
+ "ref/netstandard1.3/zh-hans/System.ObjectModel.xml",
+ "ref/netstandard1.3/zh-hant/System.ObjectModel.xml",
+ "ref/portable-net45+win8+wp8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Reflection/4.1.0": {
+ "sha512": "JCKANJ0TI7kzoQzuwB/OoJANy1Lg338B6+JVacPl4TpUwi3cReg3nMLplMq2uqYfHFQpKIlHAUVAJlImZz/4ng==",
+ "type": "package",
+ "path": "System.Reflection/4.1.0",
+ "files": [
+ "System.Reflection.4.1.0.nupkg.sha512",
+ "System.Reflection.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/net462/System.Reflection.dll",
+ "lib/portable-net45+win8+wp8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/net462/System.Reflection.dll",
+ "ref/netcore50/System.Reflection.dll",
+ "ref/netcore50/System.Reflection.xml",
+ "ref/netcore50/de/System.Reflection.xml",
+ "ref/netcore50/es/System.Reflection.xml",
+ "ref/netcore50/fr/System.Reflection.xml",
+ "ref/netcore50/it/System.Reflection.xml",
+ "ref/netcore50/ja/System.Reflection.xml",
+ "ref/netcore50/ko/System.Reflection.xml",
+ "ref/netcore50/ru/System.Reflection.xml",
+ "ref/netcore50/zh-hans/System.Reflection.xml",
+ "ref/netcore50/zh-hant/System.Reflection.xml",
+ "ref/netstandard1.0/System.Reflection.dll",
+ "ref/netstandard1.0/System.Reflection.xml",
+ "ref/netstandard1.0/de/System.Reflection.xml",
+ "ref/netstandard1.0/es/System.Reflection.xml",
+ "ref/netstandard1.0/fr/System.Reflection.xml",
+ "ref/netstandard1.0/it/System.Reflection.xml",
+ "ref/netstandard1.0/ja/System.Reflection.xml",
+ "ref/netstandard1.0/ko/System.Reflection.xml",
+ "ref/netstandard1.0/ru/System.Reflection.xml",
+ "ref/netstandard1.0/zh-hans/System.Reflection.xml",
+ "ref/netstandard1.0/zh-hant/System.Reflection.xml",
+ "ref/netstandard1.3/System.Reflection.dll",
+ "ref/netstandard1.3/System.Reflection.xml",
+ "ref/netstandard1.3/de/System.Reflection.xml",
+ "ref/netstandard1.3/es/System.Reflection.xml",
+ "ref/netstandard1.3/fr/System.Reflection.xml",
+ "ref/netstandard1.3/it/System.Reflection.xml",
+ "ref/netstandard1.3/ja/System.Reflection.xml",
+ "ref/netstandard1.3/ko/System.Reflection.xml",
+ "ref/netstandard1.3/ru/System.Reflection.xml",
+ "ref/netstandard1.3/zh-hans/System.Reflection.xml",
+ "ref/netstandard1.3/zh-hant/System.Reflection.xml",
+ "ref/netstandard1.5/System.Reflection.dll",
+ "ref/netstandard1.5/System.Reflection.xml",
+ "ref/netstandard1.5/de/System.Reflection.xml",
+ "ref/netstandard1.5/es/System.Reflection.xml",
+ "ref/netstandard1.5/fr/System.Reflection.xml",
+ "ref/netstandard1.5/it/System.Reflection.xml",
+ "ref/netstandard1.5/ja/System.Reflection.xml",
+ "ref/netstandard1.5/ko/System.Reflection.xml",
+ "ref/netstandard1.5/ru/System.Reflection.xml",
+ "ref/netstandard1.5/zh-hans/System.Reflection.xml",
+ "ref/netstandard1.5/zh-hant/System.Reflection.xml",
+ "ref/portable-net45+win8+wp8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Reflection.Emit/4.0.1": {
+ "sha512": "P2wqAj72fFjpP6wb9nSfDqNBMab+2ovzSDzUZK7MVIm54tBJEPr9jWfSjjoTpPwj1LeKcmX3vr0ttyjSSFM47g==",
+ "type": "package",
+ "path": "System.Reflection.Emit/4.0.1",
+ "files": [
+ "System.Reflection.Emit.4.0.1.nupkg.sha512",
+ "System.Reflection.Emit.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/net45/_._",
+ "lib/netcore50/System.Reflection.Emit.dll",
+ "lib/netstandard1.3/System.Reflection.Emit.dll",
+ "lib/xamarinmac20/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/net45/_._",
+ "ref/netstandard1.1/System.Reflection.Emit.dll",
+ "ref/netstandard1.1/System.Reflection.Emit.xml",
+ "ref/netstandard1.1/de/System.Reflection.Emit.xml",
+ "ref/netstandard1.1/es/System.Reflection.Emit.xml",
+ "ref/netstandard1.1/fr/System.Reflection.Emit.xml",
+ "ref/netstandard1.1/it/System.Reflection.Emit.xml",
+ "ref/netstandard1.1/ja/System.Reflection.Emit.xml",
+ "ref/netstandard1.1/ko/System.Reflection.Emit.xml",
+ "ref/netstandard1.1/ru/System.Reflection.Emit.xml",
+ "ref/netstandard1.1/zh-hans/System.Reflection.Emit.xml",
+ "ref/netstandard1.1/zh-hant/System.Reflection.Emit.xml",
+ "ref/xamarinmac20/_._"
+ ]
+ },
+ "System.Reflection.Emit.ILGeneration/4.0.1": {
+ "sha512": "Ov6dU8Bu15Bc7zuqttgHF12J5lwSWyTf1S+FJouUXVMSqImLZzYaQ+vRr1rQ0OZ0HqsrwWl4dsKHELckQkVpgA==",
+ "type": "package",
+ "path": "System.Reflection.Emit.ILGeneration/4.0.1",
+ "files": [
+ "System.Reflection.Emit.ILGeneration.4.0.1.nupkg.sha512",
+ "System.Reflection.Emit.ILGeneration.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/net45/_._",
+ "lib/netcore50/System.Reflection.Emit.ILGeneration.dll",
+ "lib/netstandard1.3/System.Reflection.Emit.ILGeneration.dll",
+ "lib/portable-net45+wp8/_._",
+ "lib/wp80/_._",
+ "ref/net45/_._",
+ "ref/netstandard1.0/System.Reflection.Emit.ILGeneration.dll",
+ "ref/netstandard1.0/System.Reflection.Emit.ILGeneration.xml",
+ "ref/netstandard1.0/de/System.Reflection.Emit.ILGeneration.xml",
+ "ref/netstandard1.0/es/System.Reflection.Emit.ILGeneration.xml",
+ "ref/netstandard1.0/fr/System.Reflection.Emit.ILGeneration.xml",
+ "ref/netstandard1.0/it/System.Reflection.Emit.ILGeneration.xml",
+ "ref/netstandard1.0/ja/System.Reflection.Emit.ILGeneration.xml",
+ "ref/netstandard1.0/ko/System.Reflection.Emit.ILGeneration.xml",
+ "ref/netstandard1.0/ru/System.Reflection.Emit.ILGeneration.xml",
+ "ref/netstandard1.0/zh-hans/System.Reflection.Emit.ILGeneration.xml",
+ "ref/netstandard1.0/zh-hant/System.Reflection.Emit.ILGeneration.xml",
+ "ref/portable-net45+wp8/_._",
+ "ref/wp80/_._",
+ "runtimes/aot/lib/netcore50/_._"
+ ]
+ },
+ "System.Reflection.Emit.Lightweight/4.0.1": {
+ "sha512": "sSzHHXueZ5Uh0OLpUQprhr+ZYJrLPA2Cmr4gn0wj9+FftNKXx8RIMKvO9qnjk2ebPYUjZ+F2ulGdPOsvj+MEjA==",
+ "type": "package",
+ "path": "System.Reflection.Emit.Lightweight/4.0.1",
+ "files": [
+ "System.Reflection.Emit.Lightweight.4.0.1.nupkg.sha512",
+ "System.Reflection.Emit.Lightweight.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/net45/_._",
+ "lib/netcore50/System.Reflection.Emit.Lightweight.dll",
+ "lib/netstandard1.3/System.Reflection.Emit.Lightweight.dll",
+ "lib/portable-net45+wp8/_._",
+ "lib/wp80/_._",
+ "ref/net45/_._",
+ "ref/netstandard1.0/System.Reflection.Emit.Lightweight.dll",
+ "ref/netstandard1.0/System.Reflection.Emit.Lightweight.xml",
+ "ref/netstandard1.0/de/System.Reflection.Emit.Lightweight.xml",
+ "ref/netstandard1.0/es/System.Reflection.Emit.Lightweight.xml",
+ "ref/netstandard1.0/fr/System.Reflection.Emit.Lightweight.xml",
+ "ref/netstandard1.0/it/System.Reflection.Emit.Lightweight.xml",
+ "ref/netstandard1.0/ja/System.Reflection.Emit.Lightweight.xml",
+ "ref/netstandard1.0/ko/System.Reflection.Emit.Lightweight.xml",
+ "ref/netstandard1.0/ru/System.Reflection.Emit.Lightweight.xml",
+ "ref/netstandard1.0/zh-hans/System.Reflection.Emit.Lightweight.xml",
+ "ref/netstandard1.0/zh-hant/System.Reflection.Emit.Lightweight.xml",
+ "ref/portable-net45+wp8/_._",
+ "ref/wp80/_._",
+ "runtimes/aot/lib/netcore50/_._"
+ ]
+ },
+ "System.Reflection.Extensions/4.0.1": {
+ "sha512": "GYrtRsZcMuHF3sbmRHfMYpvxZoIN2bQGrYGerUiWLEkqdEUQZhH3TRSaC/oI4wO0II1RKBPlpIa1TOMxIcOOzQ==",
+ "type": "package",
+ "path": "System.Reflection.Extensions/4.0.1",
+ "files": [
+ "System.Reflection.Extensions.4.0.1.nupkg.sha512",
+ "System.Reflection.Extensions.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/portable-net45+win8+wp8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/netcore50/System.Reflection.Extensions.dll",
+ "ref/netcore50/System.Reflection.Extensions.xml",
+ "ref/netcore50/de/System.Reflection.Extensions.xml",
+ "ref/netcore50/es/System.Reflection.Extensions.xml",
+ "ref/netcore50/fr/System.Reflection.Extensions.xml",
+ "ref/netcore50/it/System.Reflection.Extensions.xml",
+ "ref/netcore50/ja/System.Reflection.Extensions.xml",
+ "ref/netcore50/ko/System.Reflection.Extensions.xml",
+ "ref/netcore50/ru/System.Reflection.Extensions.xml",
+ "ref/netcore50/zh-hans/System.Reflection.Extensions.xml",
+ "ref/netcore50/zh-hant/System.Reflection.Extensions.xml",
+ "ref/netstandard1.0/System.Reflection.Extensions.dll",
+ "ref/netstandard1.0/System.Reflection.Extensions.xml",
+ "ref/netstandard1.0/de/System.Reflection.Extensions.xml",
+ "ref/netstandard1.0/es/System.Reflection.Extensions.xml",
+ "ref/netstandard1.0/fr/System.Reflection.Extensions.xml",
+ "ref/netstandard1.0/it/System.Reflection.Extensions.xml",
+ "ref/netstandard1.0/ja/System.Reflection.Extensions.xml",
+ "ref/netstandard1.0/ko/System.Reflection.Extensions.xml",
+ "ref/netstandard1.0/ru/System.Reflection.Extensions.xml",
+ "ref/netstandard1.0/zh-hans/System.Reflection.Extensions.xml",
+ "ref/netstandard1.0/zh-hant/System.Reflection.Extensions.xml",
+ "ref/portable-net45+win8+wp8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Reflection.Primitives/4.0.1": {
+ "sha512": "4inTox4wTBaDhB7V3mPvp9XlCbeGYWVEM9/fXALd52vNEAVisc1BoVWQPuUuD0Ga//dNbA/WeMy9u9mzLxGTHQ==",
+ "type": "package",
+ "path": "System.Reflection.Primitives/4.0.1",
+ "files": [
+ "System.Reflection.Primitives.4.0.1.nupkg.sha512",
+ "System.Reflection.Primitives.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/portable-net45+win8+wp8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/netcore50/System.Reflection.Primitives.dll",
+ "ref/netcore50/System.Reflection.Primitives.xml",
+ "ref/netcore50/de/System.Reflection.Primitives.xml",
+ "ref/netcore50/es/System.Reflection.Primitives.xml",
+ "ref/netcore50/fr/System.Reflection.Primitives.xml",
+ "ref/netcore50/it/System.Reflection.Primitives.xml",
+ "ref/netcore50/ja/System.Reflection.Primitives.xml",
+ "ref/netcore50/ko/System.Reflection.Primitives.xml",
+ "ref/netcore50/ru/System.Reflection.Primitives.xml",
+ "ref/netcore50/zh-hans/System.Reflection.Primitives.xml",
+ "ref/netcore50/zh-hant/System.Reflection.Primitives.xml",
+ "ref/netstandard1.0/System.Reflection.Primitives.dll",
+ "ref/netstandard1.0/System.Reflection.Primitives.xml",
+ "ref/netstandard1.0/de/System.Reflection.Primitives.xml",
+ "ref/netstandard1.0/es/System.Reflection.Primitives.xml",
+ "ref/netstandard1.0/fr/System.Reflection.Primitives.xml",
+ "ref/netstandard1.0/it/System.Reflection.Primitives.xml",
+ "ref/netstandard1.0/ja/System.Reflection.Primitives.xml",
+ "ref/netstandard1.0/ko/System.Reflection.Primitives.xml",
+ "ref/netstandard1.0/ru/System.Reflection.Primitives.xml",
+ "ref/netstandard1.0/zh-hans/System.Reflection.Primitives.xml",
+ "ref/netstandard1.0/zh-hant/System.Reflection.Primitives.xml",
+ "ref/portable-net45+win8+wp8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Reflection.TypeExtensions/4.1.0": {
+ "sha512": "tsQ/ptQ3H5FYfON8lL4MxRk/8kFyE0A+tGPXmVP967cT/gzLHYxIejIYSxp4JmIeFHVP78g/F2FE1mUUTbDtrg==",
+ "type": "package",
+ "path": "System.Reflection.TypeExtensions/4.1.0",
+ "files": [
+ "System.Reflection.TypeExtensions.4.1.0.nupkg.sha512",
+ "System.Reflection.TypeExtensions.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.Reflection.TypeExtensions.dll",
+ "lib/net462/System.Reflection.TypeExtensions.dll",
+ "lib/netcore50/System.Reflection.TypeExtensions.dll",
+ "lib/netstandard1.5/System.Reflection.TypeExtensions.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.Reflection.TypeExtensions.dll",
+ "ref/net462/System.Reflection.TypeExtensions.dll",
+ "ref/netstandard1.3/System.Reflection.TypeExtensions.dll",
+ "ref/netstandard1.3/System.Reflection.TypeExtensions.xml",
+ "ref/netstandard1.3/de/System.Reflection.TypeExtensions.xml",
+ "ref/netstandard1.3/es/System.Reflection.TypeExtensions.xml",
+ "ref/netstandard1.3/fr/System.Reflection.TypeExtensions.xml",
+ "ref/netstandard1.3/it/System.Reflection.TypeExtensions.xml",
+ "ref/netstandard1.3/ja/System.Reflection.TypeExtensions.xml",
+ "ref/netstandard1.3/ko/System.Reflection.TypeExtensions.xml",
+ "ref/netstandard1.3/ru/System.Reflection.TypeExtensions.xml",
+ "ref/netstandard1.3/zh-hans/System.Reflection.TypeExtensions.xml",
+ "ref/netstandard1.3/zh-hant/System.Reflection.TypeExtensions.xml",
+ "ref/netstandard1.5/System.Reflection.TypeExtensions.dll",
+ "ref/netstandard1.5/System.Reflection.TypeExtensions.xml",
+ "ref/netstandard1.5/de/System.Reflection.TypeExtensions.xml",
+ "ref/netstandard1.5/es/System.Reflection.TypeExtensions.xml",
+ "ref/netstandard1.5/fr/System.Reflection.TypeExtensions.xml",
+ "ref/netstandard1.5/it/System.Reflection.TypeExtensions.xml",
+ "ref/netstandard1.5/ja/System.Reflection.TypeExtensions.xml",
+ "ref/netstandard1.5/ko/System.Reflection.TypeExtensions.xml",
+ "ref/netstandard1.5/ru/System.Reflection.TypeExtensions.xml",
+ "ref/netstandard1.5/zh-hans/System.Reflection.TypeExtensions.xml",
+ "ref/netstandard1.5/zh-hant/System.Reflection.TypeExtensions.xml",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._",
+ "runtimes/aot/lib/netcore50/System.Reflection.TypeExtensions.dll"
+ ]
+ },
+ "System.Resources.ResourceManager/4.0.1": {
+ "sha512": "TxwVeUNoTgUOdQ09gfTjvW411MF+w9MBYL7AtNVc+HtBCFlutPLhUCdZjNkjbhj3bNQWMdHboF0KIWEOjJssbA==",
+ "type": "package",
+ "path": "System.Resources.ResourceManager/4.0.1",
+ "files": [
+ "System.Resources.ResourceManager.4.0.1.nupkg.sha512",
+ "System.Resources.ResourceManager.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/portable-net45+win8+wp8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/netcore50/System.Resources.ResourceManager.dll",
+ "ref/netcore50/System.Resources.ResourceManager.xml",
+ "ref/netcore50/de/System.Resources.ResourceManager.xml",
+ "ref/netcore50/es/System.Resources.ResourceManager.xml",
+ "ref/netcore50/fr/System.Resources.ResourceManager.xml",
+ "ref/netcore50/it/System.Resources.ResourceManager.xml",
+ "ref/netcore50/ja/System.Resources.ResourceManager.xml",
+ "ref/netcore50/ko/System.Resources.ResourceManager.xml",
+ "ref/netcore50/ru/System.Resources.ResourceManager.xml",
+ "ref/netcore50/zh-hans/System.Resources.ResourceManager.xml",
+ "ref/netcore50/zh-hant/System.Resources.ResourceManager.xml",
+ "ref/netstandard1.0/System.Resources.ResourceManager.dll",
+ "ref/netstandard1.0/System.Resources.ResourceManager.xml",
+ "ref/netstandard1.0/de/System.Resources.ResourceManager.xml",
+ "ref/netstandard1.0/es/System.Resources.ResourceManager.xml",
+ "ref/netstandard1.0/fr/System.Resources.ResourceManager.xml",
+ "ref/netstandard1.0/it/System.Resources.ResourceManager.xml",
+ "ref/netstandard1.0/ja/System.Resources.ResourceManager.xml",
+ "ref/netstandard1.0/ko/System.Resources.ResourceManager.xml",
+ "ref/netstandard1.0/ru/System.Resources.ResourceManager.xml",
+ "ref/netstandard1.0/zh-hans/System.Resources.ResourceManager.xml",
+ "ref/netstandard1.0/zh-hant/System.Resources.ResourceManager.xml",
+ "ref/portable-net45+win8+wp8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Runtime/4.1.0": {
+ "sha512": "v6c/4Yaa9uWsq+JMhnOFewrYkgdNHNG2eMKuNqRn8P733rNXeRCGvV5FkkjBXn2dbVkPXOsO0xjsEeM1q2zC0g==",
+ "type": "package",
+ "path": "System.Runtime/4.1.0",
+ "files": [
+ "System.Runtime.4.1.0.nupkg.sha512",
+ "System.Runtime.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/net462/System.Runtime.dll",
+ "lib/portable-net45+win8+wp80+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/net462/System.Runtime.dll",
+ "ref/netcore50/System.Runtime.dll",
+ "ref/netcore50/System.Runtime.xml",
+ "ref/netcore50/de/System.Runtime.xml",
+ "ref/netcore50/es/System.Runtime.xml",
+ "ref/netcore50/fr/System.Runtime.xml",
+ "ref/netcore50/it/System.Runtime.xml",
+ "ref/netcore50/ja/System.Runtime.xml",
+ "ref/netcore50/ko/System.Runtime.xml",
+ "ref/netcore50/ru/System.Runtime.xml",
+ "ref/netcore50/zh-hans/System.Runtime.xml",
+ "ref/netcore50/zh-hant/System.Runtime.xml",
+ "ref/netstandard1.0/System.Runtime.dll",
+ "ref/netstandard1.0/System.Runtime.xml",
+ "ref/netstandard1.0/de/System.Runtime.xml",
+ "ref/netstandard1.0/es/System.Runtime.xml",
+ "ref/netstandard1.0/fr/System.Runtime.xml",
+ "ref/netstandard1.0/it/System.Runtime.xml",
+ "ref/netstandard1.0/ja/System.Runtime.xml",
+ "ref/netstandard1.0/ko/System.Runtime.xml",
+ "ref/netstandard1.0/ru/System.Runtime.xml",
+ "ref/netstandard1.0/zh-hans/System.Runtime.xml",
+ "ref/netstandard1.0/zh-hant/System.Runtime.xml",
+ "ref/netstandard1.2/System.Runtime.dll",
+ "ref/netstandard1.2/System.Runtime.xml",
+ "ref/netstandard1.2/de/System.Runtime.xml",
+ "ref/netstandard1.2/es/System.Runtime.xml",
+ "ref/netstandard1.2/fr/System.Runtime.xml",
+ "ref/netstandard1.2/it/System.Runtime.xml",
+ "ref/netstandard1.2/ja/System.Runtime.xml",
+ "ref/netstandard1.2/ko/System.Runtime.xml",
+ "ref/netstandard1.2/ru/System.Runtime.xml",
+ "ref/netstandard1.2/zh-hans/System.Runtime.xml",
+ "ref/netstandard1.2/zh-hant/System.Runtime.xml",
+ "ref/netstandard1.3/System.Runtime.dll",
+ "ref/netstandard1.3/System.Runtime.xml",
+ "ref/netstandard1.3/de/System.Runtime.xml",
+ "ref/netstandard1.3/es/System.Runtime.xml",
+ "ref/netstandard1.3/fr/System.Runtime.xml",
+ "ref/netstandard1.3/it/System.Runtime.xml",
+ "ref/netstandard1.3/ja/System.Runtime.xml",
+ "ref/netstandard1.3/ko/System.Runtime.xml",
+ "ref/netstandard1.3/ru/System.Runtime.xml",
+ "ref/netstandard1.3/zh-hans/System.Runtime.xml",
+ "ref/netstandard1.3/zh-hant/System.Runtime.xml",
+ "ref/netstandard1.5/System.Runtime.dll",
+ "ref/netstandard1.5/System.Runtime.xml",
+ "ref/netstandard1.5/de/System.Runtime.xml",
+ "ref/netstandard1.5/es/System.Runtime.xml",
+ "ref/netstandard1.5/fr/System.Runtime.xml",
+ "ref/netstandard1.5/it/System.Runtime.xml",
+ "ref/netstandard1.5/ja/System.Runtime.xml",
+ "ref/netstandard1.5/ko/System.Runtime.xml",
+ "ref/netstandard1.5/ru/System.Runtime.xml",
+ "ref/netstandard1.5/zh-hans/System.Runtime.xml",
+ "ref/netstandard1.5/zh-hant/System.Runtime.xml",
+ "ref/portable-net45+win8+wp80+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Runtime.Extensions/4.1.0": {
+ "sha512": "CUOHjTT/vgP0qGW22U4/hDlOqXmcPq5YicBaXdUR2UiUoLwBT+olO6we4DVbq57jeX5uXH2uerVZhf0qGj+sVQ==",
+ "type": "package",
+ "path": "System.Runtime.Extensions/4.1.0",
+ "files": [
+ "System.Runtime.Extensions.4.1.0.nupkg.sha512",
+ "System.Runtime.Extensions.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/net462/System.Runtime.Extensions.dll",
+ "lib/portable-net45+win8+wp8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/net462/System.Runtime.Extensions.dll",
+ "ref/netcore50/System.Runtime.Extensions.dll",
+ "ref/netcore50/System.Runtime.Extensions.xml",
+ "ref/netcore50/de/System.Runtime.Extensions.xml",
+ "ref/netcore50/es/System.Runtime.Extensions.xml",
+ "ref/netcore50/fr/System.Runtime.Extensions.xml",
+ "ref/netcore50/it/System.Runtime.Extensions.xml",
+ "ref/netcore50/ja/System.Runtime.Extensions.xml",
+ "ref/netcore50/ko/System.Runtime.Extensions.xml",
+ "ref/netcore50/ru/System.Runtime.Extensions.xml",
+ "ref/netcore50/zh-hans/System.Runtime.Extensions.xml",
+ "ref/netcore50/zh-hant/System.Runtime.Extensions.xml",
+ "ref/netstandard1.0/System.Runtime.Extensions.dll",
+ "ref/netstandard1.0/System.Runtime.Extensions.xml",
+ "ref/netstandard1.0/de/System.Runtime.Extensions.xml",
+ "ref/netstandard1.0/es/System.Runtime.Extensions.xml",
+ "ref/netstandard1.0/fr/System.Runtime.Extensions.xml",
+ "ref/netstandard1.0/it/System.Runtime.Extensions.xml",
+ "ref/netstandard1.0/ja/System.Runtime.Extensions.xml",
+ "ref/netstandard1.0/ko/System.Runtime.Extensions.xml",
+ "ref/netstandard1.0/ru/System.Runtime.Extensions.xml",
+ "ref/netstandard1.0/zh-hans/System.Runtime.Extensions.xml",
+ "ref/netstandard1.0/zh-hant/System.Runtime.Extensions.xml",
+ "ref/netstandard1.3/System.Runtime.Extensions.dll",
+ "ref/netstandard1.3/System.Runtime.Extensions.xml",
+ "ref/netstandard1.3/de/System.Runtime.Extensions.xml",
+ "ref/netstandard1.3/es/System.Runtime.Extensions.xml",
+ "ref/netstandard1.3/fr/System.Runtime.Extensions.xml",
+ "ref/netstandard1.3/it/System.Runtime.Extensions.xml",
+ "ref/netstandard1.3/ja/System.Runtime.Extensions.xml",
+ "ref/netstandard1.3/ko/System.Runtime.Extensions.xml",
+ "ref/netstandard1.3/ru/System.Runtime.Extensions.xml",
+ "ref/netstandard1.3/zh-hans/System.Runtime.Extensions.xml",
+ "ref/netstandard1.3/zh-hant/System.Runtime.Extensions.xml",
+ "ref/netstandard1.5/System.Runtime.Extensions.dll",
+ "ref/netstandard1.5/System.Runtime.Extensions.xml",
+ "ref/netstandard1.5/de/System.Runtime.Extensions.xml",
+ "ref/netstandard1.5/es/System.Runtime.Extensions.xml",
+ "ref/netstandard1.5/fr/System.Runtime.Extensions.xml",
+ "ref/netstandard1.5/it/System.Runtime.Extensions.xml",
+ "ref/netstandard1.5/ja/System.Runtime.Extensions.xml",
+ "ref/netstandard1.5/ko/System.Runtime.Extensions.xml",
+ "ref/netstandard1.5/ru/System.Runtime.Extensions.xml",
+ "ref/netstandard1.5/zh-hans/System.Runtime.Extensions.xml",
+ "ref/netstandard1.5/zh-hant/System.Runtime.Extensions.xml",
+ "ref/portable-net45+win8+wp8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Runtime.Handles/4.0.1": {
+ "sha512": "nCJvEKguXEvk2ymk1gqj625vVnlK3/xdGzx0vOKicQkoquaTBJTP13AIYkocSUwHCLNBwUbXTqTWGDxBTWpt7g==",
+ "type": "package",
+ "path": "System.Runtime.Handles/4.0.1",
+ "files": [
+ "System.Runtime.Handles.4.0.1.nupkg.sha512",
+ "System.Runtime.Handles.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/netstandard1.3/System.Runtime.Handles.dll",
+ "ref/netstandard1.3/System.Runtime.Handles.xml",
+ "ref/netstandard1.3/de/System.Runtime.Handles.xml",
+ "ref/netstandard1.3/es/System.Runtime.Handles.xml",
+ "ref/netstandard1.3/fr/System.Runtime.Handles.xml",
+ "ref/netstandard1.3/it/System.Runtime.Handles.xml",
+ "ref/netstandard1.3/ja/System.Runtime.Handles.xml",
+ "ref/netstandard1.3/ko/System.Runtime.Handles.xml",
+ "ref/netstandard1.3/ru/System.Runtime.Handles.xml",
+ "ref/netstandard1.3/zh-hans/System.Runtime.Handles.xml",
+ "ref/netstandard1.3/zh-hant/System.Runtime.Handles.xml",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Runtime.InteropServices/4.1.0": {
+ "sha512": "16eu3kjHS633yYdkjwShDHZLRNMKVi/s0bY8ODiqJ2RfMhDMAwxZaUaWVnZ2P71kr/or+X9o/xFWtNqz8ivieQ==",
+ "type": "package",
+ "path": "System.Runtime.InteropServices/4.1.0",
+ "files": [
+ "System.Runtime.InteropServices.4.1.0.nupkg.sha512",
+ "System.Runtime.InteropServices.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/net462/System.Runtime.InteropServices.dll",
+ "lib/portable-net45+win8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/net462/System.Runtime.InteropServices.dll",
+ "ref/netcore50/System.Runtime.InteropServices.dll",
+ "ref/netcore50/System.Runtime.InteropServices.xml",
+ "ref/netcore50/de/System.Runtime.InteropServices.xml",
+ "ref/netcore50/es/System.Runtime.InteropServices.xml",
+ "ref/netcore50/fr/System.Runtime.InteropServices.xml",
+ "ref/netcore50/it/System.Runtime.InteropServices.xml",
+ "ref/netcore50/ja/System.Runtime.InteropServices.xml",
+ "ref/netcore50/ko/System.Runtime.InteropServices.xml",
+ "ref/netcore50/ru/System.Runtime.InteropServices.xml",
+ "ref/netcore50/zh-hans/System.Runtime.InteropServices.xml",
+ "ref/netcore50/zh-hant/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.1/System.Runtime.InteropServices.dll",
+ "ref/netstandard1.1/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.1/de/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.1/es/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.1/fr/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.1/it/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.1/ja/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.1/ko/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.1/ru/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.1/zh-hans/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.1/zh-hant/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.2/System.Runtime.InteropServices.dll",
+ "ref/netstandard1.2/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.2/de/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.2/es/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.2/fr/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.2/it/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.2/ja/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.2/ko/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.2/ru/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.2/zh-hans/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.2/zh-hant/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.3/System.Runtime.InteropServices.dll",
+ "ref/netstandard1.3/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.3/de/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.3/es/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.3/fr/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.3/it/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.3/ja/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.3/ko/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.3/ru/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.3/zh-hans/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.3/zh-hant/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.5/System.Runtime.InteropServices.dll",
+ "ref/netstandard1.5/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.5/de/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.5/es/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.5/fr/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.5/it/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.5/ja/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.5/ko/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.5/ru/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.5/zh-hans/System.Runtime.InteropServices.xml",
+ "ref/netstandard1.5/zh-hant/System.Runtime.InteropServices.xml",
+ "ref/portable-net45+win8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Runtime.InteropServices.RuntimeInformation/4.0.0": {
+ "sha512": "hWPhJxc453RCa8Z29O91EmfGeZIHX1ZH2A8L6lYQVSaKzku2DfArSfMEb1/MYYzPQRJZeu0c9dmYeJKxW5Fgng==",
+ "type": "package",
+ "path": "System.Runtime.InteropServices.RuntimeInformation/4.0.0",
+ "files": [
+ "System.Runtime.InteropServices.RuntimeInformation.4.0.0.nupkg.sha512",
+ "System.Runtime.InteropServices.RuntimeInformation.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/System.Runtime.InteropServices.RuntimeInformation.dll",
+ "lib/win8/System.Runtime.InteropServices.RuntimeInformation.dll",
+ "lib/wpa81/System.Runtime.InteropServices.RuntimeInformation.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._",
+ "runtimes/aot/lib/netcore50/System.Runtime.InteropServices.RuntimeInformation.dll",
+ "runtimes/unix/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll",
+ "runtimes/win/lib/net45/System.Runtime.InteropServices.RuntimeInformation.dll",
+ "runtimes/win/lib/netcore50/System.Runtime.InteropServices.RuntimeInformation.dll",
+ "runtimes/win/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll"
+ ]
+ },
+ "System.Runtime.Numerics/4.0.1": {
+ "sha512": "+XbKFuzdmLP3d1o9pdHu2nxjNr2OEPqGzKeegPLCUMM71a0t50A/rOcIRmGs9wR7a8KuHX6hYs/7/TymIGLNqg==",
+ "type": "package",
+ "path": "System.Runtime.Numerics/4.0.1",
+ "files": [
+ "System.Runtime.Numerics.4.0.1.nupkg.sha512",
+ "System.Runtime.Numerics.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/netcore50/System.Runtime.Numerics.dll",
+ "lib/netstandard1.3/System.Runtime.Numerics.dll",
+ "lib/portable-net45+win8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/netcore50/System.Runtime.Numerics.dll",
+ "ref/netcore50/System.Runtime.Numerics.xml",
+ "ref/netcore50/de/System.Runtime.Numerics.xml",
+ "ref/netcore50/es/System.Runtime.Numerics.xml",
+ "ref/netcore50/fr/System.Runtime.Numerics.xml",
+ "ref/netcore50/it/System.Runtime.Numerics.xml",
+ "ref/netcore50/ja/System.Runtime.Numerics.xml",
+ "ref/netcore50/ko/System.Runtime.Numerics.xml",
+ "ref/netcore50/ru/System.Runtime.Numerics.xml",
+ "ref/netcore50/zh-hans/System.Runtime.Numerics.xml",
+ "ref/netcore50/zh-hant/System.Runtime.Numerics.xml",
+ "ref/netstandard1.1/System.Runtime.Numerics.dll",
+ "ref/netstandard1.1/System.Runtime.Numerics.xml",
+ "ref/netstandard1.1/de/System.Runtime.Numerics.xml",
+ "ref/netstandard1.1/es/System.Runtime.Numerics.xml",
+ "ref/netstandard1.1/fr/System.Runtime.Numerics.xml",
+ "ref/netstandard1.1/it/System.Runtime.Numerics.xml",
+ "ref/netstandard1.1/ja/System.Runtime.Numerics.xml",
+ "ref/netstandard1.1/ko/System.Runtime.Numerics.xml",
+ "ref/netstandard1.1/ru/System.Runtime.Numerics.xml",
+ "ref/netstandard1.1/zh-hans/System.Runtime.Numerics.xml",
+ "ref/netstandard1.1/zh-hant/System.Runtime.Numerics.xml",
+ "ref/portable-net45+win8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Security.Cryptography.Algorithms/4.2.0": {
+ "sha512": "8JQFxbLVdrtIOKMDN38Fn0GWnqYZw/oMlwOUG/qz1jqChvyZlnUmu+0s7wLx7JYua/nAXoESpHA3iw11QFWhXg==",
+ "type": "package",
+ "path": "System.Security.Cryptography.Algorithms/4.2.0",
+ "files": [
+ "System.Security.Cryptography.Algorithms.4.2.0.nupkg.sha512",
+ "System.Security.Cryptography.Algorithms.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.Security.Cryptography.Algorithms.dll",
+ "lib/net461/System.Security.Cryptography.Algorithms.dll",
+ "lib/net463/System.Security.Cryptography.Algorithms.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.Security.Cryptography.Algorithms.dll",
+ "ref/net461/System.Security.Cryptography.Algorithms.dll",
+ "ref/net463/System.Security.Cryptography.Algorithms.dll",
+ "ref/netstandard1.3/System.Security.Cryptography.Algorithms.dll",
+ "ref/netstandard1.4/System.Security.Cryptography.Algorithms.dll",
+ "ref/netstandard1.6/System.Security.Cryptography.Algorithms.dll",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._",
+ "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll",
+ "runtimes/win/lib/net46/System.Security.Cryptography.Algorithms.dll",
+ "runtimes/win/lib/net461/System.Security.Cryptography.Algorithms.dll",
+ "runtimes/win/lib/net463/System.Security.Cryptography.Algorithms.dll",
+ "runtimes/win/lib/netcore50/System.Security.Cryptography.Algorithms.dll",
+ "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll"
+ ]
+ },
+ "System.Security.Cryptography.Cng/4.2.0": {
+ "sha512": "cUJ2h+ZvONDe28Szw3st5dOHdjndhJzQ2WObDEXAWRPEQBtVItVoxbXM/OEsTthl3cNn2dk2k0I3y45igCQcLw==",
+ "type": "package",
+ "path": "System.Security.Cryptography.Cng/4.2.0",
+ "files": [
+ "System.Security.Cryptography.Cng.4.2.0.nupkg.sha512",
+ "System.Security.Cryptography.Cng.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/net46/System.Security.Cryptography.Cng.dll",
+ "lib/net461/System.Security.Cryptography.Cng.dll",
+ "lib/net463/System.Security.Cryptography.Cng.dll",
+ "ref/net46/System.Security.Cryptography.Cng.dll",
+ "ref/net461/System.Security.Cryptography.Cng.dll",
+ "ref/net463/System.Security.Cryptography.Cng.dll",
+ "ref/netstandard1.3/System.Security.Cryptography.Cng.dll",
+ "ref/netstandard1.4/System.Security.Cryptography.Cng.dll",
+ "ref/netstandard1.6/System.Security.Cryptography.Cng.dll",
+ "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Cng.dll",
+ "runtimes/win/lib/net46/System.Security.Cryptography.Cng.dll",
+ "runtimes/win/lib/net461/System.Security.Cryptography.Cng.dll",
+ "runtimes/win/lib/net463/System.Security.Cryptography.Cng.dll",
+ "runtimes/win/lib/netstandard1.4/System.Security.Cryptography.Cng.dll",
+ "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Cng.dll"
+ ]
+ },
+ "System.Security.Cryptography.Csp/4.0.0": {
+ "sha512": "/i1Usuo4PgAqgbPNC0NjbO3jPW//BoBlTpcWFD1EHVbidH21y4c1ap5bbEMSGAXjAShhMH4abi/K8fILrnu4BQ==",
+ "type": "package",
+ "path": "System.Security.Cryptography.Csp/4.0.0",
+ "files": [
+ "System.Security.Cryptography.Csp.4.0.0.nupkg.sha512",
+ "System.Security.Cryptography.Csp.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.Security.Cryptography.Csp.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.Security.Cryptography.Csp.dll",
+ "ref/netstandard1.3/System.Security.Cryptography.Csp.dll",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._",
+ "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Csp.dll",
+ "runtimes/win/lib/net46/System.Security.Cryptography.Csp.dll",
+ "runtimes/win/lib/netcore50/_._",
+ "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Csp.dll"
+ ]
+ },
+ "System.Security.Cryptography.Encoding/4.0.0": {
+ "sha512": "FbKgE5MbxSQMPcSVRgwM6bXN3GtyAh04NkV8E5zKCBE26X0vYW0UtTa2FIgkH33WVqBVxRgxljlVYumWtU+HcQ==",
+ "type": "package",
+ "path": "System.Security.Cryptography.Encoding/4.0.0",
+ "files": [
+ "System.Security.Cryptography.Encoding.4.0.0.nupkg.sha512",
+ "System.Security.Cryptography.Encoding.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.Security.Cryptography.Encoding.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.Security.Cryptography.Encoding.dll",
+ "ref/netstandard1.3/System.Security.Cryptography.Encoding.dll",
+ "ref/netstandard1.3/System.Security.Cryptography.Encoding.xml",
+ "ref/netstandard1.3/de/System.Security.Cryptography.Encoding.xml",
+ "ref/netstandard1.3/es/System.Security.Cryptography.Encoding.xml",
+ "ref/netstandard1.3/fr/System.Security.Cryptography.Encoding.xml",
+ "ref/netstandard1.3/it/System.Security.Cryptography.Encoding.xml",
+ "ref/netstandard1.3/ja/System.Security.Cryptography.Encoding.xml",
+ "ref/netstandard1.3/ko/System.Security.Cryptography.Encoding.xml",
+ "ref/netstandard1.3/ru/System.Security.Cryptography.Encoding.xml",
+ "ref/netstandard1.3/zh-hans/System.Security.Cryptography.Encoding.xml",
+ "ref/netstandard1.3/zh-hant/System.Security.Cryptography.Encoding.xml",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._",
+ "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll",
+ "runtimes/win/lib/net46/System.Security.Cryptography.Encoding.dll",
+ "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll"
+ ]
+ },
+ "System.Security.Cryptography.OpenSsl/4.0.0": {
+ "sha512": "HUG/zNUJwEiLkoURDixzkzZdB5yGA5pQhDP93ArOpDPQMteURIGERRNzzoJlmTreLBWr5lkFSjjMSk8ySEpQMw==",
+ "type": "package",
+ "path": "System.Security.Cryptography.OpenSsl/4.0.0",
+ "files": [
+ "System.Security.Cryptography.OpenSsl.4.0.0.nupkg.sha512",
+ "System.Security.Cryptography.OpenSsl.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll",
+ "ref/netstandard1.6/System.Security.Cryptography.OpenSsl.dll",
+ "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll"
+ ]
+ },
+ "System.Security.Cryptography.Primitives/4.0.0": {
+ "sha512": "Wkd7QryWYjkQclX0bngpntW5HSlMzeJU24UaLJQ7YTfI8ydAVAaU2J+HXLLABOVJlKTVvAeL0Aj39VeTe7L+oA==",
+ "type": "package",
+ "path": "System.Security.Cryptography.Primitives/4.0.0",
+ "files": [
+ "System.Security.Cryptography.Primitives.4.0.0.nupkg.sha512",
+ "System.Security.Cryptography.Primitives.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.Security.Cryptography.Primitives.dll",
+ "lib/netstandard1.3/System.Security.Cryptography.Primitives.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.Security.Cryptography.Primitives.dll",
+ "ref/netstandard1.3/System.Security.Cryptography.Primitives.dll",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Security.Cryptography.X509Certificates/4.1.0": {
+ "sha512": "4HEfsQIKAhA1+ApNn729Gi09zh+lYWwyIuViihoMDWp1vQnEkL2ct7mAbhBlLYm+x/L4Rr/pyGge1lIY635e0w==",
+ "type": "package",
+ "path": "System.Security.Cryptography.X509Certificates/4.1.0",
+ "files": [
+ "System.Security.Cryptography.X509Certificates.4.1.0.nupkg.sha512",
+ "System.Security.Cryptography.X509Certificates.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.Security.Cryptography.X509Certificates.dll",
+ "lib/net461/System.Security.Cryptography.X509Certificates.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.Security.Cryptography.X509Certificates.dll",
+ "ref/net461/System.Security.Cryptography.X509Certificates.dll",
+ "ref/netstandard1.3/System.Security.Cryptography.X509Certificates.dll",
+ "ref/netstandard1.3/System.Security.Cryptography.X509Certificates.xml",
+ "ref/netstandard1.3/de/System.Security.Cryptography.X509Certificates.xml",
+ "ref/netstandard1.3/es/System.Security.Cryptography.X509Certificates.xml",
+ "ref/netstandard1.3/fr/System.Security.Cryptography.X509Certificates.xml",
+ "ref/netstandard1.3/it/System.Security.Cryptography.X509Certificates.xml",
+ "ref/netstandard1.3/ja/System.Security.Cryptography.X509Certificates.xml",
+ "ref/netstandard1.3/ko/System.Security.Cryptography.X509Certificates.xml",
+ "ref/netstandard1.3/ru/System.Security.Cryptography.X509Certificates.xml",
+ "ref/netstandard1.3/zh-hans/System.Security.Cryptography.X509Certificates.xml",
+ "ref/netstandard1.3/zh-hant/System.Security.Cryptography.X509Certificates.xml",
+ "ref/netstandard1.4/System.Security.Cryptography.X509Certificates.dll",
+ "ref/netstandard1.4/System.Security.Cryptography.X509Certificates.xml",
+ "ref/netstandard1.4/de/System.Security.Cryptography.X509Certificates.xml",
+ "ref/netstandard1.4/es/System.Security.Cryptography.X509Certificates.xml",
+ "ref/netstandard1.4/fr/System.Security.Cryptography.X509Certificates.xml",
+ "ref/netstandard1.4/it/System.Security.Cryptography.X509Certificates.xml",
+ "ref/netstandard1.4/ja/System.Security.Cryptography.X509Certificates.xml",
+ "ref/netstandard1.4/ko/System.Security.Cryptography.X509Certificates.xml",
+ "ref/netstandard1.4/ru/System.Security.Cryptography.X509Certificates.xml",
+ "ref/netstandard1.4/zh-hans/System.Security.Cryptography.X509Certificates.xml",
+ "ref/netstandard1.4/zh-hant/System.Security.Cryptography.X509Certificates.xml",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._",
+ "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll",
+ "runtimes/win/lib/net46/System.Security.Cryptography.X509Certificates.dll",
+ "runtimes/win/lib/net461/System.Security.Cryptography.X509Certificates.dll",
+ "runtimes/win/lib/netcore50/System.Security.Cryptography.X509Certificates.dll",
+ "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll"
+ ]
+ },
+ "System.Text.Encoding/4.0.11": {
+ "sha512": "U3gGeMlDZXxCEiY4DwVLSacg+DFWCvoiX+JThA/rvw37Sqrku7sEFeVBBBMBnfB6FeZHsyDx85HlKL19x0HtZA==",
+ "type": "package",
+ "path": "System.Text.Encoding/4.0.11",
+ "files": [
+ "System.Text.Encoding.4.0.11.nupkg.sha512",
+ "System.Text.Encoding.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/portable-net45+win8+wp8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/netcore50/System.Text.Encoding.dll",
+ "ref/netcore50/System.Text.Encoding.xml",
+ "ref/netcore50/de/System.Text.Encoding.xml",
+ "ref/netcore50/es/System.Text.Encoding.xml",
+ "ref/netcore50/fr/System.Text.Encoding.xml",
+ "ref/netcore50/it/System.Text.Encoding.xml",
+ "ref/netcore50/ja/System.Text.Encoding.xml",
+ "ref/netcore50/ko/System.Text.Encoding.xml",
+ "ref/netcore50/ru/System.Text.Encoding.xml",
+ "ref/netcore50/zh-hans/System.Text.Encoding.xml",
+ "ref/netcore50/zh-hant/System.Text.Encoding.xml",
+ "ref/netstandard1.0/System.Text.Encoding.dll",
+ "ref/netstandard1.0/System.Text.Encoding.xml",
+ "ref/netstandard1.0/de/System.Text.Encoding.xml",
+ "ref/netstandard1.0/es/System.Text.Encoding.xml",
+ "ref/netstandard1.0/fr/System.Text.Encoding.xml",
+ "ref/netstandard1.0/it/System.Text.Encoding.xml",
+ "ref/netstandard1.0/ja/System.Text.Encoding.xml",
+ "ref/netstandard1.0/ko/System.Text.Encoding.xml",
+ "ref/netstandard1.0/ru/System.Text.Encoding.xml",
+ "ref/netstandard1.0/zh-hans/System.Text.Encoding.xml",
+ "ref/netstandard1.0/zh-hant/System.Text.Encoding.xml",
+ "ref/netstandard1.3/System.Text.Encoding.dll",
+ "ref/netstandard1.3/System.Text.Encoding.xml",
+ "ref/netstandard1.3/de/System.Text.Encoding.xml",
+ "ref/netstandard1.3/es/System.Text.Encoding.xml",
+ "ref/netstandard1.3/fr/System.Text.Encoding.xml",
+ "ref/netstandard1.3/it/System.Text.Encoding.xml",
+ "ref/netstandard1.3/ja/System.Text.Encoding.xml",
+ "ref/netstandard1.3/ko/System.Text.Encoding.xml",
+ "ref/netstandard1.3/ru/System.Text.Encoding.xml",
+ "ref/netstandard1.3/zh-hans/System.Text.Encoding.xml",
+ "ref/netstandard1.3/zh-hant/System.Text.Encoding.xml",
+ "ref/portable-net45+win8+wp8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Text.Encoding.Extensions/4.0.11": {
+ "sha512": "jtbiTDtvfLYgXn8PTfWI+SiBs51rrmO4AAckx4KR6vFK9Wzf6tI8kcRdsYQNwriUeQ1+CtQbM1W4cMbLXnj/OQ==",
+ "type": "package",
+ "path": "System.Text.Encoding.Extensions/4.0.11",
+ "files": [
+ "System.Text.Encoding.Extensions.4.0.11.nupkg.sha512",
+ "System.Text.Encoding.Extensions.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/portable-net45+win8+wp8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/netcore50/System.Text.Encoding.Extensions.dll",
+ "ref/netcore50/System.Text.Encoding.Extensions.xml",
+ "ref/netcore50/de/System.Text.Encoding.Extensions.xml",
+ "ref/netcore50/es/System.Text.Encoding.Extensions.xml",
+ "ref/netcore50/fr/System.Text.Encoding.Extensions.xml",
+ "ref/netcore50/it/System.Text.Encoding.Extensions.xml",
+ "ref/netcore50/ja/System.Text.Encoding.Extensions.xml",
+ "ref/netcore50/ko/System.Text.Encoding.Extensions.xml",
+ "ref/netcore50/ru/System.Text.Encoding.Extensions.xml",
+ "ref/netcore50/zh-hans/System.Text.Encoding.Extensions.xml",
+ "ref/netcore50/zh-hant/System.Text.Encoding.Extensions.xml",
+ "ref/netstandard1.0/System.Text.Encoding.Extensions.dll",
+ "ref/netstandard1.0/System.Text.Encoding.Extensions.xml",
+ "ref/netstandard1.0/de/System.Text.Encoding.Extensions.xml",
+ "ref/netstandard1.0/es/System.Text.Encoding.Extensions.xml",
+ "ref/netstandard1.0/fr/System.Text.Encoding.Extensions.xml",
+ "ref/netstandard1.0/it/System.Text.Encoding.Extensions.xml",
+ "ref/netstandard1.0/ja/System.Text.Encoding.Extensions.xml",
+ "ref/netstandard1.0/ko/System.Text.Encoding.Extensions.xml",
+ "ref/netstandard1.0/ru/System.Text.Encoding.Extensions.xml",
+ "ref/netstandard1.0/zh-hans/System.Text.Encoding.Extensions.xml",
+ "ref/netstandard1.0/zh-hant/System.Text.Encoding.Extensions.xml",
+ "ref/netstandard1.3/System.Text.Encoding.Extensions.dll",
+ "ref/netstandard1.3/System.Text.Encoding.Extensions.xml",
+ "ref/netstandard1.3/de/System.Text.Encoding.Extensions.xml",
+ "ref/netstandard1.3/es/System.Text.Encoding.Extensions.xml",
+ "ref/netstandard1.3/fr/System.Text.Encoding.Extensions.xml",
+ "ref/netstandard1.3/it/System.Text.Encoding.Extensions.xml",
+ "ref/netstandard1.3/ja/System.Text.Encoding.Extensions.xml",
+ "ref/netstandard1.3/ko/System.Text.Encoding.Extensions.xml",
+ "ref/netstandard1.3/ru/System.Text.Encoding.Extensions.xml",
+ "ref/netstandard1.3/zh-hans/System.Text.Encoding.Extensions.xml",
+ "ref/netstandard1.3/zh-hant/System.Text.Encoding.Extensions.xml",
+ "ref/portable-net45+win8+wp8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Text.RegularExpressions/4.1.0": {
+ "sha512": "i88YCXpRTjCnoSQZtdlHkAOx4KNNik4hMy83n0+Ftlb7jvV6ZiZWMpnEZHhjBp6hQVh8gWd/iKNPzlPF7iyA2g==",
+ "type": "package",
+ "path": "System.Text.RegularExpressions/4.1.0",
+ "files": [
+ "System.Text.RegularExpressions.4.1.0.nupkg.sha512",
+ "System.Text.RegularExpressions.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/net463/System.Text.RegularExpressions.dll",
+ "lib/netcore50/System.Text.RegularExpressions.dll",
+ "lib/netstandard1.6/System.Text.RegularExpressions.dll",
+ "lib/portable-net45+win8+wp8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/net463/System.Text.RegularExpressions.dll",
+ "ref/netcore50/System.Text.RegularExpressions.dll",
+ "ref/netcore50/System.Text.RegularExpressions.xml",
+ "ref/netcore50/de/System.Text.RegularExpressions.xml",
+ "ref/netcore50/es/System.Text.RegularExpressions.xml",
+ "ref/netcore50/fr/System.Text.RegularExpressions.xml",
+ "ref/netcore50/it/System.Text.RegularExpressions.xml",
+ "ref/netcore50/ja/System.Text.RegularExpressions.xml",
+ "ref/netcore50/ko/System.Text.RegularExpressions.xml",
+ "ref/netcore50/ru/System.Text.RegularExpressions.xml",
+ "ref/netcore50/zh-hans/System.Text.RegularExpressions.xml",
+ "ref/netcore50/zh-hant/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.0/System.Text.RegularExpressions.dll",
+ "ref/netstandard1.0/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.0/de/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.0/es/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.0/fr/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.0/it/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.0/ja/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.0/ko/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.0/ru/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.0/zh-hans/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.0/zh-hant/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.3/System.Text.RegularExpressions.dll",
+ "ref/netstandard1.3/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.3/de/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.3/es/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.3/fr/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.3/it/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.3/ja/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.3/ko/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.3/ru/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.3/zh-hans/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.3/zh-hant/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.6/System.Text.RegularExpressions.dll",
+ "ref/netstandard1.6/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.6/de/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.6/es/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.6/fr/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.6/it/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.6/ja/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.6/ko/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.6/ru/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.6/zh-hans/System.Text.RegularExpressions.xml",
+ "ref/netstandard1.6/zh-hant/System.Text.RegularExpressions.xml",
+ "ref/portable-net45+win8+wp8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Threading/4.0.11": {
+ "sha512": "N+3xqIcg3VDKyjwwCGaZ9HawG9aC6cSDI+s7ROma310GQo8vilFZa86hqKppwTHleR/G0sfOzhvgnUxWCR/DrQ==",
+ "type": "package",
+ "path": "System.Threading/4.0.11",
+ "files": [
+ "System.Threading.4.0.11.nupkg.sha512",
+ "System.Threading.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/netcore50/System.Threading.dll",
+ "lib/netstandard1.3/System.Threading.dll",
+ "lib/portable-net45+win8+wp8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/netcore50/System.Threading.dll",
+ "ref/netcore50/System.Threading.xml",
+ "ref/netcore50/de/System.Threading.xml",
+ "ref/netcore50/es/System.Threading.xml",
+ "ref/netcore50/fr/System.Threading.xml",
+ "ref/netcore50/it/System.Threading.xml",
+ "ref/netcore50/ja/System.Threading.xml",
+ "ref/netcore50/ko/System.Threading.xml",
+ "ref/netcore50/ru/System.Threading.xml",
+ "ref/netcore50/zh-hans/System.Threading.xml",
+ "ref/netcore50/zh-hant/System.Threading.xml",
+ "ref/netstandard1.0/System.Threading.dll",
+ "ref/netstandard1.0/System.Threading.xml",
+ "ref/netstandard1.0/de/System.Threading.xml",
+ "ref/netstandard1.0/es/System.Threading.xml",
+ "ref/netstandard1.0/fr/System.Threading.xml",
+ "ref/netstandard1.0/it/System.Threading.xml",
+ "ref/netstandard1.0/ja/System.Threading.xml",
+ "ref/netstandard1.0/ko/System.Threading.xml",
+ "ref/netstandard1.0/ru/System.Threading.xml",
+ "ref/netstandard1.0/zh-hans/System.Threading.xml",
+ "ref/netstandard1.0/zh-hant/System.Threading.xml",
+ "ref/netstandard1.3/System.Threading.dll",
+ "ref/netstandard1.3/System.Threading.xml",
+ "ref/netstandard1.3/de/System.Threading.xml",
+ "ref/netstandard1.3/es/System.Threading.xml",
+ "ref/netstandard1.3/fr/System.Threading.xml",
+ "ref/netstandard1.3/it/System.Threading.xml",
+ "ref/netstandard1.3/ja/System.Threading.xml",
+ "ref/netstandard1.3/ko/System.Threading.xml",
+ "ref/netstandard1.3/ru/System.Threading.xml",
+ "ref/netstandard1.3/zh-hans/System.Threading.xml",
+ "ref/netstandard1.3/zh-hant/System.Threading.xml",
+ "ref/portable-net45+win8+wp8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._",
+ "runtimes/aot/lib/netcore50/System.Threading.dll"
+ ]
+ },
+ "System.Threading.Tasks/4.0.11": {
+ "sha512": "k1S4Gc6IGwtHGT8188RSeGaX86Qw/wnrgNLshJvsdNUOPP9etMmo8S07c+UlOAx4K/xLuN9ivA1bD0LVurtIxQ==",
+ "type": "package",
+ "path": "System.Threading.Tasks/4.0.11",
+ "files": [
+ "System.Threading.Tasks.4.0.11.nupkg.sha512",
+ "System.Threading.Tasks.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/portable-net45+win8+wp8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/netcore50/System.Threading.Tasks.dll",
+ "ref/netcore50/System.Threading.Tasks.xml",
+ "ref/netcore50/de/System.Threading.Tasks.xml",
+ "ref/netcore50/es/System.Threading.Tasks.xml",
+ "ref/netcore50/fr/System.Threading.Tasks.xml",
+ "ref/netcore50/it/System.Threading.Tasks.xml",
+ "ref/netcore50/ja/System.Threading.Tasks.xml",
+ "ref/netcore50/ko/System.Threading.Tasks.xml",
+ "ref/netcore50/ru/System.Threading.Tasks.xml",
+ "ref/netcore50/zh-hans/System.Threading.Tasks.xml",
+ "ref/netcore50/zh-hant/System.Threading.Tasks.xml",
+ "ref/netstandard1.0/System.Threading.Tasks.dll",
+ "ref/netstandard1.0/System.Threading.Tasks.xml",
+ "ref/netstandard1.0/de/System.Threading.Tasks.xml",
+ "ref/netstandard1.0/es/System.Threading.Tasks.xml",
+ "ref/netstandard1.0/fr/System.Threading.Tasks.xml",
+ "ref/netstandard1.0/it/System.Threading.Tasks.xml",
+ "ref/netstandard1.0/ja/System.Threading.Tasks.xml",
+ "ref/netstandard1.0/ko/System.Threading.Tasks.xml",
+ "ref/netstandard1.0/ru/System.Threading.Tasks.xml",
+ "ref/netstandard1.0/zh-hans/System.Threading.Tasks.xml",
+ "ref/netstandard1.0/zh-hant/System.Threading.Tasks.xml",
+ "ref/netstandard1.3/System.Threading.Tasks.dll",
+ "ref/netstandard1.3/System.Threading.Tasks.xml",
+ "ref/netstandard1.3/de/System.Threading.Tasks.xml",
+ "ref/netstandard1.3/es/System.Threading.Tasks.xml",
+ "ref/netstandard1.3/fr/System.Threading.Tasks.xml",
+ "ref/netstandard1.3/it/System.Threading.Tasks.xml",
+ "ref/netstandard1.3/ja/System.Threading.Tasks.xml",
+ "ref/netstandard1.3/ko/System.Threading.Tasks.xml",
+ "ref/netstandard1.3/ru/System.Threading.Tasks.xml",
+ "ref/netstandard1.3/zh-hans/System.Threading.Tasks.xml",
+ "ref/netstandard1.3/zh-hant/System.Threading.Tasks.xml",
+ "ref/portable-net45+win8+wp8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Threading.Tasks.Extensions/4.0.0": {
+ "sha512": "pH4FZDsZQ/WmgJtN4LWYmRdJAEeVkyriSwrv2Teoe5FOU0Yxlb6II6GL8dBPOfRmutHGATduj3ooMt7dJ2+i+w==",
+ "type": "package",
+ "path": "System.Threading.Tasks.Extensions/4.0.0",
+ "files": [
+ "System.Threading.Tasks.Extensions.4.0.0.nupkg.sha512",
+ "System.Threading.Tasks.Extensions.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/netstandard1.0/System.Threading.Tasks.Extensions.dll",
+ "lib/netstandard1.0/System.Threading.Tasks.Extensions.xml",
+ "lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.dll",
+ "lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.xml"
+ ]
+ },
+ "System.Threading.Timer/4.0.1": {
+ "sha512": "saGfUV8uqVW6LeURiqxcGhZ24PzuRNaUBtbhVeuUAvky1naH395A/1nY0P2bWvrw/BreRtIB/EzTDkGBpqCwEw==",
+ "type": "package",
+ "path": "System.Threading.Timer/4.0.1",
+ "files": [
+ "System.Threading.Timer.4.0.1.nupkg.sha512",
+ "System.Threading.Timer.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net451/_._",
+ "lib/portable-net451+win81+wpa81/_._",
+ "lib/win81/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net451/_._",
+ "ref/netcore50/System.Threading.Timer.dll",
+ "ref/netcore50/System.Threading.Timer.xml",
+ "ref/netcore50/de/System.Threading.Timer.xml",
+ "ref/netcore50/es/System.Threading.Timer.xml",
+ "ref/netcore50/fr/System.Threading.Timer.xml",
+ "ref/netcore50/it/System.Threading.Timer.xml",
+ "ref/netcore50/ja/System.Threading.Timer.xml",
+ "ref/netcore50/ko/System.Threading.Timer.xml",
+ "ref/netcore50/ru/System.Threading.Timer.xml",
+ "ref/netcore50/zh-hans/System.Threading.Timer.xml",
+ "ref/netcore50/zh-hant/System.Threading.Timer.xml",
+ "ref/netstandard1.2/System.Threading.Timer.dll",
+ "ref/netstandard1.2/System.Threading.Timer.xml",
+ "ref/netstandard1.2/de/System.Threading.Timer.xml",
+ "ref/netstandard1.2/es/System.Threading.Timer.xml",
+ "ref/netstandard1.2/fr/System.Threading.Timer.xml",
+ "ref/netstandard1.2/it/System.Threading.Timer.xml",
+ "ref/netstandard1.2/ja/System.Threading.Timer.xml",
+ "ref/netstandard1.2/ko/System.Threading.Timer.xml",
+ "ref/netstandard1.2/ru/System.Threading.Timer.xml",
+ "ref/netstandard1.2/zh-hans/System.Threading.Timer.xml",
+ "ref/netstandard1.2/zh-hant/System.Threading.Timer.xml",
+ "ref/portable-net451+win81+wpa81/_._",
+ "ref/win81/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Xml.ReaderWriter/4.0.11": {
+ "sha512": "ZIiLPsf67YZ9zgr31vzrFaYQqxRPX9cVHjtPSnmx4eN6lbS/yEyYNr2vs1doGDEscF0tjCZFsk9yUg1sC9e8tg==",
+ "type": "package",
+ "path": "System.Xml.ReaderWriter/4.0.11",
+ "files": [
+ "System.Xml.ReaderWriter.4.0.11.nupkg.sha512",
+ "System.Xml.ReaderWriter.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/netcore50/System.Xml.ReaderWriter.dll",
+ "lib/netstandard1.3/System.Xml.ReaderWriter.dll",
+ "lib/portable-net45+win8+wp8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/netcore50/System.Xml.ReaderWriter.dll",
+ "ref/netcore50/System.Xml.ReaderWriter.xml",
+ "ref/netcore50/de/System.Xml.ReaderWriter.xml",
+ "ref/netcore50/es/System.Xml.ReaderWriter.xml",
+ "ref/netcore50/fr/System.Xml.ReaderWriter.xml",
+ "ref/netcore50/it/System.Xml.ReaderWriter.xml",
+ "ref/netcore50/ja/System.Xml.ReaderWriter.xml",
+ "ref/netcore50/ko/System.Xml.ReaderWriter.xml",
+ "ref/netcore50/ru/System.Xml.ReaderWriter.xml",
+ "ref/netcore50/zh-hans/System.Xml.ReaderWriter.xml",
+ "ref/netcore50/zh-hant/System.Xml.ReaderWriter.xml",
+ "ref/netstandard1.0/System.Xml.ReaderWriter.dll",
+ "ref/netstandard1.0/System.Xml.ReaderWriter.xml",
+ "ref/netstandard1.0/de/System.Xml.ReaderWriter.xml",
+ "ref/netstandard1.0/es/System.Xml.ReaderWriter.xml",
+ "ref/netstandard1.0/fr/System.Xml.ReaderWriter.xml",
+ "ref/netstandard1.0/it/System.Xml.ReaderWriter.xml",
+ "ref/netstandard1.0/ja/System.Xml.ReaderWriter.xml",
+ "ref/netstandard1.0/ko/System.Xml.ReaderWriter.xml",
+ "ref/netstandard1.0/ru/System.Xml.ReaderWriter.xml",
+ "ref/netstandard1.0/zh-hans/System.Xml.ReaderWriter.xml",
+ "ref/netstandard1.0/zh-hant/System.Xml.ReaderWriter.xml",
+ "ref/netstandard1.3/System.Xml.ReaderWriter.dll",
+ "ref/netstandard1.3/System.Xml.ReaderWriter.xml",
+ "ref/netstandard1.3/de/System.Xml.ReaderWriter.xml",
+ "ref/netstandard1.3/es/System.Xml.ReaderWriter.xml",
+ "ref/netstandard1.3/fr/System.Xml.ReaderWriter.xml",
+ "ref/netstandard1.3/it/System.Xml.ReaderWriter.xml",
+ "ref/netstandard1.3/ja/System.Xml.ReaderWriter.xml",
+ "ref/netstandard1.3/ko/System.Xml.ReaderWriter.xml",
+ "ref/netstandard1.3/ru/System.Xml.ReaderWriter.xml",
+ "ref/netstandard1.3/zh-hans/System.Xml.ReaderWriter.xml",
+ "ref/netstandard1.3/zh-hant/System.Xml.ReaderWriter.xml",
+ "ref/portable-net45+win8+wp8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ },
+ "System.Xml.XDocument/4.0.11": {
+ "sha512": "Mk2mKmPi0nWaoiYeotq1dgeNK1fqWh61+EK+w4Wu8SWuTYLzpUnschb59bJtGywaPq7SmTuPf44wrXRwbIrukg==",
+ "type": "package",
+ "path": "System.Xml.XDocument/4.0.11",
+ "files": [
+ "System.Xml.XDocument.4.0.11.nupkg.sha512",
+ "System.Xml.XDocument.nuspec",
+ "ThirdPartyNotices.txt",
+ "dotnet_library_license.txt",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/netcore50/System.Xml.XDocument.dll",
+ "lib/netstandard1.3/System.Xml.XDocument.dll",
+ "lib/portable-net45+win8+wp8+wpa81/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "lib/xamarintvos10/_._",
+ "lib/xamarinwatchos10/_._",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/netcore50/System.Xml.XDocument.dll",
+ "ref/netcore50/System.Xml.XDocument.xml",
+ "ref/netcore50/de/System.Xml.XDocument.xml",
+ "ref/netcore50/es/System.Xml.XDocument.xml",
+ "ref/netcore50/fr/System.Xml.XDocument.xml",
+ "ref/netcore50/it/System.Xml.XDocument.xml",
+ "ref/netcore50/ja/System.Xml.XDocument.xml",
+ "ref/netcore50/ko/System.Xml.XDocument.xml",
+ "ref/netcore50/ru/System.Xml.XDocument.xml",
+ "ref/netcore50/zh-hans/System.Xml.XDocument.xml",
+ "ref/netcore50/zh-hant/System.Xml.XDocument.xml",
+ "ref/netstandard1.0/System.Xml.XDocument.dll",
+ "ref/netstandard1.0/System.Xml.XDocument.xml",
+ "ref/netstandard1.0/de/System.Xml.XDocument.xml",
+ "ref/netstandard1.0/es/System.Xml.XDocument.xml",
+ "ref/netstandard1.0/fr/System.Xml.XDocument.xml",
+ "ref/netstandard1.0/it/System.Xml.XDocument.xml",
+ "ref/netstandard1.0/ja/System.Xml.XDocument.xml",
+ "ref/netstandard1.0/ko/System.Xml.XDocument.xml",
+ "ref/netstandard1.0/ru/System.Xml.XDocument.xml",
+ "ref/netstandard1.0/zh-hans/System.Xml.XDocument.xml",
+ "ref/netstandard1.0/zh-hant/System.Xml.XDocument.xml",
+ "ref/netstandard1.3/System.Xml.XDocument.dll",
+ "ref/netstandard1.3/System.Xml.XDocument.xml",
+ "ref/netstandard1.3/de/System.Xml.XDocument.xml",
+ "ref/netstandard1.3/es/System.Xml.XDocument.xml",
+ "ref/netstandard1.3/fr/System.Xml.XDocument.xml",
+ "ref/netstandard1.3/it/System.Xml.XDocument.xml",
+ "ref/netstandard1.3/ja/System.Xml.XDocument.xml",
+ "ref/netstandard1.3/ko/System.Xml.XDocument.xml",
+ "ref/netstandard1.3/ru/System.Xml.XDocument.xml",
+ "ref/netstandard1.3/zh-hans/System.Xml.XDocument.xml",
+ "ref/netstandard1.3/zh-hant/System.Xml.XDocument.xml",
+ "ref/portable-net45+win8+wp8+wpa81/_._",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "ref/xamarintvos10/_._",
+ "ref/xamarinwatchos10/_._"
+ ]
+ }
+ },
+ "projectFileDependencyGroups": {
+ "": [],
+ ".NETPortable,Version=v4.5,Profile=Profile7": [],
+ ".NETStandard,Version=v1.6": [
+ "NETStandard.Library >= 1.6.0"
+ ]
+ }
+} \ No newline at end of file