src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/ScriptObjectMirror.java

Print this page




  37 import java.util.Collections;
  38 import java.util.Iterator;
  39 import java.util.LinkedHashSet;
  40 import java.util.List;
  41 import java.util.Map;
  42 import java.util.Set;
  43 import java.util.concurrent.Callable;
  44 import javax.script.Bindings;
  45 import jdk.nashorn.internal.objects.Global;
  46 import jdk.nashorn.internal.runtime.ConsString;
  47 import jdk.nashorn.internal.runtime.Context;
  48 import jdk.nashorn.internal.runtime.JSType;
  49 import jdk.nashorn.internal.runtime.ScriptFunction;
  50 import jdk.nashorn.internal.runtime.ScriptObject;
  51 import jdk.nashorn.internal.runtime.ScriptRuntime;
  52 import jdk.nashorn.internal.runtime.arrays.ArrayData;
  53 import jdk.nashorn.internal.runtime.linker.NashornCallSiteDescriptor;
  54 
  55 /**
  56  * Mirror object that wraps a given Nashorn Script object.


  57  */

  58 public final class ScriptObjectMirror extends AbstractJSObject implements Bindings {
  59     private static AccessControlContext getContextAccCtxt() {
  60         final Permissions perms = new Permissions();
  61         perms.add(new RuntimePermission(Context.NASHORN_GET_CONTEXT));
  62         return new AccessControlContext(new ProtectionDomain[] { new ProtectionDomain(null, perms) });
  63     }
  64 
  65     private static final AccessControlContext GET_CONTEXT_ACC_CTXT = getContextAccCtxt();
  66 
  67     private final ScriptObject sobj;
  68     private final Global  global;
  69     private final boolean strict;
  70 
  71     @Override
  72     public boolean equals(final Object other) {
  73         if (other instanceof ScriptObjectMirror) {
  74             return sobj.equals(((ScriptObjectMirror)other).sobj);
  75         }
  76 
  77         return false;




  37 import java.util.Collections;
  38 import java.util.Iterator;
  39 import java.util.LinkedHashSet;
  40 import java.util.List;
  41 import java.util.Map;
  42 import java.util.Set;
  43 import java.util.concurrent.Callable;
  44 import javax.script.Bindings;
  45 import jdk.nashorn.internal.objects.Global;
  46 import jdk.nashorn.internal.runtime.ConsString;
  47 import jdk.nashorn.internal.runtime.Context;
  48 import jdk.nashorn.internal.runtime.JSType;
  49 import jdk.nashorn.internal.runtime.ScriptFunction;
  50 import jdk.nashorn.internal.runtime.ScriptObject;
  51 import jdk.nashorn.internal.runtime.ScriptRuntime;
  52 import jdk.nashorn.internal.runtime.arrays.ArrayData;
  53 import jdk.nashorn.internal.runtime.linker.NashornCallSiteDescriptor;
  54 
  55 /**
  56  * Mirror object that wraps a given Nashorn Script object.
  57  *
  58  * @since 1.8u40
  59  */
  60 @jdk.Exported
  61 public final class ScriptObjectMirror extends AbstractJSObject implements Bindings {
  62     private static AccessControlContext getContextAccCtxt() {
  63         final Permissions perms = new Permissions();
  64         perms.add(new RuntimePermission(Context.NASHORN_GET_CONTEXT));
  65         return new AccessControlContext(new ProtectionDomain[] { new ProtectionDomain(null, perms) });
  66     }
  67 
  68     private static final AccessControlContext GET_CONTEXT_ACC_CTXT = getContextAccCtxt();
  69 
  70     private final ScriptObject sobj;
  71     private final Global  global;
  72     private final boolean strict;
  73 
  74     @Override
  75     public boolean equals(final Object other) {
  76         if (other instanceof ScriptObjectMirror) {
  77             return sobj.equals(((ScriptObjectMirror)other).sobj);
  78         }
  79 
  80         return false;