<< Kernel  Content classes >> 

Module system

Exponential is module based. The Exponential kernel functionality is available using different interfaces. Interface implementation is plugin based and the current implementations are Web and SOAP. The Web interface is the normal browser based Exponential interface which outputs HTML. The SOAP interface is a general SOAP interface useful for integration with other systems using industri standard XML messages.

Module system

Module directory structure

There are different types of modules which can be placed in different places in the Exponential directory structure. The kernel modules are located under /kernel/.

/kernel/content/  <- content module
/kernel/content/module.php <- module definition

/kernel/content/web/ <- web implementation
/kernel/content/web/view.php <- web implementation of content / view

/kernel/content/soap/ <- soap implementation
/kernel/content/soap/view.php <- soap implementation of content / view

Module definition

Each module has it's own definition file. This file describes the available functionality.

  • List of available functions ( all functions may not be implemented in all interfaces )
  • List of parameters to each function
  • List of context variables which can be used for permissions

Workflows

Every function in every module will get triggers, pre and post, which can execute a workflow. These workflows can be used to add custom functionality or to add special permission checking. Read the workflow documentation for details.

Permissions

The available modules, functions and context variables are used when creating permission policies. These policies define what a specific user has access to in the system. Permissions are checked before the pre workflow is trigged, i.e. if you don't have access to a function the pre workflow will never be trigged. permission documentation for details.


Exponential