В этом разделе описывается, каким образом ХС использует абстрактные услуги СПС, определенные в разделе 8 ГОСТ Р ИСО/МЭК 10021-4. Рассмотрено использование услуг портов доставки, предоставления и административного порта СПС.
14.1 Использование абстрактных-услуг порта доставки
В этом разделе рассматривается выполнение абстрактных-операций ДоставкаСообщения и ДоставкаОтчета и вызов абстрактной-операции УведомлениеОДоставке. При использовании хранилищем сообщений абстрактных услуг ПортаДоставки предполагается, что между поставщиком ПортаДоставки (АПС) и пользователем ПортаДоставки (ХС) существует абстрактная-ассоциация. Абстрактные-операции выполняются последовательно; параллельной обработки не происходит. Ошибочные ситуации здесь не описываются.
14.1.1 Выполнение абстрактной-операции ДоставкаСообщения
Когда ХС получает от АПС абстрактную операцию ДоставкаСообщения, оно выполняет следующие действия.
1) Выдает АПС результат ДоставкиСообщения для информирования его об успешном выполнении доставки. Результат доставкиСообщения должен содержать информацию подтверждения-доставки, если доставленное-сообщение содержало аргумент запрос-подтверждения-доставки. Подтверждение-доставки может быть вычислено с использованием субъектного-ключа-защиты ХС; более подробная информация содержится в 8.5.7 и 8.3.1.1.2.2 ГОСТ Р ИСО/МЭК 10021-4.
2) Следующий шаг состоит в проверке наличия какого-либо активизированного автодействия. Автопродвижение частично является специфичным-для-содержимого и поэтому оно описывается в специфичных-для-содержимого Рекомендациях. В специфичном-для-содержимого описании должны содержаться правила относительно последовательности выполнения автодействий. В результате выполнения автодействий может быть предупреждение, выполнено предоставление сообщения, создаваться новые элементы и, возможно, произойдет удаление из ХС доставленного-сообщения или других сообщений. См. 12.1.
а) Если абстрактной-операцией "регистрация-ХС" зарегистрирован критерий автопродвижения, то новый элемент сопоставляется с установленным критерием. Сравнение выполняется последовательно для каждого определенного набора выбранных критериев. На каждое "попадание" генерируется новое сообщение, которое ХС предоставляет АПС с использованием абстрактной-операции ПредоставленияСообщения. См. 15.2.1.
Правила формирования нового продвигаемого сообщения, опять-таки, специфичны-для-содержимого и поэтому описываются в соответствующих специфичных-для-содержимого стандартах. На этой стадии могут выполняться также другие специфичные-для-содержимого действия (например, подавление зацикливаний автоматически продвигаемых сообщений или выдача уведомлений о неприеме, как это описано применительно к СМПС в 19 4 ГОСТ Р ИСО/МЭК 10021-7. В зависимости от значений-аргумента абстрактной-операции "регистрация-ХС" при автопродвижении копия доставленного сообщения может быть оставлена в ХС. Если попытка автопродвижения оказалась безуспешной, копия всегда сохраняется для предотвращения потери сообщений.
Примечание - Обработка результата или ошибки такого предоставления является локальным вопросом.
б) Если регистрации-автопредупреждения выполнены посредством абстрактной-операции "регистрация-ХС", то новый элемент сопоставляется с фильтром каждой специфичной регистрации. Сравнение выполняется последовательно для каждой регистрации. При обнаружении совпадения осуществляется попытка привлечь из ХС для АП абстрактную операцию предупреждения. Это можно сделать только в том случае, если между ХС и АП существует абстрактная-ассоциация. При отсутствии абстрактной-ассоциации ХС может использовать другие локальные или нестандартные средства для вызова предупреждения. В случае попытки выдачи предупреждения по всем адресам, зарегистрированным в параметре первого совпадения, и если, по меньшей мере, одно из этих предупреждений выполнено успешно, то автопредупреждение успешно завершается и никаких последующих регистраций предупреждений не выполняется. Если для выдачи предупреждения не было найдено ни одного маршрута, то ХС устанавливает указатель-предупреждения, который сообщается АП при следующей инициации абстрактной-операции от АП к ХС.
Примечание - Если доставленное-сообщение было удалено в результате автопродвижения по подпункту а), то автопродвижение, естественно, не выполняется.
3) Только после выполнения перечисленных выше шагов новый элемент становится наблюдаемым для ХС через порт поиска. Если в результате автопродвижения было обнаружено доставленное сообщение, то ни один из порядковых номеров, присвоенных на шаге 2), повторно не используется (чтобы не войти в противоречие с установленными ИСО расширениями регистрации). Состояние этого элемента устанавливается в значение "новое".
14.1.1.1 Правила генерации общих-атрибутов
Факультативные атрибуты генерируются только в том случае, если они реализованы ХС и абонированы пользователем. Сгенерированные атрибуты формируют новый элемент ХС (в некоторых случаях порождающий-элемент и порожденные-элементы, см. раздел 6).
Способ генерации общих-атрибутов представлен в таблице 1 и пункте 11.3. Заметим, что если в соответствующем конверте-доставки общие-атрибуты отсутствуют, то в элементе генерируется атрибут со значением по умолчанию.
14.1.2 Выполнение абстрактной-операции ДоставкиОтчета
Когда ХС получает от АПС абстрактную-операцию ДоставкиОтчета, оно выполняет следующие действия:
1) выдает АПС результат ДоставкиОтчета для информирования об успешности доставки. Этот результат не имеет параметров. Более подробная информация содержится в 8.3.1.2.2 ГОСТ Р ИСО/МЭК 10021-4;
2) если затем активизируется какое-либо автодействие или другие внутренние процедуры, они выполняются. Они специфичны-для-содержимого и описаны в соответствующих специфичных-для-содержимого стандартах.
14.1.2.1 Правила генерации общих-атрибутов
Атрибуты могут генерироваться либо при получении сообщения, либо при выполнении в ХС абстрактной-операции, которое инициировано путем их привлечения из АП.
Все обязательные атрибуты (см. таблицу 1) генерируются. Факультативные атрибуты генерируются только в том случае, если они реализованы ХС и абонированы пользователем. Сгенерированные атрибуты формируют новый элемент ХС (в некоторых случаях порождающий-элемент и порожденные-элементы, см. раздел 6). Как часть этого процесса могут быть выработаны следующие виды атрибутов:
а) общие-атрибуты, сгенерированные самим ХС (например, порядковые номера);
б) общие-атрибуты, сгенерированные для компонентов конверт-доставки-сообщения. Для тех отсутствующих компонентов, для которых определены значения пo-умолчанию, генерируются общие-атрибуты со значениями по-умолчанию.
Правила генерации а) и б) описаны в 14.1.1.1. Правила генерации специфичных-для-содержимого атрибутов описаны в соответствующих специфичных-для-содержимого стандартах, например, специфичные-для-СМПС атрибуты описаны в приложении С к ГОСТ Р ИСО/МЭК 10021-7.
Способ генерации общих-атрибутов представлен в таблице 1 и пункте 11.3. Заметим, что если в соответствующем конверте-отчета общие-атрибуты отсутствуют, то в элементе генерируется атрибут со значением по умолчанию.
14.1.3 Привлечение абстрактной-операции УправлениеДоставкой