Software /
code /
prosody
Annotate
core/componentmanager.lua @ 3605:b8208f5e612a
prosody: Added a stub implementation of core.componentmanager to the package.loaded table.
author | Waqas Hussain <waqas20@gmail.com> |
---|---|
date | Wed, 10 Nov 2010 21:47:39 +0500 |
parent | 3603:fdc671381411 |
rev | line source |
---|---|
1523
841d61be198f
Remove version number from copyright headers
Matthew Wild <mwild1@gmail.com>
parents:
1442
diff
changeset
|
1 -- Prosody IM |
2923
b7049746bd29
Update copyright headers for 2010
Matthew Wild <mwild1@gmail.com>
parents:
2323
diff
changeset
|
2 -- Copyright (C) 2008-2010 Matthew Wild |
b7049746bd29
Update copyright headers for 2010
Matthew Wild <mwild1@gmail.com>
parents:
2323
diff
changeset
|
3 -- Copyright (C) 2008-2010 Waqas Hussain |
519
cccd610a0ef9
Insert copyright/license headers
Matthew Wild <mwild1@gmail.com>
parents:
270
diff
changeset
|
4 -- |
758 | 5 -- This project is MIT/X11 licensed. Please see the |
6 -- COPYING file in the source package for more information. | |
519
cccd610a0ef9
Insert copyright/license headers
Matthew Wild <mwild1@gmail.com>
parents:
270
diff
changeset
|
7 -- |
cccd610a0ef9
Insert copyright/license headers
Matthew Wild <mwild1@gmail.com>
parents:
270
diff
changeset
|
8 |
610
d98106902f74
Enable dialback for components
Waqas Hussain <waqas20@gmail.com>
parents:
519
diff
changeset
|
9 local log = require "util.logger".init("componentmanager"); |
2323
b7f683c55a44
componentmanager: Set ssl_ctx[_in] for components correctly, and use global SSL context if available
Matthew Wild <mwild1@gmail.com>
parents:
2075
diff
changeset
|
10 local prosody, hosts = prosody, prosody.hosts; |
847
2d424936723c
core.componentmanager: Refactor a little to make XEP-0114 plugin a little simpler
Matthew Wild <mwild1@gmail.com>
parents:
777
diff
changeset
|
11 |
2d424936723c
core.componentmanager: Refactor a little to make XEP-0114 plugin a little simpler
Matthew Wild <mwild1@gmail.com>
parents:
777
diff
changeset
|
12 local components = {}; |
2d424936723c
core.componentmanager: Refactor a little to make XEP-0114 plugin a little simpler
Matthew Wild <mwild1@gmail.com>
parents:
777
diff
changeset
|
13 |
2d424936723c
core.componentmanager: Refactor a little to make XEP-0114 plugin a little simpler
Matthew Wild <mwild1@gmail.com>
parents:
777
diff
changeset
|
14 module "componentmanager" |
751
7c22619fdb19
componentmanager: Add support for loading components defined in the config
Matthew Wild <mwild1@gmail.com>
parents:
703
diff
changeset
|
15 |
3547
3242e70f1058
componentmanager: Removed an unused third parameter from the register_component function.
Waqas Hussain <waqas20@gmail.com>
parents:
3540
diff
changeset
|
16 function register_component(host, component) |
3603
fdc671381411
componentmanager: Removed most of the code. Stub implementations of register_component and deregister_component remain.
Waqas Hussain <waqas20@gmail.com>
parents:
3602
diff
changeset
|
17 if hosts[host] and hosts[host].type == 'component' then |
847
2d424936723c
core.componentmanager: Refactor a little to make XEP-0114 plugin a little simpler
Matthew Wild <mwild1@gmail.com>
parents:
777
diff
changeset
|
18 components[host] = component; |
2d424936723c
core.componentmanager: Refactor a little to make XEP-0114 plugin a little simpler
Matthew Wild <mwild1@gmail.com>
parents:
777
diff
changeset
|
19 log("debug", "component added: "..host); |
3547
3242e70f1058
componentmanager: Removed an unused third parameter from the register_component function.
Waqas Hussain <waqas20@gmail.com>
parents:
3540
diff
changeset
|
20 return hosts[host]; |
847
2d424936723c
core.componentmanager: Refactor a little to make XEP-0114 plugin a little simpler
Matthew Wild <mwild1@gmail.com>
parents:
777
diff
changeset
|
21 else |
2d424936723c
core.componentmanager: Refactor a little to make XEP-0114 plugin a little simpler
Matthew Wild <mwild1@gmail.com>
parents:
777
diff
changeset
|
22 log("error", "Attempt to set component for existing host: "..host); |
2d424936723c
core.componentmanager: Refactor a little to make XEP-0114 plugin a little simpler
Matthew Wild <mwild1@gmail.com>
parents:
777
diff
changeset
|
23 end |
2d424936723c
core.componentmanager: Refactor a little to make XEP-0114 plugin a little simpler
Matthew Wild <mwild1@gmail.com>
parents:
777
diff
changeset
|
24 end |
673
c9bc58e84e96
componentmanager: Added support for component deregistering
Waqas Hussain <waqas20@gmail.com>
parents:
638
diff
changeset
|
25 |
703
f9909efed20c
componentmanager: Removed unneeded parameter from componentmanager.deregister_component
Waqas Hussain <waqas20@gmail.com>
parents:
673
diff
changeset
|
26 function deregister_component(host) |
673
c9bc58e84e96
componentmanager: Added support for component deregistering
Waqas Hussain <waqas20@gmail.com>
parents:
638
diff
changeset
|
27 if components[host] then |
3603
fdc671381411
componentmanager: Removed most of the code. Stub implementations of register_component and deregister_component remain.
Waqas Hussain <waqas20@gmail.com>
parents:
3602
diff
changeset
|
28 components[host] = nil; |
673
c9bc58e84e96
componentmanager: Added support for component deregistering
Waqas Hussain <waqas20@gmail.com>
parents:
638
diff
changeset
|
29 log("debug", "component removed: "..host); |
c9bc58e84e96
componentmanager: Added support for component deregistering
Waqas Hussain <waqas20@gmail.com>
parents:
638
diff
changeset
|
30 return true; |
c9bc58e84e96
componentmanager: Added support for component deregistering
Waqas Hussain <waqas20@gmail.com>
parents:
638
diff
changeset
|
31 else |
c9bc58e84e96
componentmanager: Added support for component deregistering
Waqas Hussain <waqas20@gmail.com>
parents:
638
diff
changeset
|
32 log("error", "Attempt to remove component for non-existing host: "..host); |
c9bc58e84e96
componentmanager: Added support for component deregistering
Waqas Hussain <waqas20@gmail.com>
parents:
638
diff
changeset
|
33 end |
c9bc58e84e96
componentmanager: Added support for component deregistering
Waqas Hussain <waqas20@gmail.com>
parents:
638
diff
changeset
|
34 end |
847
2d424936723c
core.componentmanager: Refactor a little to make XEP-0114 plugin a little simpler
Matthew Wild <mwild1@gmail.com>
parents:
777
diff
changeset
|
35 |
2d424936723c
core.componentmanager: Refactor a little to make XEP-0114 plugin a little simpler
Matthew Wild <mwild1@gmail.com>
parents:
777
diff
changeset
|
36 return _M; |