diff options
author | slewis | 2013-05-17 22:42:40 +0000 |
---|---|---|
committer | slewis | 2013-05-17 22:42:40 +0000 |
commit | 4bd84880758bc255adf35807d0e11e23514c7720 (patch) | |
tree | 0a6cd382a6988070618527214b87a9b562ce180e | |
parent | 45d4f0c62c5fecfd2684d7ea4bb57b47edbf73c8 (diff) | |
download | org.eclipse.ecf-4bd84880758bc255adf35807d0e11e23514c7720.tar.gz org.eclipse.ecf-4bd84880758bc255adf35807d0e11e23514c7720.tar.xz org.eclipse.ecf-4bd84880758bc255adf35807d0e11e23514c7720.zip |
Fix for Markus addition to rest serialization (can't remember bug)
-rw-r--r-- | framework/bundles/org.eclipse.ecf.remoteservice.rpc/src/org/eclipse/ecf/remoteservice/rpc/client/TrivialParameterServializer.java | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/framework/bundles/org.eclipse.ecf.remoteservice.rpc/src/org/eclipse/ecf/remoteservice/rpc/client/TrivialParameterServializer.java b/framework/bundles/org.eclipse.ecf.remoteservice.rpc/src/org/eclipse/ecf/remoteservice/rpc/client/TrivialParameterServializer.java index 401b04911..e9f0484ec 100644 --- a/framework/bundles/org.eclipse.ecf.remoteservice.rpc/src/org/eclipse/ecf/remoteservice/rpc/client/TrivialParameterServializer.java +++ b/framework/bundles/org.eclipse.ecf.remoteservice.rpc/src/org/eclipse/ecf/remoteservice/rpc/client/TrivialParameterServializer.java @@ -9,6 +9,9 @@ *******************************************************************************/ package org.eclipse.ecf.remoteservice.rpc.client; +import java.io.NotSerializableException; +import java.util.ArrayList; +import java.util.List; import org.eclipse.ecf.remoteservice.IRemoteCall; import org.eclipse.ecf.remoteservice.client.*; @@ -20,6 +23,22 @@ import org.eclipse.ecf.remoteservice.client.*; public class TrivialParameterServializer implements IRemoteCallParameterSerializer { /** + * @throws NotSerializableException + */ + public IRemoteCallParameter[] serializeParameter(String endpoint, IRemoteCall call, IRemoteCallable callable, + IRemoteCallParameter[] currentParameters, Object[] paramToSerialize) throws NotSerializableException { + List results = new ArrayList(); + if (paramToSerialize != null) { + for (int i = 0; i < paramToSerialize.length; i++) { + IRemoteCallParameter p = new RemoteCallParameter(currentParameters[i].getName(), + paramToSerialize[i] == null ? currentParameters[i].getValue() : paramToSerialize); + results.add(p); + } + } + return (IRemoteCallParameter[]) results.toArray(new IRemoteCallParameter[results.size()]); + } + + /** * All parameters will be serialized in the Apache XML-RPC library. We shouldn't serialize any parameters * by default. * |