summaryrefslogtreecommitdiff
path: root/TAO/tao
diff options
context:
space:
mode:
authorschmidt <douglascraigschmidt@users.noreply.github.com>1999-03-06 18:57:22 +0000
committerschmidt <douglascraigschmidt@users.noreply.github.com>1999-03-06 18:57:22 +0000
commit6f29619cd98ee94a45aba98903ba42bb7ce0989b (patch)
tree9be1b894dc0fbdedff7511f2adef593b9bf066a6 /TAO/tao
parent2c7b68ad2c3780dc93f81b8495942ad91bc1ed06 (diff)
downloadATCD-6f29619cd98ee94a45aba98903ba42bb7ce0989b.tar.gz
.
Diffstat (limited to 'TAO/tao')
-rw-r--r--TAO/tao/IIOP_Acceptor.h4
-rw-r--r--TAO/tao/IIOP_Connector.h4
-rw-r--r--TAO/tao/IIOP_Profile.h77
-rw-r--r--TAO/tao/IIOP_Profile.i3
-rw-r--r--TAO/tao/IIOP_Transport.cpp44
-rw-r--r--TAO/tao/IIOP_Transport.h62
-rw-r--r--TAO/tao/MProfile.cpp52
-rw-r--r--TAO/tao/MProfile.h24
-rw-r--r--TAO/tao/MProfile.i2
-rw-r--r--TAO/tao/Pluggable.cpp15
-rw-r--r--TAO/tao/Pluggable.h115
11 files changed, 213 insertions, 189 deletions
diff --git a/TAO/tao/IIOP_Acceptor.h b/TAO/tao/IIOP_Acceptor.h
index 384e54faf5c..3ec94800e72 100644
--- a/TAO/tao/IIOP_Acceptor.h
+++ b/TAO/tao/IIOP_Acceptor.h
@@ -35,10 +35,10 @@ typedef ACE_Strategy_Acceptor<TAO_Server_Connection_Handler,
class TAO_Export TAO_IIOP_Acceptor : public TAO_Acceptor
{
// = TITLE
- // TAO_IIOP_Acceptor
+ // The IIOP-specific bridge class for the concrete acceptor.
//
// = DESCRIPTION
- // The IIOP specific bridge class for the concrete acceptor.
+ // @@ Fred, please fill in here.
public:
// TAO_IIOP_Acceptor (ACE_INET_Addr &addr);
// Create Acceptor object using addr.
diff --git a/TAO/tao/IIOP_Connector.h b/TAO/tao/IIOP_Connector.h
index ae1ce23ebb1..603290f585c 100644
--- a/TAO/tao/IIOP_Connector.h
+++ b/TAO/tao/IIOP_Connector.h
@@ -31,10 +31,10 @@ typedef ACE_Strategy_Connector<TAO_Client_Connection_Handler, TAO_SOCK_CONNECTOR
class TAO_Export TAO_IIOP_Connector : public TAO_Connector
{
// = TITLE
- // TAO_IIOP_Connector
+ // IIOP-specific Connector bridge for pluggable protocols.
//
// = DESCRIPTION
- // IIOP Specific Connector bridge for pluggable protocols.
+ // @@ Fred, please fill in here.
public:
// = Initialization and termination methods.
TAO_IIOP_Connector (void);
diff --git a/TAO/tao/IIOP_Profile.h b/TAO/tao/IIOP_Profile.h
index 1f61c8aaee5..dfcac43ea50 100644
--- a/TAO/tao/IIOP_Profile.h
+++ b/TAO/tao/IIOP_Profile.h
@@ -31,14 +31,14 @@ class TAO_Client_Connection_Handler;
class TAO_Export TAO_IIOP_Profile : public TAO_Profile
{
// = TITLE
- // TAO_IIOP_Profile
+ // This class defines the protocol specific attributes required
+ // for locating ORBs over a TCP/IP network.
//
// = DESCRIPTION
- // This class defines the protocol specific attributes required
- // for locating ORs over a TCP/IP network. In other words,
- // defines the IIOP profile as specified in the CORBA spec.
-
+ // This class defines the IIOP profile as specified in the CORBA
+ // specification.
public:
+ // = Currently, TAO supports IIOP 1.0.
enum
{
DEF_IIOP_MAJOR = 1,
@@ -50,9 +50,9 @@ public:
TAO_IIOP_Profile (const ACE_INET_Addr &addr,
const char *object_key);
- // Profile constructor, the port and host fileds are derived
- // from addr. This is not an efficient creator since a call
- // to get_host_XX is required.
+ // Profile constructor, the port and host fileds are derived from
+ // addr. This is not an efficient creator since a call to
+ // get_host_XX is required.
TAO_IIOP_Profile (const ACE_INET_Addr &addr,
const TAO_ObjectKey &object_key);
@@ -106,27 +106,27 @@ public:
// Profile constructor, default.
~TAO_IIOP_Profile (void);
- // Destructor is to be called only through _decr_refcnt()
+ // Destructor is to be called only through <_decr_refcnt>.
CORBA::ULong tag (void);
- // The tag, each concrete class will have a specific tag value.
- // for example we are TAO_IOP_TAG_INTERNET_IOP
+ // The tag, each concrete class will have a specific tag value. for
+ // example we are TAO_IOP_TAG_INTERNET_IOP.
TAO_Transport* transport (void);
- // return a pointer to the underlying transport object.
- // this will provide access to lower layer protocols
- // and processing.
+ // Return a pointer to the underlying transport object. this will
+ // provide access to lower layer protocols and processing.
int parse (TAO_InputCDR& cdr,
CORBA::Boolean& continue_decoding,
CORBA::Environment &env);
- // initialize this object using the given CDR octet string
+ // Initialize this object using the given CDR octet string.
- int parse_string (const char *string, CORBA::Environment &env);
- // initialize this object using the given input string
+ int parse_string (const char *string,
+ CORBA::Environment &env);
+ // Initialize this object using the given input string.
CORBA::String to_string (CORBA::Environment &env);
- // return a string representation for this profile.
+ // Return a string representation for this profile.
// client must deallocate memory.
const TAO_opaque& body (void) const;
@@ -134,7 +134,7 @@ public:
CORBA::TypeCode::traverse_status encode (TAO_OutputCDR *&stream,
CORBA::Environment &env);
- // encode this profile in a stream, i.e. marshal it.
+ // Encode this profile in a stream, i.e. marshal it.
const TAO_ObjectKey &object_key (void) const;
// @@ deprecated, return a reference to the Object Key.
@@ -143,23 +143,23 @@ public:
// @@ deprecated. set the Object Key.
TAO_ObjectKey *_key (CORBA::Environment &env);
- // return a pointer to the Object Key.
+ // Return a pointer to the Object Key.
virtual void forward_to (TAO_MProfile *mprofiles);
- // client object will assume ownership for this object!!
+ // Client object will assume ownership for this object!!
virtual TAO_MProfile *forward_to (void);
// copy of MProfile, user must delete.
CORBA::Boolean is_equivalent (TAO_Profile *other_profile,
CORBA::Environment &env);
- // return true if this profile is equivalent to other_profile.
- // Two profiles are equivalent iff their key, port, host, object_key
- // and version are the same.
+ // Return true if this profile is equivalent to other_profile. Two
+ // profiles are equivalent iff their key, port, host, object_key and
+ // version are the same.
CORBA::ULong hash (CORBA::ULong max,
CORBA::Environment &env);
- // return a has value for this object.
+ // Return a hash value for this object.
char *addr_to_string (void);
// Return a string representation for the address.
@@ -171,21 +171,21 @@ public:
// return a reference to the object_addr.
const char *host (void);
- // return a pointer to the host string.
- // This object maintains ownership of this string.
+ // Return a pointer to the host string. This object maintains
+ // ownership of this string.
const char *host (const char *h);
- // Copy the string h into host and return the resulting pointer.
+ // Copy the string h into host and return the resulting pointer.
// This object maintains ownership of this string.
CORBA::UShort port (void);
- // return the port number.
+ // Return the port number.
CORBA::UShort port (CORBA::UShort p);
- // set the port number
+ // Set the port number.
const TAO_IOP_Version *version (void);
- // return a pointer to this profile's version. This object
+ // Return a pointer to this profile's version. This object
// maintains ownership.
const TAO_IOP_Version *version (TAO_IOP_Version *v);
@@ -208,8 +208,8 @@ public:
// Increase the reference count by one on this object.
virtual CORBA::ULong _decr_refcnt (void);
- // Decrement the object's reference count. When this count
- // goes to 0 this object will be deleted.
+ // Decrement the object's reference count. When this count goes to
+ // 0 this object will be deleted.
#if defined (TAO_USES_FLICK)
char *&_host_ (void);
@@ -220,10 +220,10 @@ public:
// Return a reference to the underlying <port_> to allow Flick to
// manipulate it directly.
- TAO_ObjectKey& _object_key_ (void);
+ TAO_ObjectKey &_object_key_ (void);
// Return a non-const reference of object key.
- int reset_object_addr ();
+ int reset_object_addr (void);
// Reset <object_addr_> after setting <host_> and <port_>.
#endif /* TAO_USES_FLICK */
@@ -233,8 +233,8 @@ private:
virtual TAO_MProfile *forward_to_i (void);
// reference to the TAO_MProfile which the current profile was
- // forwarded to. This object keeps ownership
- // NOT THREAD SAFE
+ // forwarded to. This object keeps ownership. Note that this
+ // method is NOT thread-safe, so it must be called with locks held.
void create_body (void);
// Does the work for <add_profile>.
@@ -264,7 +264,8 @@ private:
// invocations, etc.
TAO_Client_Connection_Handler *hint_;
- // pointer to a connection handler which we successfully used already.
+ // Pointer to a connection handler which we successfully used
+ // already.
ACE_SYNCH_MUTEX refcount_lock_;
// Mutex to protect reference count.
diff --git a/TAO/tao/IIOP_Profile.i b/TAO/tao/IIOP_Profile.i
index 303dc36992a..3d8ccb15635 100644
--- a/TAO/tao/IIOP_Profile.i
+++ b/TAO/tao/IIOP_Profile.i
@@ -108,6 +108,7 @@ TAO_IIOP_Profile::_object_key_ (void)
ACE_INLINE int
TAO_IIOP_Profile::reset_object_addr (void)
{
- return this->object_addr_.set (this->port_, this->host_);
+ return this->object_addr_.set (this->port_,
+ this->host_);
}
#endif /* TAO_USES_FLICK */
diff --git a/TAO/tao/IIOP_Transport.cpp b/TAO/tao/IIOP_Transport.cpp
index 36967b59762..0ecee6ea50f 100644
--- a/TAO/tao/IIOP_Transport.cpp
+++ b/TAO/tao/IIOP_Transport.cpp
@@ -118,6 +118,8 @@ TAO_IIOP_Client_Transport::send_request (TAO_ORB_Core *orb_core,
ssize_t
TAO_IIOP_Transport::send (const ACE_Message_Block *mblk, ACE_Time_Value *s)
{
+ ACE_UNUSED_ARG (s);
+
// For the most part this was copied from GIOP::send_request and
// friends.
@@ -126,9 +128,8 @@ TAO_IIOP_Transport::send (const ACE_Message_Block *mblk, ACE_Time_Value *s)
const int TAO_WRITEV_MAX = 16;
iovec iov[TAO_WRITEV_MAX];
int iovcnt = 0;
- ssize_t n=0;
+ ssize_t n = 0;
ssize_t nbytes = 0;
- ACE_UNUSED_ARG (s);
for (const ACE_Message_Block *i = mblk;
i != 0;
@@ -149,9 +150,8 @@ TAO_IIOP_Transport::send (const ACE_Message_Block *mblk, ACE_Time_Value *s)
// we should set TAO_WRITEV_MAX to that limit.
if (iovcnt == TAO_WRITEV_MAX)
{
-
- n = this->handler_->peer ().sendv_n ((const iovec *) iov, iovcnt);
-
+ n = this->handler_->peer ().sendv_n ((const iovec *) iov,
+ iovcnt);
if (n < 1)
return n;
@@ -160,11 +160,11 @@ TAO_IIOP_Transport::send (const ACE_Message_Block *mblk, ACE_Time_Value *s)
}
}
- // check for remaining buffers to be sent!
+ // Check for remaining buffers to be sent!
if (iovcnt != 0)
{
- n = this->handler_->peer ().sendv_n ((const iovec *) iov, iovcnt);
-
+ n = this->handler_->peer ().sendv_n ((const iovec *) iov,
+ iovcnt);
if (n < 0 )
return 0;
@@ -175,35 +175,49 @@ TAO_IIOP_Transport::send (const ACE_Message_Block *mblk, ACE_Time_Value *s)
}
ssize_t
-TAO_IIOP_Transport::send (const u_char *buf, size_t len, ACE_Time_Value *s)
+TAO_IIOP_Transport::send (const u_char *buf,
+ size_t len,
+ ACE_Time_Value *s)
{
ACE_UNUSED_ARG (s);
return this->handler_->peer ().send_n (buf, len);
}
ssize_t
-TAO_IIOP_Transport::send (const iovec *iov, int iovcnt, ACE_Time_Value *s)
+TAO_IIOP_Transport::send (const iovec *iov,
+ int iovcnt,
+ ACE_Time_Value *s)
{
ACE_UNUSED_ARG (s);
- return this->handler_->peer ().sendv_n ((const iovec *) iov, iovcnt);
+ return this->handler_->peer ().sendv_n ((const iovec *) iov,
+ iovcnt);
}
ssize_t
-TAO_IIOP_Transport::recv (char *buf, size_t len, ACE_Time_Value *s)
+TAO_IIOP_Transport::recv (char *buf,
+ size_t len,
+ ACE_Time_Value *s)
{
ACE_UNUSED_ARG (s);
return this->handler_->peer ().recv_n (buf, len);
}
ssize_t
-TAO_IIOP_Transport::recv (char *buf, size_t len, int flags, ACE_Time_Value *s)
+TAO_IIOP_Transport::recv (char *buf,
+ size_t len,
+ int flags,
+ ACE_Time_Value *s)
{
ACE_UNUSED_ARG (s);
- return this->handler_->peer ().recv_n (buf, len, flags);
+ return this->handler_->peer ().recv_n (buf,
+ len,
+ flags);
}
ssize_t
-TAO_IIOP_Transport::recv (iovec *iov, int iovcnt, ACE_Time_Value *s)
+TAO_IIOP_Transport::recv (iovec *iov,
+ int iovcnt,
+ ACE_Time_Value *s)
{
ACE_UNUSED_ARG (s);
return handler_->peer ().recvv_n (iov, iovcnt);
diff --git a/TAO/tao/IIOP_Transport.h b/TAO/tao/IIOP_Transport.h
index 71981f849e2..5168c633cc8 100644
--- a/TAO/tao/IIOP_Transport.h
+++ b/TAO/tao/IIOP_Transport.h
@@ -31,12 +31,11 @@ class TAO_ORB_Core;
class TAO_Export TAO_IIOP_Transport : public TAO_Transport
{
// = TITLE
- // TAO_IIOP_Transport
- //
- // = DESCRIPTION
// This class acts as a bridge class to the transport specific
// connection handler (handler_).
//
+ // = DESCRIPTION
+ // @@ Fred, please fill in here.
public:
TAO_IIOP_Transport (TAO_IIOP_Handler_Base *handler);
// Base object's creator method.
@@ -48,10 +47,10 @@ public:
// Returns the specific IOP instance, in this case IIOP.
void close_connection (void);
- // call the corresponding connection handlers handle_close method.
+ // Call the corresponding connection handlers handle_close method.
void resume_connection (ACE_Reactor *reactor);
- // calles the reactors resume_handler on behalf of the corresponding
+ // Calls the reactors resume_handler on behalf of the corresponding
// connection handler.
int idle (void);
@@ -61,7 +60,7 @@ public:
// Return a reference to the corresponding connection handler.
int is_nil (TAO_Transport *obj);
- // returns 0 if the obj is 0.
+ // Returns 0 if the obj is 0, else 1.
TAO_Transport *_nil (void);
// Return a NULL pointer of type TAO_Transport *.
@@ -69,24 +68,38 @@ public:
ACE_HANDLE handle (void);
// Return the underlying connection handle.
- ssize_t send (const ACE_Message_Block *mblk, ACE_Time_Value *s = 0);
+ ssize_t send (const ACE_Message_Block *mblk,
+ ACE_Time_Value *s = 0);
// Write the contents of the Message_Block to the connection.
- ssize_t send (const u_char *buf, size_t len, ACE_Time_Value *s = 0);
+ ssize_t send (const u_char *buf,
+ size_t len,
+ ACE_Time_Value *s = 0);
// Write the contents of the buffer of length len to the connection.
- ssize_t send (const iovec *iov, int iovcnt, ACE_Time_Value *s = 0);
+ ssize_t send (const iovec *iov,
+ int iovcnt,
+ ACE_Time_Value *s = 0);
// Write the contents of iovcnt iovec's to the connection.
- ssize_t recv (char *buf, size_t len, ACE_Time_Value *s = 0);
+ ssize_t recv (char *buf,
+ size_t len,
+ ACE_Time_Value *s = 0);
// Read len bytes from into buf.
- ssize_t recv (char *buf, size_t len, int flags, ACE_Time_Value *s = 0);
+ ssize_t recv (char *buf,
+ size_t len,
+ int flags,
+ ACE_Time_Value *s = 0);
// Read len bytes from into buf using flags.
- ssize_t recv (iovec *iov, int iovcnt, ACE_Time_Value *s = 0);
+ ssize_t recv (iovec *iov,
+ int iovcnt,
+ ACE_Time_Value *s = 0);
// Read received data into the iovec buffers.
+ // @@ Fred, why is this method defined inline? It should be defined
+ // in the *.cpp file!
virtual int send_request (TAO_ORB_Core * /* orb_core */,
TAO_OutputCDR & /* stream */,
int /* twoway */) { return -1; };
@@ -99,20 +112,19 @@ protected:
CORBA::ULong tag_;
// IIOP tag.
-
};
class TAO_Export TAO_IIOP_Client_Transport : public TAO_IIOP_Transport
{
// = TITLE
- // TAO_IIOP_Client_Transport
+ // The Transport class used for Client side communication with a
+ // server.
+ //
// = DESCRIPTION
- // The Transport class used for Client side communication
- // with a server.
-
+ // @@ Fred, please fill in here.
public:
TAO_IIOP_Client_Transport (TAO_Client_Connection_Handler *handler);
- // constructor. Note, TAO_IIOP_Handler_Base is the base class for
+ // Constructor. Note, TAO_IIOP_Handler_Base is the base class for
// both TAO_Client_Connection_Handler and
// TAO_Server_Connection_Handler.
@@ -125,9 +137,10 @@ public:
int send_request (TAO_ORB_Core *orb_core,
TAO_OutputCDR &stream,
int twoway);
- // This is essentially a bridge method for the connection handlers
- // send_request method. The connection handler is responsible for
- // concurrency strategies, typically the leader follower model.
+ // This is a bridge method for the connection handlers
+ // <send_request> method. The connection handler is responsible for
+ // concurrency strategies, typically using the leader-follower
+ // pattern.
private:
TAO_Client_Connection_Handler *client_handler_;
@@ -137,11 +150,11 @@ private:
class TAO_Export TAO_IIOP_Server_Transport : public TAO_IIOP_Transport
{
// = TITLE
- // TAO_IIOP_Server_Transport
+ // The Transport class used for server communication with a
+ // connected client.
//
// = DESCRIPTION
- // The Transport class used for server communication with a connected
- // client.
+ // @@ Fred, please fill in here.
public:
TAO_IIOP_Server_Transport (TAO_Server_Connection_Handler *handler);
@@ -154,6 +167,7 @@ public:
// Return a pointer to the underlying connection handler.
// virtual int send_response (TAO_OutputCDR &response);
+ // @@ Fred, should this method be removed?
private:
TAO_Server_Connection_Handler *server_handler_;
diff --git a/TAO/tao/MProfile.cpp b/TAO/tao/MProfile.cpp
index 69c7afd3713..963f4becb77 100644
--- a/TAO/tao/MProfile.cpp
+++ b/TAO/tao/MProfile.cpp
@@ -15,8 +15,11 @@ TAO_MProfile::set (CORBA::ULong sz)
{
if (sz == 0)
{
- // We do, so release all of our profiles.
- for (TAO_PHandle h = 0; h < this->size_; h++ )
+ // Release all of our profiles.
+
+ for (TAO_PHandle h = 0;
+ h < this->size_;
+ h++)
if (this->pfiles_[h])
{
this->pfiles_[h]->_decr_refcnt ();
@@ -26,13 +29,13 @@ TAO_MProfile::set (CORBA::ULong sz)
if (this->size_)
delete [] this->pfiles_;
- if (forward_from_)
- delete forward_from_;
+ if (forward_from_)
+ delete forward_from_;
- pfiles_ = 0;
- current_ = 0;
- size_ = 0;
- last_= 0;
+ pfiles_ = 0;
+ current_ = 0;
+ size_ = 0;
+ last_= 0;
this->pfiles_ = 0;
this->current_ = 0;
@@ -43,13 +46,15 @@ TAO_MProfile::set (CORBA::ULong sz)
}
// See if we already have an existing profile list or if we need to
- // get ridof what we have.
- // @@ Fred, please be consistent with your use of this-> as a prefix
- // for data members.
+ // get ridof what we have. @@ Fred, please be consistent with your
+ // use of this-> as a prefix for data members.
if (size_)
{
- // We do, so release all of our profiles.
- for (TAO_PHandle h = 0; h < size_; h++)
+ // Release all of our profiles.
+
+ for (TAO_PHandle h = 0;
+ h < size_;
+ h++)
if (this->pfiles_[h])
{
this->pfiles_[h]->_decr_refcnt ();
@@ -108,19 +113,18 @@ TAO_MProfile::set (TAO_MProfile *mprofile)
// this->forward_from_ = 0;
// Now reference all profiles.
- for (TAO_PHandle h = 0 ; h < this->size_ ; h++ )
- {
- if (mprofile->pfiles_[h])
- {
- this->pfiles_[h] = mprofile->pfiles_[h];
- this->pfiles_[h]->_incr_refcnt ();
- }
- } // for (TAO_PHandle ...)
+
+ for (TAO_PHandle h = 0;
+ h < this->size_;
+ h++)
+ if (mprofile->pfiles_[h])
+ {
+ this->pfiles_[h] = mprofile->pfiles_[h];
+ this->pfiles_[h]->_incr_refcnt ();
+ }
if (mprofile->forward_from_)
- {
- this->forward_from_ = mprofile->forward_from_;
- }
+ this->forward_from_ = mprofile->forward_from_;
return 1;
}
diff --git a/TAO/tao/MProfile.h b/TAO/tao/MProfile.h
index 64e3385dd07..f96bced1cfa 100644
--- a/TAO/tao/MProfile.h
+++ b/TAO/tao/MProfile.h
@@ -98,11 +98,8 @@ public:
// this object assumes ownership of this profile!!
void forward_from (TAO_MProfile *mprofiles);
- // @@ Fred, can you please change the name of this method to
- // "forwarded_mprofile()"? In general, it's better to use complete
- // names.
- // Set a pointer to the MProfile whose 'current' TAO_Profile was forwarded
- // This object is the set of forwarding profiles.
+ // Set a pointer to the MProfile whose 'current' TAO_Profile was
+ // forwarded This object is the set of forwarding profiles.
TAO_MProfile *forward_from (void);
// Returns a pointer to the profile which was forwarded.
@@ -130,25 +127,24 @@ protected:
private:
TAO_MProfile *forward_from_;
- // Used for chaning references when the current profile is forwarded.
- // Note, this will only be valid for an MProfile which contains a list of
- // forward_profiles for some initial or base profile.
- // This is a backward reference to the profile list which received the
- // relocate message. The actual profile what was forwarded will be
- // forward_from_->get_current_profile ()
+ // Used for chaning references when the current profile is
+ // forwarded. Note, this will only be valid for an MProfile which
+ // contains a list of forward_profiles for some initial or base
+ // profile. This is a backward reference to the profile list which
+ // received the relocate message. The actual profile what was
+ // forwarded will be forward_from_->get_current_profile ()
TAO_Profile_ptr *pfiles_;
// Actual list of profiles.
TAO_PHandle current_;
- // Points to the next prfoile to be used.
- // 0 ... size_
+ // Points to the next profile to be used. 0 ... size_
TAO_PHandle size_;
// Max size of array
TAO_PHandle last_;
- // Index plus 1 of last valid entry! May be < size_
+ // Index plus 1 of last valid entry! May be < size_.
};
#if defined (__ACE_INLINE__)
diff --git a/TAO/tao/MProfile.i b/TAO/tao/MProfile.i
index 3ed402c0131..62c0518a1fc 100644
--- a/TAO/tao/MProfile.i
+++ b/TAO/tao/MProfile.i
@@ -39,7 +39,7 @@ TAO_MProfile::~TAO_MProfile (void)
}
-// cyclic get next. It will simply cycle through the complete list.
+// Cyclic get next. It will simply cycle through the complete list.
ACE_INLINE TAO_Profile *
TAO_MProfile::get_cnext (void)
diff --git a/TAO/tao/Pluggable.cpp b/TAO/tao/Pluggable.cpp
index 591d1aa2d24..a82e4966e8c 100644
--- a/TAO/tao/Pluggable.cpp
+++ b/TAO/tao/Pluggable.cpp
@@ -1,18 +1,6 @@
// This may look like C, but it's really -*- C++ -*-
// $Id$
-// ============================================================================
-//
-// = LIBRARY
-//
-// = FILENAME
-//
-// = DESCRIPTION
-//
-// = AUTHOR
-//
-// ============================================================================
-
#include "tao/Pluggable.h"
#include "tao/Stub.h"
#include "tao/Environment.h"
@@ -73,7 +61,8 @@ TAO_Connector_Registry::close_all()
// since there is only one!
if (iiop_connector_)
return this->iiop_connector_->close ();
- return 0;
+ else
+ return 0;
}
int
diff --git a/TAO/tao/Pluggable.h b/TAO/tao/Pluggable.h
index 684f2430c58..0b23881c961 100644
--- a/TAO/tao/Pluggable.h
+++ b/TAO/tao/Pluggable.h
@@ -23,6 +23,7 @@
#include "tao/corbafwd.h"
#include "tao/Typecode.h"
+// Forward declarations.
class ACE_Addr;
class ACE_Reactor;
class TAO_ORB_Core;
@@ -46,11 +47,12 @@ public:
// The tag, each concrete class will have a specific tag value.
virtual void close_connection() = 0;
- // call the corresponding connection handlers handle_close method.
+ // Call the corresponding connection handler's <handle_close>
+ // method.
virtual void resume_connection (ACE_Reactor *reactor) = 0;
- // calles the reactors resume_handler on behalf of the corresponding
- // connection handler.
+ // Calls the Reactor's <resume_handler> on behalf of the
+ // corresponding connection handler.
virtual int idle (void) = 0;
// Idles the corresponding connection handler.
@@ -64,25 +66,36 @@ public:
virtual ACE_HANDLE handle (void) = 0;
// This is primarily used for error and debugging messages!
- virtual ssize_t send (const ACE_Message_Block *mblk, ACE_Time_Value *s = 0) = 0;
+ virtual ssize_t send (const ACE_Message_Block *mblk,
+ ACE_Time_Value *s = 0) = 0;
// Write the contents of the Message_Block to the connection.
- virtual ssize_t send (const u_char *buf, size_t len, ACE_Time_Value *s = 0) = 0;
+ virtual ssize_t send (const u_char *buf,
+ size_t len,
+ ACE_Time_Value *s = 0) = 0;
// Write the contents of the buffer of length len to the connection.
- virtual ssize_t send (const iovec *iov, int iovcnt, ACE_Time_Value *s = 0) = 0;
+ virtual ssize_t send (const iovec *iov,
+ int iovcnt,
+ ACE_Time_Value *s = 0) = 0;
// Write the contents of iovcnt iovec's to the connection.
- virtual ssize_t recv (char *buf, size_t len, ACE_Time_Value *s = 0) = 0;
+ virtual ssize_t recv (char *buf,
+ size_t len,
+ ACE_Time_Value *s = 0) = 0;
// Read len bytes from into buf.
- virtual ssize_t recv (char *buf, size_t len, int flags, ACE_Time_Value *s = 0) = 0;
+ virtual ssize_t recv (char *buf,
+ size_t len,
+ int flags,
+ ACE_Time_Value *s = 0) = 0;
// Read len bytes from into buf using flags.
- virtual ssize_t recv (iovec *iov, int iovcnt, ACE_Time_Value *s = 0) = 0;
+ virtual ssize_t recv (iovec *iov,
+ int iovcnt,
+ ACE_Time_Value *s = 0) = 0;
// Read received data into the iovec buffers.
-
virtual int send_request (TAO_ORB_Core *orb_core,
TAO_OutputCDR &stream,
int twoway) = 0;
@@ -96,11 +109,7 @@ public:
class TAO_Export TAO_IOP_Version
{
// = TITLE
- // Version
- //
- // = DESCRIPTION
// Major and Minor version number of the Inter-ORB Protocol.
- //
public:
CORBA::Octet major;
// Major version number
@@ -129,37 +138,35 @@ public:
int operator== (const TAO_IOP_Version *&src);
// Equality operator
-
};
class TAO_Export TAO_Profile
{
// = TITLE
- // TAO_Profile
- //
- // = DESCRIPTION
// Generic Profile definitions.
+ //
+ // = DESCRIPTION
+ // @@ Fred, please fill in here.
public:
virtual CORBA::ULong tag (void) = 0;
// The tag, each concrete class will have a specific tag value.
virtual TAO_Transport *transport (void) = 0;
- // return a pointer to the underlying transport object.
- // this will provide access to lower layer protocols
- // and processing.
+ // Return a pointer to the underlying transport object. this will
+ // provide access to lower layer protocols and processing.
virtual int parse (TAO_InputCDR& cdr,
CORBA::Boolean& continue_decoding,
CORBA::Environment &env) = 0;
- // initialize this object using the given CDR octet string
+ // Initialize this object using the given CDR octet string.
virtual int parse_string (const char *string,
CORBA::Environment &env) = 0;
- // initialize this object using the given input string
+ // Initialize this object using the given input string.
virtual CORBA::String to_string (CORBA::Environment &env) = 0;
- // return a string representation for this profile.
- // client must deallocate memory.
+ // Return a string representation for this profile. client must
+ // deallocate memory.
virtual const TAO_opaque &body (void) const = 0;
// The body, an octet sequence that represent the marshaled
@@ -167,7 +174,7 @@ public:
virtual CORBA::TypeCode::traverse_status encode (TAO_OutputCDR *&stream,
CORBA::Environment &env) = 0;
- // encode this profile in a stream, i.e. marshal it.
+ // Encode this profile in a stream, i.e. marshal it.
virtual const TAO_ObjectKey &object_key (void) const = 0;
// @@ deprecated. return a reference to the Object Key.
@@ -187,25 +194,25 @@ public:
virtual CORBA::Boolean is_equivalent (TAO_Profile* other_profile,
CORBA::Environment &env) = 0;
- // return true if this profile is equivalent to other_profile.
- // Two profiles are equivalent iff their key, port, host, object_key
- // and version are the same.
+ // Return true if this profile is equivalent to other_profile. Two
+ // profiles are equivalent iff their key, port, host, object_key and
+ // version are the same.
virtual CORBA::ULong hash (CORBA::ULong max,
CORBA::Environment &env) = 0;
- // return a has value for this object.
+ // Return a hash value for this object.
virtual ASYS_TCHAR *addr_to_string(void) = 0;
// Return a string representation for the address.
virtual ACE_Addr &object_addr (const ACE_Addr *addr) = 0;
- // set the object_addr for the profile.
+ // Set the object_addr for the profile.
virtual ACE_Addr &object_addr (void) = 0;
- // return a reference to the object_addr.
+ // Return a reference to the object_addr.
const TAO_IOP_Version *version (void);
- // return a pointer to this profile's version. This object
+ // Return a pointer to this profile's version. This object
// maintains ownership.
const TAO_IOP_Version *version (TAO_IOP_Version *v);
@@ -213,8 +220,8 @@ public:
// maintains ownership.
virtual void reset_hint (void) = 0;
- // this methoid is used with a connection has been reset requiring the
- // hint to be cleaned up and reset to NULL.
+ // This method is used with a connection has been reset requiring
+ // the hint to be cleaned up and reset to NULL.
virtual TAO_Profile *_nil (void) = 0;
// Return a null object pointer.
@@ -223,8 +230,8 @@ public:
// Increase the reference count by one on this object.
virtual CORBA::ULong _decr_refcnt (void) = 0;
- // Decrement the object's reference count. When this count
- // goes to 0 this object will be deleted.
+ // Decrement the object's reference count. When this count goes to
+ // 0 this object will be deleted.
protected:
virtual TAO_MProfile *forward_to_i (void) = 0;
@@ -232,22 +239,21 @@ protected:
virtual ~TAO_Profile (void);
// If you have a virtual method you need a virtual dtor.
-
};
class TAO_Export TAO_Acceptor
{
// = TITLE
- // TAO_Acceptor
- // = DESCRIPTION
// Abstract Acceptor class used for pluggable protocols.
//
+ // = DESCRIPTION
+ // @@ Fred, please fill in here.
public:
- virtual TAO_Profile *create_profile (TAO_ObjectKey& object_key) = 0;
+ virtual TAO_Profile *create_profile (TAO_ObjectKey &object_key) = 0;
// Create the corresponding profile for this endpoint.
- virtual ACE_Event_Handler* acceptor (void) = 0;
+ virtual ACE_Event_Handler *acceptor (void) = 0;
// Return the ACE acceptor...
virtual CORBA::ULong tag (void) = 0;
@@ -260,11 +266,11 @@ public:
class TAO_Export TAO_Connector
{
// = TITLE
- // TAO_Connector
- // = DESCRIPTION
// Connector Registry and Generic Connector interface definitions.
+ //
+ // = DESCRIPTION
+ // @@ Fred, please fill in here.
public:
-
virtual int preconnect (char *preconnections) = 0;
// Initial set of connections to be established.
@@ -284,9 +290,9 @@ public:
virtual TAO_Transport *connect(TAO_Profile *profile,
CORBA::Environment &env) = 0;
- // In order to support pluggable we need to abstract away the
- // connect() method so it can be called from the GIOP code
- // independant of the actual transport protocol in use.
+ // To support pluggable we need to abstract away the connect()
+ // method so it can be called from the GIOP code independant of the
+ // actual transport protocol in use.
virtual ~TAO_Connector (void);
// the destructor.
@@ -295,12 +301,11 @@ public:
class TAO_Export TAO_Connector_Registry
{
// = TITLE
- // TAO_Connector_Registry
+ // All loaded ESIOP or GIOP connector bridges must register with this object.
//
// = DESCRIPTION
- // All loaded ESIOP or GIOP connector bridges must register with this object.
+ // @@ Fred, please fill in here.
public:
-
TAO_Connector_Registry (void);
// Default constructor.
@@ -311,8 +316,8 @@ public:
// Return the connector bridge corresponding to tag (IOP).
CORBA::Boolean add_connector (TAO_Connector *connector);
- // All TAO_Connectors will have a tag() member which will be
- // used for registering object, as well as type checking.
+ // All TAO_Connectors will have a tag() member which will be used
+ // for registering object, as well as type checking.
int open (TAO_Resource_Factory *trf,
ACE_Reactor *reactor);
@@ -322,8 +327,8 @@ public:
// Close all open connectors.
int preconnect (const char *the_preconnections);
- // For this list of preconnections call the connector specific preconnect method
- // for each preconnection.
+ // For this list of preconnections call the connector specific
+ // preconnect method for each preconnection.
TAO_Profile *connect (STUB_Object *&obj,
CORBA::Environment &env);