<AWT Dev> awt-related types that are candidates to be FunctionalInterfaces in JDK 8

Joe Darcy joe.darcy at oracle.com
Tue Feb 5 14:41:52 PST 2013


Hello,

As part of Project Lambda, a FunctionalInterface annotation type was 
added to the platform to mark interfaces that are intended to be used in 
lambda expressions.  I've sent out a code review request to add this 
annotation to types in the core-libs area [1].

To assist the awt team in adding analogous annotations to your types, 
the list of candidate types in for awt-related classes in java.* and 
javax.* is given below.  I recommend sub-tasks of JDK-8005297 "Add 
FunctionalInterface support to the platform" be used to track the work 
of adding @FunctionalInterface annotations to awt types.

Thanks,

-Joe

[1] 
http://mail.openjdk.java.net/pipermail/core-libs-dev/2013-February/014292.html

jdk/src/share/classes/java/awt/Transparency.java:36: Note: Candidate 
functional interface
public interface Transparency {
        ^
jdk/src/share/classes/java/awt/EventFilter.java:27: Note: Candidate 
functional interface
interface EventFilter {
^
jdk/src/share/classes/java/awt/event/AdjustmentListener.java:36: Note: 
Candidate functional interface
public interface AdjustmentListener extends EventListener {
        ^
jdk/src/share/classes/java/awt/event/MouseWheelListener.java:51: Note: 
Candidate functional interface
public interface MouseWheelListener extends EventListener {
        ^
jdk/src/share/classes/java/awt/event/TextListener.java:46: Note: 
Candidate functional interface
public interface TextListener extends EventListener {
        ^
jdk/src/share/classes/java/awt/event/WindowStateListener.java:50: Note: 
Candidate functional interface
public interface WindowStateListener extends EventListener {
        ^
jdk/src/share/classes/java/awt/event/ItemListener.java:47: Note: 
Candidate functional interface
public interface ItemListener extends EventListener {
        ^
jdk/src/share/classes/java/awt/event/HierarchyListener.java:49: Note: 
Candidate functional interface
public interface HierarchyListener extends EventListener {
        ^
jdk/src/share/classes/java/awt/event/AWTEventListener.java:55: Note: 
Candidate functional interface
public interface AWTEventListener extends EventListener {
        ^
jdk/src/share/classes/java/awt/event/ActionListener.java:45: Note: 
Candidate functional interface
public interface ActionListener extends EventListener {
        ^
jdk/src/share/classes/java/awt/print/Printable.java:105: Note: Candidate 
functional interface
public interface Printable {
        ^
jdk/src/share/classes/java/awt/print/PrinterGraphics.java:36: Note: 
Candidate functional interface
public interface PrinterGraphics {
        ^
jdk/src/share/classes/java/awt/KeyEventPostProcessor.java:57: Note: 
Candidate functional interface
public interface KeyEventPostProcessor {
        ^
jdk/src/share/classes/java/awt/peer/SystemTrayPeer.java:35: Note: 
Candidate functional interface
public interface SystemTrayPeer {
        ^
jdk/src/share/classes/java/awt/ActiveEvent.java:52: Note: Candidate 
functional interface
public interface ActiveEvent {
        ^
jdk/src/share/classes/java/awt/image/ImageObserver.java:40: Note: 
Candidate functional interface
public interface ImageObserver {
        ^
jdk/src/share/classes/java/awt/image/renderable/RenderedImageFactory.java:47: 
Note: Candidate functional interface
public interface RenderedImageFactory {
        ^
jdk/src/share/classes/java/awt/image/TileObserver.java:39: Note: 
Candidate functional interface
public interface TileObserver {
        ^
jdk/src/share/classes/java/awt/dnd/DragSourceMotionListener.java:53: 
Note: Candidate functional interface
public interface DragSourceMotionListener extends EventListener {
        ^
jdk/src/share/classes/java/awt/dnd/DragGestureListener.java:48: Note: 
Candidate functional interface
  public interface DragGestureListener extends EventListener {
         ^
jdk/src/share/classes/java/awt/PrintGraphics.java:33: Note: Candidate 
functional interface
public interface PrintGraphics {
        ^
jdk/src/share/classes/java/awt/Stroke.java:58: Note: Candidate 
functional interface
public interface Stroke {
        ^
jdk/src/share/classes/java/awt/datatransfer/ClipboardOwner.java:44: 
Note: Candidate functional interface
public interface ClipboardOwner {
        ^
jdk/src/share/classes/java/awt/datatransfer/FlavorListener.java:36: 
Note: Candidate functional interface
public interface FlavorListener extends EventListener {
        ^
jdk/src/share/classes/java/awt/KeyEventDispatcher.java:54: Note: 
Candidate functional interface
public interface KeyEventDispatcher {
        ^
jdk/src/share/classes/java/awt/Container.java:2440: Note: Candidate 
functional interface
     static interface EventTargetFilter {
            ^
jdk/src/share/classes/java/awt/Composite.java:68: Note: Candidate 
functional interface
public interface Composite {
        ^
jdk/src/share/classes/java/awt/Conditional.java:35: Note: Candidate 
functional interface
interface Conditional {
^




More information about the awt-dev mailing list