| Index: third_party/protobuf/src/google/protobuf/compiler/java/java_map_field.cc
|
| diff --git a/third_party/protobuf/src/google/protobuf/compiler/java/java_map_field.cc b/third_party/protobuf/src/google/protobuf/compiler/java/java_map_field.cc
|
| index 3e035c89b9123e89d1c9aa235df5ecc42937924f..2a551ca47eb8300a7b8ea8db5e1212441de50369 100644
|
| --- a/third_party/protobuf/src/google/protobuf/compiler/java/java_map_field.cc
|
| +++ b/third_party/protobuf/src/google/protobuf/compiler/java/java_map_field.cc
|
| @@ -79,9 +79,10 @@ void SetMessageVariables(const FieldDescriptor* descriptor,
|
| int messageBitIndex,
|
| int builderBitIndex,
|
| const FieldGeneratorInfo* info,
|
| - ClassNameResolver* name_resolver,
|
| + Context* context,
|
| map<string, string>* variables) {
|
| SetCommonFieldVariables(descriptor, info, variables);
|
| + ClassNameResolver* name_resolver = context->GetNameResolver();
|
|
|
| (*variables)["type"] =
|
| name_resolver->GetImmutableClassName(descriptor->message_type());
|
| @@ -123,8 +124,7 @@ void SetMessageVariables(const FieldDescriptor* descriptor,
|
| // by the proto compiler
|
| (*variables)["deprecation"] = descriptor->options().deprecated()
|
| ? "@java.lang.Deprecated " : "";
|
| - (*variables)["on_changed"] =
|
| - HasDescriptorMethods(descriptor->containing_type()) ? "onChanged();" : "";
|
| + (*variables)["on_changed"] = "onChanged();";
|
|
|
| // For repeated fields, one bit is used for whether the array is immutable
|
| // in the parsing constructor.
|
| @@ -135,18 +135,12 @@ void SetMessageVariables(const FieldDescriptor* descriptor,
|
|
|
| (*variables)["default_entry"] = (*variables)["capitalized_name"] +
|
| "DefaultEntryHolder.defaultEntry";
|
| - if (HasDescriptorMethods(descriptor->file())) {
|
| - (*variables)["lite"] = "";
|
| - (*variables)["map_field_parameter"] = (*variables)["default_entry"];
|
| - (*variables)["descriptor"] =
|
| - name_resolver->GetImmutableClassName(descriptor->file()) +
|
| - ".internal_" + UniqueFileScopeIdentifier(descriptor->message_type()) +
|
| - "_descriptor, ";
|
| - } else {
|
| - (*variables)["lite"] = "Lite";
|
| - (*variables)["map_field_parameter"] = "";
|
| - (*variables)["descriptor"] = "";
|
| - }
|
| + (*variables)["lite"] = "";
|
| + (*variables)["map_field_parameter"] = (*variables)["default_entry"];
|
| + (*variables)["descriptor"] =
|
| + name_resolver->GetImmutableClassName(descriptor->file()) +
|
| + ".internal_" + UniqueFileScopeIdentifier(descriptor->message_type()) +
|
| + "_descriptor, ";
|
| }
|
|
|
| } // namespace
|
| @@ -159,7 +153,7 @@ ImmutableMapFieldGenerator(const FieldDescriptor* descriptor,
|
| : descriptor_(descriptor), name_resolver_(context->GetNameResolver()) {
|
| SetMessageVariables(descriptor, messageBitIndex, builderBitIndex,
|
| context->GetFieldGeneratorInfo(descriptor),
|
| - name_resolver_, &variables_);
|
| + context, &variables_);
|
| }
|
|
|
| ImmutableMapFieldGenerator::
|
| @@ -221,7 +215,7 @@ GenerateMembers(io::Printer* printer) const {
|
| " if ($name$_ == null) {\n"
|
| " return com.google.protobuf.MapField$lite$.emptyMapField(\n"
|
| " $map_field_parameter$);\n"
|
| - " }\n"
|
| + " }\n"
|
| " return $name$_;\n"
|
| "}\n");
|
| if (GetJavaType(ValueField(descriptor_)) == JAVATYPE_ENUM) {
|
| @@ -276,7 +270,7 @@ GenerateBuilderMembers(io::Printer* printer) const {
|
| " if ($name$_ == null) {\n"
|
| " return com.google.protobuf.MapField$lite$.emptyMapField(\n"
|
| " $map_field_parameter$);\n"
|
| - " }\n"
|
| + " }\n"
|
| " return $name$_;\n"
|
| "}\n"
|
| "private com.google.protobuf.MapField$lite$<$type_parameters$>\n"
|
| @@ -424,7 +418,7 @@ GenerateParsingCode(io::Printer* printer) const {
|
| "$name$ = $default_entry$.getParserForType().parseFrom(bytes);\n");
|
| printer->Print(
|
| variables_,
|
| - "if ($value_enum_type$.valueOf($name$.getValue()) == null) {\n"
|
| + "if ($value_enum_type$.forNumber($name$.getValue()) == null) {\n"
|
| " unknownFields.mergeLengthDelimitedField($number$, bytes);\n"
|
| "} else {\n"
|
| " $name$_.getMutableMap().put($name$.getKey(), $name$.getValue());\n"
|
|
|