Module node_hometree [erl svg]

Copyright © 2006-2012 ProcessOne

Version: 3.0.0-alpha-5, May 23 2012 07:15:12

Behaviours: gen_pubsub_node.

Authors: Christophe Romain (christophe.romain@process-one.net) [web site: http://www.process-one.net/].

Function Index

create_node/2
create_node_permission/6Checks if the current user has the permission to create the requested node.
delete_item/4
delete_node/1
features/0
get_affiliation/2
get_entity_affiliations/2
get_entity_subscriptions/2
get_item/2
get_item/7
get_item_name/3
get_items/2
get_items/6
get_node_affiliations/1
get_node_subscriptions/1
get_pending_nodes/2
get_state/2
get_states/1
get_subscriptions/2
init/3
node_to_path/1
options/0
path_to_node/1
publish_item/6
purge_node/2
remove_extra_items/3
set_affiliation/3
set_item/1
set_state/1
set_subscriptions/4
subscribe_node/8
terminate/2
unsubscribe_node/4

Function Details

create_node/2

create_node(NodeId, Owner) -> any()

create_node_permission/6

create_node_permission(Host, ServerHost, Node, ParentNode, Owner, Access) -> bool()

Checks if the current user has the permission to create the requested node

In node_default, the permission is decided by the place in the hierarchy where the user is creating the node. The access parameter is also checked in the default module. This parameter depends on the value of the access_createnode ACL value in ejabberd config file.

This function also check that node can be created a a children of its parent node

PubSub plugins can redefine the PubSub node creation rights as they which. They can simply delegate this check to the node_default module by implementing this function like this:

     check_create_user_permission(Host, ServerHost, Node, ParentNode, Owner, Access) ->
 	   node_default:check_create_user_permission(Host, ServerHost, Node, ParentNode, Owner, Access).

delete_item/4

delete_item(NodeId, Publisher, PublishModel, ItemId) -> any()

delete_node/1

delete_node(Removed) -> any()

features/0

features() -> any()

get_affiliation/2

get_affiliation(NodeId, Owner) -> any()

get_entity_affiliations/2

get_entity_affiliations(Host, Owner) -> any()

get_entity_subscriptions/2

get_entity_subscriptions(Host, Owner) -> any()

get_item/2

get_item(NodeId, ItemId) -> any()

get_item/7

get_item(NodeId, ItemId, JID, AccessModel, PresenceSubscription, RosterGroup, SubId) -> any()

get_item_name/3

get_item_name(Host, Node, Id) -> any()

get_items/2

get_items(NodeId, From) -> any()

get_items/6

get_items(NodeId, JID, AccessModel, PresenceSubscription, RosterGroup, SubId) -> any()

get_node_affiliations/1

get_node_affiliations(NodeId) -> any()

get_node_subscriptions/1

get_node_subscriptions(NodeId) -> any()

get_pending_nodes/2

get_pending_nodes(Host, Owner) -> any()

get_state/2

get_state(NodeId, JID) -> any()

get_states/1

get_states(NodeId) -> any()

get_subscriptions/2

get_subscriptions(NodeId, Owner) -> any()

init/3

init(Host, ServerHost, Opts) -> any()

node_to_path/1

node_to_path(Node) -> any()

options/0

options() -> any()

path_to_node/1

path_to_node(Path) -> any()

publish_item/6

publish_item(NodeId, Publisher, Model, MaxItems, ItemId, Payload) -> any()

purge_node/2

purge_node(NodeId, Owner) -> any()

remove_extra_items/3

remove_extra_items(NodeId, MaxItems, ItemIds) -> any()

set_affiliation/3

set_affiliation(NodeId, Owner, Affiliation) -> any()

set_item/1

set_item(Item) -> any()

set_state/1

set_state(State) -> any()

set_subscriptions/4

set_subscriptions(NodeId, Owner, Subscription, SubId) -> any()

subscribe_node/8

subscribe_node(NodeId, Sender, Subscriber, AccessModel, SendLast, PresenceSubscription, RosterGroup, Options) -> any()

terminate/2

terminate(Host, ServerHost) -> any()

unsubscribe_node/4

unsubscribe_node(NodeId, Sender, Subscriber, SubId) -> any()


Generated by EDoc, May 23 2012, 07:15:12.