Bug 1349 - Remove deprecated methods, use try with resource, generics and return type refinement in Java3D 1.7
Summary: Remove deprecated methods, use try with resource, generics and return type re...
Status: UNCONFIRMED
Alias: None
Product: Java3D
Classification: General
Component: core (show other bugs)
Version: tbd
Hardware: All all
: P4 normal
Assignee: Phil Jordan
URL:
Depends on:
Blocks:
 
Reported: 2016-11-23 17:13 CET by Julien Gouesse
Modified: 2016-11-23 17:13 CET (History)
1 user (show)

See Also:
Type: FEATURE
SCM Refs:
Workaround: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Julien Gouesse 2016-11-23 17:13:48 CET
The deprecated classes and methods should be removed from the latest major version of Java3D.

The classes and/or methods relying on deprecated classes and/or methods (for example the classes of the applets deprecated and marked for removal in Java 1.9) should be marked as deprecated as well.

The try with resource should be used as Java3D 1.7 is allowed to rely on Java 1.7 features and it can improve resource management and source code readability. We might refrain us from using those features if it's annoying to support Android.

The numerous implementations of the clone() method can benefit of return type refinement.

There are numerous methods returning "raw" enumerations and using "raw" types whereas using generics would avoid some useless casts in the source code of the callers:
http://download.java.net/media/java3d/javadoc/1.5.2/javax/media/j3d/View.html#getAllCanvas3Ds()

http://download.java.net/media/java3d/javadoc/1.5.2/javax/media/j3d/ViewSpecificGroup.html#getAllViews()

http://download.java.net/media/java3d/javadoc/1.5.2/javax/media/j3d/VirtualUniverse.html#getAllLocales()

http://download.java.net/media/java3d/javadoc/1.5.2/javax/media/j3d/WakeupCondition.html#allElements()

http://download.java.net/media/java3d/javadoc/1.5.2/com/sun/j3d/loaders/Scene.html#getNamedObjects()

http://download.java.net/media/java3d/javadoc/1.5.2/javax/media/j3d/Shape3D.html#getAllGeometries()

http://download.java.net/media/java3d/javadoc/1.5.2/javax/media/j3d/LOD.html#getAllSwitches()

http://download.java.net/media/java3d/javadoc/1.5.2/javax/media/j3d/ModelClip.html#getAllScopes()

http://download.java.net/media/java3d/javadoc/1.5.2/com/sun/j3d/utils/behaviors/mouse/MouseBehavior.html#mouseq

http://download.java.net/media/java3d/javadoc/1.5.2/com/sun/j3d/utils/behaviors/mouse/MouseBehavior.html#processStimulus(java.util.Enumeration)

http://download.java.net/media/java3d/javadoc/1.5.2/javax/media/j3d/Locale.html#getAllBranchGraphs()

http://download.java.net/media/java3d/javadoc/1.5.2/javax/media/j3d/GraphicsContext3D.html#getAllLights()

http://download.java.net/media/java3d/javadoc/1.5.2/javax/media/j3d/GraphicsContext3D.html#getAllSounds()

http://download.java.net/media/java3d/javadoc/1.5.2/javax/media/j3d/Fog.html#getAllScopes()

http://download.java.net/media/java3d/javadoc/1.5.2/javax/media/j3d/Light.html#getAllScopes()

http://download.java.net/media/java3d/javadoc/1.5.2/javax/media/j3d/AlternateAppearance.html#getAllScopes()

http://download.java.net/media/java3d/javadoc/1.5.2/javax/media/j3d/Group.html#getAllChildren()

http://download.java.net/media/java3d/javadoc/1.5.2/com/sun/j3d/utils/geometry/GeometryInfo.html#getTextureCoordinates(int)

http://download.java.net/media/java3d/javadoc/1.5.2/com/sun/j3d/utils/geometry/GeometryInfo.html#getColors()