src/share/classes/java/awt/Component.java

Print this page




6167              if (value != null) {
6168                  return value;
6169              }
6170 
6171              // Need to check non-bootstraps.
6172              Boolean enabled = java.security.AccessController.doPrivileged(
6173                  new java.security.PrivilegedAction<Boolean>() {
6174                      public Boolean run() {
6175                          return isCoalesceEventsOverriden(clazz);
6176                      }
6177                  }
6178                  );
6179              coalesceMap.put(clazz, enabled);
6180              return enabled;
6181          }
6182      }
6183 
6184     /**
6185      * Parameter types of coalesceEvents(AWTEvent,AWTEVent).
6186      */
6187     private static final Class[] coalesceEventsParams = {
6188         AWTEvent.class, AWTEvent.class
6189     };
6190 
6191     /**
6192      * Indicates whether a class or its superclasses override coalesceEvents.
6193      * Must be called with lock on coalesceMap and privileged.
6194      * @see checkCoalsecing
6195      */
6196     private static boolean isCoalesceEventsOverriden(Class<?> clazz) {
6197         assert Thread.holdsLock(coalesceMap);
6198 
6199         // First check superclass - we may not need to bother ourselves.
6200         Class<?> superclass = clazz.getSuperclass();
6201         if (superclass == null) {
6202             // Only occurs on implementations that
6203             //   do not use null to represent the bootsrap class loader.
6204             return false;
6205         }
6206         if (superclass.getClassLoader() != null) {
6207             Boolean value = coalesceMap.get(superclass);




6167              if (value != null) {
6168                  return value;
6169              }
6170 
6171              // Need to check non-bootstraps.
6172              Boolean enabled = java.security.AccessController.doPrivileged(
6173                  new java.security.PrivilegedAction<Boolean>() {
6174                      public Boolean run() {
6175                          return isCoalesceEventsOverriden(clazz);
6176                      }
6177                  }
6178                  );
6179              coalesceMap.put(clazz, enabled);
6180              return enabled;
6181          }
6182      }
6183 
6184     /**
6185      * Parameter types of coalesceEvents(AWTEvent,AWTEVent).
6186      */
6187     private static final Class<?>[] coalesceEventsParams = {
6188         AWTEvent.class, AWTEvent.class
6189     };
6190 
6191     /**
6192      * Indicates whether a class or its superclasses override coalesceEvents.
6193      * Must be called with lock on coalesceMap and privileged.
6194      * @see checkCoalsecing
6195      */
6196     private static boolean isCoalesceEventsOverriden(Class<?> clazz) {
6197         assert Thread.holdsLock(coalesceMap);
6198 
6199         // First check superclass - we may not need to bother ourselves.
6200         Class<?> superclass = clazz.getSuperclass();
6201         if (superclass == null) {
6202             // Only occurs on implementations that
6203             //   do not use null to represent the bootsrap class loader.
6204             return false;
6205         }
6206         if (superclass.getClassLoader() != null) {
6207             Boolean value = coalesceMap.get(superclass);