Класс ObjectsManager

#include <ObjectsManager.h>

Граф наследования:ObjectsManager:

UniSetObject IOController ObjectsActivator ObjectsManager_LT IONotifyController SystemGuard IONotifyController_LT

Полный список членов класса

Открытые члены

 ObjectsManager (UniSetTypes::ObjectId id)
 ObjectsManager (const std::string name, const std::string section)
virtual UniSetTypes::ObjectType getType ()
virtual void broadcast (const UniSetTypes::TransportMessage &msg)
virtual
UniSetTypes::SimpleInfoSeq * 
getObjectsInfo (CORBA::Long MaxLength=300)
void initPOA (ObjectsManager *rmngr)
virtual bool addObject (UniSetObject *obj)
virtual bool removeObject (UniSetObject *obj)
virtual bool addManager (ObjectsManager *mngr)
virtual bool removeManager (ObjectsManager *mngr)
const ObjectsManageritemM (const UniSetTypes::ObjectId id)
const UniSetObjectitemO (const UniSetTypes::ObjectId id)
ObjectsManagerList::const_iterator beginMList ()
ObjectsManagerList::const_iterator endMList ()
ObjectsList::const_iterator beginOList ()
ObjectsList::const_iterator endOList ()
int objectsCount ()
PortableServer::POA_ptr getPOA ()
PortableServer::POAManager_ptr getPOAManager ()

Защищенные типы

enum  OManagerCommand { deactiv, activ, initial, term }
typedef
ObjectsManagerList::iterator 
MListIterator

Защищенные члены

void objects (OManagerCommand cmd)
void managers (OManagerCommand cmd)
virtual void sigterm (int signo)
virtual bool activateObject ()
virtual bool disactivateObject ()
int getObjectsInfo (ObjectsManager *mngr, UniSetTypes::SimpleInfoSeq *seq, int begin, const long uplimit)

Защищенные данные

PortableServer::POA_var poa
PortableServer::POAManager_var pman

Друзья

class ObjectsActivator


Подробное описание

Содержит в себе функции управления объектами. Их регистрации и т.п. Создается менеджер объектов, после чего вызывается initObjects() для инициализации объектов которыми управляет данный менеджер... Менеджер в свою очередь сам является объектом и обладает всеми его свойствами
Для пересылки сообщения всем подчиненным объектам используется функция ObjectsManager::broadcast(const TransportMessage& msg)
У базового менеджера имеются базовые три функции см. ObjectsManager_i.
Заметки:
Только при вызове функции ObjectsManager::broadcast() происходит формирование сообщения всем подчиненным объектам... Если команда проиходит при помощи push, то пересылки всем починённым объектам не происходит...

Методы

bool ObjectsManager::activateObject (  )  [protected, virtual]

Заметки:
Переопределяя не забывайте вызвать базовую
Регистрирация объекта и всех его подобъектов в репозитории.
Заметки:
Только после этого он (и они) становятся доступны другим процессам

Переопределяет метод предка UniSetObject.

Переопределяется в IOController и IONotifyController.

Перекрестные ссылки DebugStream::debugging(), managers(), objects() и UniSetTypes::unideb.

bool ObjectsManager::disactivateObject (  )  [protected, virtual]

Заметки:
Переопределяя не забывайте вызвать базовую
Удаление объекта и всех его подобъектов из репозитория.
Заметки:
Объект становится недоступен другим процессам

Переопределяет метод предка UniSetObject.

Переопределяется в IOController.

Перекрестные ссылки DebugStream::debugging(), managers(), objects() и UniSetTypes::unideb.

const ObjectsManager* ObjectsManager::itemM ( const UniSetTypes::ObjectId  id  ) 

Получение доступа к подчиненному менеджеру по идентификатору

Возвращает:
объект ненайден будет возвращен 0.

const UniSetObject* ObjectsManager::itemO ( const UniSetTypes::ObjectId  id  ) 

Получение доступа к подчиненному объекту по идентификатору

Возвращает:
объект ненайден будет возвращен 0.

void ObjectsManager::managers ( OManagerCommand  cmd  )  [protected]

Функция работы со списком менеджеров

Перекрестные ссылки UniSetTypes::unideb.

Используется в activateObject(), disactivateObject() и sigterm().

void ObjectsManager::objects ( OManagerCommand  cmd  )  [protected]

Функция работы со списком объектов.

Перекрестные ссылки UniSetTypes::unideb.

Используется в activateObject(), disactivateObject() и sigterm().

void ObjectsManager::sigterm ( int  signo  )  [protected, virtual]

Функция вызываемая при приходе сигнала завершения или прерывания процесса. Переопределив ее можно выполнять специфичные для процесса действия по обработке сигнала. Например переход в безопасное состояние.

Предупреждения:
В обработчике сигналов ЗАПРЕЩЕНО вызывать функции подобные exit(..), abort()!!!!

Переопределяет метод предка UniSetObject.

Переопределяется в SystemGuard.

Перекрестные ссылки managers() и objects().


Объявления и описания членов классов находятся в файлах:

Документация по UniSet. Последние изменения: Mon Dec 3 16:14:28 2012. Создано системой  doxygen 1.5.9