Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

TAO_Unknown_Profile Class Reference

A TAO_Profile class to handle foreign profiles. More...

#include <Profile.h>

Inheritance diagram for TAO_Unknown_Profile:

Inheritance graph
[legend]
Collaboration diagram for TAO_Unknown_Profile:

Collaboration graph
[legend]
List of all members.

Public Methods

 TAO_Unknown_Profile (CORBA::ULong tag, TAO_ORB_Core *orb_core)
 Create the profile.

virtual void parse_string (const char *string ACE_ENV_ARG_DECL)
virtual char object_key_delimiter (void) const
 The object key delimiter.

virtual char * to_string (ACE_ENV_SINGLE_ARG_DECL)
virtual int decode (TAO_InputCDR &cdr)
 Initialize this object using the given CDR octet string.

virtual int encode (TAO_OutputCDR &stream) const
 Encode this profile in a stream, i.e. marshal it.

virtual int encode_endpoints (void)
virtual const TAO_ObjectKeyobject_key (void) const
 deprecated. return a reference to the Object Key.

virtual TAO_ObjectKey_key (void) const
virtual TAO_Endpointendpoint (void)
virtual size_t endpoint_count (void)
 Return how many endpoints this profile contains.

virtual CORBA::Boolean is_equivalent (const TAO_Profile *other_profile)
virtual CORBA::ULong hash (CORBA::ULong max ACE_ENV_ARG_DECL)
 Return a hash value for this object.

virtual IOP::TaggedProfilecreate_tagged_profile (void)

Private Attributes

TAO_opaque body_
IOP::TaggedProfile tagged_profile_

Detailed Description

A TAO_Profile class to handle foreign profiles.

The CORBA spec implies that ORBs must be prepared to save and pass around profiles for protocols it does not recognize. It is not mandatory to *use* those profiles but they shouldn't be dropped. This class stores the information required to marshal and demarshal an unknown profile, but simply returns an error if any of the TAO internal methods are invoked.


Constructor & Destructor Documentation

TAO_Unknown_Profile::TAO_Unknown_Profile CORBA::ULong    tag,
TAO_ORB_Core   orb_core
 

Create the profile.


Member Function Documentation

TAO_ObjectKey * TAO_Unknown_Profile::_key void    const [virtual]
 

Obtain the object key, return 0 if the profile cannot be parsed. The memory is owned by the caller!

Implements TAO_Profile.

IOP::TaggedProfile & TAO_Unknown_Profile::create_tagged_profile void    [virtual]
 

This method is used to get the IOP::TaggedProfile. The profile information that is received from the server side would have already been decoded. So this method will just make a IOP::TaggedProfile struct from the existing information and return the reference to that. This method is necessary for GIOP 1.2.

Implements TAO_Profile.

int TAO_Unknown_Profile::decode TAO_InputCDR   cdr [virtual]
 

Initialize this object using the given CDR octet string.

Implements TAO_Profile.

int TAO_Unknown_Profile::encode TAO_OutputCDR   stream const [virtual]
 

Encode this profile in a stream, i.e. marshal it.

Implements TAO_Profile.

int TAO_Unknown_Profile::encode_endpoints void    [virtual]
 

Encodes this profile's endpoints into a tagged component. This is done only if RTCORBA is enabled, since currently this is the only case when we have more than one endpoint per profile.

Implements TAO_Profile.

TAO_Endpoint * TAO_Unknown_Profile::endpoint void    [virtual]
 

Return pointer to this profile's endpoint. If the profile contains more than one endpoint, i.e., a list, the method returns the head of the list.

Implements TAO_Profile.

size_t TAO_Unknown_Profile::endpoint_count void    [virtual]
 

Return how many endpoints this profile contains.

Implements TAO_Profile.

CORBA::ULong TAO_Unknown_Profile::hash CORBA::ULong max    ACE_ENV_ARG_DECL [virtual]
 

Return a hash value for this object.

Implements TAO_Profile.

CORBA::Boolean TAO_Unknown_Profile::is_equivalent const TAO_Profile   other_profile [virtual]
 

Return true if this profile is equivalent to other_profile. Two profiles are equivalent iff their tag, object_key, version and all endpoints are the same.

Implements TAO_Profile.

const TAO_ObjectKey & TAO_Unknown_Profile::object_key void    const [virtual]
 

deprecated. return a reference to the Object Key.

@

Implements TAO_Profile.

char TAO_Unknown_Profile::object_key_delimiter void    const [virtual]
 

The object key delimiter.

Implements TAO_Profile.

virtual void TAO_Unknown_Profile::parse_string const char *string    ACE_ENV_ARG_DECL [virtual]
 

Initialize this object using the given input string. Supports URL style of object references

Implements TAO_Profile.

char * TAO_Unknown_Profile::to_string ACE_ENV_SINGLE_ARG_DECL    [virtual]
 

Return a string representation for this profile. client must deallocate memory.

Implements TAO_Profile.


Member Data Documentation

TAO_opaque TAO_Unknown_Profile::body_ [private]
 

IOP::TaggedProfile TAO_Unknown_Profile::tagged_profile_ [private]
 


The documentation for this class was generated from the following files:
Generated on Wed Feb 19 15:23:31 2003 for TAO by doxygen1.2.18