functie 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
Gebruik
De methode RegisterGetHandler wordt aan serverzijde aangeroepen op het field-object van een skeleton ([SWS_CM_00114]). Deze bestaat uitsluitend dan in de gegenereerde code als er in de interfacebeschrijving voor het desbetreffende field een getter is geconfigureerd (Field.hasGetter == TRUE) (EXP ARAComAPI §5.4.8.1 “Registering Getters”). Meegegeven wordt een callback handler van het type std::function<ara::core::Future<FieldType>()>, die bij een inkomende Get()-aanvraag van een proxy door de binding-implementatie wordt aangeroepen.
De registratie van een dergelijke handler is volledig optioneel (EXP ARAComAPI §5.4.8.1 “Registering Getters”). Gewoonlijk heeft de service-implementatie geen getter-handler nodig, aangezien Communication Management de laatst via Update() ingestelde waarde buffert en proxy-aanvragen zelfstandig beantwoordt. Een handler is vooral zinvol wanneer het bepalen van de field-waarde tijdsintensief of rekenkundig zwaar is en daarom pas bij daadwerkelijke behoefte asynchroon via het promise/future-patroon moet plaatsvinden.
Foutafhandeling en randvoorwaarden
De functie heeft geen retourwaarde, is gedeclareerd als noexcept en is uitzonderingsveilig (exception safe) ([SWS_CM_00114]). Indien het meegegeven callable niet bestaat of null is, is er sprake van de fout InvalidHandlerViolation ([SWS_CM_00114]).
Samenspel
In tegenstelling tot RegisterSetHandler, waarvan de aanroep bij een aanwezige setter verplicht is (EXP ARAComAPI §5.4.8.2 “Registering Setters”), blijft RegisterGetHandler puur optioneel. Indien de handler in een specifieke uitvoeringscontext asynchroon moet worden verwerkt, staat aanvullend de overladen templatefunctie met ExecutorT ter beschikking ([SWS_CM_11360]).
Deze gebruiksinstructie is gegenereerd door een AI op basis van de specificatie AUTOSAR R25-11.
Implementer's Guide volgt (complexiteit 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#af209a9f- Content hash
af209a9f- 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 · Duits origineel