462 lines
18 KiB
Plaintext
462 lines
18 KiB
Plaintext
= Sсhema
|
||
|
||
Есть три типа ресурсов, которые можно загружать в шину и использовать в маршрутах:
|
||
|
||
. Валидационные типы ресурсов (нпрм xsd). Необходимы для валидации сообщения на соответствие той или иной схеме.
|
||
. Трансформационные типы ресурсов (нпрм xslt, amd). Необходимы для трасформации сообщений из одной схемы в другую.
|
||
. Ресурсы используемые для генерации сервисов (нпрм wsdl). Необходимы для поднятия сервиса на шине.
|
||
|
||
Для загрузки трансформационных ресурсов необходимо указывать, является ли данный трансформатор конвертором и схему-источник и схему-результат для неявного преобразования сообщения(конвертор может быть один и только один для пары: схема источник, схема результат)
|
||
Схему-источник и схему-результат необходимо указывать только для конверторов, используемых в неявных преобразованиях
|
||
|
||
Желательно указывать или определять схему для коннектора, если предполагается использовать функционал неявных преобразований. Неявное преобразование будет работать, если:
|
||
|
||
- в заголовке указана схема-источник
|
||
- в заголовке указана схема-приемник
|
||
- в реестре есть конвертор для этой пары схем
|
||
|
||
Указание схемы может попадать в заголовок неявно (из свойств коннектора или из тела сообщения) или явно через медиатор.
|
||
|
||
== Схема работы с ресурсами.
|
||
|
||
Сначала загружаем сам ресурс в шину, который мы будем использовать в маршрутах.
|
||
|
||
Загружаем ресурс и получаем id, с помощью которого можно и _нужно_ добавить служебную информацию!
|
||
Также можно перезагрузить данный ресурс и удалять его из шины.
|
||
|
||
Также можно загружать служебную информацию, такую как название ресурса, его расширение и т д.
|
||
Выгружать весь список ресурсов, и по отдельности выкачивать сам ресурс для анализа.
|
||
Также использовать различные сортировки для поиска определенного типа ресурс.
|
||
|
||
== Руководство по загрузке ресурсов в шину.
|
||
|
||
*LoadResource.*
|
||
|
||
Для загрузки ресурса в шину нужно использовать метод loadResource.
|
||
|
||
параметры:
|
||
|
||
- resourceValue - сам ресурс, в формате base64
|
||
|
||
[source,xml]
|
||
----
|
||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:reg="http://www.entaxy.ru/registry-schema-service/">
|
||
<soapenv:Body>
|
||
<reg:loadResourceRequest>
|
||
<reg:resourceValue></reg:resourceValue>
|
||
</reg:loadResourceRequest>
|
||
</soapenv:Body>
|
||
</soapenv:Envelope>
|
||
----
|
||
|
||
ответ
|
||
[source,xml]
|
||
----
|
||
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
||
<soap:Body>
|
||
<response xmlns="http://www.entaxy.ru/registry-schema-service/">1</response>
|
||
</soap:Body>
|
||
</soap:Envelope>
|
||
----
|
||
|
||
*GetResource.*
|
||
|
||
Для выгрузки заранее загруженного ресурса в шину нужно использовать метод getResource.
|
||
|
||
параметры:
|
||
|
||
- getResourceRequest - id ресурса, который вернулся при вызове метода LoadResource
|
||
|
||
[source,xml]
|
||
----
|
||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:reg="http://www.entaxy.ru/registry-schema-service/">
|
||
<soapenv:Header/>
|
||
<soapenv:Body>
|
||
<reg:getResourceRequest>1</reg:getResourceRequest>
|
||
</soapenv:Body>
|
||
</soapenv:Envelope>
|
||
----
|
||
|
||
ответ
|
||
|
||
параметры:
|
||
|
||
- id - это id ресурса
|
||
- createdDate - дата создания ресурса
|
||
- createdBy - логин, загрузивший ресурс в шину
|
||
- editedDate - дата перезагрузки ресурса
|
||
- editedBy - логин, перезагрузивший ресурс в шине
|
||
- resourceValue - сам ресурс, в формате base64
|
||
|
||
[source,xml]
|
||
----
|
||
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
||
<soap:Body>
|
||
<FullResourceType xmlns="http://www.entaxy.ru/registry-schema-service/">
|
||
<id>1</id>
|
||
<createdDate>12/15/20, 1:11 AM</createdDate>
|
||
<createdBy>12/15/20, 1:11 AM</createdBy>
|
||
<editedDate>12/15/20, 1:18 AM</editedDate>
|
||
<editedBy>12/15/20, 1:18 AM</editedBy>
|
||
<resourceValue></resourceValue>
|
||
</FullResourceType>
|
||
</soap:Body>
|
||
</soap:Envelope>
|
||
----
|
||
|
||
*ReloadResource.*
|
||
|
||
Для перезагрузки ресурса в шину есть метод reloadResource.
|
||
|
||
параметры:
|
||
|
||
- id - id ресурса, который вернулся при вызове метода LoadResource
|
||
- resourceValue - сам ресурс, в формате base64
|
||
|
||
[source,xml]
|
||
----
|
||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:reg="http://www.entaxy.ru/registry-schema-service/">
|
||
<soapenv:Body>
|
||
<reg:ResourceType>
|
||
<reg:id>1</reg:id>
|
||
<reg:resourceValue></reg:resourceValue>
|
||
</reg:ResourceType>
|
||
</soapenv:Body>
|
||
</soapenv:Envelope>
|
||
----
|
||
|
||
ответ
|
||
[source,xml]
|
||
----
|
||
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
||
<soap:Body>
|
||
<response xmlns="http://www.entaxy.ru/registry-schema-service/">1</response>
|
||
</soap:Body>
|
||
</soap:Envelope>
|
||
----
|
||
|
||
*RemoveResource.*
|
||
|
||
Для удаления ресурса в шине есть метод removeResource.
|
||
|
||
параметры:
|
||
|
||
- id - id ресурса, который вернулся при вызове метода LoadResource
|
||
|
||
[source,xml]
|
||
----
|
||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:reg="http://www.entaxy.ru/registry-schema-service/">
|
||
<soapenv:Header/>
|
||
<soapenv:Body>
|
||
<reg:removeResourceRequest>1</reg:removeResourceRequest>
|
||
</soapenv:Body>
|
||
</soapenv:Envelope>
|
||
----
|
||
|
||
ответ
|
||
[source,xml]
|
||
----
|
||
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
||
<soap:Body>
|
||
<response xmlns="http://www.entaxy.ru/registry-schema-service/">1</response>
|
||
</soap:Body>
|
||
</soap:Envelope>
|
||
----
|
||
|
||
*LoadResourceInfo.*
|
||
|
||
Для загрузки мета информации ресурса в шине есть метод loadResourceInfo.
|
||
|
||
параметры:
|
||
|
||
- idResource - id ресурса, который вернулся при вызове метода LoadResource
|
||
- name - имя ресурса вместе с расширением
|
||
- version - версия ресурса
|
||
- description - описание ресурса
|
||
- convertor - является ли ресурс конвертором из одной схемы в другую
|
||
- namespace - входное пространство имен
|
||
- namespaceOut - выходное пространство имен, используется для трансформаций из одной схемы в другую
|
||
|
||
[source,xml]
|
||
----
|
||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:reg="http://www.entaxy.ru/registry-schema-service/">
|
||
<soapenv:Body>
|
||
<reg:loadResourceInfoRequest>
|
||
<reg:name>lama.xsd</reg:name>
|
||
<reg:idResource>1</reg:idResource>
|
||
<reg:version>1.0</reg:version>
|
||
<reg:description>lama test</reg:description>
|
||
<reg:convertor>false</reg:convertor>
|
||
<reg:namespace>http:lama.xsd</reg:namespace>
|
||
<reg:namespaceOut>l</reg:namespaceOut>
|
||
</reg:loadResourceInfoRequest>
|
||
</soapenv:Body>
|
||
</soapenv:Envelope>
|
||
----
|
||
|
||
ответ
|
||
[source,xml]
|
||
----
|
||
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
||
<soap:Body>
|
||
<response xmlns="http://www.entaxy.ru/registry-schema-service/">1</response>
|
||
</soap:Body>
|
||
</soap:Envelope>
|
||
----
|
||
|
||
*GetResourceInfo.*
|
||
|
||
Для получения мета информации ресурса в шине есть метод getResourceInfo.
|
||
|
||
параметры:
|
||
|
||
- getResourceInfoRequest - id мета информации ресурса, который вернулся при вызове метода LoadResourceInfo
|
||
|
||
|
||
[source,xml]
|
||
----
|
||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:reg="http://www.entaxy.ru/registry-schema-service/">
|
||
<soapenv:Header/>
|
||
<soapenv:Body>
|
||
<reg:getResourceInfoRequest>1</reg:getResourceInfoRequest>
|
||
</soapenv:Body>
|
||
</soapenv:Envelope>
|
||
----
|
||
|
||
ответ
|
||
|
||
параметры:
|
||
|
||
- id - id мета информации ресурса, который вернулся при вызове метода LoadResourceInfo
|
||
- idResource - id ресурса, который вернулся при вызове метода LoadResource
|
||
- name - имя ресурса вместе с расширением
|
||
- version - версия ресурса
|
||
- description - описание ресурса
|
||
- convertor - является ли ресурс конвертором из одной схемы в другую
|
||
- namespace - входное пространство имен
|
||
- namespaceOut - выходное пространство имен, используется для трансформаций из одной схемы в другую
|
||
- createdDate - дата создания мета информации ресурса
|
||
- createdBy - логин, загрузивший мета информацию ресурса в шину
|
||
- editedDate - дата перезагрузки мета информации ресурса
|
||
- editedBy - логин, перезагрузивший мета информацию ресурса в шине
|
||
|
||
[source,xml]
|
||
----
|
||
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
||
<soap:Body>
|
||
<getResourceInfoResponse xmlns="http://www.entaxy.ru/registry-schema-service/">
|
||
<id>14</id>
|
||
<name>lama.xsd</name>
|
||
<idResource>14</idResource>
|
||
<version>1.0</version>
|
||
<description>lama test</description>
|
||
<convertor>false</convertor>
|
||
<namespace>http:lama.xsd</namespace>
|
||
<namespaceOut>false</namespaceOut>
|
||
<createdBy>?</createdBy>
|
||
<createdDate>12/15/20, 1:33 AM</createdDate>
|
||
<editedBy>?</editedBy>
|
||
<editedDate>12/15/20, 1:35 AM</editedDate>
|
||
</getResourceInfoResponse>
|
||
</soap:Body>
|
||
</soap:Envelope>
|
||
----
|
||
|
||
*EditResourceInfo.*
|
||
|
||
Для корректирования мета информации ресурса в шине есть метод еditResourceInfo.
|
||
|
||
параметры:
|
||
|
||
- id - id мета информации ресурса, который вернулся при вызове метода LoadResourceInfo
|
||
- idResource - id ресурса, который вернулся при вызове метода LoadResource
|
||
- name - имя ресурса вместе с расширением
|
||
- version - версия ресурса
|
||
- description - описание ресурса
|
||
- convertor - является ли ресурс конвертором из одной схемы в другую
|
||
- namespace - входное пространство имен
|
||
- namespaceOut - выходное пространство имен, используется для трансформаций из одной схемы в другую
|
||
|
||
[source,xml]
|
||
----
|
||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:reg="http://www.entaxy.ru/registry-schema-service/">
|
||
<soapenv:Body>
|
||
<reg:editResourceInfoRequest>
|
||
<reg:id>1</reg:id>
|
||
<reg:name>lama.xsd</reg:name>
|
||
<reg:idResource>1</reg:idResource>
|
||
<reg:version>1.0</reg:version>
|
||
<reg:description>lama test</reg:description>
|
||
<reg:convertor>false</reg:convertor>
|
||
<reg:namespace>http:lama.xsd</reg:namespace>
|
||
<reg:namespaceOut>l</reg:namespaceOut>
|
||
</reg:editResourceInfoRequest>
|
||
</soapenv:Body>
|
||
</soapenv:Envelope>
|
||
----
|
||
|
||
ответ
|
||
|
||
[source,xml]
|
||
----
|
||
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
||
<soap:Body>
|
||
<response xmlns="http://www.entaxy.ru/registry-schema-service/">14</response>
|
||
</soap:Body>
|
||
</soap:Envelope>
|
||
----
|
||
|
||
*RemoveResourceInfo.*
|
||
|
||
Для удаления мета информации ресурса в шине есть метод removeResourceInfo.
|
||
|
||
параметры:
|
||
|
||
- id - id мета информации ресурса, который вернулся при вызове метода LoadResourceInfo
|
||
|
||
[source,xml]
|
||
----
|
||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:reg="http://www.entaxy.ru/registry-schema-service/">
|
||
<soapenv:Header/>
|
||
<soapenv:Body>
|
||
<reg:removeResourceInfoRequest>1</reg:removeResourceInfoRequest>
|
||
</soapenv:Body>
|
||
</soapenv:Envelope>
|
||
----
|
||
|
||
ответ
|
||
|
||
[source,xml]
|
||
----
|
||
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
||
<soap:Body>
|
||
<response xmlns="http://www.entaxy.ru/registry-schema-service/">1</response>
|
||
</soap:Body>
|
||
</soap:Envelope>
|
||
----
|
||
|
||
*GetResourceInfoList.*
|
||
|
||
Для получения списка мета информации ресурсов в шине есть метод getResourceInfoList.
|
||
|
||
[source,xml]
|
||
----
|
||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:reg="http://www.entaxy.ru/registry-schema-service/">
|
||
<soapenv:Header/>
|
||
<soapenv:Body>
|
||
<reg:getResourceInfoListRequest/>
|
||
</soapenv:Body>
|
||
</soapenv:Envelope>
|
||
----
|
||
|
||
ответ
|
||
|
||
[source,xml]
|
||
----
|
||
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
||
<soap:Body>
|
||
<getResourceInfoListResponse xmlns="http://www.entaxy.ru/registry-schema-service/">
|
||
<ResourceInfoFullType>
|
||
<id>1</id>
|
||
<name>lama.xsd</name>
|
||
<idResource>1</idResource>
|
||
<version>1.0</version>
|
||
<description>lama test</description>
|
||
<convertor>false</convertor>
|
||
<namespace>http:lama.xsd</namespace>
|
||
<namespaceOut>l</namespaceOut>
|
||
<createdBy>?</createdBy>
|
||
<createdDate>12/14/20, 10:00 PM</createdDate>
|
||
</ResourceInfoFullType>
|
||
</getResourceInfoListResponse>
|
||
</soap:Body>
|
||
</soap:Envelope>
|
||
----
|
||
|
||
*GetResourceInfoListByName.*
|
||
|
||
Для получения списка мета информации ресурсов по имени ресурса в шине есть метод getResourceInfoListByName.
|
||
|
||
параметры:
|
||
|
||
- name - часть имени мета информации ресурса
|
||
|
||
[source,xml]
|
||
----
|
||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:reg="http://www.entaxy.ru/registry-schema-service/">
|
||
<soapenv:Header/>
|
||
<soapenv:Body>
|
||
<reg:getResourceInfoListByNameRequest>
|
||
<reg:name>.xsd</reg:name>
|
||
</reg:getResourceInfoListByNameRequest>
|
||
</soapenv:Body>
|
||
</soapenv:Envelope>
|
||
----
|
||
|
||
ответ
|
||
|
||
[source,xml]
|
||
----
|
||
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
||
<soap:Body>
|
||
<getResourceInfoListResponse xmlns="http://www.entaxy.ru/registry-schema-service/">
|
||
<ResourceInfoFullType>
|
||
<id>1</id>
|
||
<name>lama.xsd</name>
|
||
<idResource>1</idResource>
|
||
<version>1.0</version>
|
||
<description>lama test</description>
|
||
<convertor>false</convertor>
|
||
<namespace>http:lama.xsd</namespace>
|
||
<namespaceOut>l</namespaceOut>
|
||
<createdBy>?</createdBy>
|
||
<createdDate>12/14/20, 10:00 PM</createdDate>
|
||
</ResourceInfoFullType>
|
||
</getResourceInfoListResponse>
|
||
</soap:Body>
|
||
</soap:Envelope>
|
||
----
|
||
|
||
*GetResourceInfoListByNamespace.*
|
||
|
||
Для получения списка мета информации ресурсов по namespace ресурса в шине есть метод getResourceInfoListByNamespace.
|
||
|
||
параметры:
|
||
|
||
- namespace - часть namespace мета информации ресурса
|
||
|
||
[source,xml]
|
||
----
|
||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:reg="http://www.entaxy.ru/registry-schema-service/">
|
||
<soapenv:Header/>
|
||
<soapenv:Body>
|
||
<reg:getResourceInfoListByNamespaceRequest>
|
||
<reg:namespace>lama</reg:namespace>
|
||
</reg:getResourceInfoListByNamespaceRequest>
|
||
</soapenv:Body>
|
||
</soapenv:Envelope>
|
||
----
|
||
|
||
ответ
|
||
|
||
[source,xml]
|
||
----
|
||
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
||
<soap:Body>
|
||
<getResourceInfoListResponse xmlns="http://www.entaxy.ru/registry-schema-service/">
|
||
<ResourceInfoFullType>
|
||
<id>1</id>
|
||
<name>lama.xsd</name>
|
||
<idResource>1</idResource>
|
||
<version>1.0</version>
|
||
<description>lama test</description>
|
||
<convertor>false</convertor>
|
||
<namespace>http:lama.xsd</namespace>
|
||
<namespaceOut>l</namespaceOut>
|
||
<createdBy>?</createdBy>
|
||
<createdDate>12/14/20, 10:00 PM</createdDate>
|
||
</ResourceInfoFullType>
|
||
</getResourceInfoListResponse>
|
||
</soap:Body>
|
||
</soap:Envelope>
|
||
---- |