X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=src%2FWrapper.php;h=ce12d9a323246ae451e6f2a51c31c2796480b4a2;hb=1c13905fd4fc8b5177aab001489e6f6bf557389a;hp=10aae52eaf6d4842bd6fb433938f597e30e33dd4;hpb=fc4f17849d8bb022c3b8ff38a2bed1d1c188ac7f;p=plcapi.git diff --git a/src/Wrapper.php b/src/Wrapper.php index 10aae52..ce12d9a 100644 --- a/src/Wrapper.php +++ b/src/Wrapper.php @@ -8,8 +8,7 @@ namespace PhpXmlRpc; /** - * PHP-XMLRPC "wrapper" class. - * Generate stubs to transparently access xmlrpc methods as php functions and vice-versa. + * PHP-XMLRPC "wrapper" class - generate stubs to transparently access xmlrpc methods as php functions and vice-versa. * Note: this class implements the PROXY pattern, but it is not named so to avoid confusion with http proxies. * * @todo use some better templating system for code generation? @@ -42,6 +41,7 @@ class Wrapper case 'integer': case Value::$xmlrpcInt: // 'int' case Value::$xmlrpcI4: + case Value::$xmlrpcI8: return Value::$xmlrpcInt; case Value::$xmlrpcDouble: // 'double' return Value::$xmlrpcDouble; @@ -85,6 +85,7 @@ class Wrapper return Value::$xmlrpcString; case 'int': case 'i4': + case 'i8': return 'integer'; case 'struct': case 'array': @@ -175,8 +176,7 @@ class Wrapper $plainFuncName = 'Closure'; $exists = true; - } - else { + } else { $plainFuncName = $callable; $exists = function_exists($callable); } @@ -397,7 +397,7 @@ class Wrapper * @param array $extraOptions * @param string $plainFuncName * @param string $funcDesc - * @return callable + * @return \Closure */ protected function buildWrapFunctionClosure($callable, $extraOptions, $plainFuncName, $funcDesc) { @@ -498,7 +498,7 @@ class Wrapper * @param array $extraOptions * @param string $plainFuncName * @param array $funcDesc - * @return array + * @return string * * @todo add a nice phpdoc block in the generated source */ @@ -786,7 +786,7 @@ class Wrapper * @param string $methodName * @param array $extraOptions * @param string $mSig - * @return callable + * @return \Closure * * @todo should we allow usage of parameter simple_client_copy to mean 'do not clone' in this case? */ @@ -838,7 +838,7 @@ class Wrapper break; } $pType = $mSig[$i+1]; - if ($pType == 'i4' || $pType == 'int' || $pType == 'boolean' || $pType == 'double' || + if ($pType == 'i4' || $pType == 'i8' || $pType == 'int' || $pType == 'boolean' || $pType == 'double' || $pType == 'string' || $pType == 'dateTime.iso8601' || $pType == 'base64' || $pType == 'null' ) { // by building directly xmlrpc values when type is known and scalar (instead of encode() calls), @@ -927,7 +927,7 @@ class Wrapper for ($i = 1; $i < $pCount; $i++) { $plist[] = "\$p$i"; $pType = $mSig[$i]; - if ($pType == 'i4' || $pType == 'int' || $pType == 'boolean' || $pType == 'double' || + if ($pType == 'i4' || $pType == 'i8' || $pType == 'int' || $pType == 'boolean' || $pType == 'double' || $pType == 'string' || $pType == 'dateTime.iso8601' || $pType == 'base64' || $pType == 'null' ) { // only build directly xmlrpc values when type is known and scalar