Package org.mozilla.javascript

## Class ImporterTopLevel

- java.lang.Object
- - org.mozilla.javascript.ScriptableObject
  - - org.mozilla.javascript.IdScriptableObject
    - - org.mozilla.javascript.TopLevel
      - - org.mozilla.javascript.ImporterTopLevel

- All Implemented Interfaces:
    `java.io.Serializable`, `ConstProperties`, `DebuggableObject`, `IdFunctionCall`, `Scriptable`, `SymbolScriptable`

      public class ImporterTopLevel
      extends TopLevel

  Class ImporterTopLevel This class defines a ScriptableObject that can be instantiated as a top-level ("global") object to provide functionality similar to Java's "import" statement.

  This class can be used to create a top-level scope using the following code:

        Scriptable scope = new ImporterTopLevel(cx);

  Then JavaScript code will have access to the following methods:
  - importClass - will "import" a class by making its unqualified name available as a property of the top-level scope
  - importPackage - will "import" all the classes of the package by searching for unqualified names as classes qualified by the given package.
  The following code from the shell illustrates this use:

       js> importClass(java.io.File)
       js> f = new File('help.txt')
       help.txt
       js> importPackage(java.util)
       js> v = new Vector()
       []

  Author:
    Norris Boyd
  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.mozilla.javascript.TopLevel

      `TopLevel.Builtins`

    - ### Nested classes/interfaces inherited from class org.mozilla.javascript.ScriptableObject

      `ScriptableObject.KeyComparator`

  - ### Field Summary

    - ### Fields inherited from class org.mozilla.javascript.ScriptableObject

      `CONST, DONTENUM, EMPTY, PERMANENT, READONLY, UNINITIALIZED_CONST`

    - ### Fields inherited from interface org.mozilla.javascript.Scriptable

      `NOT_FOUND`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ImporterTopLevel()` |
    `ImporterTopLevel​(Context cx)` |
    `ImporterTopLevel​(Context cx, boolean sealed)` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.lang.Object` | `execIdCall​(IdFunctionObject f, Context cx, Scriptable scope, Scriptable thisObj, java.lang.Object[] args)` | 'thisObj' will be null if invoked as constructor, in which case instance of Scriptable should be returned.
    `protected int` | `findPrototypeId​(java.lang.String s)` |
    `java.lang.Object` | `get​(java.lang.String name, Scriptable start)` | Returns the value of the named property or NOT_FOUND.
    `java.lang.String` | `getClassName()` | Return the name of the class.
    `boolean` | `has​(java.lang.String name, Scriptable start)` | Returns true if the named property is defined.
    `void` | `importPackage​(Context cx, Scriptable thisObj, java.lang.Object[] args, Function funObj)` | Deprecated. Kept only for compatibility.
    `static void` | `init​(Context cx, Scriptable scope, boolean sealed)` |
    `protected void` | `initPrototypeId​(int id)` |
    `void` | `initStandardObjects​(Context cx, boolean sealed)` |

    - ### Methods inherited from class org.mozilla.javascript.TopLevel

      `cacheBuiltins, getBuiltinCtor, getBuiltinCtor, getBuiltinPrototype, getBuiltinPrototype`

    - ### Methods inherited from class org.mozilla.javascript.IdScriptableObject

      `activatePrototypeMap, addIdFunctionProperty, defaultGet, defaultHas, defaultPut, defineOwnProperty, delete, delete, exportAsJSClass, fillConstructorProperties, findInstanceIdInfo, findInstanceIdInfo, findPrototypeId, get, getAttributes, getInstanceIdName, getInstanceIdValue, getMaxInstanceId, getOwnPropertyDescriptor, has, hasPrototypeMap, incompatibleCallError, initPrototypeConstructor, initPrototypeMethod, initPrototypeMethod, initPrototypeMethod, initPrototypeValue, initPrototypeValue, instanceIdInfo, put, put, setAttributes, setInstanceIdAttributes, setInstanceIdValue`

    - ### Methods inherited from class org.mozilla.javascript.ScriptableObject

      `applyDescriptorToAttributeBitset, associateValue, avoidObjectDetection, buildDataDescriptor, callMethod, callMethod, checkPropertyChange, checkPropertyDefinition, defineClass, defineClass, defineClass, defineConst, defineConstProperty, defineFunctionProperties, defineOwnProperties, defineOwnProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, delete, deleteProperty, deleteProperty, ensureScriptable, ensureScriptableObject, ensureSymbolScriptable, equivalentValues, get, get, getAllIds, getArrayPrototype, getAssociatedValue, getAttributes, getAttributes, getAttributes, getAttributes, getClassPrototype, getDefaultValue, getDefaultValue, getExternalArrayData, getExternalArrayLength, getFunctionPrototype, getGetterOrSetter, getIds, getObjectPrototype, getParentScope, getProperty, getProperty, getProperty, getPropertyIds, getPrototype, getSlot, getTopLevelScope, getTopScopeValue, getTypedProperty, getTypedProperty, getTypeOf, has, hasInstance, hasProperty, hasProperty, hasProperty, isAccessorDescriptor, isConst, isDataDescriptor, isEmpty, isExtensible, isFalse, isGenericDescriptor, isGetterOrSetter, isSealed, isTrue, preventExtensions, put, putConst, putConstProperty, putProperty, putProperty, putProperty, redefineProperty, sameValue, sealObject, setAttributes, setAttributes, setAttributes, setAttributes, setExternalArrayData, setGetterOrSetter, setParentScope, setPrototype, size`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ImporterTopLevel

          public ImporterTopLevel()

    - #### ImporterTopLevel

          public ImporterTopLevel​(Context cx)

    - #### ImporterTopLevel

          public ImporterTopLevel​(Context cx,
                                  boolean sealed)

  - ### Method Detail

    - #### getClassName

          public java.lang.String getClassName()

      Description copied from class: `ScriptableObject`
      Return the name of the class. This is typically the same name as the constructor. Classes extending ScriptableObject must implement this abstract method.
      Specified by:
        `getClassName` in interface `Scriptable`
      Overrides:
        `getClassName` in class `TopLevel`

    - #### init

          public static void init​(Context cx,
                                  Scriptable scope,
                                  boolean sealed)

    - #### initStandardObjects

          public void initStandardObjects​(Context cx,
                                          boolean sealed)

    - #### has

          public boolean has​(java.lang.String name,
                             Scriptable start)

      Description copied from class: `ScriptableObject`
      Returns true if the named property is defined.
      Specified by:
        `has` in interface `Scriptable`
      Overrides:
        `has` in class `IdScriptableObject`
      Parameters:
        `name` - the name of the property
        `start` - the object in which the lookup began
      Returns:
        true if and only if the property was found in the object
      See Also:
        `Scriptable.get(String, Scriptable)`, `ScriptableObject.getProperty(Scriptable, String)`

    - #### get

          public java.lang.Object get​(java.lang.String name,
                                      Scriptable start)

      Description copied from class: `ScriptableObject`
      Returns the value of the named property or NOT_FOUND. If the property was created using defineProperty, the appropriate getter method is called.
      Specified by:
        `get` in interface `Scriptable`
      Overrides:
        `get` in class `IdScriptableObject`
      Parameters:
        `name` - the name of the property
        `start` - the object in which the lookup began
      Returns:
        the value of the property (may be null), or NOT_FOUND
      See Also:
        `Context.getUndefinedValue()`

    - #### importPackage

          @Deprecated
          public void importPackage​(Context cx,
                                    Scriptable thisObj,
                                    java.lang.Object[] args,
                                    Function funObj)

      Deprecated.
      Kept only for compatibility.

    - #### initPrototypeId

          protected void initPrototypeId​(int id)

      Overrides:
        `initPrototypeId` in class `IdScriptableObject`

    - #### execIdCall

          public java.lang.Object execIdCall​(IdFunctionObject f,
                                             Context cx,
                                             Scriptable scope,
                                             Scriptable thisObj,
                                             java.lang.Object[] args)

      Description copied from class: `IdScriptableObject`
      'thisObj' will be null if invoked as constructor, in which case instance of Scriptable should be returned.
      Specified by:
        `execIdCall` in interface `IdFunctionCall`
      Overrides:
        `execIdCall` in class `IdScriptableObject`

    - #### findPrototypeId

          protected int findPrototypeId​(java.lang.String s)

      Overrides:
        `findPrototypeId` in class `IdScriptableObject`