aboutsummaryrefslogtreecommitdiffstats
path: root/core/moduleapi.lua
Commit message (Collapse)AuthorAgeFilesLines
* Eliminate direct setfenv usageFlorian Zeitz2012-06-081-4/+3
|
* modulemanager, moduleapi: Turn module.event_handlers into a multitable and ↵Matthew Wild2012-05-191-6/+1
| | | | track object->event->handler associations correctly (thanks Zash)
* moduleapi, modulemanager: Re-structure module.event_handlers so that the ↵Matthew Wild2012-05-181-1/+6
| | | | same handler can harmlessly handle multiple events (thanks Zash)
* moduleapi: Don't auto-reload self when already reloading (fixes reload of ↵Matthew Wild2012-05-111-1/+1
| | | | modules with cyclic dependencies)
* moduleapi: Add module:get_directory() to get module file's directory, and ↵Matthew Wild2012-04-281-0/+10
| | | | module:load_resource() to load a file relative to that directory
* moduleapi: Import util.timerMatthew Wild2012-04-281-0/+1
|
* moduleapi: Remove unused variable 'module_items'Matthew Wild2012-04-281-1/+0
|
* moduleapi: Rename module:hook_stanza() -> module:hook_tag() (hook_stanza ↵Matthew Wild2012-04-271-1/+2
| | | | works for compat)
* moduleapi: get_host_type(): Return nil for global modules (no host)Matthew Wild2012-04-271-1/+1
|
* moduleapi: Fix parameters to unhook_object_event()Matthew Wild2012-04-261-1/+1
|
* moduleapi: module:depends(): Don't load shared modules onto the current host ↵Matthew Wild2012-04-261-1/+2
| | | | if the current host is '*'...
* moduleapi: Add module:unhook_object_event()Matthew Wild2012-04-261-0/+4
|
* moduleapi: Add module:add_timer(delay, callback) - automatically halts the ↵Matthew Wild2012-04-231-0/+7
| | | | timer on module unload
* moduleapi: module:depends(): Load shared modules onto the current host even ↵Matthew Wild2012-04-231-0/+3
| | | | if they are loaded globally already
* moduleapi: module:provides(): Add "-provider" onto the key nameMatthew Wild2012-04-231-1/+1
|
* moduleapi: module:provides(): Fix usage of wrong tableMatthew Wild2012-04-231-1/+1
|
* moduleapi: Have modules internally store a reference to shared tables they ↵Matthew Wild2012-04-211-0/+2
| | | | use, to ensure they don't get collected while any module that had access to that table is still loaded (thanks Zash)
* moduleapi: Add module:send() as an alias for core_post_stanza() from the ↵Matthew Wild2012-03-151-0/+5
| | | | current host's origin
* moduleapi: Add module:provides(), a shortcut to add an item with the current ↵Matthew Wild2012-03-151-0/+14
| | | | module's name
* moduleapi: Set module.global = true when module:set_global() is calledMatthew Wild2012-03-141-0/+1
|
* moduleapi: Add module:shared(), a way to easily share data between multiple ↵Matthew Wild2012-01-221-0/+23
| | | | loaded modules
* moduleapi: Add module:depends(), a way to safely depend upon another module ↵Matthew Wild2012-01-221-0/+29
| | | | at runtime
* modulemanager, moduleapi: Replace hooks multitable with an event_handlers ↵Matthew Wild2012-01-221-4/+7
| | | | map stored in individual modules. Also adds module:hook_object_event() to hook events on any util.events compatible object.
* modulemanager: Move in-module API functions to core.moduleapi (half the file ↵Matthew Wild2012-01-221-0/+239
size, yay)