Updated Branches: refs/heads/wicket-1.5.x c1056c40a -> c588fd0d0
WICKET-4743 SerializingObjectSizeOfStrategy do not use framework serializer Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/c588fd0d Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/c588fd0d Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/c588fd0d Branch: refs/heads/wicket-1.5.x Commit: c588fd0d0442160beec7e8625f6beaacbdd0d22d Parents: c1056c4 Author: Martin Tzvetanov Grigorov <[email protected]> Authored: Mon Sep 3 15:56:16 2012 +0200 Committer: Martin Tzvetanov Grigorov <[email protected]> Committed: Mon Sep 3 15:56:16 2012 +0200 ---------------------------------------------------------------------- .../org/apache/wicket/util/lang/WicketObjects.java | 20 ++++++-------- 1 files changed, 9 insertions(+), 11 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/c588fd0d/wicket-core/src/main/java/org/apache/wicket/util/lang/WicketObjects.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/util/lang/WicketObjects.java b/wicket-core/src/main/java/org/apache/wicket/util/lang/WicketObjects.java index 9ff5152..5df6e5d 100644 --- a/wicket-core/src/main/java/org/apache/wicket/util/lang/WicketObjects.java +++ b/wicket-core/src/main/java/org/apache/wicket/util/lang/WicketObjects.java @@ -31,6 +31,8 @@ import org.apache.wicket.Application; import org.apache.wicket.Component; import org.apache.wicket.WicketRuntimeException; import org.apache.wicket.application.IClassResolver; +import org.apache.wicket.serialize.ISerializer; +import org.apache.wicket.serialize.java.JavaSerializer; import org.apache.wicket.settings.IApplicationSettings; import org.apache.wicket.util.io.ByteCountingOutputStream; import org.apache.wicket.util.string.Strings; @@ -118,21 +120,17 @@ public class WicketObjects { return 0; } - try + ISerializer serializer; + if (Application.exists()) { - final ByteCountingOutputStream out = new ByteCountingOutputStream(); - new ObjectOutputStream(out).writeObject(object); - out.close(); - return out.size(); + serializer = Application.get().getFrameworkSettings().getSerializer(); } - catch (IOException e) + else { - if (log.isWarnEnabled()) - { - log.warn("Unable to determine object size: " + object.toString(), e); - } - return -1; + serializer = new JavaSerializer("SerializingObjectSizeOfStrategy"); } + byte[] serialized = serializer.serialize(object); + return serialized.length; } }
