/** * {@inheritdoc} */ public static function fromArray(array $values) { $message = new self(); $values = array_merge(['java_package' => null, 'java_outer_classname' => null, 'java_multiple_files' => false, 'java_generate_equals_and_hash' => false, 'java_string_check_utf8' => false, 'optimize_for' => \google\protobuf\FileOptions\OptimizeMode::SPEED(), 'go_package' => null, 'cc_generic_services' => false, 'java_generic_services' => false, 'py_generic_services' => false, 'deprecated' => false, 'cc_enable_arenas' => false, 'objc_class_prefix' => null, 'csharp_namespace' => null, 'javanano_use_deprecated_package' => null, 'uninterpreted_option' => []], $values); $message->setJavaPackage($values['java_package']); $message->setJavaOuterClassname($values['java_outer_classname']); $message->setJavaMultipleFiles($values['java_multiple_files']); $message->setJavaGenerateEqualsAndHash($values['java_generate_equals_and_hash']); $message->setJavaStringCheckUtf8($values['java_string_check_utf8']); $message->setOptimizeFor($values['optimize_for']); $message->setGoPackage($values['go_package']); $message->setCcGenericServices($values['cc_generic_services']); $message->setJavaGenericServices($values['java_generic_services']); $message->setPyGenericServices($values['py_generic_services']); $message->setDeprecated($values['deprecated']); $message->setCcEnableArenas($values['cc_enable_arenas']); $message->setObjcClassPrefix($values['objc_class_prefix']); $message->setCsharpNamespace($values['csharp_namespace']); $message->setJavananoUseDeprecatedPackage($values['javanano_use_deprecated_package']); foreach ($values['uninterpreted_option'] as $item) { $message->addUninterpretedOption($item); } return $message; }