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 {
^

Reply via email to