Allon Mureinik has uploaded a new change for review.

Change subject: core: Remove member init in the compat module
......................................................................

core: Remove member init in the compat module

Since the upgrade to GWT 2.5.1, we've seen several cases of GWT pruning
member initialization.

To prevent these (and future) bugs, this series of patches removes all
such initializations from the packages that should be compiled by GWT.
These initialization are either moved to the appropriate
constructor(s), or removed them completely if they are redundant.
Constants with the wrong modifiers are amended to have static final, and
are allowed to be initialized directly.

As a side bonus, this patch offers a minor performance improvement, as
some of these members are now only initialized once instead of twice
(once in the member initialization and then again via a constructor
parameter).

This patch takes care of the compat package, as noted in the subject.

Change-Id: I57bc886e4e53ba7842b435d516604e41b7e469e6
Signed-off-by: Allon Mureinik <[email protected]>
---
M 
backend/manager/modules/compat/src/main/java/org/ovirt/engine/core/compat/RpmVersion.java
M 
backend/manager/modules/compat/src/main/java/org/ovirt/engine/core/compat/backendcompat/XmlNamespaceManager.java
M 
backend/manager/modules/compat/src/main/java/org/ovirt/engine/core/compat/backendcompat/XmlTextWriter.java
M 
backend/manager/modules/compat/src/test/java/org/ovirt/engine/core/compat/PropertyInfoTest.java
4 files changed, 7 insertions(+), 4 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/32/18132/1

diff --git 
a/backend/manager/modules/compat/src/main/java/org/ovirt/engine/core/compat/RpmVersion.java
 
b/backend/manager/modules/compat/src/main/java/org/ovirt/engine/core/compat/RpmVersion.java
index e0543e2..da5164e 100644
--- 
a/backend/manager/modules/compat/src/main/java/org/ovirt/engine/core/compat/RpmVersion.java
+++ 
b/backend/manager/modules/compat/src/main/java/org/ovirt/engine/core/compat/RpmVersion.java
@@ -14,7 +14,7 @@
 
     private static final long serialVersionUID = 5938069430310131270L;
     private static final String RPM_REGEX = "([^ ]+)\\-([0-9][^ 
\\-]*\\-[0-9\\.]+)\\.(.*)";
-    private static Pattern rpmCompiled = Pattern.compile(RPM_REGEX);
+    private static final Pattern rpmCompiled = Pattern.compile(RPM_REGEX);
     private String rpmName;
 
     public RpmVersion() {
diff --git 
a/backend/manager/modules/compat/src/main/java/org/ovirt/engine/core/compat/backendcompat/XmlNamespaceManager.java
 
b/backend/manager/modules/compat/src/main/java/org/ovirt/engine/core/compat/backendcompat/XmlNamespaceManager.java
index b08780d..27d653d 100644
--- 
a/backend/manager/modules/compat/src/main/java/org/ovirt/engine/core/compat/backendcompat/XmlNamespaceManager.java
+++ 
b/backend/manager/modules/compat/src/main/java/org/ovirt/engine/core/compat/backendcompat/XmlNamespaceManager.java
@@ -10,10 +10,11 @@
 
 public class XmlNamespaceManager implements NamespaceContext {
 
-    private Map<String, String> prefixToUri = new HashMap<String, String>();
+    private Map<String, String> prefixToUri;
 
     public XmlNamespaceManager(Object nameTable) {
         // JTODO What can we do about name table ?
+        prefixToUri = new HashMap<String, String>();
     }
 
     public void AddNamespace(String prefix, String uri) {
diff --git 
a/backend/manager/modules/compat/src/main/java/org/ovirt/engine/core/compat/backendcompat/XmlTextWriter.java
 
b/backend/manager/modules/compat/src/main/java/org/ovirt/engine/core/compat/backendcompat/XmlTextWriter.java
index 2d0992c..8b9ab74 100644
--- 
a/backend/manager/modules/compat/src/main/java/org/ovirt/engine/core/compat/backendcompat/XmlTextWriter.java
+++ 
b/backend/manager/modules/compat/src/main/java/org/ovirt/engine/core/compat/backendcompat/XmlTextWriter.java
@@ -11,9 +11,10 @@
 public class XmlTextWriter {
 
     private XMLStreamWriter writer;
-    private StringWriter stream = new StringWriter();
+    private StringWriter stream;
 
     public XmlTextWriter() {
+        stream = new StringWriter();
         try {
             XMLOutputFactory factory = XMLOutputFactory.newInstance();
             writer = factory.createXMLStreamWriter(stream);
diff --git 
a/backend/manager/modules/compat/src/test/java/org/ovirt/engine/core/compat/PropertyInfoTest.java
 
b/backend/manager/modules/compat/src/test/java/org/ovirt/engine/core/compat/PropertyInfoTest.java
index 990374e..403b128 100644
--- 
a/backend/manager/modules/compat/src/test/java/org/ovirt/engine/core/compat/PropertyInfoTest.java
+++ 
b/backend/manager/modules/compat/src/test/java/org/ovirt/engine/core/compat/PropertyInfoTest.java
@@ -13,10 +13,11 @@
 import org.ovirt.engine.core.compat.backendcompat.TypeCompat;
 
 public class PropertyInfoTest {
-    private String someValue = "Anakin";
+    private String someValue;
 
     @Test
     public void testGetAvailableValues() {
+        setSomeValue("Anakin");
         Map<String, String> values = new HashMap<String, String>();
         Set<String> properties = new 
HashSet<String>(Arrays.asList("somevalue"));
         TypeCompat.getPropertyValues(this, properties, values);


-- 
To view, visit http://gerrit.ovirt.org/18132
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I57bc886e4e53ba7842b435d516604e41b7e469e6
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Allon Mureinik <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to