Loading...
Searching...
No Matches
caf::io::basp::instance::callee Class Referenceabstract

Provides a callback-based interface for certain BASP events. More...

`#include <instance.hpp>`

Inheritance diagram for caf::io::basp::instance::callee:

## Public Types

using | buffer_type = std::vector<char>

## Public Member Functions

| callee (actor_system &sys, proxy_registry::backend &backend)
virtual void | finalize_handshake (const node_id &nid, actor_id aid, std::set< std::string > &sigs)=0
| Called if a server handshake was received and the connection to nid is established.
virtual void | purge_state (const node_id &nid)=0
| Called whenever a direct connection was closed or a node became unrechable for other reasons before this node gets erased from the routing table.
virtual void | proxy_announced (const node_id &nid, actor_id aid)=0
| Called whenever a remote node created a proxy for one of our local actors.
virtual void | learned_new_node_directly (const node_id &nid, bool was_known_indirectly)=0
| Called whenever BASP learns the ID of a remote node to which it does not have a direct connection.
virtual void | learned_new_node_indirectly (const node_id &nid)=0
| Called whenever BASP learns the ID of a remote node to which it does not have a direct connection.
virtual void | handle_heartbeat ()=0
| Called if a heartbeat was received from nid.
virtual execution_unit * | current_execution_unit ()=0
| Returns the current CAF scheduler context.
proxy_registry & | proxies ()
| Returns the actor namespace associated to this BASP protocol instance.
virtual buffer_type & | get_buffer (connection_handle hdl)=0
| Returns a reference to the sent buffer.
virtual void | flush (connection_handle hdl)=0
| Flushes the underlying write buffer of hdl.
virtual strong_actor_ptr | this_actor ()=0
| Returns a handle to the callee actor.

## Protected Attributes

proxy_registry | namespace_

## Detailed Description

Provides a callback-based interface for certain BASP events.

## Member Function Documentation

## current_execution_unit()

virtual execution_unit * caf::io::basp::instance::callee::current_execution_unit | ( |  | ) |

pure virtual

Returns the current CAF scheduler context.

Implemented in caf::io::basp_broker.

## finalize_handshake()

virtual void caf::io::basp::instance::callee::finalize_handshake | ( | const node_id & | nid,
|  | actor_id | aid,
|  | std::set< std::string > & | sigs )

pure virtual

Called if a server handshake was received and the connection to nid is established.

Implemented in caf::io::basp_broker.

## flush()

virtual void caf::io::basp::instance::callee::flush | ( | connection_handle | hdl | ) |

pure virtual

Flushes the underlying write buffer of hdl.

Implemented in caf::io::basp_broker.

## get_buffer()

virtual buffer_type & caf::io::basp::instance::callee::get_buffer | ( | connection_handle | hdl | ) |

pure virtual

Returns a reference to the sent buffer.

Implemented in caf::io::basp_broker.

## handle_heartbeat()

virtual void caf::io::basp::instance::callee::handle_heartbeat | ( |  | ) |

pure virtual

Called if a heartbeat was received from nid.

Implemented in caf::io::basp_broker.

## learned_new_node_directly()

virtual void caf::io::basp::instance::callee::learned_new_node_directly | ( | const node_id & | nid,
|  | bool | was_known_indirectly )

pure virtual

Called whenever BASP learns the ID of a remote node to which it does not have a direct connection.

Implemented in caf::io::basp_broker.

## learned_new_node_indirectly()

virtual void caf::io::basp::instance::callee::learned_new_node_indirectly | ( | const node_id & | nid | ) |

pure virtual

Called whenever BASP learns the ID of a remote node to which it does not have a direct connection.

Implemented in caf::io::basp_broker.

## proxy_announced()

virtual void caf::io::basp::instance::callee::proxy_announced | ( | const node_id & | nid,
|  | actor_id | aid )

pure virtual

Called whenever a remote node created a proxy for one of our local actors.

Implemented in caf::io::basp_broker.

## purge_state()

virtual void caf::io::basp::instance::callee::purge_state | ( | const node_id & | nid | ) |

pure virtual

Called whenever a direct connection was closed or a node became unrechable for other reasons before this node gets erased from the routing table.

Warning
  The implementing class must not modify the routing table from this callback.

Implemented in caf::io::basp_broker.

## this_actor()

virtual strong_actor_ptr caf::io::basp::instance::callee::this_actor | ( |  | ) |

pure virtual

Returns a handle to the callee actor.

Implemented in caf::io::basp_broker.

The documentation for this class was generated from the following file:

- /build/actor-framework-Z9pIPl/actor-framework-0.17.6/libcaf_io/caf/io/basp/instance.hpp