DEENESPTFRRUARHIKOZHNL

класс ara::nm::NmException

Diese Seite wurde vollständig KI-generiert auf Basis von SWS NetworkManagement (R25-11) — kein offizieller AUTOSAR-Text und keine automatisch extrahierte API-Seite wie die übrigen Module. Als Interpretation gekennzeichnete Aussagen sind Schlussfolgerungen aus den Quellen.

Header: ara/nm/nm_error_domain.h · Spezifikationselemente: 2

Руководство пользователяСОЗДАНО ИИ

Представляет ошибки при вызовах Network Management API как обрабатываемое исключение на основе кода ошибки.
СОЗДАНО ИИ не проверено Модель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: cbe44d5d3fab Происхождение Открытые вопросы (2)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал

Представляет ошибки при вызовах Network Management API как обрабатываемое исключение на основе кода ошибки.

Класс исключений служит стандартизированным типом ошибок для синхронных ошибок времени выполнения и API внутри функционального кластера Network Management согласно [SWS_ANM_01100]. Экземпляры инкапсулируют первопричину ошибки и создаются путём передачи конкретного кода ошибки [SWS_ANM_01102]. За счёт специализации общего базового исключения данный тип обеспечивает целенаправленную обработку исключений при сбойных операциях сетевого управления. Важным граничным условием является то, что конструктор гарантирует полную потокобезопасность и соблюдение гарантии отсутствия исключений (not-throw) во время создания объекта.

Контекст

Класс ara::nm::NmException выступает внутри функционального кластера Network Management (ara::nm) в качестве центрального типа исключений для сигнализации об ошибках на уровне API [SWS_ANM_01100]. Он объявлен в заголовочном файле ara/nm/nm_error_domain.h и открыто наследует от общего базового класса ara::core::Exception [SWS_ANM_01100]. В архитектуре AUTOSAR Adaptive Platform он тем самым связывает модуле-специфичные состояния ошибок сетевого управления со стандартизированным механизмом обработки исключений C++ базовой инфраструктуры.

В качестве партнеров по взаимодействию выступают API-интерфейсы Network Management, а также прикладные компоненты, использующие сервисы этого кластера. Если при выполнении такого интерфейса возникает критическое или требующее синхронной обработки состояние ошибки, объект исключения инкапсулирует эту ошибку для передачи вышестоящим вызывающим компонентам [SWS_ANM_01100]. Благодаря иерархии наследования NmException органично встраивается в общие подпрограммы обработки исключений и может перехватываться как на уровне конкретного модуля, так и полиморфно через ссылки на ara::core::Exception.

Жизненный цикл

Жизненный цикл экземпляра ara::nm::NmException начинается с его явного инстанцирования через конструктор, которому передается код ошибки типа ara::core::ErrorCode [SWS_ANM_01102]. За счет обозначения конструктора ключевым словом explicit спецификация запрещает неявные преобразования типов из кодов ошибок, благодаря чему принудительно обеспечивается осознанное и типобезопасное создание объекта [SWS_ANM_01102].

С точки зрения параллелизма конструирование исключения специфицировано как потокобезопасное (thread-safe) [SWS_ANM_01102]. Таким образом, инстанцирование может безопасно выполняться параллельно в различных потоках без необходимости реализации внешних механизмов синхронизации вызывающими компонентами. Кроме того, конструктор объявлен с noexcept [SWS_ANM_01102], что формально гарантирует невозможность генерации других исключений при самом создании объекта.

После создания экземпляр передается соответствующему обработчику исключений через механизм стека C++. Уничтожение происходит автоматически при выходе из соответствующего блока catch согласно стандартным правилам языка программирования C++ для объектов исключений.

Путь использования

Штатный сценарий использования охватывает возникновение ошибки при взаимодействии с API Network Management, создание объекта исключения, а также его последующий разбор приложением. Предположительно, исключение инициируется прежде всего тогда, когда синхронные вызовы завершаются сбоем или ошибки из возвращаемых значений явно преобразуются в исключение. Вопрос Q-636ec24993a10a5b (открытый)

Последовательность обработки исключений в Network ManagementПриложениеara::nm APINmExceptionNM-API-Operation aufrufenFehlerbedingung erkanntNmException(errorCode)Instanz erzeugtAusnahme werfen (throw)catch (const NmException&)

Диаграмма последовательности: типичный ход обработки ошибок через исключение при вызовах API Network Management. Источники: [SWS_ANM_01100], [SWS_ANM_01102]

Типичная последовательность действий подразделяется на следующие шаги:

  • Вызов операции API: приложение вызывает функцию Network Management.
  • Обнаружение ошибки и конструирование: если реализация API фиксирует условие ошибки, она создает экземпляр NmException с передачей конкретного кода ошибки [SWS_ANM_01102].
  • Генерация исключения: генерируется исключение (throw), вследствие чего нормальный поток управления прерывается [SWS_ANM_01100].
  • Перехват и обработка ошибки: приложение перехватывает исключение по ссылке как const ara::nm::NmException& и предпринимает соответствующие меры по восстановлению или журналированию.

