diff --git a/source/ProtocolGenerator/Command.cs b/source/ProtocolGenerator/Command.cs index 1bc90d0866630fb1d6b44d2f66d6c5f92ee2d932..59199f9d2b014ea7f55530dc1133e9cd2053b364 100644 --- a/source/ProtocolGenerator/Command.cs +++ b/source/ProtocolGenerator/Command.cs @@ -3,6 +3,7 @@ using System.Collections.ObjectModel; using System.Text; using System.Linq; using System; +using Newtonsoft.Json; namespace MasterDevs.ChromeDevTools.ProtocolGenerator { @@ -54,6 +55,9 @@ namespace MasterDevs.ChromeDevTools.ProtocolGenerator set; } + [JsonProperty("experimental")] + public bool IsExperimental { get; set; } + public override bool Equals(object obj) { var other = obj as Command; @@ -81,7 +85,7 @@ namespace MasterDevs.ChromeDevTools.ProtocolGenerator { hash = hash * 23 + this.Error.GetHashCode(); } - + hash = hash * 23 + this.Parameters.GetCollectionHashCode(); return hash; } diff --git a/source/ProtocolGenerator/Domain.cs b/source/ProtocolGenerator/Domain.cs index a707947291ead3d5f658dbf253806220c0e99ab8..9bce5337cfee664063d5aa7edd88e192d5d6730b 100644 --- a/source/ProtocolGenerator/Domain.cs +++ b/source/ProtocolGenerator/Domain.cs @@ -2,6 +2,7 @@ using System; using System.Collections.ObjectModel; using System.Linq; +using Newtonsoft.Json.Linq; namespace MasterDevs.ChromeDevTools.ProtocolGenerator { @@ -51,6 +52,11 @@ namespace MasterDevs.ChromeDevTools.ProtocolGenerator set; } + [JsonProperty("experimental")] + public bool IsExperimental { get; set; } + + public string[] Dependencies { get; set; } + public Command GetCommand(string name) { return this.Commands.SingleOrDefault(c => string.Equals(c.Name, name, StringComparison.OrdinalIgnoreCase)); diff --git a/source/ProtocolGenerator/Event.cs b/source/ProtocolGenerator/Event.cs index 2456dc94e67fcaace2dd87c8fabf9cedf7230380..fe6e146a4cccdf25b72b22356b6ad7f869ff1bd5 100644 --- a/source/ProtocolGenerator/Event.cs +++ b/source/ProtocolGenerator/Event.cs @@ -1,4 +1,5 @@ using System.Collections.ObjectModel; +using Newtonsoft.Json; namespace MasterDevs.ChromeDevTools.ProtocolGenerator { @@ -27,5 +28,8 @@ namespace MasterDevs.ChromeDevTools.ProtocolGenerator get; set; } + + [JsonProperty("experimental")] + public bool IsExperimental { get; set; } } } diff --git a/source/ProtocolGenerator/Property.cs b/source/ProtocolGenerator/Property.cs index 9002cadf8e2aca6267369b3cb830540bab33b4df..2e461dbc70b0521a7f64bf39c91fa939bdf2339d 100644 --- a/source/ProtocolGenerator/Property.cs +++ b/source/ProtocolGenerator/Property.cs @@ -16,5 +16,8 @@ namespace MasterDevs.ChromeDevTools.ProtocolGenerator get; set; } + + [JsonProperty("deprecated")] + public bool IsDeprecated { get; set; } } } diff --git a/source/ProtocolGenerator/Type.cs b/source/ProtocolGenerator/Type.cs index 7d8f8cfc9850d3fb9b9691e0d5a92b3a14e67bee..1fbeff975ea37fad1663ebd0e667a9be6896d71b 100644 --- a/source/ProtocolGenerator/Type.cs +++ b/source/ProtocolGenerator/Type.cs @@ -87,6 +87,10 @@ namespace MasterDevs.ChromeDevTools.ProtocolGenerator } } } + + [JsonProperty("experimental")] + public bool IsExperimental { get; set; } + public override bool Equals(object obj) { var other = obj as Type;