In case a procedure argument is a JsonSerializeable object, encoded object gets decoded as associative array and not as an object. A common API that clients and servers share, might define objects as function parameters and return values.
This problem can be solved by a wrapper for Client::execute() on the client side. However on the server side, this problem has to be solved inside ProcedureHandler::executeMethod() before invokeArgs().
I suggest a $argsTransformMethod in the same way as $beforeMethodName.
In case a procedure argument is a
JsonSerializeable
object, encoded object gets decoded as associative array and not as an object. A common API that clients and servers share, might define objects as function parameters and return values.This problem can be solved by a wrapper for
Client::execute()
on the client side. However on the server side, this problem has to be solved insideProcedureHandler::executeMethod()
beforeinvokeArgs()
.I suggest a
$argsTransformMethod
in the same way as$beforeMethodName
.