From 52db8e5457e1afcb56a5047adbddf15c44754e8c Mon Sep 17 00:00:00 2001 From: Fabian Lange Date: Thu, 3 Apr 2014 22:35:51 +0200 Subject: Optimizes memory and CPU usage in JSONCodec (#13545) The null element and the empty JSONArray are frequently created and used as temporary objects to be encoded by the json encoder. Because they are never manipulated it is possible to reuse the same empty element again and save a significant amount of temp objects. This also helps jsonEquals, which then can return faster due to: if (fieldValue == referenceValue) return true jsonEquals does not need to check the referenceValue for JSONobject.NULL. The invoking code makes sure this never happens. Boolean and Integer values are very often and much more efficiently compared directly instead of using toString. Change-Id: I5fd736427019406469357cda1115d2683b7a5e2b --- server/tests/src/com/vaadin/tests/server/TestClassesSerializable.java | 1 + 1 file changed, 1 insertion(+) (limited to 'server/tests/src') diff --git a/server/tests/src/com/vaadin/tests/server/TestClassesSerializable.java b/server/tests/src/com/vaadin/tests/server/TestClassesSerializable.java index 0a36c7f7ce..e938a1cd37 100644 --- a/server/tests/src/com/vaadin/tests/server/TestClassesSerializable.java +++ b/server/tests/src/com/vaadin/tests/server/TestClassesSerializable.java @@ -63,6 +63,7 @@ public class TestClassesSerializable extends TestCase { "com\\.vaadin\\.sass.*", // "com\\.vaadin\\.testbench.*", // "com\\.vaadin\\.util\\.CurrentInstance\\$1", // + "com\\.vaadin\\.server\\.JsonCodec\\$1", // "com\\.vaadin\\.server\\.communication\\.PushConnection", // "com\\.vaadin\\.server\\.communication\\.AtmospherePushConnection", // "com\\.vaadin\\.util\\.ConnectorHelper", // -- cgit v1.2.3