TAO_AV_TCP_Acceptor Class Reference

#include <TCP.h>

Inheritance diagram for TAO_AV_TCP_Acceptor:

Inheritance graph
[legend]
Collaboration diagram for TAO_AV_TCP_Acceptor:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 TAO_AV_TCP_Acceptor (void)
virtual ~TAO_AV_TCP_Acceptor (void)
virtual int open (TAO_Base_StreamEndPoint *endpoint, TAO_AV_Core *av_core, TAO_FlowSpec_Entry *entry, TAO_AV_Flow_Protocol_Factory *factory, TAO_AV_Core::Flow_Component flow_component=TAO_AV_Core::TAO_AV_DATA)
virtual int open_default (TAO_Base_StreamEndPoint *endpoint, TAO_AV_Core *av_core, TAO_FlowSpec_Entry *entry, TAO_AV_Flow_Protocol_Factory *factory, TAO_AV_Core::Flow_Component flow_component=TAO_AV_Core::TAO_AV_DATA)
virtual int close (void)
virtual int make_svc_handler (TAO_AV_TCP_Flow_Handler *&handler)

Protected Attributes

TAO_AV_TCP_Base_Acceptor acceptor_
TAO_FlowSpec_Entryentry_
TAO_Base_StreamEndPointendpoint_
TAO_AV_Flow_Protocol_Factoryflow_protocol_factory_

Detailed Description

Definition at line 145 of file TCP.h.


Constructor & Destructor Documentation

TAO_AV_TCP_Acceptor::TAO_AV_TCP_Acceptor ( void   ) 

Definition at line 476 of file TCP.cpp.

00477 {
00478 }

TAO_AV_TCP_Acceptor::~TAO_AV_TCP_Acceptor ( void   )  [virtual]

Definition at line 480 of file TCP.cpp.

00481 {
00482 }


Member Function Documentation

int TAO_AV_TCP_Acceptor::close ( void   )  [virtual]

Implements TAO_AV_Acceptor.

Definition at line 616 of file TCP.cpp.

00617 {
00618   return 0;
00619 }

int TAO_AV_TCP_Acceptor::make_svc_handler ( TAO_AV_TCP_Flow_Handler *&  handler  )  [virtual]

Definition at line 485 of file TCP.cpp.

References ACE_DEBUG, ACE_NEW_RETURN, endpoint_, entry_, flow_protocol_factory_, TAO_FlowSpec_Entry::handler(), LM_DEBUG, TAO_AV_Flow_Protocol_Factory::make_protocol_object(), TAO_FlowSpec_Entry::protocol_object(), TAO_AV_Flow_Handler::protocol_object(), TAO_Base_StreamEndPoint::set_flow_handler(), TAO_debug_level, and TAO_AV_TCP_Flow_Handler::transport().

Referenced by TAO_AV_TCP_Base_Acceptor::make_svc_handler().

00486 {
00487   if (TAO_debug_level > 0)
00488     ACE_DEBUG ((LM_DEBUG,
00489                 "TAO_AV_TCP_Acceptor::make_svc_handler\n"
00490                 ));
00491 
00492   if (this->endpoint_ != 0)
00493     {
00494       ACE_NEW_RETURN (tcp_handler,
00495                       TAO_AV_TCP_Flow_Handler,
00496                       -1);
00497 
00498       TAO_AV_Protocol_Object *object =
00499         this->flow_protocol_factory_->make_protocol_object (this->entry_,
00500                                                             this->endpoint_,
00501                                                             tcp_handler,
00502                                                             tcp_handler->transport ());
00503 
00504       tcp_handler->protocol_object (object);
00505 
00506       this->endpoint_->set_flow_handler (this->flowname_.c_str (),tcp_handler);
00507       this->entry_->protocol_object (object);
00508       this->entry_->handler (tcp_handler);
00509     }
00510   return 0;
00511 }

int TAO_AV_TCP_Acceptor::open ( TAO_Base_StreamEndPoint endpoint,
TAO_AV_Core av_core,
TAO_FlowSpec_Entry entry,
TAO_AV_Flow_Protocol_Factory factory,
TAO_AV_Core::Flow_Component  flow_component = TAO_AV_Core::TAO_AV_DATA 
) [virtual]

Implements TAO_AV_Acceptor.

Definition at line 514 of file TCP.cpp.

References acceptor_, TAO_AV_TCP_Base_Acceptor::acceptor_open(), ACE_DEBUG, ACE_ERROR_RETURN, TAO_FlowSpec_Entry::address(), TAO_AV_Acceptor::av_core_, endpoint_, entry_, flow_protocol_factory_, TAO_FlowSpec_Entry::flowname(), TAO_AV_Acceptor::flowname_, TAO_AV_Core::get_control_flowname(), inet_addr(), LM_DEBUG, LM_ERROR, TAO_AV_Core::reactor(), TAO_FlowSpec_Entry::set_local_addr(), TAO_AV_Core::TAO_AV_CONTROL, and TAO_debug_level.

