содержит ссылки на все компоненты-провайдеры, размещенные с компонентом TLocalConnection на одной форме. Индексация в списке осуществляется по имени компонента-провайдера.

Общее число компонентов-провайдеров в списке возвращает свойство

property ProviderCount: Integer;

Кроме этого, при помощи компонента TLocalConnection можно получить доступ к интерфейсу IAppServer локально. Для этого используется свойство

property AppServer: IAppServer;

или метод

function GetServer: IAppServer;
override;

Компонент TSharedConnection

Если интерфейс IAppServer удаленного модуля данных имеет метод, возвращающий ссылку на аналогичный интерфейс другого удаленного модуля данных, то первый модуль называется главным, а второй - дочерним (см. гл. 21). Компонент TSharedConnection используется для соединения клиентского приложения с дочерним удаленным модулем данных сервера приложений.

Свойство

property ParentConriection: TDispatchConnection;

должно содержать ссылку на компонент соединения с главным удаленным модулем данных сервера приложений. Дочерний удаленный модуль данных определяется свойством

property QiildNarre: string;

которое должно содержать его имя. Если интерфейс главного удаленного модуля данных настроен правильно, то в списке выбора свойства в Инспекторе объектов появляются имена всех дочерних удаленных модулей данных.

Интерфейс IAppServer дочернего удаленного модуля данных возвращает свойство

property AppServer: Variant; или метод

function GetServer: IAppServer;
override;

Методы-обработчики компонента TSharedConnection унаследованы от класса предка TCustomConnection (см. табл. 20.1).

Компонент TConnection Broker

Компонент TConnectionBroker обеспечивает централизованное управление соединением клиентских наборов данных с сервером приложений. Для этого свойство ConnectionBroker клиентских наборов данных должно ссылаться на экземпляр компонента TConnectionBroker. Тогда для изменения соединения (например, при переходе с транспорта HTTP на сокеты TCP/IP) нет необходимости изменять значение свойства RemoteServer всех компонентов TClientDataSet, а достаточно изменить свойство

property Connection: TCustomRemoteServer;

компонента TConnectionBroker.

Доступ к интерфейсу IAppServer обеспечивает свойство

property AppServer: Variant; или метод

function GetServer: IAppServer;
override;

МеТОДЫ-обрабоТЧИКИ компонента TConnectionBroker полностью соответствуют табл. 20.1.

Резюме

Многозвенные распределенные приложения обеспечивают эффективное взаимодействие большого числа удаленных "тонких" клиентов с сервером БД при помощи ПО промежуточного слоя. Наиболее распространенной моделью является трехзвенная модель, где ПО промежуточного слоя состоит только из сервера приложений.

В Delphi для создания трехзвенных распределенных приложений используются компоненты DataSnap и удаленные модули данных. Все эти инструменты реализованы для различных типов транспортных протоколов.

Также в трехзвенных приложениях применяются компоненты-провайдеры TDataSetProvider И КОМПОНенТЫ TClientDataSet, инкапсулирующие наборы данных на клиентской стороне.


⇐ Предыдущая страница| |Следующая страница ⇒

Программирование в Delphi 7



Новости за месяц

  • Июнь
    2017
  • Пн
  • Вт
  • Ср
  • Чт
  • Пт
  • Сб
  • Вс