Главная » Delphi » OSAgent

0

Объекты CORBA должны  уметь обнаруживать друг друга. Группа OMG реализова ла эту задачу при  помощи так называемой службы имен (naming service),  описанной в спецификации CORBA. Служба имен — это программа, запущенная на сервере в сети. Объекты на стороне сервера регистрируются такой  службой,  благодаря чему они  мо гут быть  обнаружены клиентскими приложениями. Для использования службы имен необходимо добавить немного программного  кода  в приложения —  как  на  стороне клиента, так и на стороне сервера. Расположение приложения службы имен  должно быть известно заранее, иначе  клиентское приложение не сможет  подключиться к серверному объекту.

Установка соединения между клиентами и серверами —  это  достаточно сложный процесс. В состав  VisiBroker  входит  специальная программа под названием , которая самостоятельно осуществляет поиск  объектов, что  намного проще примене ния службы имен.  VisiBroker  не является частью  спецификации CORBA и использует ся только  в брокере ORB Borland. Так как средства ORB VisiBroker  используются внут ри реализации CORBA, то для обнаружения объектов и привязки к ним лучше исполь зовать программу .

Перед тем как запустить приложение CORBA,  созданное с применением средств VisiBroker, необходимо запустить .  При  запуске серверное приложение заре гистрируется самостоятельно, используя этот  агент.  Клиентское приложение при подключении к серверу  сначала  обратится к ,  запросит адрес сервера, а затем подключится непосредственно к серверному процессу.

Интерфейсы

Все объекты CORBA описываются своими  интерфейсами. Это полностью объект но ориентированная модель.  Серверное приложение предоставляет клиентам доступ только  к определенным объявлениям типов, интерфейсам и методам.  После  того  как к интерфейсам открыт доступ,  изменять их уже нельзя. Для  того  чтобы  добавить в объект дополнительные свойства, лучше всего на базе старого сервера создать новый, а затем  расширить этот  новый объект. Таким  образом можно  предоставлять доступ к новым интерфейсам, обойдя проблему  обратной совместимости приложений.

Для  описания интерфейсов группа  OMG  разработала специальный язык определе ния интерфейсов (IDL — Interface Definition Language). Несмотря на то,  что  IDL напо минает языки  С и Java, — это совершенно независимый язык  программирования. Всепроизводители брокеров ORB предоставляют компиляторы IDL для преобразования файлов IDL в программный код на языке  определения. Термин “компилятор IDL” не совсем  корректен, потому  что  на самом деле,  файлы IDL не компилируются в испол няемые файлы. Скорее, это генератор кода, так как результатом его работы является набор  файлов с исходным кодом на некотором языке программирования.

Группой  OMG были разработаны преобразователи исходного кода для языков C++ и Java. Для C++ в состав  брокера ORB входит  компилятор IDL2CPP, а для Java — ком пилятор IDL2Java.

Файлы, созданные компиляторами IDL2, содержат классы заглушек и каркасов, рассмотренных  ранее  в  настоящем  разделе.  В  состав   Delphi  входит   компилятор IDL2Pas,  который можно  запустить в режиме командной строки или  через мастера CORBA интегрированной среды разработки.

Источник: Тейксейра, Стив, Пачеко, Ксавье.   Borland Delphi 6. Руководство разработчика. : Пер.  с англ. — М. : Издательский дом “Вильямс”, 2002. —  1120 с. : ил. — Парал. тит. англ.

По теме:

  • Комментарии