mirror of
https://github.com/processone/ejabberd.git
synced 2024-10-31 15:21:38 +01:00
102 lines
3.4 KiB
Erlang
102 lines
3.4 KiB
Erlang
%% API function definition
|
|
|
|
-record(api_core,
|
|
{
|
|
create_node = 'pubsub_core' :: module(),
|
|
delete_node = 'pubsub_core' :: module(),
|
|
purge_node = 'pubsub_core' :: module(),
|
|
get_configure_node = 'pubsub_core' :: module(),
|
|
get_configure_node_default = 'pubsub_core' :: module(),
|
|
%%
|
|
publish_item = 'pubsub_core' :: module(),
|
|
retract_item = 'pubsub_core' :: module(),
|
|
%%
|
|
subscribe_node = 'pubsub_core' :: module(),
|
|
unsubscribe_node = 'pubsub_core' :: module(),
|
|
set_configure_subscription = 'pubsub_core' :: module(),
|
|
get_configure_subscription = 'pubsub_core' :: module(),
|
|
get_configure_subscription_default = 'pubsub_core' :: module(),
|
|
get_items = 'pubsub_core' :: module(),
|
|
%%
|
|
get_entity_affiliations = 'pubsub_core' :: module(),
|
|
get_entity_subscriptions = 'pubsub_core' :: module(),
|
|
%%
|
|
get_node_affiliations = 'pubsub_core' :: module(),
|
|
get_node_subscriptions = 'pubsub_core' :: module()
|
|
}).
|
|
|
|
-record(api_db,
|
|
{
|
|
create_node = 'pubsub_db' :: module(),
|
|
delete_node = 'pubsub_db' :: module(),
|
|
purge_node = 'pubsub_db' :: module(),
|
|
get_configure_node = 'pubsub_db' :: module(),
|
|
%get_configure_node_default = 'pubsub_db' :: module(),
|
|
%%
|
|
publish_item = 'pubsub_db' :: module(),
|
|
retract_item = 'pubsub_db' :: module(),
|
|
%%
|
|
subscribe_node = 'pubsub_db' :: module(),
|
|
unsubscribe_node = 'pubsub_db' :: module(),
|
|
set_configure_subscription = 'pubsub_db' :: module(),
|
|
get_configure_subscription = 'pubsub_db' :: module(),
|
|
get_configure_subscription_default = 'pubsub_db' :: module(),
|
|
get_items = 'pubsub_db' :: module(),
|
|
%%
|
|
get_entity_affiliations = 'pubsub_db' :: module(),
|
|
get_entity_subscriptions = 'pubsub_db' :: module(),
|
|
%%
|
|
get_node_affiliations = 'pubsub_db' :: module(),
|
|
get_node_subscriptions = 'pubsub_db' :: module()
|
|
}).
|
|
|
|
-record(api_broadcast,
|
|
{
|
|
broadcast_publish = 'pubsub_broadcast' :: module(),
|
|
broadcast_publish_last = 'pubsub_broadcast' :: module(),
|
|
notify_create = 'pubsub_broadcast' :: module(),
|
|
notify_delete = 'pubsub_broadcast' :: module(),
|
|
notify_publish = 'pubsub_broadcast' :: module(),
|
|
notify_purge = 'pubsub_broadcast' :: module(),
|
|
notify_retract = 'pubsub_broadcast' :: module(),
|
|
notify_subscription = 'pubsub_broadcast' :: module(),
|
|
notify_subscriptions = 'pubsub_broadcast' :: module()
|
|
}).
|
|
|
|
-record(api,
|
|
{
|
|
core = #api_core{} :: #api_core{},
|
|
db = #api_db{} :: #api_db{},
|
|
broadcast = #api_broadcast{} :: #api_broadcast{},
|
|
parser = 'pubsub_parser' :: module(),
|
|
options = 'pubsub_options' :: module()
|
|
}).
|
|
|
|
-record(capabilities,
|
|
{
|
|
plugin :: exmpp_pubsub:plugin(),
|
|
privacy = false :: boolean(),
|
|
api = #api{} :: #api{}
|
|
}).
|
|
|
|
-record(api2,
|
|
{
|
|
func,
|
|
core :: 'core',
|
|
db :: 'db',
|
|
bkd :: 'mnesia',
|
|
rtr :: 'router'
|
|
}).
|
|
|
|
-record(mod_pubsub,
|
|
{
|
|
server,
|
|
component,
|
|
plugin,
|
|
entity,
|
|
parameters,
|
|
features,
|
|
parser,
|
|
options
|
|
}).
|