| Index: third_party/protobuf/src/google/protobuf/compiler/java/java_map_field_lite.cc
|
| diff --git a/third_party/protobuf/src/google/protobuf/compiler/java/java_map_field_lite.cc b/third_party/protobuf/src/google/protobuf/compiler/java/java_map_field_lite.cc
|
| index 523052cc9e934c6d3e85d691e8eae5682cf17b91..b80d413901ac132d0800084a0dc1f720a85d4662 100644
|
| --- a/third_party/protobuf/src/google/protobuf/compiler/java/java_map_field_lite.cc
|
| +++ b/third_party/protobuf/src/google/protobuf/compiler/java/java_map_field_lite.cc
|
| @@ -80,7 +80,7 @@ void SetMessageVariables(const FieldDescriptor* descriptor,
|
| int builderBitIndex,
|
| const FieldGeneratorInfo* info,
|
| Context* context,
|
| - std::map<string, string>* variables) {
|
| + map<string, string>* variables) {
|
| SetCommonFieldVariables(descriptor, info, variables);
|
|
|
| ClassNameResolver* name_resolver = context->GetNameResolver();
|
| @@ -88,18 +88,10 @@ void SetMessageVariables(const FieldDescriptor* descriptor,
|
| name_resolver->GetImmutableClassName(descriptor->message_type());
|
| const FieldDescriptor* key = KeyField(descriptor);
|
| const FieldDescriptor* value = ValueField(descriptor);
|
| - const JavaType keyJavaType = GetJavaType(key);
|
| - const JavaType valueJavaType = GetJavaType(value);
|
| -
|
| (*variables)["key_type"] = TypeName(key, name_resolver, false);
|
| (*variables)["boxed_key_type"] = TypeName(key, name_resolver, true);
|
| (*variables)["key_wire_type"] = WireType(key);
|
| (*variables)["key_default_value"] = DefaultValue(key, true, name_resolver);
|
| - (*variables)["key_null_check"] = IsReferenceType(keyJavaType) ?
|
| - "if (key == null) { throw new java.lang.NullPointerException(); }" : "";
|
| - (*variables)["value_null_check"] = IsReferenceType(valueJavaType) ?
|
| - "if (value == null) { throw new java.lang.NullPointerException(); }" : "";
|
| -
|
| if (GetJavaType(value) == JAVATYPE_ENUM) {
|
| // We store enums as Integers internally.
|
| (*variables)["value_type"] = "int";
|
| @@ -135,6 +127,8 @@ void SetMessageVariables(const FieldDescriptor* descriptor,
|
|
|
| (*variables)["default_entry"] = (*variables)["capitalized_name"] +
|
| "DefaultEntryHolder.defaultEntry";
|
| + (*variables)["lite"] = "Lite";
|
| + (*variables)["descriptor"] = "";
|
| }
|
|
|
| } // namespace
|
| @@ -163,95 +157,25 @@ int ImmutableMapFieldLiteGenerator::GetNumBitsForBuilder() const {
|
|
|
| void ImmutableMapFieldLiteGenerator::
|
| GenerateInterfaceMembers(io::Printer* printer) const {
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$int get$capitalized_name$Count();\n");
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$boolean contains$capitalized_name$(\n"
|
| - " $key_type$ key);\n");
|
| if (GetJavaType(ValueField(descriptor_)) == JAVATYPE_ENUM) {
|
| - printer->Print(
|
| - variables_,
|
| - "/**\n"
|
| - " * Use {@link #get$capitalized_name$Map()} instead.\n"
|
| - " */\n"
|
| - "@java.lang.Deprecated\n"
|
| - "java.util.Map<$boxed_key_type$, $value_enum_type$>\n"
|
| - "get$capitalized_name$();\n");
|
| WriteFieldDocComment(printer, descriptor_);
|
| printer->Print(
|
| variables_,
|
| "$deprecation$java.util.Map<$boxed_key_type$, $value_enum_type$>\n"
|
| - "get$capitalized_name$Map();\n");
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$$value_enum_type$ get$capitalized_name$OrDefault(\n"
|
| - " $key_type$ key,\n"
|
| - " $value_enum_type$ defaultValue);\n");
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$$value_enum_type$ get$capitalized_name$OrThrow(\n"
|
| - " $key_type$ key);\n");
|
| + "get$capitalized_name$();\n");
|
| if (SupportUnknownEnumValue(descriptor_->file())) {
|
| - printer->Print(
|
| - variables_,
|
| - "/**\n"
|
| - " * Use {@link #get$capitalized_name$ValueMap()} instead.\n"
|
| - " */\n"
|
| - "@java.lang.Deprecated\n"
|
| - "java.util.Map<$type_parameters$>\n"
|
| - "get$capitalized_name$Value();\n");
|
| WriteFieldDocComment(printer, descriptor_);
|
| printer->Print(
|
| variables_,
|
| "$deprecation$java.util.Map<$type_parameters$>\n"
|
| - "get$capitalized_name$ValueMap();\n");
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$\n"
|
| - "$value_type$ get$capitalized_name$ValueOrDefault(\n"
|
| - " $key_type$ key,\n"
|
| - " $value_type$ defaultValue);\n");
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$\n"
|
| - "$value_type$ get$capitalized_name$ValueOrThrow(\n"
|
| - " $key_type$ key);\n");
|
| + "get$capitalized_name$Value();\n");
|
| }
|
| } else {
|
| - printer->Print(
|
| - variables_,
|
| - "/**\n"
|
| - " * Use {@link #get$capitalized_name$Map()} instead.\n"
|
| - " */\n"
|
| - "@java.lang.Deprecated\n"
|
| - "java.util.Map<$type_parameters$>\n"
|
| - "get$capitalized_name$();\n");
|
| WriteFieldDocComment(printer, descriptor_);
|
| printer->Print(
|
| variables_,
|
| "$deprecation$java.util.Map<$type_parameters$>\n"
|
| - "get$capitalized_name$Map();\n");
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$\n"
|
| - "$value_type$ get$capitalized_name$OrDefault(\n"
|
| - " $key_type$ key,\n"
|
| - " $value_type$ defaultValue);\n");
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$\n"
|
| - "$value_type$ get$capitalized_name$OrThrow(\n"
|
| - " $key_type$ key);\n");
|
| + "get$capitalized_name$();\n");
|
| }
|
| }
|
|
|
| @@ -260,10 +184,11 @@ GenerateMembers(io::Printer* printer) const {
|
| printer->Print(
|
| variables_,
|
| "private static final class $capitalized_name$DefaultEntryHolder {\n"
|
| - " static final com.google.protobuf.MapEntryLite<\n"
|
| + " static final com.google.protobuf.MapEntry$lite$<\n"
|
| " $type_parameters$> defaultEntry =\n"
|
| - " com.google.protobuf.MapEntryLite\n"
|
| + " com.google.protobuf.MapEntry$lite$\n"
|
| " .<$type_parameters$>newDefaultInstance(\n"
|
| + " $descriptor$\n"
|
| " $key_wire_type$,\n"
|
| " $key_default_value$,\n"
|
| " $value_wire_type$,\n"
|
| @@ -271,35 +196,20 @@ GenerateMembers(io::Printer* printer) const {
|
| "}\n");
|
| printer->Print(
|
| variables_,
|
| - "private com.google.protobuf.MapFieldLite<\n"
|
| + "private com.google.protobuf.MapField$lite$<\n"
|
| " $type_parameters$> $name$_ =\n"
|
| - " com.google.protobuf.MapFieldLite.emptyMapField();\n"
|
| - "private com.google.protobuf.MapFieldLite<$type_parameters$>\n"
|
| + " com.google.protobuf.MapField$lite$.emptyMapField();\n"
|
| + "private com.google.protobuf.MapField$lite$<$type_parameters$>\n"
|
| "internalGet$capitalized_name$() {\n"
|
| " return $name$_;\n"
|
| "}\n"
|
| - "private com.google.protobuf.MapFieldLite<$type_parameters$>\n"
|
| + "private com.google.protobuf.MapField$lite$<$type_parameters$>\n"
|
| "internalGetMutable$capitalized_name$() {\n"
|
| " if (!$name$_.isMutable()) {\n"
|
| - " $name$_ = $name$_.mutableCopy();\n"
|
| + " $name$_ = $name$_.copy();\n"
|
| " }\n"
|
| " return $name$_;\n"
|
| "}\n");
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$\n"
|
| - "public int get$capitalized_name$Count() {\n"
|
| - " return internalGet$capitalized_name$().size();\n"
|
| - "}\n");
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$\n"
|
| - "public boolean contains$capitalized_name$(\n"
|
| - " $key_type$ key) {\n"
|
| - " $key_null_check$\n"
|
| - " return internalGet$capitalized_name$().containsKey(key);\n"
|
| - "}\n");
|
| if (GetJavaType(ValueField(descriptor_)) == JAVATYPE_ENUM) {
|
| printer->Print(
|
| variables_,
|
| @@ -309,146 +219,34 @@ GenerateMembers(io::Printer* printer) const {
|
| " com.google.protobuf.Internal.MapAdapter.newEnumConverter(\n"
|
| " $value_enum_type$.internalGetValueMap(),\n"
|
| " $unrecognized_value$);\n");
|
| - printer->Print(
|
| - variables_,
|
| - "/**\n"
|
| - " * Use {@link #get$capitalized_name$Map()} instead.\n"
|
| - " */\n"
|
| - "@java.lang.Deprecated\n"
|
| - "public java.util.Map<$boxed_key_type$, $value_enum_type$>\n"
|
| - "get$capitalized_name$() {\n"
|
| - " return get$capitalized_name$Map();\n"
|
| - "}\n");
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$\n"
|
| - "public java.util.Map<$boxed_key_type$, $value_enum_type$>\n"
|
| - "get$capitalized_name$Map() {\n"
|
| - " return java.util.Collections.unmodifiableMap(\n"
|
| - " new com.google.protobuf.Internal.MapAdapter<\n"
|
| - " $boxed_key_type$, $value_enum_type$, java.lang.Integer>(\n"
|
| - " internalGet$capitalized_name$(),\n"
|
| - " $name$ValueConverter));\n"
|
| - "}\n");
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$\n"
|
| - "public $value_enum_type$ get$capitalized_name$OrDefault(\n"
|
| - " $key_type$ key,\n"
|
| - " $value_enum_type$ defaultValue) {\n"
|
| - " $key_null_check$\n"
|
| - " java.util.Map<$boxed_key_type$, $boxed_value_type$> map =\n"
|
| - " internalGet$capitalized_name$();\n"
|
| - " return map.containsKey(key)\n"
|
| - " ? $name$ValueConverter.doForward(map.get(key))\n"
|
| - " : defaultValue;\n"
|
| - "}\n");
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$\n"
|
| - "public $value_enum_type$ get$capitalized_name$OrThrow(\n"
|
| - " $key_type$ key) {\n"
|
| - " $key_null_check$\n"
|
| - " java.util.Map<$boxed_key_type$, $boxed_value_type$> map =\n"
|
| - " internalGet$capitalized_name$();\n"
|
| - " if (!map.containsKey(key)) {\n"
|
| - " throw new java.lang.IllegalArgumentException();\n"
|
| - " }\n"
|
| - " return $name$ValueConverter.doForward(map.get(key));\n"
|
| - "}\n");
|
| if (SupportUnknownEnumValue(descriptor_->file())) {
|
| - printer->Print(
|
| - variables_,
|
| - "/**\n"
|
| - " * Use {@link #get$capitalized_name$ValueMap()} instead.\n"
|
| - " */\n"
|
| - "@java.lang.Deprecated\n"
|
| - "public java.util.Map<$boxed_key_type$, $boxed_value_type$>\n"
|
| - "get$capitalized_name$Value() {\n"
|
| - " return get$capitalized_name$ValueMap();\n"
|
| - "}\n");
|
| WriteFieldDocComment(printer, descriptor_);
|
| printer->Print(
|
| variables_,
|
| "$deprecation$\n"
|
| "public java.util.Map<$boxed_key_type$, $boxed_value_type$>\n"
|
| - "get$capitalized_name$ValueMap() {\n"
|
| - " return java.util.Collections.unmodifiableMap(\n"
|
| - " internalGet$capitalized_name$());\n"
|
| - "}\n");
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$\n"
|
| - "public $value_type$ get$capitalized_name$ValueOrDefault(\n"
|
| - " $key_type$ key,\n"
|
| - " $value_type$ defaultValue) {\n"
|
| - " $key_null_check$\n"
|
| - " java.util.Map<$boxed_key_type$, $boxed_value_type$> map =\n"
|
| - " internalGet$capitalized_name$();\n"
|
| - " return map.containsKey(key) ? map.get(key) : defaultValue;\n"
|
| - "}\n");
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$\n"
|
| - "public $value_type$ get$capitalized_name$ValueOrThrow(\n"
|
| - " $key_type$ key) {\n"
|
| - " $key_null_check$\n"
|
| - " java.util.Map<$boxed_key_type$, $boxed_value_type$> map =\n"
|
| - " internalGet$capitalized_name$();\n"
|
| - " if (!map.containsKey(key)) {\n"
|
| - " throw new java.lang.IllegalArgumentException();\n"
|
| - " }\n"
|
| - " return map.get(key);\n"
|
| + "get$capitalized_name$Value() {\n"
|
| + " return internalGet$capitalized_name$().getMap();\n"
|
| "}\n");
|
| }
|
| - } else {
|
| - printer->Print(
|
| - variables_,
|
| - "/**\n"
|
| - " * Use {@link #get$capitalized_name$Map()} instead.\n"
|
| - " */\n"
|
| - "@java.lang.Deprecated\n"
|
| - "public java.util.Map<$type_parameters$> get$capitalized_name$() {\n"
|
| - " return get$capitalized_name$Map();\n"
|
| - "}\n");
|
| WriteFieldDocComment(printer, descriptor_);
|
| printer->Print(
|
| variables_,
|
| "$deprecation$\n"
|
| - "public java.util.Map<$type_parameters$> get$capitalized_name$Map() {\n"
|
| - " return java.util.Collections.unmodifiableMap(\n"
|
| - " internalGet$capitalized_name$());\n"
|
| - "}\n");
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$\n"
|
| - "public $value_type$ get$capitalized_name$OrDefault(\n"
|
| - " $key_type$ key,\n"
|
| - " $value_type$ defaultValue) {\n"
|
| - " $key_null_check$\n"
|
| - " java.util.Map<$type_parameters$> map =\n"
|
| - " internalGet$capitalized_name$();\n"
|
| - " return map.containsKey(key) ? map.get(key) : defaultValue;\n"
|
| + "public java.util.Map<$boxed_key_type$, $value_enum_type$>\n"
|
| + "get$capitalized_name$() {\n"
|
| + " return new com.google.protobuf.Internal.MapAdapter<\n"
|
| + " $boxed_key_type$, $value_enum_type$, java.lang.Integer>(\n"
|
| + " internalGet$capitalized_name$().getMap(),\n"
|
| + " $name$ValueConverter);\n"
|
| "}\n");
|
| + } else {
|
| WriteFieldDocComment(printer, descriptor_);
|
| printer->Print(
|
| variables_,
|
| "$deprecation$\n"
|
| - "public $value_type$ get$capitalized_name$OrThrow(\n"
|
| - " $key_type$ key) {\n"
|
| - " $key_null_check$\n"
|
| - " java.util.Map<$type_parameters$> map =\n"
|
| - " internalGet$capitalized_name$();\n"
|
| - " if (!map.containsKey(key)) {\n"
|
| - " throw new java.lang.IllegalArgumentException();\n"
|
| - " }\n"
|
| - " return map.get(key);\n"
|
| + "public java.util.Map<$type_parameters$> get$capitalized_name$() {\n"
|
| + " return internalGet$capitalized_name$().getMap();\n"
|
| "}\n");
|
| }
|
|
|
| @@ -458,10 +256,10 @@ GenerateMembers(io::Printer* printer) const {
|
| printer->Print(
|
| variables_,
|
| "private java.util.Map<$boxed_key_type$, $value_enum_type$>\n"
|
| - "getMutable$capitalized_name$Map() {\n"
|
| + "getMutable$capitalized_name$() {\n"
|
| " return new com.google.protobuf.Internal.MapAdapter<\n"
|
| " $boxed_key_type$, $value_enum_type$, java.lang.Integer>(\n"
|
| - " internalGetMutable$capitalized_name$(),\n"
|
| + " internalGetMutable$capitalized_name$().getMutableMap(),\n"
|
| " $name$ValueConverter);\n"
|
| "}\n");
|
| if (SupportUnknownEnumValue(descriptor_->file())) {
|
| @@ -469,8 +267,8 @@ GenerateMembers(io::Printer* printer) const {
|
| printer->Print(
|
| variables_,
|
| "private java.util.Map<$boxed_key_type$, $boxed_value_type$>\n"
|
| - "getMutable$capitalized_name$ValueMap() {\n"
|
| - " return internalGetMutable$capitalized_name$();\n"
|
| + "getMutable$capitalized_name$Value() {\n"
|
| + " return internalGetMutable$capitalized_name$().getMutableMap();\n"
|
| "}\n");
|
| }
|
| } else {
|
| @@ -478,252 +276,88 @@ GenerateMembers(io::Printer* printer) const {
|
| printer->Print(
|
| variables_,
|
| "private java.util.Map<$type_parameters$>\n"
|
| - "getMutable$capitalized_name$Map() {\n"
|
| - " return internalGetMutable$capitalized_name$();\n"
|
| + "getMutable$capitalized_name$() {\n"
|
| + " return internalGetMutable$capitalized_name$().getMutableMap();\n"
|
| "}\n");
|
| }
|
| }
|
|
|
| void ImmutableMapFieldLiteGenerator::
|
| GenerateBuilderMembers(io::Printer* printer) const {
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$\n"
|
| - "public int get$capitalized_name$Count() {\n"
|
| - " return instance.get$capitalized_name$Map().size();\n"
|
| - "}\n");
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$\n"
|
| - "public boolean contains$capitalized_name$(\n"
|
| - " $key_type$ key) {\n"
|
| - " $key_null_check$\n"
|
| - " return instance.get$capitalized_name$Map().containsKey(key);\n"
|
| - "}\n");
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$\n"
|
| - "public Builder clear$capitalized_name$() {\n"
|
| - " copyOnWrite();\n"
|
| - " instance.getMutable$capitalized_name$Map().clear();\n"
|
| - " return this;\n"
|
| - "}\n");
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$\n"
|
| - "public Builder remove$capitalized_name$(\n"
|
| - " $key_type$ key) {\n"
|
| - " $key_null_check$\n"
|
| - " copyOnWrite();\n"
|
| - " instance.getMutable$capitalized_name$Map().remove(key);\n"
|
| - " return this;\n"
|
| - "}\n");
|
| if (GetJavaType(ValueField(descriptor_)) == JAVATYPE_ENUM) {
|
| - printer->Print(
|
| - variables_,
|
| - "/**\n"
|
| - " * Use {@link #get$capitalized_name$Map()} instead.\n"
|
| - " */\n"
|
| - "@java.lang.Deprecated\n"
|
| - "public java.util.Map<$boxed_key_type$, $value_enum_type$>\n"
|
| - "get$capitalized_name$() {\n"
|
| - " return get$capitalized_name$Map();\n"
|
| - "}\n");
|
| WriteFieldDocComment(printer, descriptor_);
|
| printer->Print(
|
| variables_,
|
| "$deprecation$\n"
|
| "public java.util.Map<$boxed_key_type$, $value_enum_type$>\n"
|
| - "get$capitalized_name$Map() {\n"
|
| - " return java.util.Collections.unmodifiableMap(\n"
|
| - " instance.get$capitalized_name$Map());\n"
|
| - "}\n");
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$\n"
|
| - "public $value_enum_type$ get$capitalized_name$OrDefault(\n"
|
| - " $key_type$ key,\n"
|
| - " $value_enum_type$ defaultValue) {\n"
|
| - " $key_null_check$\n"
|
| - " java.util.Map<$boxed_key_type$, $value_enum_type$> map =\n"
|
| - " instance.get$capitalized_name$Map();\n"
|
| - " return map.containsKey(key)\n"
|
| - " ? map.get(key)\n"
|
| - " : defaultValue;\n"
|
| + "get$capitalized_name$() {\n"
|
| + " return instance.get$capitalized_name$();\n"
|
| "}\n");
|
| WriteFieldDocComment(printer, descriptor_);
|
| printer->Print(
|
| variables_,
|
| "$deprecation$\n"
|
| - "public $value_enum_type$ get$capitalized_name$OrThrow(\n"
|
| - " $key_type$ key) {\n"
|
| - " $key_null_check$\n"
|
| - " java.util.Map<$boxed_key_type$, $value_enum_type$> map =\n"
|
| - " instance.get$capitalized_name$Map();\n"
|
| - " if (!map.containsKey(key)) {\n"
|
| - " throw new java.lang.IllegalArgumentException();\n"
|
| - " }\n"
|
| - " return map.get(key);\n"
|
| - "}\n");
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$public Builder put$capitalized_name$(\n"
|
| - " $key_type$ key,\n"
|
| - " $value_enum_type$ value) {\n"
|
| - " $key_null_check$\n"
|
| - " $value_null_check$\n"
|
| + "public java.util.Map<$boxed_key_type$, $value_enum_type$>\n"
|
| + "getMutable$capitalized_name$() {\n"
|
| " copyOnWrite();\n"
|
| - " instance.getMutable$capitalized_name$Map().put(key, value);\n"
|
| - " return this;\n"
|
| + " return instance.getMutable$capitalized_name$();\n"
|
| "}\n");
|
| WriteFieldDocComment(printer, descriptor_);
|
| printer->Print(
|
| variables_,
|
| "$deprecation$public Builder putAll$capitalized_name$(\n"
|
| " java.util.Map<$boxed_key_type$, $value_enum_type$> values) {\n"
|
| - " copyOnWrite();\n"
|
| - " instance.getMutable$capitalized_name$Map().putAll(values);\n"
|
| + " getMutable$capitalized_name$().putAll(values);\n"
|
| " return this;\n"
|
| "}\n");
|
| if (SupportUnknownEnumValue(descriptor_->file())) {
|
| - printer->Print(
|
| - variables_,
|
| - "/**\n"
|
| - " * Use {@link #get$capitalized_name$ValueMap()} instead.\n"
|
| - " */\n"
|
| - "@java.lang.Deprecated\n"
|
| - "public java.util.Map<$boxed_key_type$, $boxed_value_type$>\n"
|
| - "get$capitalized_name$Value() {\n"
|
| - " return get$capitalized_name$ValueMap();\n"
|
| - "}\n");
|
| WriteFieldDocComment(printer, descriptor_);
|
| printer->Print(
|
| variables_,
|
| "$deprecation$\n"
|
| "public java.util.Map<$boxed_key_type$, $boxed_value_type$>\n"
|
| - "get$capitalized_name$ValueMap() {\n"
|
| - " return java.util.Collections.unmodifiableMap(\n"
|
| - " instance.get$capitalized_name$ValueMap());\n"
|
| - "}\n");
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$\n"
|
| - "public $value_type$ get$capitalized_name$ValueOrDefault(\n"
|
| - " $key_type$ key,\n"
|
| - " $value_type$ defaultValue) {\n"
|
| - " $key_null_check$\n"
|
| - " java.util.Map<$boxed_key_type$, $boxed_value_type$> map =\n"
|
| - " instance.get$capitalized_name$ValueMap();\n"
|
| - " return map.containsKey(key) ? map.get(key) : defaultValue;\n"
|
| + "get$capitalized_name$Value() {\n"
|
| + " return instance.get$capitalized_name$Value();\n"
|
| "}\n");
|
| WriteFieldDocComment(printer, descriptor_);
|
| printer->Print(
|
| variables_,
|
| "$deprecation$\n"
|
| - "public $value_type$ get$capitalized_name$ValueOrThrow(\n"
|
| - " $key_type$ key) {\n"
|
| - " $key_null_check$\n"
|
| - " java.util.Map<$boxed_key_type$, $boxed_value_type$> map =\n"
|
| - " instance.get$capitalized_name$ValueMap();\n"
|
| - " if (!map.containsKey(key)) {\n"
|
| - " throw new java.lang.IllegalArgumentException();\n"
|
| - " }\n"
|
| - " return map.get(key);\n"
|
| - "}\n");
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$public Builder put$capitalized_name$Value(\n"
|
| - " $key_type$ key,\n"
|
| - " $value_type$ value) {\n"
|
| - " $key_null_check$\n"
|
| - " if ($value_enum_type$.forNumber(value) == null) {\n"
|
| - " throw new java.lang.IllegalArgumentException();\n"
|
| - " }\n"
|
| + "public java.util.Map<$boxed_key_type$, $boxed_value_type$>\n"
|
| + "getMutable$capitalized_name$Value() {\n"
|
| " copyOnWrite();\n"
|
| - " instance.getMutable$capitalized_name$ValueMap().put(key, value);\n"
|
| - " return this;\n"
|
| + " return instance.getMutable$capitalized_name$Value();\n"
|
| "}\n");
|
| WriteFieldDocComment(printer, descriptor_);
|
| printer->Print(
|
| variables_,
|
| "$deprecation$public Builder putAll$capitalized_name$Value(\n"
|
| " java.util.Map<$boxed_key_type$, $boxed_value_type$> values) {\n"
|
| - " copyOnWrite();\n"
|
| - " instance.getMutable$capitalized_name$ValueMap().putAll(values);\n"
|
| + " getMutable$capitalized_name$Value().putAll(values);\n"
|
| " return this;\n"
|
| "}\n");
|
| }
|
| } else {
|
| - printer->Print(
|
| - variables_,
|
| - "/**\n"
|
| - " * Use {@link #get$capitalized_name$Map()} instead.\n"
|
| - " */\n"
|
| - "@java.lang.Deprecated\n"
|
| - "public java.util.Map<$type_parameters$> get$capitalized_name$() {\n"
|
| - " return get$capitalized_name$Map();\n"
|
| - "}\n");
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$"
|
| - "public java.util.Map<$type_parameters$> get$capitalized_name$Map() {\n"
|
| - " return java.util.Collections.unmodifiableMap(\n"
|
| - " instance.get$capitalized_name$Map());\n"
|
| - "}\n");
|
| WriteFieldDocComment(printer, descriptor_);
|
| printer->Print(
|
| variables_,
|
| - "$deprecation$\n"
|
| - "public $value_type$ get$capitalized_name$OrDefault(\n"
|
| - " $key_type$ key,\n"
|
| - " $value_type$ defaultValue) {\n"
|
| - " $key_null_check$\n"
|
| - " java.util.Map<$type_parameters$> map =\n"
|
| - " instance.get$capitalized_name$Map();\n"
|
| - " return map.containsKey(key) ? map.get(key) : defaultValue;\n"
|
| - "}\n");
|
| - WriteFieldDocComment(printer, descriptor_);
|
| - printer->Print(
|
| - variables_,
|
| - "$deprecation$\n"
|
| - "public $value_type$ get$capitalized_name$OrThrow(\n"
|
| - " $key_type$ key) {\n"
|
| - " $key_null_check$\n"
|
| - " java.util.Map<$type_parameters$> map =\n"
|
| - " instance.get$capitalized_name$Map();\n"
|
| - " if (!map.containsKey(key)) {\n"
|
| - " throw new java.lang.IllegalArgumentException();\n"
|
| - " }\n"
|
| - " return map.get(key);\n"
|
| + "public java.util.Map<$type_parameters$> get$capitalized_name$() {\n"
|
| + " return instance.get$capitalized_name$();\n"
|
| "}\n");
|
| WriteFieldDocComment(printer, descriptor_);
|
| printer->Print(
|
| variables_,
|
| - "$deprecation$"
|
| - "public Builder put$capitalized_name$(\n"
|
| - " $key_type$ key,\n"
|
| - " $value_type$ value) {\n"
|
| - " $key_null_check$\n"
|
| - " $value_null_check$\n"
|
| + "public java.util.Map<$type_parameters$>\n"
|
| + "getMutable$capitalized_name$() {\n"
|
| " copyOnWrite();\n"
|
| - " instance.getMutable$capitalized_name$Map().put(key, value);\n"
|
| - " return this;\n"
|
| + " return instance.getMutable$capitalized_name$();\n"
|
| "}\n");
|
| WriteFieldDocComment(printer, descriptor_);
|
| printer->Print(
|
| variables_,
|
| - "$deprecation$"
|
| "public Builder putAll$capitalized_name$(\n"
|
| " java.util.Map<$type_parameters$> values) {\n"
|
| - " copyOnWrite();\n"
|
| - " instance.getMutable$capitalized_name$Map().putAll(values);\n"
|
| + " getMutable$capitalized_name$().putAll(values);\n"
|
| " return this;\n"
|
| "}\n");
|
| }
|
| @@ -743,8 +377,8 @@ void ImmutableMapFieldLiteGenerator::
|
| GenerateVisitCode(io::Printer* printer) const {
|
| printer->Print(
|
| variables_,
|
| - "$name$_ = visitor.visitMap(\n"
|
| - " $name$_, other.internalGet$capitalized_name$());\n");
|
| + "$name$_ = visitor.visitMap(internalGetMutable$capitalized_name$(),\n"
|
| + " other.internalGet$capitalized_name$());\n");
|
| }
|
|
|
| void ImmutableMapFieldLiteGenerator::
|
| @@ -758,26 +392,29 @@ GenerateParsingCode(io::Printer* printer) const {
|
| printer->Print(
|
| variables_,
|
| "if (!$name$_.isMutable()) {\n"
|
| - " $name$_ = $name$_.mutableCopy();\n"
|
| + " $name$_ = $name$_.copy();\n"
|
| "}\n");
|
| if (!SupportUnknownEnumValue(descriptor_->file()) &&
|
| GetJavaType(ValueField(descriptor_)) == JAVATYPE_ENUM) {
|
| printer->Print(
|
| variables_,
|
| "com.google.protobuf.ByteString bytes = input.readBytes();\n"
|
| - "java.util.Map.Entry<$type_parameters$> $name$__ =\n"
|
| - " $default_entry$.parseEntry(bytes, extensionRegistry);\n");
|
| + "com.google.protobuf.MapEntry$lite$<$type_parameters$>\n"
|
| + "$name$ = $default_entry$.getParserForType().parseFrom(bytes);\n");
|
| printer->Print(
|
| variables_,
|
| - "if ($value_enum_type$.forNumber($name$__.getValue()) == null) {\n"
|
| + "if ($value_enum_type$.forNumber($name$.getValue()) == null) {\n"
|
| " super.mergeLengthDelimitedField($number$, bytes);\n"
|
| "} else {\n"
|
| - " $name$_.put($name$__);\n"
|
| + " $name$_.getMutableMap().put($name$.getKey(), $name$.getValue());\n"
|
| "}\n");
|
| } else {
|
| printer->Print(
|
| variables_,
|
| - "$default_entry$.parseInto($name$_, input, extensionRegistry);");
|
| + "com.google.protobuf.MapEntry$lite$<$type_parameters$>\n"
|
| + "$name$ = input.readMessage(\n"
|
| + " $default_entry$.getParserForType(), extensionRegistry);\n"
|
| + "$name$_.getMutableMap().put($name$.getKey(), $name$.getValue());\n");
|
| }
|
| }
|
|
|
| @@ -791,9 +428,13 @@ GenerateSerializationCode(io::Printer* printer) const {
|
| printer->Print(
|
| variables_,
|
| "for (java.util.Map.Entry<$type_parameters$> entry\n"
|
| - " : internalGet$capitalized_name$().entrySet()) {\n"
|
| - " $default_entry$.serializeTo(\n"
|
| - " output, $number$, entry.getKey(), entry.getValue());\n"
|
| + " : internalGet$capitalized_name$().getMap().entrySet()) {\n"
|
| + " com.google.protobuf.MapEntry$lite$<$type_parameters$>\n"
|
| + " $name$ = $default_entry$.newBuilderForType()\n"
|
| + " .setKey(entry.getKey())\n"
|
| + " .setValue(entry.getValue())\n"
|
| + " .build();\n"
|
| + " output.writeMessage($number$, $name$);\n"
|
| "}\n");
|
| }
|
|
|
| @@ -802,9 +443,14 @@ GenerateSerializedSizeCode(io::Printer* printer) const {
|
| printer->Print(
|
| variables_,
|
| "for (java.util.Map.Entry<$type_parameters$> entry\n"
|
| - " : internalGet$capitalized_name$().entrySet()) {\n"
|
| - " size += $default_entry$.computeMessageSize(\n"
|
| - " $number$, entry.getKey(), entry.getValue());\n"
|
| + " : internalGet$capitalized_name$().getMap().entrySet()) {\n"
|
| + " com.google.protobuf.MapEntry$lite$<$type_parameters$>\n"
|
| + " $name$ = $default_entry$.newBuilderForType()\n"
|
| + " .setKey(entry.getKey())\n"
|
| + " .setValue(entry.getValue())\n"
|
| + " .build();\n"
|
| + " size += com.google.protobuf.CodedOutputStream\n"
|
| + " .computeMessageSize($number$, $name$);\n"
|
| "}\n");
|
| }
|
|
|
| @@ -820,7 +466,7 @@ void ImmutableMapFieldLiteGenerator::
|
| GenerateHashCode(io::Printer* printer) const {
|
| printer->Print(
|
| variables_,
|
| - "if (!internalGet$capitalized_name$().isEmpty()) {\n"
|
| + "if (!internalGet$capitalized_name$().getMap().isEmpty()) {\n"
|
| " hash = (37 * hash) + $constant_name$;\n"
|
| " hash = (53 * hash) + internalGet$capitalized_name$().hashCode();\n"
|
| "}\n");
|
|
|