Сценарии ошибок

Являясь классом исключения, ara::nm::NmException представляет собой инструмент отображения ошибок и сам по себе не подвержен сложным сценариям сбоев во время работы [SWS_ANM_01100]. Основным предусловием для создания является предоставление инициализированного объекта ara::core::ErrorCode [SWS_ANM_01102]. Данный код ошибки, по всей видимости, отображает домен ошибки и числовой идентификатор конкретной проблемы NM. Вопрос (открытый)

Поскольку конструктор объявлен как noexcept, сбой при создании объекта исключения исключен [SWS_ANM_01102]. Основной сценарий отказа на системном уровне заключается в отсутствии надлежащей обработки исключений: если сгенерированное NmException остается неперехваченным, это приводит к вызову std::terminate и тем самым к неконтролируемому аварийному завершению процесса. Поэтому приложения должны гарантировать, что вызывающие участки кода защищены соответствующими блоками обработки.

Данное руководство основано на спецификациях AUTOSAR Adaptive Platform (релиз R25-11) и описывает обработку исключений в модуле nm.

Синопсис

class NmException : public ara::core::Exception {...};

Объявление

class NmException : public ara::core::Exception {...};

Конструкторы и деструктор

NmException функция
explicit NmException(ara::core::ErrorCode errorCode) noexcept;

Документация методов и типов

класс NmException [SWS_ANM_01100]

class NmException : public ara::core::Exception {...};
Headerara/nm/nm_error_domain.h
Upstream-AnforderungRS_AP_00122, RS_AP_00127

Exception-Typ für API-Fehler des Network Management.

СОЗДАНО ИИ не проверено Модель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: 291b3371d50d Происхождение Открытые вопросы (1)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал

Использование

Класс NmException представляет специфический тип исключения для ошибок API Network Management (ANM) и наследует от ara::core::Exception [SWS_ANM_01100]. Он определен в заголовочном файле ara/nm/nm_error_domain.h [SWS_ANM_01100]. Инстанцирование осуществляется через явный конструктор explicit NmException(ara::core::ErrorCode errorCode) noexcept с передачей соответствующего кода ошибки [SWS_ANM_01102].

Обработка ошибок и взаимодействие

Для удобного доступа модуль дополнительно объявляет тот же тип исключения через псевдоним типа using Exception = NmException; в том же заголовочном файле [SWS_ANM_01104]. Интерпретация: в качестве специализации ara::core::Exception класс NmException, вероятно, выбрасывается преимущественно тогда, когда состояния ошибок в Network Management сигнализируются через пути на основе исключений или ошибочный ara::core::Result разрешается через исключение. Вопрос Q-44f3c1fe3e0a4023 (открытый)

Параллелизм и потокобезопасность

Конструктор NmException явно указан как noexcept и обеспечивает потокобезопасность [SWS_ANM_01102]. Поэтому экземпляры могут безопасно создаваться в параллельных потоках без дополнительной внешней синхронизации, при этом во время конструирования не выбрасываются дополнительные исключения [SWS_ANM_01102].

Это указание по использованию было сгенерировано ИИ на основе спецификации AUTOSAR Adaptive R25-11.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_ANM_01100
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_ANM_01100@rel:R25-11#8c6ab2c6
Content hash
8c6ab2c6
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_NetworkManagement.pdf#nameddest=SWS_ANM_01100
Status: valid/unmigrated Version: rel:R25-11#9cc96ca2 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_ANM_01100@rel:R25-11#9cc96ca2
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#4128a4812026-09-30
  • R23-11rel:R23-11#4af1f9002026-10-14
  • R24-11rel:R24-11#9cc96ca22026-10-14
  • R25-11rel:R25-11#9cc96ca22026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

функция NmException [SWS_ANM_01102]

explicit NmException(ara::core::ErrorCode errorCode) noexcept;
Headerara/nm/nm_error_domain.h
Upstream-AnforderungRS_AP_00120, RS_AP_00121, RS_AP_00159, RS_AP_00135
Thread Safetythread-safe

Konstruiert NmException mit einem ErrorCode.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_ANM_01102
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_ANM_01102@rel:R25-11#45c24257
Content hash
45c24257
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_NetworkManagement.pdf#nameddest=SWS_ANM_01102
Status: valid/unmigrated Version: rel:R25-11#4e8ac27f Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_ANM_01102@rel:R25-11#4e8ac27f
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#231c7e122026-09-30
  • R23-11rel:R23-11#c824af0b2026-10-14
  • R24-11rel:R24-11#4e8ac27f2026-10-14
  • R25-11rel:R25-11#4e8ac27f2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill