summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/orbsvcs/AV/Protocol_Factory.cpp
blob: c8ef51bcd50438254bb00ec2cb6ed36b4bd89cab (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
// $Id$


#include "Protocol_Factory.h"
#include "ace/Dynamic_Service.h"

// TAO_AV_Flow_Protocol_Factory
TAO_AV_Flow_Protocol_Factory::TAO_AV_Flow_Protocol_Factory (void)
{
}

TAO_AV_Flow_Protocol_Factory::~TAO_AV_Flow_Protocol_Factory (void)
{
}

int
TAO_AV_Flow_Protocol_Factory::init (int /* argc */,
                                    char * /* argv */ [])
{
  return -1;
}

int
TAO_AV_Flow_Protocol_Factory::match_protocol (const char * /* protocol_string */)
{
  return 0;
}

TAO_AV_Protocol_Object*
TAO_AV_Flow_Protocol_Factory::make_protocol_object (TAO_FlowSpec_Entry * /* entry */,
                                                    TAO_Base_StreamEndPoint * /* endpoint */ ,
                                                    TAO_AV_Flow_Handler * /* handler */,
                                                    TAO_AV_Transport * /* transport */)
{
  return 0;
}

const char *
TAO_AV_Flow_Protocol_Factory::control_flow_factory (void)
{
  return 0;
}

//----------------------------------------------------------------------
// TAO_AV_Protocol_Object
//----------------------------------------------------------------------
TAO_AV_Protocol_Object::TAO_AV_Protocol_Object (TAO_AV_Callback *callback,
                                                TAO_AV_Transport *transport)
  :transport_ (transport),
   callback_ (callback)
{
}

int
TAO_AV_Protocol_Object::open (TAO_AV_Callback *callback,
                              TAO_AV_Transport *transport)
{
  this->callback_ = callback;
  this->transport_ = transport;
  return 0;
}

TAO_AV_Protocol_Object::~TAO_AV_Protocol_Object (void)
{
  //no-op
}

int
TAO_AV_Protocol_Object::start (void)
{
  return this->callback_->handle_start ();
}

int
TAO_AV_Protocol_Object::stop (void)
{
  return this->callback_->handle_stop ();
}

int
TAO_AV_Protocol_Object::set_policies (const TAO_AV_PolicyList &policy_list)
{
  this->policy_list_ = policy_list;
  return 0;
}

TAO_AV_PolicyList
TAO_AV_Protocol_Object::get_policies (void)
{
  return this->policy_list_;
}

TAO_AV_Transport*
TAO_AV_Protocol_Object::transport (void)
{
  return this->transport_;
}

// void
// TAO_AV_Protocol_Object::transport (TAO_AV_Transport *transport)
// {
//   this->transport_ = transport;
// }

void
TAO_AV_Protocol_Object::control_object (TAO_AV_Protocol_Object * /* object */)
{
  return;
}

int
TAO_AV_Protocol_Object::handle_control_input (ACE_Message_Block *,
                                              const ACE_Addr &)
{
  if (TAO_debug_level > 0)
    ACE_DEBUG ((LM_DEBUG,"TAO_AV_Protocol_Object::handle_control_input\n"));
  return 0;
}

#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION)
template class ACE_Dynamic_Service<TAO_AV_Transport_Factory>;
template class ACE_Dynamic_Service<TAO_AV_Flow_Protocol_Factory>;
#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)
#pragma instantiate ACE_Dynamic_Service<TAO_AV_Transport_Factory>
#pragma instantiate ACE_Dynamic_Service<TAO_AV_Flow_Protocol_Factory>
#endif