From 50a37e0135c8dea723244b97b2fb76e56a5aece0 Mon Sep 17 00:00:00 2001 From: Jon Skeet Date: Thu, 3 Nov 2016 09:24:29 +0000 Subject: Change JSON field name formatting This affects cases with leading capital letters. This breaks compatibility with previous C# releases, but fixes compatibility with other implementations. See #2278 for details. --- csharp/src/Google.Protobuf/WellKnownTypes/FieldMaskPartial.cs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'csharp/src/Google.Protobuf/WellKnownTypes') diff --git a/csharp/src/Google.Protobuf/WellKnownTypes/FieldMaskPartial.cs b/csharp/src/Google.Protobuf/WellKnownTypes/FieldMaskPartial.cs index f9cdb8af..0685c21a 100644 --- a/csharp/src/Google.Protobuf/WellKnownTypes/FieldMaskPartial.cs +++ b/csharp/src/Google.Protobuf/WellKnownTypes/FieldMaskPartial.cs @@ -52,7 +52,7 @@ namespace Google.Protobuf.WellKnownTypes /// /// Paths in the field mask /// Determines the handling of non-normalized values - /// The represented duration is invalid, and is false. + /// The represented field mask is invalid, and is false. internal static string ToJson(IList paths, bool diagnosticOnly) { var firstInvalid = paths.FirstOrDefault(p => !ValidatePath(p)); @@ -60,10 +60,10 @@ namespace Google.Protobuf.WellKnownTypes { var writer = new StringWriter(); #if DOTNET35 - var query = paths.Select(JsonFormatter.ToCamelCase); + var query = paths.Select(JsonFormatter.ToJsonName); JsonFormatter.WriteString(writer, string.Join(",", query.ToArray())); #else - JsonFormatter.WriteString(writer, string.Join(",", paths.Select(JsonFormatter.ToCamelCase))); + JsonFormatter.WriteString(writer, string.Join(",", paths.Select(JsonFormatter.ToJsonName))); #endif return writer.ToString(); } @@ -85,9 +85,9 @@ namespace Google.Protobuf.WellKnownTypes } /// - /// Camel-case converter with added strictness for field mask formatting. + /// Checks whether the given path is valid for a field mask. /// - /// The field mask is invalid for JSON representation + /// true if the path is valid; false otherwise private static bool ValidatePath(string input) { for (int i = 0; i < input.Length; i++) -- cgit v1.2.3