jdk/src/java.desktop/share/classes/java/awt/MenuComponent.java
changeset 30469 bac0a7ff7e1e
parent 29886 545c0c3809b8
child 30471 c1568a2416a8
--- a/jdk/src/java.desktop/share/classes/java/awt/MenuComponent.java	Fri Apr 17 12:32:46 2015 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/MenuComponent.java	Fri Apr 17 16:54:13 2015 +0300
@@ -57,7 +57,7 @@
         }
     }
 
-    transient MenuComponentPeer peer;
+    transient volatile MenuComponentPeer peer;
     transient MenuContainer parent;
 
     /**
@@ -142,6 +142,11 @@
                     menuComp.appContext = appContext;
                 }
                 @Override
+                @SuppressWarnings("unchecked")
+                public <T extends MenuComponentPeer> T getPeer(MenuComponent menuComp) {
+                    return (T) menuComp.peer;
+                }
+                @Override
                 public MenuContainer getParent(MenuComponent menuComp) {
                     return menuComp.parent;
                 }
@@ -226,16 +231,6 @@
     }
 
     /**
-     * @deprecated As of JDK version 1.1,
-     * programs should not directly manipulate peers.
-     * @return the peer for this component
-     */
-    @Deprecated
-    public MenuComponentPeer getPeer() {
-        return peer;
-    }
-
-    /**
      * Gets the font used for this menu component.
      * @return   the font used in this menu component, if there is one;
      *                  <code>null</code> otherwise