Показаны сообщения с ярлыком Пыхтелки. Показать все сообщения
Показаны сообщения с ярлыком Пыхтелки. Показать все сообщения

Delphi dbXmlRpc (VCL). Часть 2. Delphi XML Parser.

Как я уже писал ранее, выбранный мной для разработки проЭкта “Ку!”, базовый компонент Delphi XML-RPC, использует для парсинга XML компонент XML Parser от Stefan Heymann.

xml-icon1

Мне удалось связаться со Штефаном Хейманном и предоставить ему результаты моей адаптации его библиотеки для работы со средами Delphi 2006, 2009 и 2010. Штефан, сославшись на нехватку времени, сообщил, что в данный момент не может продолжить разработку своего проекта. Он любезно предоставил эту почетную миссию моей скромной персоне, согласовав со мной некоторые детали реализации проекта и предоставив мне последнюю версию, неопубликованных нигде ранее, исходников ядра своей библиотеки.

В результате нашей с ним переписки,  возник небольшой проЭктик: Delphi XML Parser, который я буду активно использовать в “Ку!”. Он конечно требует дальнейшей доработки, в части полной поддержки UNICODE, но пока для моего проЭкта “Ку!” – в самый раз!

Цель данной разработки - модификация проекта, начатого когда-то Штефаном Хейманном. Подробней узнать о базовом проекте можно на сайте автора: Stefan Heymann's .Free Site.

Модификация и номера версий проекта согласованы с автором базового проекта, со Штефаном.

  • На сегодня текущая версия Delphi XML Parser – 1.1.1;
  • Поддерживаются среды разработки: Delphi и C++Builder (версии 4, 5, 6, 7, 2005, 2006, 2009, 2010);
  • Библиотека собирается с предупреждениями, но приложенные “демы” – работают. Проверено “электроникой”.

Delphi XML Parser

Ку!!! До встречи…

Читать полностью >>>

Delphi dbXmlRpc (VCL). Часть 1. Постановка задачи. Выбор базовых компонентов.

Для реализации “Хотелки №1” необходимо создать прототип библиотеки компонентов для построения среды передачи данных посредством протокола XML-RPC.

Свой проЭкт, на текущем этапе, я буду разрабатывать для платформы Windows. Возможно когда-нибудь я смогу реализовать кроссплатформенность, но это пока из разряда “мечталок”.

Итак, в качестве среды разработки выбираю Delphi 2010, демо-версия которой доступна на сайте производителя.

Составные части проектируемой библиотеки:

  1. Компонент “DdbXmlRpcClient”. (Для построения клиентских приложений).
  2. Компонент “DdbXmlRpcServer”. (Для построения сервера приложений).
  3. Источник данных. (Для обеспечения подключений к “Хранилищу данных”, дальше по тексту - ХД).

В рамках этой задачи необходимо:

  • На стороне клиентского компонента обеспечить формирование и передачу запроса серверному компоненту на получение некоторых данных из ХД;
  • На стороне серверного компонента обеспечить парсинг клиентского запроса, затем сформировать и отправить запрос к ХД;
  • На стороне серверного компонента принять данные из ХД. Сформировать и отправить ответ клиентскому компоненту;
  • На стороне клиентского компонента обеспечить обработку ответа, полученного от серверного компонента, затем отобразить полученные данные на экране пользователя системы.

Реализация “хотелки №1”. Начало.

Для начала я дал Имя нашей новой библиотеке, для последующего использования. Отныне она будет называться Delphi dbXmlRpc (VCL), что на человеческом языке означает – “Delphi Database XmlRpc (Visual Component Library)”. Прошу любить и жаловать...

В качестве базовой библиотеки для реализации задуманного буду использовать компонент Delphi XML-RPC for Windows and Kylix for GNU/Linux (разработчики: Clifford E. Baeseman и Team-DXmlRpc):

  • Последняя версия доступная на сайте - 2.0.0 в CVS - 2.1.0;
  • Дата последнего обновления: 2004-04-20;
  • Поддерживается работа в средах Delphi 6, 7;
  • Для работы необходимы компоненты INDY 9 и XMLParcer от Stefan Heymann (входит в комплект);
  • Компонент уже достаточно давно не обновлялся авторами, но необходимый базовый функционал в нем заложен.
  • Для использования в проЭкте – годен (потребуется относительно небольшая доработка).

Я установил Delphi 2010, а с ним идет INDY 10. Для начала придется "довести до нужной кондиции" используемые сторонние компоненты Delphi XML-RPC, и XMLParcer, а именно:

  • Адаптировать для Delphi 2010 (желательно обеспечить совместимость с предыдущими версиями IDE и RAD Studio);
  • Адаптировать для использования с INDY 10 (желательно сохранить совместимость с предыдущей версией INDY 9).

Я использовал последние доступные версии библиотек 2.1.0 и 1.0.17 соответственно. После некоторых "танцев с бубном" удалось адаптировать код используемых библиотек для работы с UNICODE и собрать все это хозяйство в Delphi 2010. Поддержку предыдущих версий среды буду реализовывать позже...

Сборка получилась на “скорую руку”, по-быстрому, короче – “рыба”, но мне, для испытания  возможностей выбранных базовых компонентов – достаточно.

Кому интересно посмотреть что у меня получилось смотрим: http://www.opensvn.ru/project_info.php?id_project=dbxmlrpc

dXmlRcp

Читатель: "А где же передача данных?"
Писатель: "Вот отшлифую текущие наработки - тогда продолжим..."

За сим прощаюсь.

Читать полностью >>>