Module rm_leases

Ring maintenance with leases.

Copyright © 2007-2016 Zuse Institute Berlin

Version: $$

Behaviours: gen_component.

Authors: Thorsten Schuett (schuett@zib.de).

Description

Ring maintenance with leases.

Data Types

state()

state() = 
    #state{takeovers =
               gb_trees:tree(rt_chord:key(), l_on_cseq:lease_t())}

Function Index

start_gen_component/5
start_link/1Starts the ring maintenence process.
init/1Initialises the module with an empty state.
rm_filter/3
rm_exec/5
get_takeovers/1

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

start_link/1

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

Starts the ring maintenence process

init/1

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

Initialises the module with an empty state.

rm_filter/3

rm_filter(OldNeighbors :: nodelist:neighborhood(),
          NewNeighbors :: nodelist:neighborhood(),
          IsSlide :: rm_loop:reason()) ->
             boolean()

rm_exec/5

rm_exec(Pid :: pid(),
        Tag :: rm_leases,
        OldNeighbors :: nodelist:neighborhood(),
        NewNeighbors :: nodelist:neighborhood(),
        Reason :: rm_loop:reason()) ->
           ok

get_takeovers/1

get_takeovers(RMLeasesPid :: comm:erl_local_pid()) ->
                 gb_trees:tree(rt_chord:key(),
                               l_on_cseq:lease_t())


Generated by EDoc, Aug 2 2016, 13:43:19.