diff --git a/ReleaseNotes.md b/ReleaseNotes.md index b5ffa0a..42b21ad 100644 --- a/ReleaseNotes.md +++ b/ReleaseNotes.md @@ -1,3 +1,19 @@ +### New in 1.0.0 (Release 2015/07/03) +* New: `EndpointVerificationStrategy.ClusterMembers` - Similar verification as `EndpointVerificationStrategy.Any` but also adds verified cluster members to the `EndpointPool`. +* New: `IEtcdClient.Statistics` + * `GetLeaderStatistics` - Retrieve the statistical information for leader of the etcd cluster + * `GetServerStatistics` - Retrieve the statistical information for the server (Which server depends on how the `EndpointPool` was built) + * `GetStoreStatistics` - Retrieve the etcd backing store statistics (For which server depends on how the `EndpointPool` was built) +* Breaking Change: `IEtcdClient.Enqueue` has been moved to `IEtcdClient.Atomic.Enqueue` +* Breaking Change: `IKeyDataValueConverter` overhaul + * `object ReadString(string value)` has been refactored into `T Read(string value)` + * `string WriteString(object value)` has been refactored into `string Write(T value)` +* Change: The following have been annotated with `[Serializable]` + * `Endpoint` + * `EndpointPool` + * `EndpointRoutingStrategy` + * `EndpointVerificationStrategy` + ### New in 0.2.1 (Released 2015/05/07) * Fixed: `NullReferenceException` thrown when a `WebException` occurs due to a client connection problem. diff --git a/meta/Draft.nuspec b/meta/Draft.nuspec index fad1d50..c9dcefc 100644 --- a/meta/Draft.nuspec +++ b/meta/Draft.nuspec @@ -14,8 +14,8 @@ Copyright 2015 Jordan S. Jones - - + + diff --git a/source/Draft/Constants.Etcd.cs b/source/Draft/Constants.Etcd.cs index 77bd42d..1d85987 100644 --- a/source/Draft/Constants.Etcd.cs +++ b/source/Draft/Constants.Etcd.cs @@ -60,6 +60,12 @@ internal static partial class Etcd public const string Path_Stats = "/v2/stats"; + public const string Path_Stats_Leader = Path_Stats + "/leader"; + + public const string Path_Stats_Self = Path_Stats + "/self"; + + public const string Path_Stats_Store = Path_Stats + "/store"; + public const string Path_Version = "/version"; } diff --git a/source/Draft/Converters.cs b/source/Draft/Converters.cs index c8a9043..7ea0e21 100644 --- a/source/Draft/Converters.cs +++ b/source/Draft/Converters.cs @@ -12,24 +12,25 @@ namespace Draft public static class Converters { + private static IKeyDataValueConverter _default; + internal static readonly JsonValueConverter JsonConverter = new JsonValueConverter(); internal static readonly StringValueConverter StringConverter = new StringValueConverter(); - static Converters() - { - Default = Json; - } - /// /// The default converter. /// - public static IKeyDataValueConverter Default { get; internal set; } + public static IKeyDataValueConverter Default + { + get { return _default ?? Json; } + internal set { _default = value; } + } /// /// Json based converter. /// - public static IJsonKeyDataValueConverter Json + public static IKeyDataValueConverter Json { get { return JsonConverter; } } diff --git a/source/Draft/Draft-Net45.csproj b/source/Draft/Draft-Net45.csproj index f0e4b6f..400290d 100644 --- a/source/Draft/Draft-Net45.csproj +++ b/source/Draft/Draft-Net45.csproj @@ -34,17 +34,17 @@ 4 - - ..\..\packages\Flurl.1.0.7\lib\portable-net40+sl50+win+wpa81+wp80+MonoAndroid10+MonoTouch10\Flurl.dll + + ..\..\packages\Flurl.1.0.8\lib\portable-net40+sl50+win+wpa81+wp80+MonoAndroid10+MonoTouch10\Flurl.dll True - - ..\..\packages\Flurl.Http.0.6.0\lib\net45\Flurl.Http.dll + + ..\..\packages\Flurl.Http.0.6.2\lib\net45\Flurl.Http.dll True - False ..\..\packages\Newtonsoft.Json.6.0.8\lib\net45\Newtonsoft.Json.dll + True @@ -78,6 +78,8 @@ + + @@ -106,6 +108,7 @@ + @@ -121,6 +124,7 @@ + @@ -134,6 +138,12 @@ + + + + + + @@ -143,6 +153,13 @@ + + + + + + + @@ -197,9 +214,7 @@ - - - +