Class CrossLoaderAccess

  • All Implemented Interfaces:
    java.util.function.Function<java.lang.invoke.MethodHandles.Lookup,​java.lang.invoke.MethodHandles.Lookup>, java.util.function.UnaryOperator<java.lang.invoke.MethodHandles.Lookup>

    class CrossLoaderAccess
    extends java.lang.Object
    implements java.util.function.UnaryOperator<java.lang.invoke.MethodHandles.Lookup>
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private static java.lang.String CLASS_NAME  
      private static java.lang.invoke.MethodHandle DEFINE_CLASS  
      private static int[] FOOTER  
      private static java.lang.invoke.MethodHandle HAS_FULL_ACCESS  
      private static int[] HEADER  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      private static java.lang.Class<?> accessClassIn​(java.lang.invoke.MethodHandles.Lookup lookup)  
      java.lang.invoke.MethodHandles.Lookup apply​(java.lang.invoke.MethodHandles.Lookup lookup)  
      private static java.lang.invoke.MethodHandles.Lookup grantAccess​(java.lang.invoke.MethodHandles.Lookup lookup)  
      private static boolean hasFullAccess​(java.lang.invoke.MethodHandles.Lookup lookup)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface java.util.function.Function

        andThen, compose
    • Field Detail

      • DEFINE_CLASS

        private static final java.lang.invoke.MethodHandle DEFINE_CLASS
      • HAS_FULL_ACCESS

        private static final java.lang.invoke.MethodHandle HAS_FULL_ACCESS
      • HEADER

        private static final int[] HEADER
      • FOOTER

        private static final int[] FOOTER
    • Constructor Detail

      • CrossLoaderAccess

        CrossLoaderAccess()
    • Method Detail

      • apply

        public java.lang.invoke.MethodHandles.Lookup apply​(java.lang.invoke.MethodHandles.Lookup lookup)
        Specified by:
        apply in interface java.util.function.Function<java.lang.invoke.MethodHandles.Lookup,​java.lang.invoke.MethodHandles.Lookup>
      • grantAccess

        private static java.lang.invoke.MethodHandles.Lookup grantAccess​(java.lang.invoke.MethodHandles.Lookup lookup)
                                                                  throws java.io.IOException,
                                                                         java.lang.ReflectiveOperationException
        Throws:
        java.io.IOException
        java.lang.ReflectiveOperationException
      • hasFullAccess

        private static boolean hasFullAccess​(java.lang.invoke.MethodHandles.Lookup lookup)
      • accessClassIn

        private static java.lang.Class<?> accessClassIn​(java.lang.invoke.MethodHandles.Lookup lookup)
                                                 throws java.io.IOException,
                                                        java.lang.ReflectiveOperationException
        Throws:
        java.io.IOException
        java.lang.ReflectiveOperationException