You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by wi...@apache.org on 2013/07/24 15:59:56 UTC
git commit: updated refs/heads/4.1 to a069f31
Updated Branches:
refs/heads/4.1 74cb0e2b8 -> a069f31f5
Revert "CLOUDSTACK-3433: Relax the same package restriction for Command and its derived classes in ArrayTypeAdaptor<T>"
This commit broke compatibility between a 4.1.0 and 4.1.1 management server and/or client.
This reverts commit 73a6aa78854f379e6439bf22457094a5272cbfed.
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/a069f31f
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/a069f31f
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/a069f31f
Branch: refs/heads/4.1
Commit: a069f31f51d0ef1f255d85ef32d7649a5ec659c1
Parents: 74cb0e2
Author: Wido den Hollander <wi...@widodh.nl>
Authored: Wed Jul 24 15:59:09 2013 +0200
Committer: Wido den Hollander <wi...@widodh.nl>
Committed: Wed Jul 24 15:59:09 2013 +0200
----------------------------------------------------------------------
core/src/com/cloud/agent/transport/ArrayTypeAdaptor.java | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/a069f31f/core/src/com/cloud/agent/transport/ArrayTypeAdaptor.java
----------------------------------------------------------------------
diff --git a/core/src/com/cloud/agent/transport/ArrayTypeAdaptor.java b/core/src/com/cloud/agent/transport/ArrayTypeAdaptor.java
index ac9be93..8eddc03 100755
--- a/core/src/com/cloud/agent/transport/ArrayTypeAdaptor.java
+++ b/core/src/com/cloud/agent/transport/ArrayTypeAdaptor.java
@@ -22,6 +22,7 @@ import java.util.ArrayList;
import java.util.Iterator;
import java.util.Map;
+import com.cloud.agent.api.Command;
import com.cloud.utils.exception.CloudRuntimeException;
import com.google.gson.Gson;
import com.google.gson.JsonArray;
@@ -37,6 +38,9 @@ public class ArrayTypeAdaptor<T> implements JsonDeserializer<T[]>, JsonSerialize
protected Gson _gson = null;
+
+ private static final String s_pkg = Command.class.getPackage().getName() + ".";
+
public ArrayTypeAdaptor() {
}
@@ -49,7 +53,7 @@ public class ArrayTypeAdaptor<T> implements JsonDeserializer<T[]>, JsonSerialize
JsonArray array = new JsonArray();
for (T cmd : src) {
JsonObject obj = new JsonObject();
- obj.add(cmd.getClass().getName(), _gson.toJsonTree(cmd));
+ obj.add(cmd.getClass().getName().substring(s_pkg.length()), _gson.toJsonTree(cmd));
array.add(obj);
}
@@ -67,7 +71,7 @@ public class ArrayTypeAdaptor<T> implements JsonDeserializer<T[]>, JsonSerialize
JsonObject element = (JsonObject)it.next();
Map.Entry<String, JsonElement> entry = element.entrySet().iterator().next();
- String name = entry.getKey();
+ String name = s_pkg + entry.getKey();
Class<?> clazz;
try {
clazz = Class.forName(name);