summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/ImplRepo_Service/Activator_Info.h
blob: 704e489a35473915cb53db633641178b376b6c9c (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
#ifndef ACTIVATOR_INFO_H
#define ACTIVATOR_INFO_H

#include "ace/Bound_Ptr.h"
#include "ace/SString.h"

#include "ImR_ActivatorC.h"

#if !defined (ACE_LACKS_PRAGMA_ONCE)
# pragma once
#endif /* ACE_LACKS_PRAGMA_ONCE */

/**
* @brief Information about IMR registered Activators.
*/
struct Activator_Info
{
  Activator_Info (void);
  Activator_Info (const Activator_Info& other);

  Activator_Info (const ACE_CString& aname,
    CORBA::Long atoken,
    const ACE_CString& aior,
    ImplementationRepository::Activator_ptr act =
    ImplementationRepository::Activator::_nil ());

  void clear (void);

  /// Reset the connection portion
  void reset_runtime(void);

  ACE_CString name;
  CORBA::Long token;
  ACE_CString ior;
  ImplementationRepository::Activator_var activator;
};

typedef ACE_Strong_Bound_Ptr<Activator_Info, ACE_Null_Mutex> Activator_Info_Ptr;

#endif /* ACTIVATOR_INFO_H */