From 55bff48335809baaab083bbf1189c3ab69a65f2b Mon Sep 17 00:00:00 2001 From: Stanley Cheung Date: Mon, 13 Mar 2017 13:09:43 -0700 Subject: PHP: proto3 API change --- src/php/lib/Grpc/AbstractCall.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/php/lib/Grpc/AbstractCall.php b/src/php/lib/Grpc/AbstractCall.php index 40387abdc0..4833fdc7b6 100644 --- a/src/php/lib/Grpc/AbstractCall.php +++ b/src/php/lib/Grpc/AbstractCall.php @@ -131,6 +131,8 @@ abstract class AbstractCall // Proto3 implementation if (method_exists($data, 'encode')) { return $data->encode(); + } else if (method_exists($data, 'serializeToString')) { + return $data->serializeToString(); } // Protobuf-PHP implementation @@ -154,7 +156,11 @@ abstract class AbstractCall if (is_array($this->deserialize)) { list($className, $deserializeFunc) = $this->deserialize; $obj = new $className(); - $obj->$deserializeFunc($value); + if (method_exists($obj, $deserializeFunc)) { + $obj->$deserializeFunc($value); + } else { + $obj->mergeFromString($value); + } return $obj; } -- cgit v1.2.3