함수 RegisterGetHandler [SWS_CM_00114] Upstream: RS_CM_00218, RS_AP_00114, RS_AP_00120, RS_AP_00127, RS_AP_00128, RS_AP_00138
void RegisterGetHandler (std::function< ara::core::Future< FieldType >()> handler) noexcept;
Register a callback function to be invoked when a Get() request is received. The method exists only if the offered service contains a Field and Field.hasGetter ==TRUE
사용
RegisterGetHandler 메서드는 서버 측에서 Skeleton의 필드 객체에 대해 호출됩니다([SWS_CM_00114]). 해당 필드의 인터페이스 설명에 Getter가 구성된 경우에만 생성된 코드에 존재합니다(Field.hasGetter == TRUE)(EXP ARAComAPI §5.4.8.1 “Registering Getters”). Proxy의 수신 Get() 요청 시 바인딩 구현에 의해 호출되는 std::function<ara::core::Future<FieldType>()> 타입의 콜백 handler이(가) 전달됩니다.
이러한 핸들러의 등록은 완전히 선택 사항입니다(EXP ARAComAPI §5.4.8.1 “Registering Getters”). 일반적으로 Communication Management가 Update()을(를) 통해 마지막으로 설정된 값을 캐시하고 Proxy 요청에 자체적으로 응답하므로, 서비스 구현에는 Getter 핸들러가 필요하지 않습니다. 핸들러는 필드 값 조회가 많은 시간을 소요하거나 연산 부하가 커서 실제 필요할 때만 Promise/Future 패턴을 통해 비동기적으로 수행해야 하는 경우에 특히 유용합니다.
오류 처리 및 제약 조건
해당 함수는 반환값이 없으며, noexcept(으)로 선언되어 있고 예외에 안전(exception safe)합니다([SWS_CM_00114]). 전달된 Callable이 존재하지 않거나 null인 경우 오류 InvalidHandlerViolation이(가) 발생합니다([SWS_CM_00114]).
상호 작용
Setter가 존재할 때 호출이 의무적인 RegisterSetHandler(EXP ARAComAPI §5.4.8.2 “Registering Setters”)과 달리, RegisterGetHandler은(는) 순수하게 선택 사항입니다. 핸들러를 특정 실행 컨텍스트에서 비동기적으로 처리해야 하는 경우, ExecutorT을(를) 사용하는 오버로드된 템플릿 함수를 추가로 사용할 수 있습니다([SWS_CM_11360]).
이 사용 지침은 AUTOSAR R25-11 명세를 바탕으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I2)
| Header-Datei | #include "<SiNamespaceDerivedDirectoryPath>/<SiShortname>_skeleton.h" |
|---|---|
| Scope | class <SI-Namespace>::skeleton:: fields::<Field> |
| Exception-Sicherheit | exception safe |
| Verletzungen (Violations) | InvalidHandlerVio- Provided Callable handler does not exist or is null lation |
Parameter (in)
| Parameter | Beschreibung |
|---|---|
| handler | The callback function to be invoked to process the Field get request |
Rückgabewert
| Typ | Beschreibung |
|---|---|
| None |
Request a governed re-review of this record. The record is not changed immediately.
- Record
AUTOSAR/AP/record/SWS_CM_00114- Status
- valid/unmigrated
- Version
AUTOSAR/AP/record/SWS_CM_00114@rel:R25-11#536a3724- Content hash
536a3724- Source
- https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_00114
Status: valid/unmigrated
Version: rel:R25-11#c6386380
Versionshistorie & Revisions (1 transition, 8 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_CM_00114@rel:R25-11#c6386380
Recorded Revisions (8):
- R25-11
rel:R25-11#417163c72026-09-30 - R19-11
rel:R19-11#f07f56a32026-10-14 - R20-11
rel:R20-11#cdd125c72026-10-14 - R21-11
rel:R21-11#cdd125c72026-10-14 - R22-11
rel:R22-11#6a153b112026-10-14 - R23-11
rel:R23-11#23956e7c2026-10-14 - R24-11
rel:R24-11#5d29d0102026-10-14 - R25-11
rel:R25-11#c63863802026-10-14 active
Requirement Text as-of this release:
Curation Decisions:
Reachable Artifacts & Dependents:
| Date | Actor | Transition | Reason / Rationale | Campaign |
|---|---|---|---|---|
| 2026-08-13 | tool | none → valid/unmigrated | mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record | 2026-08-13-status-backfill |
gemini-3.8-flash-low· 2026-10-13 · 독일어 원문