PIVOT-1027: Add the @UnsupportedOperation annotation to all the methods in
various packages that throw this exception.
Clean up some error messages from this exception and some related Javadoc.
git-svn-id: https://svn.apache.org/repos/asf/pivot/trunk@1850678 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/core/src/org/apache/pivot/collections/ArrayAdapter.java b/core/src/org/apache/pivot/collections/ArrayAdapter.java
index 46881cd..269268b 100644
--- a/core/src/org/apache/pivot/collections/ArrayAdapter.java
+++ b/core/src/org/apache/pivot/collections/ArrayAdapter.java
@@ -27,6 +27,8 @@
public class ArrayAdapter<T> implements Sequence<T>, Serializable {
private static final long serialVersionUID = 1143706808122308239L;
+ private static final String ERROR_MSG = "An Array Adapter is immutable.";
+
private T[] array;
@SuppressWarnings({ "unchecked" })
@@ -39,31 +41,31 @@
@Override
@UnsupportedOperation
public int add(T item) {
- throw new UnsupportedOperationException();
+ throw new UnsupportedOperationException(ERROR_MSG);
}
@Override
@UnsupportedOperation
public void insert(T item, int index) {
- throw new UnsupportedOperationException();
+ throw new UnsupportedOperationException(ERROR_MSG);
}
@Override
@UnsupportedOperation
public T update(int index, T item) {
- throw new UnsupportedOperationException();
+ throw new UnsupportedOperationException(ERROR_MSG);
}
@Override
@UnsupportedOperation
public int remove(T item) {
- throw new UnsupportedOperationException();
+ throw new UnsupportedOperationException(ERROR_MSG);
}
@Override
@UnsupportedOperation
public Sequence<T> remove(int index, int count) {
- throw new UnsupportedOperationException();
+ throw new UnsupportedOperationException(ERROR_MSG);
}
@Override
diff --git a/core/src/org/apache/pivot/xml/Element.java b/core/src/org/apache/pivot/xml/Element.java
index 077eda1..fa57810 100644
--- a/core/src/org/apache/pivot/xml/Element.java
+++ b/core/src/org/apache/pivot/xml/Element.java
@@ -19,6 +19,7 @@
import java.util.Comparator;
import java.util.Iterator;
+import org.apache.pivot.annotations.UnsupportedOperation;
import org.apache.pivot.collections.ArrayList;
import org.apache.pivot.collections.Dictionary;
import org.apache.pivot.collections.HashMap;
@@ -227,6 +228,7 @@
* Use {@link Attribute#setValue(String)} instead.
*/
@Override
+ @UnsupportedOperation
public Attribute update(int index, Attribute item) {
throw new UnsupportedOperationException();
}
@@ -652,6 +654,7 @@
* @throws UnsupportedOperationException This method is not supported.
*/
@Override
+ @UnsupportedOperation
public Node update(int index, Node node) {
throw new UnsupportedOperationException();
}
@@ -754,6 +757,7 @@
* @throws UnsupportedOperationException Elements cannot be sorted.
*/
@Override
+ @UnsupportedOperation
public void setComparator(Comparator<Node> comparator) {
throw new UnsupportedOperationException();
}
diff --git a/tutorials/src/org/apache/pivot/tutorials/explorer/tools/EventLogger.java b/tutorials/src/org/apache/pivot/tutorials/explorer/tools/EventLogger.java
index 6c8cd67..ab909e7 100644
--- a/tutorials/src/org/apache/pivot/tutorials/explorer/tools/EventLogger.java
+++ b/tutorials/src/org/apache/pivot/tutorials/explorer/tools/EventLogger.java
@@ -25,6 +25,7 @@
import java.lang.reflect.Type;
import java.util.Iterator;
+import org.apache.pivot.annotations.UnsupportedOperation;
import org.apache.pivot.collections.Group;
import org.apache.pivot.collections.HashMap;
import org.apache.pivot.collections.HashSet;
@@ -66,11 +67,13 @@
}
@Override
+ @UnsupportedOperation
public boolean add(Method event) {
throw new UnsupportedOperationException();
}
@Override
+ @UnsupportedOperation
public boolean remove(Method event) {
throw new UnsupportedOperationException();
}
diff --git a/tutorials/src/org/apache/pivot/tutorials/stocktracker/ValueMapping.java b/tutorials/src/org/apache/pivot/tutorials/stocktracker/ValueMapping.java
index ce9429d..5ebb05b 100644
--- a/tutorials/src/org/apache/pivot/tutorials/stocktracker/ValueMapping.java
+++ b/tutorials/src/org/apache/pivot/tutorials/stocktracker/ValueMapping.java
@@ -18,6 +18,7 @@
import java.text.DecimalFormat;
+import org.apache.pivot.annotations.UnsupportedOperation;
import org.apache.pivot.wtk.Label;
/**
@@ -32,6 +33,7 @@
}
@Override
+ @UnsupportedOperation
public Object valueOf(String text) {
throw new UnsupportedOperationException();
}
diff --git a/tutorials/src/org/apache/pivot/tutorials/stocktracker/VolumeMapping.java b/tutorials/src/org/apache/pivot/tutorials/stocktracker/VolumeMapping.java
index 5f5922f..556610f 100644
--- a/tutorials/src/org/apache/pivot/tutorials/stocktracker/VolumeMapping.java
+++ b/tutorials/src/org/apache/pivot/tutorials/stocktracker/VolumeMapping.java
@@ -18,6 +18,7 @@
import java.text.DecimalFormat;
+import org.apache.pivot.annotations.UnsupportedOperation;
import org.apache.pivot.wtk.Label;
/**
@@ -31,9 +32,12 @@
return FORMAT.format(value);
}
+ /**
+ * @throws UnsupportedOperationException because this mapping is for load only.
+ */
@Override
+ @UnsupportedOperation
public Object valueOf(String text) {
- // Not needed; this mapping is for load only
throw new UnsupportedOperationException();
}
}
diff --git a/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraTabPaneSkin.java b/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraTabPaneSkin.java
index 10150fd..287f9d3 100644
--- a/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraTabPaneSkin.java
+++ b/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraTabPaneSkin.java
@@ -24,6 +24,7 @@
import java.awt.geom.Line2D;
import java.awt.geom.RoundRectangle2D;
+import org.apache.pivot.annotations.UnsupportedOperation;
import org.apache.pivot.collections.Dictionary;
import org.apache.pivot.collections.Sequence;
import org.apache.pivot.util.Utils;
@@ -87,6 +88,7 @@
}
@Override
+ @UnsupportedOperation
public void setButtonData(Object buttonData) {
throw new UnsupportedOperationException();
}
@@ -98,6 +100,7 @@
}
@Override
+ @UnsupportedOperation
public void setDataRenderer(Button.DataRenderer dataRenderer) {
throw new UnsupportedOperationException();
}
@@ -108,16 +111,19 @@
}
@Override
+ @UnsupportedOperation
public void setTooltipText(String tooltipText) {
throw new UnsupportedOperationException();
}
@Override
+ @UnsupportedOperation
public void setToggleButton(boolean toggleButton) {
throw new UnsupportedOperationException();
}
@Override
+ @UnsupportedOperation
public void setTriState(boolean triState) {
throw new UnsupportedOperationException();
}
diff --git a/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraTreeViewSkin.java b/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraTreeViewSkin.java
index 57d508f..d811fe8 100644
--- a/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraTreeViewSkin.java
+++ b/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraTreeViewSkin.java
@@ -26,6 +26,7 @@
import java.util.Iterator;
import java.util.NoSuchElementException;
+import org.apache.pivot.annotations.UnsupportedOperation;
import org.apache.pivot.collections.ArrayList;
import org.apache.pivot.collections.Dictionary;
import org.apache.pivot.collections.List;
@@ -156,6 +157,7 @@
* @throws UnsupportedOperationException always since this is unsupported.
*/
@Override
+ @UnsupportedOperation
public void remove() {
throw new UnsupportedOperationException();
}
diff --git a/wtk/src/org/apache/pivot/wtk/Accordion.java b/wtk/src/org/apache/pivot/wtk/Accordion.java
index a689890..94c4fa3 100644
--- a/wtk/src/org/apache/pivot/wtk/Accordion.java
+++ b/wtk/src/org/apache/pivot/wtk/Accordion.java
@@ -18,6 +18,7 @@
import java.util.Iterator;
+import org.apache.pivot.annotations.UnsupportedOperation;
import org.apache.pivot.beans.DefaultProperty;
import org.apache.pivot.collections.ArrayList;
import org.apache.pivot.collections.Sequence;
@@ -73,6 +74,7 @@
}
@Override
+ @UnsupportedOperation
public Component update(final int index, final Component panel) {
throw new UnsupportedOperationException();
}
@@ -212,7 +214,7 @@
Component component = get(i);
if (panels.indexOf(component) >= 0) {
- throw new UnsupportedOperationException();
+ throw new UnsupportedOperationException("Cannot remove a panel directly from the Accordion.");
}
}
diff --git a/wtk/src/org/apache/pivot/wtk/Alert.java b/wtk/src/org/apache/pivot/wtk/Alert.java
index 32c2d79..25a52a7 100644
--- a/wtk/src/org/apache/pivot/wtk/Alert.java
+++ b/wtk/src/org/apache/pivot/wtk/Alert.java
@@ -18,6 +18,7 @@
import java.util.Iterator;
+import org.apache.pivot.annotations.UnsupportedOperation;
import org.apache.pivot.beans.DefaultProperty;
import org.apache.pivot.collections.ArrayList;
import org.apache.pivot.collections.Sequence;
@@ -63,6 +64,7 @@
}
@Override
+ @UnsupportedOperation
public Component update(int index, Object option) {
throw new UnsupportedOperationException();
}
@@ -166,27 +168,26 @@
setOptions((options == null) ? new ArrayList<>(resources.get("defaultOption")) : options);
setBody(body);
- if (messageType == null) {
- setTitle(resources.getString("defaultTitle"));
- } else {
+ String titleKey = "defaultTitle";
+ if (messageType != null) {
switch (messageType) {
case ERROR:
- setTitle(resources.getString("defaultErrorTitle"));
+ titleKey = "defaultErrorTitle";
break;
case WARNING:
- setTitle(resources.getString("defaultWarningTitle"));
+ titleKey = "defaultWarningTitle";
break;
case QUESTION:
- setTitle(resources.getString("defaultQuestionTitle"));
+ titleKey = "defaultQuestionTitle";
break;
case INFO:
- setTitle(resources.getString("defaultInfoTitle"));
+ titleKey = "defaultInfoTitle";
break;
default:
- setTitle(resources.getString("defaultTitle"));
break;
}
}
+ setTitle(resources.getString(titleKey));
installSkin(Alert.class);
}
diff --git a/wtk/src/org/apache/pivot/wtk/ApplicationContext.java b/wtk/src/org/apache/pivot/wtk/ApplicationContext.java
index 59fc0c3..bde94fc 100644
--- a/wtk/src/org/apache/pivot/wtk/ApplicationContext.java
+++ b/wtk/src/org/apache/pivot/wtk/ApplicationContext.java
@@ -62,6 +62,7 @@
import java.util.Timer;
import java.util.TimerTask;
+import org.apache.pivot.annotations.UnsupportedOperation;
import org.apache.pivot.collections.ArrayList;
import org.apache.pivot.collections.Dictionary;
import org.apache.pivot.collections.HashMap;
@@ -1702,6 +1703,7 @@
}
@Override
+ @UnsupportedOperation
public void remove() {
throw new UnsupportedOperationException();
}
diff --git a/wtk/src/org/apache/pivot/wtk/Border.java b/wtk/src/org/apache/pivot/wtk/Border.java
index 04d8b29..24e67ad 100644
--- a/wtk/src/org/apache/pivot/wtk/Border.java
+++ b/wtk/src/org/apache/pivot/wtk/Border.java
@@ -105,7 +105,7 @@
for (int i = index, n = index + count; i < n; i++) {
Component component = get(i);
if (component == content) {
- throw new UnsupportedOperationException();
+ throw new UnsupportedOperationException("Cannot directly remove content from a Border.");
}
}
diff --git a/wtk/src/org/apache/pivot/wtk/CalendarButton.java b/wtk/src/org/apache/pivot/wtk/CalendarButton.java
index 70d6b86..2e39f84 100644
--- a/wtk/src/org/apache/pivot/wtk/CalendarButton.java
+++ b/wtk/src/org/apache/pivot/wtk/CalendarButton.java
@@ -18,6 +18,7 @@
import java.util.Locale;
+import org.apache.pivot.annotations.UnsupportedOperation;
import org.apache.pivot.collections.Dictionary;
import org.apache.pivot.json.JSON;
import org.apache.pivot.json.JSONSerializer;
@@ -102,6 +103,7 @@
* CalendarButton.
*/
@Override
+ @UnsupportedOperation
public void setToggleButton(boolean toggleButton) {
throw new UnsupportedOperationException("Calendar buttons cannot be toggle buttons.");
}
diff --git a/wtk/src/org/apache/pivot/wtk/ColorChooserButton.java b/wtk/src/org/apache/pivot/wtk/ColorChooserButton.java
index 92f9e25..4cedc56 100644
--- a/wtk/src/org/apache/pivot/wtk/ColorChooserButton.java
+++ b/wtk/src/org/apache/pivot/wtk/ColorChooserButton.java
@@ -18,6 +18,7 @@
import java.awt.Color;
+import org.apache.pivot.annotations.UnsupportedOperation;
import org.apache.pivot.json.JSON;
import org.apache.pivot.util.ListenerList;
import org.apache.pivot.util.Utils;
@@ -80,6 +81,7 @@
* ColorChooserButton.
*/
@Override
+ @UnsupportedOperation
public void setToggleButton(final boolean toggleButton) {
throw new UnsupportedOperationException("Color chooser buttons cannot be toggle buttons.");
}
diff --git a/wtk/src/org/apache/pivot/wtk/Component.java b/wtk/src/org/apache/pivot/wtk/Component.java
index 6c5c900..371a2aa 100644
--- a/wtk/src/org/apache/pivot/wtk/Component.java
+++ b/wtk/src/org/apache/pivot/wtk/Component.java
@@ -25,6 +25,7 @@
import java.lang.reflect.InvocationTargetException;
import java.util.Iterator;
+import org.apache.pivot.annotations.UnsupportedOperation;
import org.apache.pivot.beans.BeanAdapter;
import org.apache.pivot.beans.IDProperty;
import org.apache.pivot.beans.PropertyNotFoundException;
@@ -135,6 +136,7 @@
* @throws UnsupportedOperationException always.
*/
@Override
+ @UnsupportedOperation
public Object remove(String key) {
throw new UnsupportedOperationException();
}
@@ -1262,6 +1264,7 @@
* @throws UnsupportedOperationException This method is not currently
* implemented.
*/
+ @UnsupportedOperation
public boolean contains(int xValue, int yValue) {
// TODO
throw new UnsupportedOperationException();
diff --git a/wtk/src/org/apache/pivot/wtk/Container.java b/wtk/src/org/apache/pivot/wtk/Container.java
index 2a8c13a..bfcb25d 100644
--- a/wtk/src/org/apache/pivot/wtk/Container.java
+++ b/wtk/src/org/apache/pivot/wtk/Container.java
@@ -22,6 +22,7 @@
import java.awt.Transparency;
import java.util.Iterator;
+import org.apache.pivot.annotations.UnsupportedOperation;
import org.apache.pivot.collections.ArrayList;
import org.apache.pivot.collections.Sequence;
import org.apache.pivot.util.ImmutableIterator;
@@ -86,6 +87,7 @@
}
@Override
+ @UnsupportedOperation
public Component update(int index, Component component) {
throw new UnsupportedOperationException();
}
diff --git a/wtk/src/org/apache/pivot/wtk/Display.java b/wtk/src/org/apache/pivot/wtk/Display.java
index 24f65c5..155c6c6 100644
--- a/wtk/src/org/apache/pivot/wtk/Display.java
+++ b/wtk/src/org/apache/pivot/wtk/Display.java
@@ -18,6 +18,7 @@
import java.awt.Graphics2D;
+import org.apache.pivot.annotations.UnsupportedOperation;
import org.apache.pivot.wtk.skin.DisplaySkin;
/**
@@ -49,26 +50,31 @@
}
@Override
+ @UnsupportedOperation
protected void setSkin(Skin skin) {
throw new UnsupportedOperationException("Can't replace Display skin.");
}
@Override
+ @UnsupportedOperation
protected void setParent(Container parent) {
throw new UnsupportedOperationException("Display can't have a parent.");
}
@Override
+ @UnsupportedOperation
public void setLocation(int x, int y) {
throw new UnsupportedOperationException("Can't change the location of the display.");
}
@Override
+ @UnsupportedOperation
public void setVisible(boolean visible) {
throw new UnsupportedOperationException("Can't change the visibility of the display.");
}
@Override
+ @UnsupportedOperation
public void setTooltipText(String tooltipText) {
throw new UnsupportedOperationException("Can't set a tooltip on the display.");
}
diff --git a/wtk/src/org/apache/pivot/wtk/Expander.java b/wtk/src/org/apache/pivot/wtk/Expander.java
index d3025b1..bdf3e20 100644
--- a/wtk/src/org/apache/pivot/wtk/Expander.java
+++ b/wtk/src/org/apache/pivot/wtk/Expander.java
@@ -138,7 +138,7 @@
for (int i = index, n = index + count; i < n; i++) {
Component component = get(i);
if (component == content) {
- throw new UnsupportedOperationException();
+ throw new UnsupportedOperationException("Cannot directly remove the content from Expander.");
}
}
diff --git a/wtk/src/org/apache/pivot/wtk/Form.java b/wtk/src/org/apache/pivot/wtk/Form.java
index 91dc5fa..111cded 100644
--- a/wtk/src/org/apache/pivot/wtk/Form.java
+++ b/wtk/src/org/apache/pivot/wtk/Form.java
@@ -18,6 +18,7 @@
import java.util.Iterator;
+import org.apache.pivot.annotations.UnsupportedOperation;
import org.apache.pivot.beans.DefaultProperty;
import org.apache.pivot.collections.ArrayList;
import org.apache.pivot.collections.Dictionary;
@@ -90,6 +91,7 @@
}
@Override
+ @UnsupportedOperation
public Component update(int index, Component field) {
throw new UnsupportedOperationException();
}
@@ -177,6 +179,7 @@
}
@Override
+ @UnsupportedOperation
public Section update(int index, Section section) {
throw new UnsupportedOperationException();
}
@@ -438,7 +441,7 @@
for (Section section : sections) {
if (section.indexOf(component) >= 0) {
- throw new UnsupportedOperationException();
+ throw new UnsupportedOperationException("Cannot directly remove a Form Section.");
}
}
}
@@ -448,8 +451,6 @@
}
/**
- * Returns the form listener list.
- *
* @return The form listener list.
*/
public ListenerList<FormListener> getFormListeners() {
@@ -457,8 +458,6 @@
}
/**
- * Returns the form attribute listener list.
- *
* @return The form attribute listener list.
*/
public ListenerList<FormAttributeListener> getFormAttributeListeners() {
diff --git a/wtk/src/org/apache/pivot/wtk/Frame.java b/wtk/src/org/apache/pivot/wtk/Frame.java
index e5b2304..834a48a 100644
--- a/wtk/src/org/apache/pivot/wtk/Frame.java
+++ b/wtk/src/org/apache/pivot/wtk/Frame.java
@@ -122,7 +122,7 @@
for (int i = index, n = index + count; i < n; i++) {
Component component = get(i);
if (component == menuBar) {
- throw new UnsupportedOperationException();
+ throw new UnsupportedOperationException("Cannot directly remove the menu bar from a Frame.");
}
}
diff --git a/wtk/src/org/apache/pivot/wtk/GridPane.java b/wtk/src/org/apache/pivot/wtk/GridPane.java
index dff7df5..71e24cf 100644
--- a/wtk/src/org/apache/pivot/wtk/GridPane.java
+++ b/wtk/src/org/apache/pivot/wtk/GridPane.java
@@ -18,6 +18,7 @@
import java.util.Iterator;
+import org.apache.pivot.annotations.UnsupportedOperation;
import org.apache.pivot.beans.DefaultProperty;
import org.apache.pivot.collections.ArrayList;
import org.apache.pivot.collections.Sequence;
@@ -204,6 +205,7 @@
}
@Override
+ @UnsupportedOperation
public Row update(int index, Row row) {
throw new UnsupportedOperationException();
}
@@ -412,7 +414,7 @@
for (Row row : rows) {
if (row.indexOf(component) >= 0) {
- throw new UnsupportedOperationException();
+ throw new UnsupportedOperationException("Cannot directly remove a row from a GridPane.");
}
}
}