Public Member Functions | Private Attributes

TAO::ORT_Adapter_Impl Class Reference

#include <ORT_Adapter_Impl.h>

Inheritance diagram for TAO::ORT_Adapter_Impl:
Inheritance graph
[legend]
Collaboration diagram for TAO::ORT_Adapter_Impl:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual int activate (const char *server_id, const char *orb_id, PortableInterceptor::AdapterName *adapter_name, PortableServer::POA_ptr poa)
 Activate this adapter.
virtual
PortableInterceptor::ObjectReferenceTemplate * 
get_adapter_template (void)
 Accessor methods to ObjectReferenceTemplate template.
virtual
PortableInterceptor::ObjectReferenceFactory * 
get_obj_ref_factory (void)
 Accessor methods to PortableInterceptor::ObjectReferenceFactory.
virtual int set_obj_ref_factory (PortableInterceptor::ObjectReferenceFactory *current_factory)
 Set a different ort_factory to be used.
virtual void release (PortableInterceptor::ObjectReferenceTemplate *ort)
Adapter methods for PortableInterceptor::ObjectReferenceTemplate

Methods

virtual char * tao_server_id (void)
virtual char * tao_orb_id (void)
virtual
PortableInterceptor::AdapterName * 
tao_adapter_name (void)
PortableInterceptor::ObjectReferenceFactory Methods

Methods required by the PortableInterceptor::ObjectReferenceFactory ValueType.

virtual CORBA::Object_ptr make_object (const char *repository_id, const PortableInterceptor::ObjectId &id)

Private Attributes

PortableInterceptor::ObjectReferenceTemplate_var ort_template_
 The ORT Template, this is the factory and its identity.
PortableInterceptor::ObjectReferenceFactory_var ort_factory_
 The ORT Factory.

Detailed Description

Definition at line 38 of file ORT_Adapter_Impl.h.


Member Function Documentation

int TAO::ORT_Adapter_Impl::activate ( const char *  server_id,
const char *  orb_id,
PortableInterceptor::AdapterName *  adapter_name,
PortableServer::POA_ptr  poa 
) [virtual]

Activate this adapter.

Implements TAO::ORT_Adapter.

Definition at line 79 of file ORT_Adapter_Impl.cpp.

{
  // No need to lock here, there is one instance for each POA and
  // when the POA creates and actives an ORT_Adapter it will lock
  // itself. Create an ObjectReferenceTemplate for this POA.

  ObjectReferenceTemplate * t = 0;
  ACE_NEW_THROW_EX (t,
                    ObjectReferenceTemplate (server_id,
                                             orb_id,
                                             adapter_name,
                                             poa),
                    CORBA::NO_MEMORY ());

  this->ort_template_ = t;

  // Must increase ref count since this->ort_factory_ will
  // decrease it upon destruction.
  CORBA::add_ref (t);
  this->ort_factory_ = t;

  return 0;
}

PortableInterceptor::ObjectReferenceTemplate * TAO::ORT_Adapter_Impl::get_adapter_template ( void   )  [virtual]

Accessor methods to ObjectReferenceTemplate template.

Implements TAO::ORT_Adapter.

Definition at line 45 of file ORT_Adapter_Impl.cpp.

{
  CORBA::add_ref (this->ort_template_.in ());

  return this->ort_template_;
}

PortableInterceptor::ObjectReferenceFactory * TAO::ORT_Adapter_Impl::get_obj_ref_factory ( void   )  [virtual]

Accessor methods to PortableInterceptor::ObjectReferenceFactory.

Implements TAO::ORT_Adapter.

Definition at line 53 of file ORT_Adapter_Impl.cpp.

{
  CORBA::add_ref (this->ort_factory_.in ());

  return this->ort_factory_;
}

CORBA::Object_ptr TAO::ORT_Adapter_Impl::make_object ( const char *  repository_id,
const PortableInterceptor::ObjectId &  id 
) [virtual]

Implements TAO::ORT_Adapter.

Definition at line 38 of file ORT_Adapter_Impl.cpp.

{
  return this->ort_factory_->make_object (repo_id, id);
}

void TAO::ORT_Adapter_Impl::release ( PortableInterceptor::ObjectReferenceTemplate *  ort  )  [virtual]
See also:
TAO::ORT_Adapter for details.

Implements TAO::ORT_Adapter.

Definition at line 72 of file ORT_Adapter_Impl.cpp.

int TAO::ORT_Adapter_Impl::set_obj_ref_factory ( PortableInterceptor::ObjectReferenceFactory *  current_factory  )  [virtual]

Set a different ort_factory to be used.

Implements TAO::ORT_Adapter.

Definition at line 61 of file ORT_Adapter_Impl.cpp.

{
  this->ort_factory_ = cf;

  CORBA::add_ref (this->ort_factory_.in ());

  return 0;
}

PortableInterceptor::AdapterName * TAO::ORT_Adapter_Impl::tao_adapter_name ( void   )  [virtual]

Definition at line 31 of file ORT_Adapter_Impl.cpp.

{
  // No need to duplicate, the ort_template_ method has to do the duplicate
  return this->ort_template_->adapter_name ();
}

char * TAO::ORT_Adapter_Impl::tao_orb_id ( void   )  [virtual]

Definition at line 24 of file ORT_Adapter_Impl.cpp.

{
  // No need to duplicate, the ort_template_ method has to do the duplicate
  return this->ort_template_->orb_id ();
}

char * TAO::ORT_Adapter_Impl::tao_server_id ( void   )  [virtual]

Definition at line 17 of file ORT_Adapter_Impl.cpp.

{
  // No need to duplicate, the ort_template_ method has to do the duplicate
  return this->ort_template_->server_id ();
}


Member Data Documentation

PortableInterceptor::ObjectReferenceFactory_var TAO::ORT_Adapter_Impl::ort_factory_ [private]

The ORT Factory.

Definition at line 93 of file ORT_Adapter_Impl.h.

PortableInterceptor::ObjectReferenceTemplate_var TAO::ORT_Adapter_Impl::ort_template_ [private]

The ORT Template, this is the factory and its identity.

Definition at line 90 of file ORT_Adapter_Impl.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines