UniSet  2.0.0
Открытые члены | Защищенные типы | Защищенные члены | Защищенные данные | Друзья
Класс UniSetManager

#include <UniSetManager.h>

Граф наследования:UniSetManager:
UniSetObject IOController UniSetActivator UniSetManager_LT IONotifyController UniExchange UniExchange IONotifyController_LT NullController SharedMemory SharedMemory

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

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

 UniSetManager (UniSetTypes::ObjectId id)
 UniSetManager (const std::string &name, const std::string &section)
virtual UniSetTypes::ObjectType getType () override
virtual void broadcast (const UniSetTypes::TransportMessage &msg) override
virtual
UniSetTypes::SimpleInfoSeq * 
getObjectsInfo (CORBA::Long MaxLength=300) override
void initPOA (UniSetManager *rmngr)
virtual bool addObject (UniSetObject *obj)
virtual bool removeObject (UniSetObject *obj)
virtual bool addManager (UniSetManager *mngr)
virtual bool removeManager (UniSetManager *mngr)
const UniSetManageritemM (const UniSetTypes::ObjectId id)
const UniSetObjectitemO (const UniSetTypes::ObjectId id)
UniSetManagerList::const_iterator beginMList ()
UniSetManagerList::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 UniSetManagerList::iterator MListIterator

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

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

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

PortableServer::POA_var poa
PortableServer::POAManager_var pman

Друзья

class UniSetActivator
std::ostream & operator<< (std::ostream &os, OManagerCommand &cmd)

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

Содержит в себе функции управления объектами. Их регистрации и т.п. Создается менеджер объектов, после чего вызывается initObjects() для инициализации объектов которыми управляет данный менеджер... Менеджер в свою очередь сам является объектом и обладает всеми его свойствами

Для пересылки сообщения всем подчиненным объектам используется функция UniSetManager::broadcast(const TransportMessage& msg)

У базового менеджера имеются базовые три функции см. UniSetManager_i.
Заметки:
Только при вызове функции UniSetManager::broadcast() происходит формирование сообщения всем подчиненным объектам... Если команда проиходит при помощи push, то пересылки всем починённым объектам не происходит...

Методы

bool UniSetManager::activateObject ( ) [override, protected, virtual]
Заметки:
Переопределяя не забывайте вызвать базовую

Регистрирация объекта и всех его подобъектов в репозитории.

Заметки:
Только после этого он (и они) становятся доступны другим процессам

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

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

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

bool UniSetManager::deactivateObject ( ) [override, protected, virtual]
Заметки:
Переопределяя не забывайте вызвать базовую

Удаление объекта и всех его подобъектов из репозитория.

Заметки:
Объект становится недоступен другим процессам

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

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

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

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

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

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

Возвращает:
объект ненайден будет возвращен 0.
void UniSetManager::managers ( OManagerCommand  cmd) [protected]

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

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

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

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

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

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

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

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

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

Переопределяется в SharedMemory, SharedMemory, UniExchange и UniExchange.

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


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