Пример за създаване на CORBA приложение

пример

Системата функционира по следния начин (фиг. 11). Администраторът стартира приложението на системната конзола, което извършва вътрешна инициализация и задава параметрите на клетъчните станции. Системата конфигурира имената на "клетките", с които администраторът работи и им позволява да започнат да обслужват клиенти. От този момент нататък системата позволява на абонатите да провеждат разговори, да получават сметки и да извършват дистанционни плащания, а администраторът има на разположение конзола, с която управлява работата на цялото оборудване. На фиг. 12 показва набор от функции, които администраторът изпълнява с помощта на интерфейса на конзолата.

създаване

Клетъчните станции вършат много полезна работа в нашия проект. Те се включват независимо от системата, но започват да изпълняват функциите си само след като дойде съответната команда. До този момент те са в режим на готовност. Наборът от функции на клетъчния сайт е показан на фиг. 13.

Остава да опишем още две подсистеми: финансова и таксуваща. Първият се използва за записване на плащания за предоставените услуги и е доста тривиален - системата търси обект за дистанционно плащане, предоставен от банката, и издава команда за изпращане на пари през него. Втората подсистема отново работи за потребителя. По негово желание се генерира голяма консолидирана фактура, която се изпраща на факса на потребителя или се разпечатва и изпраща с писмо по обикновената поща.

клетъчна станция

След като включи централния сървър на системата и го тества, основният обект CellularSystem последователно избира уникални имена на клетъчни станции от базата данни, управлявана от обекта DataStorage, и намира препратки към „клетъчни“ обекти, използвайки ги. Намерените връзки са свързани симена. На последния етап разрешението за обслужване на абонати се изпраща до всички станции. След това станциите периодично изпращат сигнал към системата, което показва, че работят нормално.

Работа на системата

Може би принципът на системата вече е ясен. Нека го опишем накратко, давайки в скоби предполагаемите имена на операции и атрибути на езика IDL.

След стартиране на клетъчните повторители и основната система, последната преминава в състояние на готовност. В момента тече само един процес - проверка на работоспособността на клетъчните станции. За да направят това, релетата изпращат съобщение до основния обект на системата CellularSystem на определен интервал от време (CellularSystem::stationIsAlive), а CellularSystem изисква съхранението да фиксира времето за достъп (DataStorage::setCellTestTime). Успоредно с това обектът Console на конзолата на администратора осъществява достъп до хранилището и го пита за последната маркировка на извикването на "клетка" (DataStorage::getCellTestTime). Ако оттогава е минало твърде много време, администраторът ще разбере за проблеми с повторителя и последният може да опита да рестартира клетъчния сайт (Cell::restart) или да спре да получава сигнали през него (Cell::setCellState).

В списъка, предоставен на сървъра, ще намерите чернова на IDL описанията на части от системата. Не трябва да се приема твърде сериозно - впоследствие всички описания ще претърпят много промени.