[MediaWiki-commits] [Gerrit] Disable preferences save spam - change (mediawiki...hierator)

2015-04-08 Thread MaxSem (Code Review)
MaxSem has submitted this change and it was merged.

Change subject: Disable preferences save spam
..


Disable preferences save spam

Change-Id: I53292cb13df942b833d6bc2fbf220fa79361f618
---
A src/hierator/DisabledPreferences.java
A src/hierator/DisabledPreferencesFactory.java
M src/hierator/HieratorServlet.java
3 files changed, 118 insertions(+), 0 deletions(-)

Approvals:
  Manybubbles: Looks good to me, but someone else must approve
  MaxSem: Verified; Looks good to me, approved



diff --git a/src/hierator/DisabledPreferences.java 
b/src/hierator/DisabledPreferences.java
new file mode 100644
index 000..0a5a66c
--- /dev/null
+++ b/src/hierator/DisabledPreferences.java
@@ -0,0 +1,75 @@
+package hierator;
+
+import java.util.prefs.AbstractPreferences;
+import java.util.prefs.BackingStoreException;
+import java.util.prefs.Preferences;
+
+/**
+ * Copyright 2003-2011 Robert Slifka
+ *
+ * Licensed under the Apache License, Version 2.0 (the License);
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * A do-nothing Preferences implementation so that we can avoid the hassles
+ * of the JVM Preference implementations.
+ *
+ * @author Robert Slifka (robert.sli...@gmail.com)
+ */
+public class DisabledPreferences extends AbstractPreferences {
+
+public DisabledPreferences() {
+super(null, );
+}
+
+protected void putSpi(String key, String value) {
+
+}
+
+protected String getSpi(String key) {
+return null;
+}
+
+protected void removeSpi(String key) {
+
+}
+
+protected void removeNodeSpi() throws BackingStoreException {
+
+}
+
+protected String[] keysSpi() throws BackingStoreException {
+return new String[0];
+}
+
+protected String[] childrenNamesSpi()
+throws BackingStoreException {
+return new String[0];
+}
+
+protected AbstractPreferences childSpi(String name) {
+return null;
+}
+
+protected void syncSpi() throws BackingStoreException {
+
+}
+
+protected void flushSpi() throws BackingStoreException {
+
+}
+
+public Preferences node(String path) {
+return new DisabledPreferences();
+}
+}
+
+
diff --git a/src/hierator/DisabledPreferencesFactory.java 
b/src/hierator/DisabledPreferencesFactory.java
new file mode 100644
index 000..d7b8bf2
--- /dev/null
+++ b/src/hierator/DisabledPreferencesFactory.java
@@ -0,0 +1,36 @@
+package hierator;
+
+import java.util.prefs.PreferencesFactory;
+import java.util.prefs.Preferences;
+
+/**
+ * Copyright 2003-2011 Robert Slifka
+ *
+ * Licensed under the Apache License, Version 2.0 (the License);
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Returns do-nothing Preferences implementation.  We don't use this
+ * facility, so we want to avoid the hassles that come with the JVM's
+ * implementation.
+ *
+ * @author Robert Slifka (robert.sli...@gmail.com)
+ */
+public class DisabledPreferencesFactory implements PreferencesFactory {
+
+public Preferences systemRoot() {
+return new DisabledPreferences();
+}
+
+public Preferences userRoot() {
+return new DisabledPreferences();
+}
+}
diff --git a/src/hierator/HieratorServlet.java 
b/src/hierator/HieratorServlet.java
index 3cb0a06..a8be6f6 100644
--- a/src/hierator/HieratorServlet.java
+++ b/src/hierator/HieratorServlet.java
@@ -24,6 +24,13 @@
  */
 public HieratorServlet() {
 super();
+
+/**
+ * JSesh attempts to periodically save empty preferences. Disable 
their loading/saving using
+ * the code from http://allaboutbalance.com/articles/disableprefs/
+ */
+System.setProperty(java.util.prefs.PreferencesFactory, 
hierator.DisabledPreferencesFactory);
+
 routing.put(png, new PngRenderer());
 routing.put(svg, new SvgRenderer());
 routing.put(list, new HieroglyphLister());

-- 
To view, visit https://gerrit.wikimedia.org/r/201091
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged

[MediaWiki-commits] [Gerrit] Disable preferences save spam - change (mediawiki...hierator)

2015-03-31 Thread MaxSem (Code Review)
MaxSem has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/201091

Change subject: Disable preferences save spam
..

Disable preferences save spam

Change-Id: I53292cb13df942b833d6bc2fbf220fa79361f618
---
A src/hierator/DisabledPreferences.java
A src/hierator/DisabledPreferencesFactory.java
M src/hierator/HieratorServlet.java
3 files changed, 118 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/services/hierator 
refs/changes/91/201091/1

diff --git a/src/hierator/DisabledPreferences.java 
b/src/hierator/DisabledPreferences.java
new file mode 100644
index 000..0a5a66c
--- /dev/null
+++ b/src/hierator/DisabledPreferences.java
@@ -0,0 +1,75 @@
+package hierator;
+
+import java.util.prefs.AbstractPreferences;
+import java.util.prefs.BackingStoreException;
+import java.util.prefs.Preferences;
+
+/**
+ * Copyright 2003-2011 Robert Slifka
+ *
+ * Licensed under the Apache License, Version 2.0 (the License);
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * A do-nothing Preferences implementation so that we can avoid the hassles
+ * of the JVM Preference implementations.
+ *
+ * @author Robert Slifka (robert.sli...@gmail.com)
+ */
+public class DisabledPreferences extends AbstractPreferences {
+
+public DisabledPreferences() {
+super(null, );
+}
+
+protected void putSpi(String key, String value) {
+
+}
+
+protected String getSpi(String key) {
+return null;
+}
+
+protected void removeSpi(String key) {
+
+}
+
+protected void removeNodeSpi() throws BackingStoreException {
+
+}
+
+protected String[] keysSpi() throws BackingStoreException {
+return new String[0];
+}
+
+protected String[] childrenNamesSpi()
+throws BackingStoreException {
+return new String[0];
+}
+
+protected AbstractPreferences childSpi(String name) {
+return null;
+}
+
+protected void syncSpi() throws BackingStoreException {
+
+}
+
+protected void flushSpi() throws BackingStoreException {
+
+}
+
+public Preferences node(String path) {
+return new DisabledPreferences();
+}
+}
+
+
diff --git a/src/hierator/DisabledPreferencesFactory.java 
b/src/hierator/DisabledPreferencesFactory.java
new file mode 100644
index 000..d7b8bf2
--- /dev/null
+++ b/src/hierator/DisabledPreferencesFactory.java
@@ -0,0 +1,36 @@
+package hierator;
+
+import java.util.prefs.PreferencesFactory;
+import java.util.prefs.Preferences;
+
+/**
+ * Copyright 2003-2011 Robert Slifka
+ *
+ * Licensed under the Apache License, Version 2.0 (the License);
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Returns do-nothing Preferences implementation.  We don't use this
+ * facility, so we want to avoid the hassles that come with the JVM's
+ * implementation.
+ *
+ * @author Robert Slifka (robert.sli...@gmail.com)
+ */
+public class DisabledPreferencesFactory implements PreferencesFactory {
+
+public Preferences systemRoot() {
+return new DisabledPreferences();
+}
+
+public Preferences userRoot() {
+return new DisabledPreferences();
+}
+}
diff --git a/src/hierator/HieratorServlet.java 
b/src/hierator/HieratorServlet.java
index 3cb0a06..a8be6f6 100644
--- a/src/hierator/HieratorServlet.java
+++ b/src/hierator/HieratorServlet.java
@@ -24,6 +24,13 @@
  */
 public HieratorServlet() {
 super();
+
+/**
+ * JSesh attempts to periodically save empty preferences. Disable 
their loading/saving using
+ * the code from http://allaboutbalance.com/articles/disableprefs/
+ */
+System.setProperty(java.util.prefs.PreferencesFactory, 
hierator.DisabledPreferencesFactory);
+
 routing.put(png, new PngRenderer());
 routing.put(svg, new SvgRenderer());
 routing.put(list, new HieroglyphLister());

-- 
To view, visit https://gerrit.wikimedia.org/r/201091
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: