diff options
author | Alexey Shchepin <alexey@process-one.net> | 2003-01-07 19:10:35 +0000 |
---|---|---|
committer | Alexey Shchepin <alexey@process-one.net> | 2003-01-07 19:10:35 +0000 |
commit | 2617433ae30dd7ce014ee68ffdecedd8c77ae4a8 (patch) | |
tree | 3cf970ff411ba5ccdde00b2ff3db5b0dd5d75157 /src/ejabberd_router.erl | |
parent | *** empty log message *** (diff) |
*** empty log message ***
SVN Revision: 32
Diffstat (limited to 'src/ejabberd_router.erl')
-rw-r--r-- | src/ejabberd_router.erl | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/src/ejabberd_router.erl b/src/ejabberd_router.erl index 5332d00b..1eb72773 100644 --- a/src/ejabberd_router.erl +++ b/src/ejabberd_router.erl @@ -10,7 +10,11 @@ -author('alexey@sevcom.net'). -vsn('$Revision$ '). --export([route/3, register_route/1, register_local_route/1, +-export([route/3, + register_route/1, + register_local_route/1, + unregister_route/1, + unregister_local_route/1, dirty_get_all_routes/0, dirty_get_all_domains/0 ]). @@ -80,6 +84,12 @@ loop() -> end, mnesia:transaction(F), loop(); + {unregister_local_route, Domain} -> + F = fun() -> + mnesia:delete({local_route, Domain}) + end, + mnesia:transaction(F), + loop(); _ -> loop() end. @@ -128,6 +138,12 @@ register_route(Domain) -> register_local_route(Domain) -> ejabberd_router ! {register_local_route, Domain, self()}. +unregister_route(Domain) -> + ejabberd_router ! {unregister_route, Domain}. + +unregister_local_route(Domain) -> + ejabberd_router ! {unregister_local_route, Domain}. + dirty_get_all_routes() -> lists:delete(?MYNAME, |