WARNING: This server provides a static reference view of the NetKernel documentation. Links to dynamic content do not work. For the best experience we recommend you install NetKernel and view the documentation in the live system .

Description:build a DynamicImport configuration which locates spaces which push exports
Category:accessor prototype

SimpleImportDiscovery is an accessor that must be instantiated from a prototype. You must instantiate the prototype in your module to create an accessor that can receive requests.


The layer1.Endpoint.SimpleImportDiscovery prototype has the following initialisation parameters:

An identifier grammar definition.
An identifier for created logical endpoint, if omitted a unique auto-generated value it will be used.
If included this parameter will mark the endpoint as private and it will not be exposed outside module.
the type of the import
identifier of export definition resource
metaOptionalXMLnull(no description available)

Here is an auto-generated example of how to instantiate an instance of SimpleImportDiscovery:

  <grammar>an identifier grammar definition</grammar>
  <type>the type of the import</type>
Import Requirements

To use SimpleImportDiscovery accessor prototype you must import the module urn:org:netkernel:ext:layer1:


The SimpleImportDiscovery accessor implements a pattern of import discovery is used to find all modules which wish to expose functionality. It generates a DynamicImport configuration. This inverts the usual space import relationship. In this situation, modules may be added to a NetKernel system that push themselves into an importing space without requiring the spaces module.xml file to be edited for each addition or removal.

For example, the Frontend Fulcrum uses the dynamic import endpoint to define the dynamic import type HTTPFulcrum:

  <!-- instantiate the an import discovery endpoint to look for spaces of type "HTTPFulcrum" -->
  <!-- instantiate the dynamic import referencing the import discovery service -->

Spaces that then wish to be imported into the Frontend Fulcrum must expose the resource res:/etc/system/SimpleDynamicImportHook.xml which contains a connection specification:


Dynamic importation of spaces occurs when NetKernel initializes or when a module and its spaces are commissioned. This accessor uses the spaceAggregateHDS accessor to locate the SimpleDynamicImportHook.xml.


By default all discovered imports are imported in an undefined order. However it is possible to specify an import priority. This is useful and possibility necessary if some of the imports mask or override resources in other imports. To specify an import priority using the priority tag containing a float. The default priority is 1.0, specifying a higher priority will force the import to occur earlier. A lower value will force the import to appear later.