Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (101)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (309)
Collections:
Other Resources:
JDK 11 jdk.scripting.nashorn.jmod - Scripting Nashorn Module
JDK 11 jdk.scripting.nashorn.jmod is the JMOD file for JDK 11 Scripting Nashorn module.
JDK 11 Scripting Nashorn module compiled class files are stored in \fyicenter\jdk-11.0.1\jmods\jdk.scripting.nashorn.jmod.
JDK 11 Scripting Nashorn module compiled class files are also linked and stored in the \fyicenter\jdk-11.0.1\lib\modules JImage file.
JDK 11 Scripting Nashorn module source code files are stored in \fyicenter\jdk-11.0.1\lib\src.zip\jdk.scripting.nashorn.
You can click and view the content of each source code file in the list below.
✍: FYIcenter
⏎ jdk/nashorn/internal/runtime/linker/ReflectionCheckLinker.java
/* * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * * */ package jdk.nashorn.internal.runtime.linker; import static jdk.nashorn.internal.runtime.ECMAErrors.typeError; import java.lang.reflect.Modifier; import java.lang.reflect.Proxy; import jdk.dynalink.CallSiteDescriptor; import jdk.dynalink.StandardNamespace; import jdk.dynalink.StandardOperation; import jdk.dynalink.linker.GuardedInvocation; import jdk.dynalink.linker.LinkRequest; import jdk.dynalink.linker.LinkerServices; import jdk.dynalink.linker.TypeBasedGuardingDynamicLinker; import jdk.nashorn.api.scripting.ClassFilter; import jdk.nashorn.internal.objects.Global; import jdk.nashorn.internal.runtime.Context; /** * Check java reflection permission for java reflective and java.lang.invoke access from scripts */ final class ReflectionCheckLinker implements TypeBasedGuardingDynamicLinker{ private static final Class<?> STATEMENT_CLASS = getBeanClass("Statement"); private static final Class<?> XMLENCODER_CLASS = getBeanClass("XMLEncoder"); private static final Class<?> XMLDECODER_CLASS = getBeanClass("XMLDecoder"); private static Class<?> getBeanClass(final String name) { try { return Class.forName("java.beans." + name); } catch (final ClassNotFoundException cnfe) { // Possible to miss this class in other profiles. return null; } } @Override public boolean canLinkType(final Class<?> type) { return isReflectionClass(type); } private static boolean isReflectionClass(final Class<?> type) { // Class or ClassLoader subclasses if (type == Class.class || ClassLoader.class.isAssignableFrom(type)) { return true; } // check for bean reflection if ((STATEMENT_CLASS != null && STATEMENT_CLASS.isAssignableFrom(type)) || (XMLENCODER_CLASS != null && XMLENCODER_CLASS.isAssignableFrom(type)) || (XMLDECODER_CLASS != null && XMLDECODER_CLASS.isAssignableFrom(type))) { return true; } // package name check final String name = type.getName(); return name.startsWith("java.lang.reflect.") || name.startsWith("java.lang.invoke."); } @Override public GuardedInvocation getGuardedInvocation(final LinkRequest origRequest, final LinkerServices linkerServices) throws Exception { checkLinkRequest(origRequest); // let the next linker deal with actual linking return null; } private static boolean isReflectiveCheckNeeded(final Class<?> type, final boolean isStatic) { // special handling for Proxy subclasses if (Proxy.class.isAssignableFrom(type)) { if (Proxy.isProxyClass(type)) { // real Proxy class - filter only static access return isStatic; } // fake Proxy subclass - filter it always! return true; } // check for any other reflective Class return isReflectionClass(type); } static void checkReflectionAccess(final Class<?> clazz, final boolean isStatic) { final Global global = Context.getGlobal(); final ClassFilter cf = global.getClassFilter(); if (cf != null && isReflectiveCheckNeeded(clazz, isStatic)) { throw typeError("no.reflection.with.classfilter"); } final SecurityManager sm = System.getSecurityManager(); if (sm != null && isReflectiveCheckNeeded(clazz, isStatic)) { checkReflectionPermission(sm); } } private static void checkLinkRequest(final LinkRequest request) { final Global global = Context.getGlobal(); final ClassFilter cf = global.getClassFilter(); if (cf != null) { throw typeError("no.reflection.with.classfilter"); } final SecurityManager sm = System.getSecurityManager(); if (sm != null) { final Object self = request.getReceiver(); // allow 'static' access on Class objects representing public classes of non-restricted packages if ((self instanceof Class) && Modifier.isPublic(((Class<?>)self).getModifiers())) { final CallSiteDescriptor desc = request.getCallSiteDescriptor(); if ("static".equals(NashornCallSiteDescriptor.getOperand(desc)) && NashornCallSiteDescriptor.contains(desc, StandardOperation.GET, StandardNamespace.PROPERTY)) { if (Context.isAccessibleClass((Class<?>)self) && !isReflectionClass((Class<?>)self)) { // If "GET:PROPERTY:static" passes access checks, allow access. return; } } } checkReflectionPermission(sm); } } private static void checkReflectionPermission(final SecurityManager sm) { sm.checkPermission(new RuntimePermission(Context.NASHORN_JAVA_REFLECTION)); } }
⏎ jdk/nashorn/internal/runtime/linker/ReflectionCheckLinker.java
Or download all of them as a single archive file:
File name: jdk.scripting.nashorn-11.0.1-src.zip File size: 1390965 bytes Release date: 2018-11-04 Download
⇒ JDK 11 jdk.scripting.nashorn.shell.jmod - Scripting Nashorn Shell Module
2020-04-25, 83832👍, 0💬
Popular Posts:
What Is javaws.jar in JRE (Java Runtime Environment) 8? javaws.jar in JRE (Java Runtime Environment)...
What is jxl.jar 2.6.12? jxl.jar 2.6.12 is the JAR file for Java Excel API 2.6.12, which is a Java li...
JasperReports, the world's most popular open source business intelligence and reporting engine and J...
What Is activation.jar? I heard it's related to JAF (JavaBeans Activation Framework) 1.0.2? The if y...
What Is jaxb-api-2.1.6.jar? Java Architecture for XML Binding (JAXB) is a Java API that allows Java ...