Class NativeMethods


  • public final class NativeMethods
    extends java.lang.Object
    Utility class to register native methods on a class
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private NativeMethods.ResourceHolder memory  
      private static java.util.Map<java.lang.Class,​NativeMethods> registeredMethods
      Store a link from the class to the native method holder in a weak hash map, so as long as the class remains alive, the native memory for the structures remains alive.
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static void register​(java.lang.Class clazz, java.util.List<NativeMethod> methods)
      Registers the native methods for a class.
      static void unregister​(java.lang.Class clazz)
      Removes all native method attachments for the specified class.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • registeredMethods

        private static final java.util.Map<java.lang.Class,​NativeMethods> registeredMethods
        Store a link from the class to the native method holder in a weak hash map, so as long as the class remains alive, the native memory for the structures remains alive. This doesn't seem to be necessary on sun's jvm, but best do it to be safe.
    • Method Detail

      • register

        public static final void register​(java.lang.Class clazz,
                                          java.util.List<NativeMethod> methods)
        Registers the native methods for a class.
        Parameters:
        clazz - The java class to register the native methods for.
        methods - The list of methods to attach to the class.
      • unregister

        public static final void unregister​(java.lang.Class clazz)
        Removes all native method attachments for the specified class.
        Parameters:
        clazz - The class to unregister the native methods on.