类 MagicResourceLoader

java.lang.Object
org.ssssssss.script.MagicResourceLoader

public class MagicResourceLoader extends Object
资源加载器
  • 构造器详细资料

    • MagicResourceLoader

      public MagicResourceLoader()
  • 方法详细资料

    • getModules

      public static Map<String,ScriptClass> getModules()
      获取已注册的模块信息,此方法主要用于代码提示
    • addFunctionLoader

      public static void addFunctionLoader(BiFunction<MagicScriptContext,String,Object> functionLoader)
      添加函数加载器
    • setClassLoader

      public static void setClassLoader(Function<String,Object> classLoader)
      设置类加载器
    • addModule

      public static void addModule(String moduleName, Object target)
      添加模块
      参数:
      moduleName - 模块名称
      target - 模块,可以是对象实例,也可以是Class类型的,此时只能使用类中的静态方法
    • loadModule

      public static Object loadModule(MagicScriptContext context, String moduleName)
      加载模块
      参数:
      moduleName - 模块名称
    • loadModule

      public static Object loadModule(String moduleName)
      加载模块
      参数:
      moduleName - 模块名称
    • loadClass

      public static Object loadClass(MagicScriptContext context, String className)
      加载类
      参数:
      className - 类全限定名
    • getModuleNames

      public static Set<String> getModuleNames()
      获取可用的模块列表
    • addPackage

      public static void addPackage(String prefix)
      添加自动导包
      参数:
      prefix - 包前缀,如java.lang.*, 不支持 java.lang.**.*
    • findClass

      public static Class<?> findClass(String simpleName)
      加载类
      参数:
      simpleName - 类缩写,如HashMap、ArrayList
    • addScriptLanguageLoader

      public static void addScriptLanguageLoader(Function<String,BiFunction<Map<String,Object>,String,Object>> loader)
      添加JSR223 脚本函数加载器
    • loadScriptLanguage

      public static BiFunction<Map<String,Object>,String,Object> loadScriptLanguage(String name)
      加载脚本函数加载器
      参数:
      name - 脚本名称
    • loadFunction

      public static Object loadFunction(MagicScriptContext context, String name)
      加载函数加载器
      参数:
      name - 函数名称