1 /* 2 @test 3 @bug 6738181 4 @library ../../../regtesthelpers 5 @build Sysout 6 @summary Toolkit.getAWTEventListeners returns empty array 7 @author andrei dmitriev: area=awt.headless 8 @run main/othervm -Djava.awt.headless=true AWTListener 9 */ 10 11 /** 12 * In a headless mode add a listener for container events. 13 * Check if a single listener is still assigned to the Toolkit class. 14 */ 15 16 import java.awt.*; 17 import java.awt.event.*; 18 import test.java.awt.regtesthelpers.Sysout; 19 20 public class AWTListener { 21 public static void main(String []s) { 22 Toolkit toolkit = Toolkit.getDefaultToolkit(); 23 24 AWTEventListener orig = new AWTEventListener() { 25 public void eventDispatched(AWTEvent event) { } 26 }; 27 28 Sysout.println("Test: listener to add = " +orig); 29 toolkit.addAWTEventListener(orig, AWTEvent.CONTAINER_EVENT_MASK); 30 31 for (AWTEventListener l: toolkit.getAWTEventListeners()){ 32 Sysout.println("Test: listener = " +l+" "); 33 } 34 35 if ( toolkit.getAWTEventListeners().length == 0 ) { 36 throw new RuntimeException("Case 1. An empty array returned unexpectedly"); 37 } 38 39 for (AWTEventListener l: toolkit.getAWTEventListeners(AWTEvent.CONTAINER_EVENT_MASK)){ 40 Sysout.println("Test: listener = " +l); 41 } 42 43 if ( toolkit.getAWTEventListeners(AWTEvent.CONTAINER_EVENT_MASK).length == 0 ) { 44 throw new RuntimeException("Case 2. An empty array returned unexpectedly"); 45 } 46 Sysout.println("Test PASSED"); 47 } 48 }