Savarese Software Research Corporation
protocol::ContinuationCaller< PT > Class Template Reference

#include <ContinuationCaller.h>

Inheritance diagram for protocol::ContinuationCaller< PT >:
Inheritance graph
[legend]

List of all members.

Public Types

typedef PT  packing_traits
typedef packing_traits::packer_type  packer_type
typedef
packing_traits::unpacker_type 
unpacker_type
typedef boost::tuple< string,
wisp_call_role,
wisp_call_token
jumbo_message_key_type

Public Member Functions

  ContinuationCaller (const string &connection="", const string &name="", const unsigned int message_capacity=Message::DefaultCapacity, const bool group_membership=GroupMembershipDisable)
unsigned int  continuations_map_size () const
template<typename CallTraits_ , typename Closure , typename DestinationType >
continuation_ptr  split_call (Closure &&continue_, const DestinationType &dest, const typename CallTraits_::parameter_type &param, const Message::Service service=DefaultMessageServiceType) SSRC_DECL_THROW(boost
void  schedule (const continuation_ptr &continuation)
template<typename CallTraits_ , typename Closure , typename DestinationType >
void  future_call (Closure &&continue_, const DestinationType &dest, const typename CallTraits_::parameter_type &param, const Message::Service service=DefaultMessageServiceType) SSRC_DECL_THROW(boost
void  cancel_range (wisp_call_token min_token, wisp_call_token max_token)
void  cancel_all ()
continuation_ptr  cancel (wisp_call_token token)
bool  resume (MessageInfo &msginfo)
template<typename CallTraits_ , typename Closure , typename DestinationType >
void  future_call (Closure &&continue_, const DestinationType &dest, const Message::Service service=DefaultMessageServiceType) SSRC_DECL_THROW(boost
template<typename CallTraits_ , typename Closure , typename DestinationType , typename... P>
void  future_call (const Message::Service service, Closure &&continue_, const DestinationType &dest, P &&...p) SSRC_DECL_THROW(boost
template<typename CallTraits_ , typename Closure , typename DestinationType , typename... P>
void  future_callp (Closure &&continue_, const DestinationType &dest, P &&...p) SSRC_DECL_THROW(boost
template<typename Traits , typename DestinationType >
void  send (const DestinationType &dest, const typename Traits::parameter_type &param, const Message::Service service=DefaultMessageServiceType) SSRC_DECL_THROW(boost
template<typename Traits , typename DestinationType >
void  send (const DestinationType &dest, const Message::Service service=DefaultMessageServiceType) SSRC_DECL_THROW(boost
template<typename Traits , typename DestinationType , typename... P>
void  send (const Message::Service service, const DestinationType &dest, P &&...p) SSRC_DECL_THROW(boost
const Mailbox &  mbox ()
packer_type packer ()
unpacker_type unpacker ()
wisp_call_token  call_token ()
const string &  name () const
bool  group_membership () const
void  join (const string &group) SSRC_DECL_THROW(NS_SSRC_SPREAD
void  leave (const string &group) SSRC_DECL_THROW(NS_SSRC_SPREAD
unsigned int  initial_message_capacity () const
unsigned int  message_capacity () const
unsigned int  request_queue_size () const
unsigned int  response_map_size () const
bool  returned (const wisp_call_token token) const
unsigned int  count_jumbo_messages () const
template<typename key_container >
void  collect_jumbo_message_keys (key_container &container)
template<typename iterator_type >
void  erase_jumbo_messages (const iterator_type &begin, const iterator_type &end)
template<typename MessageType >
void  unpack (MessageType &msg, MessageInfo &info) SSRC_DECL_THROW(boost
void  receive (message_info_ptr &info) SSRC_DECL_THROW(boost
  Assumes _info.unique() == true.
void  receive_request (message_info_ptr &info) SSRC_DECL_THROW(boost
template<typename Traits , typename DestinationType >
void  reply (const DestinationType &dest, const wisp_call_token token, const typename Traits::parameter_type &param, const Message::Service service=DefaultMessageServiceType) SSRC_DECL_THROW(boost
template<typename Traits , typename DestinationType >
void  reply (const DestinationType &dest, const wisp_call_token token, const Message::Service service=DefaultMessageServiceType) SSRC_DECL_THROW(boost
template<typename Traits , typename DestinationType , typename... P>
void  reply (const Message::Service service, const DestinationType &dest, const wisp_call_token token, P &&...p) SSRC_DECL_THROW(boost
template<typename Traits , typename DestinationType >
void  call (const DestinationType &dest, typename Traits::return_type *ret, const typename Traits::parameter_type &param, const Message::Service service=DefaultMessageServiceType) SSRC_DECL_THROW(boost
template<typename Traits , typename DestinationType >
Future< typename
Traits::return_type >
::shared_ptr 
call (const DestinationType &dest, const typename Traits::parameter_type &param, const Message::Service service=DefaultMessageServiceType) SSRC_DECL_THROW(boost
template<typename Traits , typename DestinationType >
void  call (const DestinationType &dest, typename Traits::return_type *ret, const Message::Service service=DefaultMessageServiceType) SSRC_DECL_THROW(boost
template<typename Traits , typename DestinationType , typename... P>
void  call (const Message::Service service, const DestinationType &dest, typename Traits::return_type *ret, P &&...p) SSRC_DECL_THROW(boost
template<typename Traits , typename DestinationType >
Future< typename
Traits::return_type >
::shared_ptr 
call (const DestinationType &dest, const Message::Service service=DefaultMessageServiceType) SSRC_DECL_THROW(boost
template<typename Traits , typename DestinationType , typename... P>
Future< typename
Traits::return_type >
::shared_ptr 
call (const Message::Service service, const DestinationType &dest, P &&...p) SSRC_DECL_THROW(boost
template<typename Traits , typename DestinationType >
void  operator() (const Traits &, const DestinationType &dest, const wisp_call_token token, const typename Traits::parameter_type &param, const Message::Service service=DefaultMessageServiceType) SSRC_DECL_THROW(boost
template<typename Traits , typename DestinationType >
void  operator() (const Traits &, const DestinationType &dest, typename Traits::return_type *ret, const typename Traits::parameter_type &param, const Message::Service service=DefaultMessageServiceType) SSRC_DECL_THROW(boost
template<typename Traits , typename DestinationType >
Future< typename
Traits::return_type >
::shared_ptr 
operator() (const Traits &, const DestinationType &dest, const typename Traits::parameter_type &param, const Message::Service service=DefaultMessageServiceType) SSRC_DECL_THROW(boost
template<typename Traits , typename DestinationType >
void  operator() (const Traits &, const DestinationType &dest, const wisp_call_token token, const Message::Service service=DefaultMessageServiceType) SSRC_DECL_THROW(boost
template<typename Traits , typename DestinationType >
void  operator() (const Traits &, const DestinationType &dest, typename Traits::return_type *ret, const Message::Service service=DefaultMessageServiceType) SSRC_DECL_THROW(boost
template<typename Traits , typename DestinationType >
Future< typename
Traits::return_type >
::shared_ptr 
operator() (const Traits &, const DestinationType &dest, const Message::Service service=DefaultMessageServiceType) SSRC_DECL_THROW(boost
template<typename Traits , typename DestinationType , typename... P>
void  sendp (const DestinationType &dest, P &&...p) SSRC_DECL_THROW(boost
template<typename Traits , typename DestinationType , typename... P>
void  replyp (const DestinationType &dest, const wisp_call_token token, P &&...p) SSRC_DECL_THROW(boost
template<typename Traits , typename DestinationType , typename... P>
void  callp (const DestinationType &dest, typename Traits::return_type *ret, P &&...p) SSRC_DECL_THROW(boost
template<typename Traits , typename DestinationType , typename... P>
Future< typename
Traits::return_type >
::shared_ptr 
callp (const DestinationType &dest, P &&...p) SSRC_DECL_THROW(boost

Static Public Attributes

static const unsigned int  MaxUnfragmentedMessageSize

Detailed Description

template<typename PT = BinaryPackingTraits>
class protocol::ContinuationCaller< PT >

Definition at line 118 of file ContinuationCaller.h.


Member Typedef Documentation

template<typename PT = BinaryPackingTraits>
typedef boost::tuple<string, wisp_call_role, wisp_call_token> protocol::Caller< PT >::jumbo_message_key_type [inherited]

Definition at line 561 of file Caller.h.

template<typename PT = BinaryPackingTraits>
typedef packing_traits::packer_type protocol::Caller< PT >::packer_type [inherited]

Definition at line 322 of file Caller.h.

template<typename PT = BinaryPackingTraits>
typedef PT protocol::Caller< PT >::packing_traits [inherited]

Definition at line 321 of file Caller.h.

template<typename PT = BinaryPackingTraits>
typedef packing_traits::unpacker_type protocol::Caller< PT >::unpacker_type [inherited]

Definition at line 323 of file Caller.h.


Constructor & Destructor Documentation

template<typename PT = BinaryPackingTraits>
protocol::ContinuationCaller< PT >::ContinuationCaller ( const string &  connection = "",
const string &  name = "",
const unsigned int  message_capacity = Message::DefaultCapacity,
const bool  group_membership = GroupMembershipDisable 
) [inline, explicit]

Definition at line 144 of file ContinuationCaller.h.


Member Function Documentation

template<typename PT = BinaryPackingTraits>
template<typename Traits , typename DestinationType >
void protocol::Caller< PT >::call ( const DestinationType &  dest,
typename Traits::return_type *  ret,
const typename Traits::parameter_type &  param,
const Message::Service  service = DefaultMessageServiceType 
) [inline, inherited]

Definition at line 860 of file Caller.h.

References protocol::TwoWay, and protocol::TwoWayRequest.

template<typename PT = BinaryPackingTraits>
template<typename Traits , typename DestinationType >
Future<typename Traits::return_type>::shared_ptr protocol::Caller< PT >::call ( const DestinationType &  dest,
const typename Traits::parameter_type &  param,
const Message::Service  service = DefaultMessageServiceType 
) [inline, inherited]

Definition at line 876 of file Caller.h.

References protocol::TwoWay, and protocol::TwoWayRequest.

template<typename PT = BinaryPackingTraits>
template<typename Traits , typename DestinationType >
void protocol::Caller< PT >::call ( const DestinationType &  dest,
typename Traits::return_type *  ret,
const Message::Service  service = DefaultMessageServiceType 
) [inline, inherited]

Definition at line 1035 of file Caller.h.

template<typename PT = BinaryPackingTraits>
template<typename Traits , typename DestinationType , typename... P>
void protocol::Caller< PT >::call ( const Message::Service  service,
const DestinationType &  dest,
typename Traits::return_type *  ret,
P &&...  p 
) [inline, inherited]

Definition at line 1056 of file Caller.h.

template<typename PT = BinaryPackingTraits>
template<typename Traits , typename DestinationType >
Future<typename Traits::return_type>::shared_ptr protocol::Caller< PT >::call ( const DestinationType &  dest,
const Message::Service  service = DefaultMessageServiceType 
) [inline, inherited]

Definition at line 1080 of file Caller.h.

template<typename PT = BinaryPackingTraits>
template<typename Traits , typename DestinationType , typename... P>
Future<typename Traits::return_type>::shared_ptr protocol::Caller< PT >::call ( const Message::Service  service,
const DestinationType &  dest,
P &&...  p 
) [inline, inherited]

Definition at line 1089 of file Caller.h.

template<typename PT = BinaryPackingTraits>
wisp_call_token protocol::Caller< PT >::call_token ( ) [inline, inherited]

Definition at line 654 of file Caller.h.

template<typename PT = BinaryPackingTraits>
template<typename Traits , typename DestinationType , typename... P>
void protocol::Caller< PT >::callp ( const DestinationType &  dest,
typename Traits::return_type *  ret,
P &&...  p 
) [inline, inherited]

Definition at line 1068 of file Caller.h.

template<typename PT = BinaryPackingTraits>
template<typename Traits , typename DestinationType , typename... P>
Future<typename Traits::return_type>::shared_ptr protocol::Caller< PT >::callp ( const DestinationType &  dest,
P &&...  p 
) [inline, inherited]

Definition at line 1100 of file Caller.h.

template<typename PT = BinaryPackingTraits>
continuation_ptr protocol::ContinuationCaller< PT >::cancel ( wisp_call_token  token ) [inline]

Definition at line 200 of file ContinuationCaller.h.

References protocol::NullContinuation.

template<typename PT = BinaryPackingTraits>
void protocol::ContinuationCaller< PT >::cancel_all ( ) [inline]

Definition at line 196 of file ContinuationCaller.h.

template<typename PT = BinaryPackingTraits>
void protocol::ContinuationCaller< PT >::cancel_range ( wisp_call_token  min_token,
wisp_call_token  max_token 
) [inline]

Definition at line 183 of file ContinuationCaller.h.

template<typename PT = BinaryPackingTraits>
template<typename key_container >
void protocol::Caller< PT >::collect_jumbo_message_keys ( key_container &  container ) [inline, inherited]
template<typename PT = BinaryPackingTraits>
unsigned int protocol::ContinuationCaller< PT >::continuations_map_size ( ) const [inline]

Definition at line 152 of file ContinuationCaller.h.

template<typename PT = BinaryPackingTraits>
unsigned int protocol::Caller< PT >::count_jumbo_messages ( ) const [inline, inherited]

Definition at line 694 of file Caller.h.

template<typename PT = BinaryPackingTraits>
template<typename iterator_type >
void protocol::Caller< PT >::erase_jumbo_messages ( const iterator_type &  begin,
const iterator_type &  end 
) [inline, inherited]

Definition at line 709 of file Caller.h.

template<typename PT = BinaryPackingTraits>
template<typename CallTraits_ , typename Closure , typename DestinationType >
void protocol::ContinuationCaller< PT >::future_call ( Closure &&  continue_,
const DestinationType &  dest,
const Message::Service  service = DefaultMessageServiceType 
) [inline]

Definition at line 224 of file ContinuationCaller.h.

template<typename PT = BinaryPackingTraits>
template<typename CallTraits_ , typename Closure , typename DestinationType >
void protocol::ContinuationCaller< PT >::future_call ( Closure &&  continue_,
const DestinationType &  dest,
const typename CallTraits_::parameter_type &  param,
const Message::Service  service = DefaultMessageServiceType 
) [inline]

Definition at line 172 of file ContinuationCaller.h.

template<typename PT = BinaryPackingTraits>
template<typename CallTraits_ , typename Closure , typename DestinationType , typename... P>
void protocol::ContinuationCaller< PT >::future_call ( const Message::Service  service,
Closure &&  continue_,
const DestinationType &  dest,
P &&...  p 
) [inline]

Definition at line 236 of file ContinuationCaller.h.

template<typename PT = BinaryPackingTraits>
template<typename CallTraits_ , typename Closure , typename DestinationType , typename... P>
void protocol::ContinuationCaller< PT >::future_callp ( Closure &&  continue_,
const DestinationType &  dest,
P &&...  p 
) [inline]

Definition at line 248 of file ContinuationCaller.h.

template<typename PT = BinaryPackingTraits>
bool protocol::Caller< PT >::group_membership ( ) const [inline, inherited]

Definition at line 662 of file Caller.h.

template<typename PT = BinaryPackingTraits>
unsigned int protocol::Caller< PT >::initial_message_capacity ( ) const [inline, inherited]

Definition at line 674 of file Caller.h.

template<typename PT = BinaryPackingTraits>
void protocol::Caller< PT >::join ( const string &  group ) [inline, inherited]

Definition at line 666 of file Caller.h.

template<typename PT = BinaryPackingTraits>
void protocol::Caller< PT >::leave ( const string &  group ) [inline, inherited]

Definition at line 670 of file Caller.h.

template<typename PT = BinaryPackingTraits>
const Mailbox& protocol::Caller< PT >::mbox ( ) [inline, inherited]

Definition at line 642 of file Caller.h.

template<typename PT = BinaryPackingTraits>
unsigned int protocol::Caller< PT >::message_capacity ( ) const [inline, inherited]

Definition at line 678 of file Caller.h.

template<typename PT = BinaryPackingTraits>
const string& protocol::Caller< PT >::name ( ) const [inline, inherited]

Definition at line 658 of file Caller.h.

template<typename PT = BinaryPackingTraits>
template<typename Traits , typename DestinationType >
void protocol::Caller< PT >::operator() ( const Traits &  ,
const DestinationType &  dest,
typename Traits::return_type *  ret,
const Message::Service  service = DefaultMessageServiceType 
) [inline, inherited]

Definition at line 1045 of file Caller.h.

template<typename PT = BinaryPackingTraits>
template<typename Traits , typename DestinationType >
void protocol::Caller< PT >::operator() ( const Traits &  ,
const DestinationType &  dest,
typename Traits::return_type *  ret,
const typename Traits::parameter_type &  param,
const Message::Service  service = DefaultMessageServiceType 
) [inline, inherited]

Definition at line 932 of file Caller.h.

template<typename PT = BinaryPackingTraits>
template<typename Traits , typename DestinationType >
Future<typename Traits::return_type>::shared_ptr protocol::Caller< PT >::operator() ( const Traits &  ,
const DestinationType &  dest,
const typename Traits::parameter_type &  param,
const Message::Service  service = DefaultMessageServiceType 
) [inline, inherited]

Definition at line 946 of file Caller.h.

template<typename PT = BinaryPackingTraits>
template<typename Traits , typename DestinationType >
Future<typename Traits::return_type>::shared_ptr protocol::Caller< PT >::operator() ( const Traits &  ,
const DestinationType &  dest,
const Message::Service  service = DefaultMessageServiceType 
) [inline, inherited]

Definition at line 1111 of file Caller.h.

template<typename PT = BinaryPackingTraits>
template<typename Traits , typename DestinationType >
void protocol::Caller< PT >::operator() ( const Traits &  ,
const DestinationType &  dest,
const wisp_call_token  token,
const Message::Service  service = DefaultMessageServiceType 
) [inline, inherited]

Definition at line 1001 of file Caller.h.

template<typename PT = BinaryPackingTraits>
template<typename Traits , typename DestinationType >
void protocol::Caller< PT >::operator() ( const Traits &  ,
const DestinationType &  dest,
const wisp_call_token  token,
const typename Traits::parameter_type &  param,
const Message::Service  service = DefaultMessageServiceType 
) [inline, inherited]

Definition at line 920 of file Caller.h.

template<typename PT = BinaryPackingTraits>
packer_type& protocol::Caller< PT >::packer ( ) [inline, inherited]

Definition at line 646 of file Caller.h.

template<typename PT = BinaryPackingTraits>
void protocol::Caller< PT >::receive ( message_info_ptr info ) [inline, inherited]

Assumes _info.unique() == true.

We do not check _info.unique() for performance reasons (unique() may acquire thread mutexes). This function is intended to be called only by an event dispatcher inside an event loop in a single thread.

Definition at line 740 of file Caller.h.

References protocol::CallHeader::is_jumbo_fragment(), and protocol::MessageInfo::message.

template<typename PT = BinaryPackingTraits>
void protocol::Caller< PT >::receive_request ( message_info_ptr info ) [inline, inherited]
template<typename PT = BinaryPackingTraits>
template<typename Traits , typename DestinationType >
void protocol::Caller< PT >::reply ( const DestinationType &  dest,
const wisp_call_token  token,
const typename Traits::parameter_type &  param,
const Message::Service  service = DefaultMessageServiceType 
) [inline, inherited]

Definition at line 848 of file Caller.h.

References protocol::OneWay, and protocol::TwoWayResponse.

template<typename PT = BinaryPackingTraits>
template<typename Traits , typename DestinationType , typename... P>
void protocol::Caller< PT >::reply ( const Message::Service  service,
const DestinationType &  dest,
const wisp_call_token  token,
P &&...  p 
) [inline, inherited]

Definition at line 1012 of file Caller.h.

template<typename PT = BinaryPackingTraits>
template<typename Traits , typename DestinationType >
void protocol::Caller< PT >::reply ( const DestinationType &  dest,
const wisp_call_token  token,
const Message::Service  service = DefaultMessageServiceType 
) [inline, inherited]

Definition at line 992 of file Caller.h.

template<typename PT = BinaryPackingTraits>
template<typename Traits , typename DestinationType , typename... P>
void protocol::Caller< PT >::replyp ( const DestinationType &  dest,
const wisp_call_token  token,
P &&...  p 
) [inline, inherited]

Definition at line 1024 of file Caller.h.

template<typename PT = BinaryPackingTraits>
unsigned int protocol::Caller< PT >::request_queue_size ( ) const [inline, inherited]

Definition at line 682 of file Caller.h.

template<typename PT = BinaryPackingTraits>
unsigned int protocol::Caller< PT >::response_map_size ( ) const [inline, inherited]

Definition at line 686 of file Caller.h.

template<typename PT = BinaryPackingTraits>
bool protocol::ContinuationCaller< PT >::resume ( MessageInfo msginfo ) [inline]
template<typename PT = BinaryPackingTraits>
bool protocol::Caller< PT >::returned ( const wisp_call_token  token ) const [inline, inherited]

Definition at line 690 of file Caller.h.

template<typename PT = BinaryPackingTraits>
void protocol::ContinuationCaller< PT >::schedule ( const continuation_ptr continuation ) [inline]

Definition at line 167 of file ContinuationCaller.h.

template<typename PT = BinaryPackingTraits>
template<typename Traits , typename DestinationType >
void protocol::Caller< PT >::send ( const DestinationType &  dest,
const typename Traits::parameter_type &  param,
const Message::Service  service = DefaultMessageServiceType 
) [inline, inherited]

Definition at line 838 of file Caller.h.

References protocol::OneWay, and protocol::OneWayRequest.

template<typename PT = BinaryPackingTraits>
template<typename Traits , typename DestinationType >
void protocol::Caller< PT >::send ( const DestinationType &  dest,
const Message::Service  service = DefaultMessageServiceType 
) [inline, inherited]

Definition at line 964 of file Caller.h.

template<typename PT = BinaryPackingTraits>
template<typename Traits , typename DestinationType , typename... P>
void protocol::Caller< PT >::send ( const Message::Service  service,
const DestinationType &  dest,
P &&...  p 
) [inline, inherited]

Definition at line 972 of file Caller.h.

template<typename PT = BinaryPackingTraits>
template<typename Traits , typename DestinationType , typename... P>
void protocol::Caller< PT >::sendp ( const DestinationType &  dest,
P &&...  p 
) [inline, inherited]

Definition at line 982 of file Caller.h.

template<typename PT = BinaryPackingTraits>
template<typename CallTraits_ , typename Closure , typename DestinationType >
continuation_ptr protocol::ContinuationCaller< PT >::split_call ( Closure &&  continue_,
const DestinationType &  dest,
const typename CallTraits_::parameter_type &  param,
const Message::Service  service = DefaultMessageServiceType 
) [inline]

Definition at line 158 of file ContinuationCaller.h.

template<typename PT = BinaryPackingTraits>
template<typename MessageType >
void protocol::Caller< PT >::unpack ( MessageType &  msg,
MessageInfo info 
) [inline, inherited]

Definition at line 722 of file Caller.h.

template<typename PT = BinaryPackingTraits>
unpacker_type& protocol::Caller< PT >::unpacker ( ) [inline, inherited]

Definition at line 650 of file Caller.h.


Member Data Documentation

template<typename PT = BinaryPackingTraits>
const unsigned int protocol::Caller< PT >::MaxUnfragmentedMessageSize [static, inherited]
Initial value:
     131072U

Definition at line 328 of file Caller.h.


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

Savarese Software Research Corporation
Copyright © 2006-2010 Savarese Software Research Corporation. All rights reserved.