UniSet  2.6.0
Открытые члены | Защищенные типы | Защищенные члены | Защищенные данные | Друзья
Класс uniset::UniSetManager
Граф наследования:uniset::UniSetManager:
Inheritance graph
[см. легенду]
Граф связей класса uniset::UniSetManager:
Collaboration graph
[см. легенду]

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

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

 UniSetManager (uniset::ObjectId id)
 UniSetManager (const std::string &name, const std::string &section)
std::shared_ptr< UniSetManagerget_mptr ()
virtual uniset::ObjectType getType () override
virtual void broadcast (const uniset::TransportMessage &msg) override
virtual uniset::SimpleInfoSeq * getObjectsInfo (CORBA::Long MaxLength=300, const char *userparam=0) override
virtual bool add (const std::shared_ptr< UniSetObject > &obj)
virtual bool remove (const std::shared_ptr< UniSetObject > &obj)
const std::shared_ptr
< UniSetManager
itemM (const uniset::ObjectId id)
const std::shared_ptr
< UniSetObject
itemO (const uniset::ObjectId id)
UniSetManagerList::const_iterator beginMList ()
UniSetManagerList::const_iterator endMList ()
ObjectsList::const_iterator beginOList ()
ObjectsList::const_iterator endOList ()
size_t objectsCount () const
PortableServer::POA_ptr getPOA ()
PortableServer::POAManager_ptr getPOAManager ()

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

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

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

virtual bool addManager (const std::shared_ptr< UniSetManager > &mngr)
virtual bool removeManager (const std::shared_ptr< UniSetManager > &mngr)
virtual bool addObject (const std::shared_ptr< UniSetObject > &obj)
virtual bool removeObject (const std::shared_ptr< UniSetObject > &obj)
void objects (OManagerCommand cmd)
void managers (OManagerCommand cmd)
virtual void sigterm (int signo) override
void initPOA (const std::weak_ptr< UniSetManager > &rmngr)
virtual bool activateObject () override
virtual bool deactivateObject () override
const std::shared_ptr
< UniSetObject
findObject (const std::string &name)
const std::shared_ptr
< UniSetManager
findManager (const std::string &name)
const std::shared_ptr
< UniSetObject
deepFindObject (const std::string &name)
void getAllObjectsList (std::vector< std::shared_ptr< UniSetObject >> &vec, size_t lim=1000)
int getObjectsInfo (const std::shared_ptr< UniSetManager > &mngr, uniset::SimpleInfoSeq *seq, int begin, const long uplimit, const char *userparam)

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

PortableServer::POA_var poa
PortableServer::POAManager_var pman

Друзья

std::ostream & operator<< (std::ostream &os, uniset::UniSetManager::OManagerCommand &cmd)

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

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

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

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

Методы

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

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

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

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

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

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

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

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

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

Переопределяется в uniset::SharedMemory и uniset::IOController.

const std::shared_ptr< UniSetManager > UniSetManager::itemM ( const uniset::ObjectId  id)

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

Возвращает:
shared_ptr<>, если объект не найден будет возвращен shared_ptr<> = nullptr
const std::shared_ptr< UniSetObject > UniSetManager::itemO ( const uniset::ObjectId  id)

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

Возвращает:
shared_ptr<>, если объект не найден будет возвращен shared_ptr<> = nullptr
void UniSetManager::managers ( OManagerCommand  cmd) [protected]

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

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

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

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

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

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

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

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