private boolean isDom3Present() { Class<?> nodeClass = Kit.classOrNull("org.w3c.dom.Node"); if (nodeClass == null) return false; // Check to see whether DOM3 is present; use a new method defined in // DOM3 that is vital to our implementation try { nodeClass.getMethod("getUserData", new Class<?>[] { String.class }); return true; } catch (NoSuchMethodException e) { return false; } }
private static Class<?> findNestedClass(Class<?> parentClass, String name) { String nestedClassName = parentClass.getName() + '$' + name; ClassLoader loader = parentClass.getClassLoader(); if (loader == null) { // ALERT: if loader is null, nested class should be loaded // via system class loader which can be different from the // loader that brought Rhino classes that Class.forName() would // use, but ClassLoader.getSystemClassLoader() is Java 2 only return Kit.classOrNull(nestedClassName); } else { return Kit.classOrNull(loader, nestedClassName); } }
/** * Check that testClass is accessible from the given loader. */ static boolean testIfCanLoadRhinoClasses(ClassLoader loader) { Class<?> testClass = ScriptRuntime.ContextFactoryClass; Class<?> x = Kit.classOrNull(loader, testClass.getName()); if (x != testClass) { // The check covers the case when x == null => // loader does not know about testClass or the case // when x != null && x != testClass => // loader loads a class unrelated to testClass return false; } return true; }
RegExpProxy getRegExpProxy() { if (regExpProxy == null) { Class<?> cl = Kit.classOrNull( "net.sourceforge.htmlunit.corejs.javascript.regexp.RegExpImpl"); if (cl != null) { regExpProxy = (RegExpProxy)Kit.newInstanceOrNull(cl); } } return regExpProxy; }
public static ScriptableObject getGlobal(Context cx) { final String GLOBAL_CLASS = "net.sourceforge.htmlunit.corejs.javascript.tools.shell.Global"; Class<?> globalClass = Kit.classOrNull(GLOBAL_CLASS); if (globalClass != null) { try { Class<?>[] parm = { ScriptRuntime.ContextClass }; Constructor<?> globalClassCtor = globalClass.getConstructor(parm); Object[] arg = { cx }; return (ScriptableObject) globalClassCtor.newInstance(arg); } catch (Exception e) { // fall through... } } return new ImporterTopLevel(cx); }
private static VMBridge makeInstance() { String[] classNames = { "net.sourceforge.htmlunit.corejs.javascript.VMBridge_custom", "net.sourceforge.htmlunit.corejs.javascript.jdk15.VMBridge_jdk15", "net.sourceforge.htmlunit.corejs.javascript.jdk13.VMBridge_jdk13", "net.sourceforge.htmlunit.corejs.javascript.jdk11.VMBridge_jdk11", }; for (int i = 0; i != classNames.length; ++i) { String className = classNames[i]; Class<?> cl = Kit.classOrNull(className); if (cl != null) { VMBridge bridge = (VMBridge)Kit.newInstanceOrNull(cl); if (bridge != null) { return bridge; } } } throw new IllegalStateException("Failed to create VMBridge instance"); }
Class<?> readerClass = Kit.classOrNull(classLoader, "jline.ConsoleReader"); if (readerClass == null) return null; Class<?> completorClass = Kit.classOrNull(classLoader, "jline.Completor"); m = readerClass.getMethod("addCompletor", completorClass); Class<?> inputStreamClass = Kit.classOrNull(classLoader, "jline.ConsoleReaderInputStream"); c = inputStreamClass.getConstructor(readerClass);
/** * @deprecated * @see ContextFactory#addListener(ContextFactory.Listener) * @see ContextFactory#getGlobal() */ public static void addContextListener(ContextListener listener) { // Special workaround for the debugger String DBG = "net.sourceforge.htmlunit.corejs.javascript.tools.debugger.Main"; if (DBG.equals(listener.getClass().getName())) { Class<?> cl = listener.getClass(); Class<?> factoryClass = Kit.classOrNull( "net.sourceforge.htmlunit.corejs.javascript.ContextFactory"); Class<?>[] sig = { factoryClass }; Object[] args = { ContextFactory.getGlobal() }; try { Method m = cl.getMethod("attachTo", sig); m.invoke(listener, args); } catch (Exception ex) { RuntimeException rex = new RuntimeException(); Kit.initCause(rex, ex); throw rex; } return; } ContextFactory.getGlobal().addListener(listener); }
private Object buildValue0() Class<? extends Scriptable> cl = cast(Kit.classOrNull(className)); if (cl != null) { try {
"net.sourceforge.htmlunit.corejs.javascript.xmlimpl.XMLLibImpl" ); } else if (Kit.classOrNull("org.apache.xmlbeans.XmlCursor") != null) { return net.sourceforge.htmlunit.corejs.javascript.xml.XMLLib.Factory.create( "net.sourceforge.htmlunit.corejs.javascript.xml.impl.xmlbeans.XMLLibImpl"
Class<?> cl = null; if (classLoader != null) { cl = Kit.classOrNull(classLoader, className); } else { cl = Kit.classOrNull(className);