Class ModuleLocation


  • class ModuleLocation
    extends java.lang.Object
    Equivalent of ...
     Module module = clazz.getModule();
     if (module != null)
     {
         Configuration configuration = module.getLayer().configuration();
         Optional resolvedModule = configuration.findModule(module.getName());
         if (resolvedModule.isPresent())
         {
             ModuleReference moduleReference = resolvedModule.get().reference();
             Optional location = moduleReference.location();
             if (location.isPresent())
             {
                 return location.get();
             }
         }
     }
     return null;
     
    In Jetty 10, this entire class can be moved to direct calls to java.lang.Module in TypeUtil.getModuleLocation()
    • Field Detail

      • LOG

        private static final Logger LOG
      • classModule

        private final java.lang.Class<?> classModule
      • handleGetModule

        private final java.lang.invoke.MethodHandle handleGetModule
      • handleGetLayer

        private final java.lang.invoke.MethodHandle handleGetLayer
      • handleConfiguration

        private final java.lang.invoke.MethodHandle handleConfiguration
      • handleGetName

        private final java.lang.invoke.MethodHandle handleGetName
      • handleOptionalResolvedModule

        private final java.lang.invoke.MethodHandle handleOptionalResolvedModule
      • handleReference

        private final java.lang.invoke.MethodHandle handleReference
      • handleLocation

        private final java.lang.invoke.MethodHandle handleLocation
    • Constructor Detail

      • ModuleLocation

        public ModuleLocation()
    • Method Detail

      • getModuleLocation

        public java.net.URI getModuleLocation​(java.lang.Class<?> clazz)