Module dc_clustering

Re-register with boot nodes.

Copyright © 2007-2015 Zuse Institute Berlin

Version: $Id$

Behaviours: gen_component.

Authors: Thorsten Schuett (schuett@zib.de), Marie Hoffmann (hoffmann@zib.de).

References

Description

Re-register with boot nodes

Data Types

message()

message() = 
    {dc_trigger} |
    {dc_reset_trigger} |
    {start_clustering_shuffle} |
    {reset_clustering} |
    {vivaldi_get_coordinate_response,
     gossip_vivaldi:network_coordinate(),
     gossip_vivaldi:est_error()} |
    {cy_cache, [node:node_type()]} |
    {clustering_shuffle,
     comm:mypid(),
     dc_centroids:centroids(),
     non_neg_integer()} |
    {clustering_shuffle_reply,
     comm:mypid(),
     dc_centroids:centroids(),
     non_neg_integer()} |
    {query_clustering, comm:mypid()} |
    {query_epoch, comm:mypid()} |
    {query_my, atom(), comm:mypid()}

state_active()

state_active() = 
    #state_active{centroids = dc_centroids:centroids(),
                  local_epoch = non_neg_integer(),
                  radius = undefined | float()}

state_inactive()

state_inactive() = 
    #state_inactive{queued_messages =
                        undefined | msg_queue:msg_queue(),
                    radius = undefined | float()}

-type(state() :: state_active() | state_inactive()).

Function Index

activate/0Sends an initialization message to the node's dc_clustering process.
check_config/0Checks whether config parameters exist and are valid.
deactivate/0Deactivates the clustering process.
init/1Initialises the module with an empty state.
on_active/2Message handler when the module is fully initialized.
on_inactive/2Message handler during start up phase (will change to on_active/2 when a 'activate_clustering' message is received).
start_gen_component/5
start_link/1Starts the dc_clustering process, registers it with the process dictionary and returns its pid for use by a supervisor.

Function Details

start_gen_component/5

start_gen_component(Module :: module(),
                    Handler :: gen_component:handler(),
                    Args :: term(),
                    Options :: [gen_component:option()],
                    Self :: pid()) ->
                       no_return() | ok

activate/0

activate() -> ok | ignore

Sends an initialization message to the node's dc_clustering process.

deactivate/0

deactivate() -> ok | ignore

Deactivates the clustering process.

start_link/1

start_link(DHTNodeGroup :: pid_groups:groupname()) ->
              {ok, pid()} | ignore

Starts the dc_clustering process, registers it with the process dictionary and returns its pid for use by a supervisor.

init/1

init(X1 :: []) -> state_inactive()

Initialises the module with an empty state.

on_inactive/2

on_inactive(Msg :: message(), State_inactive :: state_inactive()) ->
               state_inactive()

Message handler during start up phase (will change to on_active/2 when a 'activate_clustering' message is received).

on_active/2

on_active(Message :: message(), State :: state_active()) ->
             state_active()

Message handler when the module is fully initialized.

check_config/0

check_config() -> boolean()

Checks whether config parameters exist and are valid.


Generated by EDoc, Feb 29 2016, 16:12:21.