00519 {
00520   this->flow_protocol_factory_ = factory;
00521 
00522   if (TAO_debug_level > 0)
00523     ACE_DEBUG ((LM_DEBUG,
00524                 "TAO_AV_TCP_Acceptor::open "));
00525 
00526   this->av_core_ = av_core;
00527   this->endpoint_ = endpoint;
00528   this->entry_ = entry;
00529   if (flow_comp == TAO_AV_Core::TAO_AV_CONTROL)
00530     this->flowname_ = TAO_AV_Core::get_control_flowname (entry->flowname ());
00531   else
00532   this->flowname_ = entry->flowname ();
00533   ACE_Addr *address = entry->address ();
00534 
00535   ACE_INET_Addr *inet_addr = (ACE_INET_Addr *) address;
00536 
00537   inet_addr->set (inet_addr->get_port_number (),
00538                   inet_addr->get_host_name ());
00539 
00540   char buf[BUFSIZ];
00541   inet_addr->addr_to_string (buf,
00542                              BUFSIZ);
00543 
00544   if (TAO_debug_level > 0)
00545     ACE_DEBUG ((LM_DEBUG,
00546                 "TAO_AV_TCP_Acceptor::open: %s",
00547                 buf
00548                 ));
00549 
00550   int result = this->acceptor_.acceptor_open (this,
00551                                      av_core->reactor (),
00552                                      *inet_addr,
00553                                      entry);
00554 
00555   if (result < 0)
00556     ACE_ERROR_RETURN ((LM_ERROR,
00557                        "TAO_AV_TCP_Acceptor::open failed"),
00558                       -1);
00559 
00560   entry->set_local_addr (address);
00561   return 0;
00562 }

int TAO_AV_TCP_Acceptor::open_default ( TAO_Base_StreamEndPoint endpoint,
TAO_AV_Core av_core,
TAO_FlowSpec_Entry entry,
TAO_AV_Flow_Protocol_Factory factory,
TAO_AV_Core::Flow_Component  flow_component = TAO_AV_Core::TAO_AV_DATA 
) [virtual]

Implements TAO_AV_Acceptor.

Definition at line 565 of file TCP.cpp.

References ACE_Acceptor< SVC_HANDLER, >::acceptor(), acceptor_, TAO_AV_TCP_Base_Acceptor::acceptor_open(), ACE_DEBUG, ACE_ERROR_RETURN, ACE_NEW_RETURN, ACE_INET_Addr::addr_to_string(), TAO_AV_Acceptor::av_core_, endpoint_, entry_, flow_protocol_factory_, TAO_FlowSpec_Entry::flowname(), TAO_AV_Acceptor::flowname_, TAO_AV_Core::get_control_flowname(), ACE_INET_Addr::get_host_name(), ACE_INET_Addr::get_port_number(), LM_DEBUG, LM_ERROR, TAO_AV_Core::reactor(), ACE_INET_Addr::set(), TAO_FlowSpec_Entry::set_local_addr(), TAO_AV_Core::TAO_AV_CONTROL, and TAO_debug_level.

00570 {
00571   this->flow_protocol_factory_ = factory;
00572   this->av_core_ = av_core;
00573   this->endpoint_ = endpoint;
00574   this->entry_ = entry;
00575   if (flow_comp == TAO_AV_Core::TAO_AV_CONTROL)
00576     this->flowname_ = TAO_AV_Core::get_control_flowname (entry->flowname());
00577   else
00578   this->flowname_ = entry->flowname ();
00579 
00580   ACE_INET_Addr *address = 0;
00581   ACE_NEW_RETURN (address,
00582                   ACE_INET_Addr ("0"),
00583                   -1);
00584 
00585   int result = this->acceptor_.acceptor_open (this,
00586                                      av_core->reactor (),
00587                                      *address,
00588                                      entry);
00589 
00590 
00591   if (result < 0)
00592     ACE_ERROR_RETURN ((LM_ERROR,
00593                        "TAO_AV_TCP_Acceptor::open failed"),
00594                       -1);
00595 
00596   this->acceptor_.acceptor ().get_local_addr (*address);
00597 
00598   address->set (address->get_port_number (),
00599                 address->get_host_name ());
00600 
00601   char buf[BUFSIZ];
00602   address->addr_to_string (buf,BUFSIZ);
00603 
00604   if (TAO_debug_level > 0)
00605     ACE_DEBUG ((LM_DEBUG,
00606                 "TAO_AV_TCP_Acceptor::open_default: %s\n",
00607                 buf));
00608 
00609   entry->set_local_addr (address);
00610 
00611   return 0;
00612 }


Member Data Documentation

TAO_AV_TCP_Base_Acceptor TAO_AV_TCP_Acceptor::acceptor_ [protected]

Definition at line 168 of file TCP.h.

Referenced by open(), and open_default().

TAO_Base_StreamEndPoint* TAO_AV_TCP_Acceptor::endpoint_ [protected]

Definition at line 170 of file TCP.h.

Referenced by make_svc_handler(), open(), and open_default().

TAO_FlowSpec_Entry* TAO_AV_TCP_Acceptor::entry_ [protected]

Definition at line 169 of file TCP.h.

Referenced by make_svc_handler(), open(), and open_default().

TAO_AV_Flow_Protocol_Factory* TAO_AV_TCP_Acceptor::flow_protocol_factory_ [protected]

Definition at line 171 of file TCP.h.

Referenced by make_svc_handler(), open(), and open_default().


The documentation for this class was generated from the following files:
Generated on Tue Feb 2 17:48:04 2010 for TAO_AV by  doxygen 1.4.7