pivot-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Roger Whitcomb (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (PIVOT-1027) Add an @UnsupportedOperation annotation that can be used to mark methods that always throw UnsupportedOperationException when called
Date Tue, 11 Sep 2018 16:28:00 GMT

    [ https://issues.apache.org/jira/browse/PIVOT-1027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16610888#comment-16610888

Roger Whitcomb commented on PIVOT-1027:

Another whole set of these (and related) changes:

Sending charts\src\org\apache\pivot\charts\ChartView.java
Sending core\src\org\apache\pivot\beans\BXMLSerializer.java
Sending core\src\org\apache\pivot\beans\BeanAdapter.java
Sending core\src\org\apache\pivot\collections\ArrayAdapter.java
Sending core\src\org\apache\pivot\collections\EnumList.java
Sending core\src\org\apache\pivot\collections\EnumMap.java
Sending core\src\org\apache\pivot\collections\EnumSet.java
Sending core\src\org\apache\pivot\collections\Sequence.java
Sending core\src\org\apache\pivot\collections\immutable\ImmutableList.java
Sending core\src\org\apache\pivot\collections\immutable\ImmutableMap.java
Sending core\src\org\apache\pivot\collections\immutable\ImmutableSet.java
Sending core\src\org\apache\pivot\functional\monad\Option.java
Sending core\src\org\apache\pivot\functional\monad\Try.java
Sending core\src\org\apache\pivot\io\FileList.java
Sending core\src\org\apache\pivot\io\FileObjectList.java
Sending core\src\org\apache\pivot\sql\ResultList.java
Sending core\src\org\apache\pivot\text\FileSizeFormat.java
Sending core\src\org\apache\pivot\util\Resources.java
Sending web-server\src\org\apache\pivot\web\server\QueryServlet.java
Transmitting file data ...................done
Committing transaction...
Committed revision 1840587.

> Add an @UnsupportedOperation annotation that can be used to mark methods that always
throw UnsupportedOperationException when called
> ------------------------------------------------------------------------------------------------------------------------------------
>                 Key: PIVOT-1027
>                 URL: https://issues.apache.org/jira/browse/PIVOT-1027
>             Project: Pivot
>          Issue Type: Improvement
>          Components: core
>            Reporter: Roger Whitcomb
>            Assignee: Roger Whitcomb
>            Priority: Minor
> This can be used to annotate (primarily in Javadoc) those methods, presumable defined
by an interface so they must be implemented, but which make no sense in the specific implementation. 
There are numerous examples, but a few should suffice:
>  * NumericSpinnerData has a fixed range of values specified by the lower and upper bounds,
so the "remove(...)", "clear()", "add(...)", or "update(...)" methods of the List<T>
interface don't apply.
>  * Various iterators backed by other lists (such as VisibleNodeIterator of TerraTreeViewSkin)
doesn't support the "remove(...)" method for whatever reason, even though it is specified
in the Iterator interface.
>  * TabButton (part of TerraTabPaneSkin) is a subclass of Button, but many methods are
unsupported because of its unique structure (such as "setTriState", "setButtonData", etc.)
>  * ImageNode (one of the unique children of TextPane) always holds a single image, so
the "insertRange" and "removeRange" methods make no sense.
> Note: this annotation does nothing, and is not retained at runtime, and really should
be in the Java language (see [https://bugs.openjdk.java.net/browse/JDK-6447051] for instance),
but it makes documentation of unsupported operations a bit clearer at no real cost.

This message was sent by Atlassian JIRA

View raw message