DEENESPTFRRUARHIKOZHNL

interface de serviço StateMachineNotification

Als ara::com-Dienst modellierte Schnittstelle; Methoden/Felder werden über generierte Proxies/Skeletons aufgerufen (Parameterrichtung IN/OUT).

Guia do utilizadorGERADO POR IA

Informa Adaptive Applications sobre o estado atual e transições em andamento de uma máquina de estados.
GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 6ddf9de6db11 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Informa Adaptive Applications sobre o estado atual e transições em andamento de uma máquina de estados.

A interface de serviço StateMachineNotification disponibiliza para Adaptive Applications o estado de uma máquina de estados por meio do campo legível e assinável CurrentState ([SWS_SM_91028], [SWS_SM_91109]). Durante mudanças de estado, o campo sinaliza o valor intermediário "inTransition" até que todas as ações tenham sido executadas ([SWS_SM_00616]). A interface é oferecida após a inicialização da máquina de estados e revogada após seu encerramento ([SWS_SM_00618], [SWS_SM_00619]).

Papel e contexto de sistema da interface de serviço

A interface de serviço StateMachineNotification é fornecida pelo módulo State Management (SM) da AUTOSAR Adaptive Platform ([SWS_SM_91028]). Enquanto aplicações de controle solicitam novas transições de estado por meio de interfaces específicas, o StateMachineNotification interage principalmente com Adaptive Applications regulares no nível de aplicação (AUTOSAR_AP_SWS_StateManagement p. 44). O serviço atua como provedor (skeleton), enquanto as aplicações consumidoras são conectadas como consumidoras (proxy) por meio do ara::com. Caso configurado para uma máquina de estados concreta, o State Management instancia uma instância própria desta interface ([SWS_SM_00665]). Em projetos nos quais determinadas máquinas de estados operam de forma puramente interna e não são relevantes para as aplicações, pode-se prescindir da configuração e da disponibilização (AUTOSAR_AP_SWS_StateManagement p. 45).

Métodos, eventos e campos

A interface não define métodos clássicos ou eventos puros, mas encapsula o estado da máquina de estados monitorada em um campo central ([SWS_SM_91109]). O campo CurrentState possui o tipo de dados StateMachineStateNameType e é projetado apenas para leitura: dispõe de um getter (HasGetter: true) bem como de um notificador (HasNotifier: true), mas não possui nenhum setter (HasSetter: false) ([SWS_SM_91109]). As Adaptive Applications podem, assim, tanto consultar o valor atual de forma síncrona por meio do getter quanto assinar notificações para serem informadas de forma assíncrona via ara::com sobre mudanças de estado da respectiva máquina de estados ([SWS_SM_91109]).

Assim que uma transição de estado da máquina de estados é iniciada, o campo CurrentState assume o valor fixo "inTransition" ([SWS_SM_00616]). Esse estado intermediário é definido independentemente da fonte originadora — por exemplo, Execution Management, Platform Health Management ou uma aplicação de controle — e permanece mesmo se novas transições ocorrerem como reação a notificações de erro (AUTOSAR_AP_SWS_StateManagement p. 67). Somente quando todas as ações associadas tiverem sido processadas, o valor é atualizado para o estado de destino real da máquina de estados ([SWS_SM_00617]).

Observação de estado via StateMachineNotificationAdaptive ApplicationState ManagementUse Case: Service-BereitstellungStartStateMachine verarbeitetOfferService(StateMachineNotification)CurrentState.Subscribe() / Get()CurrentState (Initialer Zustand)Use Case: Transição de estadoZustandswechsel eingeleitetCurrentState.Update("inTransition")ActionListItems verarbeitetCurrentState.Update(Neuer Zustand)Use Case: Revogação de serviçoBeendigungsaktion verarbeitetStopOfferService()

Diagrama de sequência: disponibilização, consulta e notificações via notificador em transições de estado por meio do StateMachineNotification. Fontes: [SWS_SM_00618], [SWS_SM_91109], [SWS_SM_00616], [SWS_SM_00617]

Ciclo de vida, disponibilização e dependências de estado

A inicialização de uma máquina de estados é um processo de múltiplas etapas (AUTOSAR_AP_SWS_StateManagement p. 59). Do ponto de vista dos controladores de nível superior, uma máquina de estados só é considerada iniciada quando existe e suas interfaces associadas são oferecidas (AUTOSAR_AP_SWS_StateManagement p. 59). Cada instância configurada de StateMachineNotification é disponibilizada (offered) via ara::com assim que o ActionListItem com o comando StartStateMachine tiver sido processado com sucesso ([SWS_SM_00618]). Isso permite que as aplicações se vinculem antecipadamente ao serviço.

Se uma máquina de estados for encerrada ou desativada, o serviço é revogado novamente: a interface deixa de estar disponível (StopOffer) a partir do momento em que a respectiva ação de encerramento é processada ([SWS_SM_00619]). Caso as máquinas de estados sejam controladas por um controlador, o metamodelo também exige que cada lista de ações referencie o conjunto completo dos agentes controlados ([SWS_SM_CONSTR_00016]).

Tratamento de erros e condições de contorno

Para StateMachineNotification, não há Application Errors específicos de aplicação (como kOperationRejected) definidos no modelo de interface, pois a interface opera de maneira puramente observacional e não oferece métodos modificadores ([SWS_SM_91109]). O tratamento de erros baseia-se nos mecanismos de comunicação de ara::com durante a consulta do campo, bem como na avaliação do status "inTransition": os consumidores podem interpretar esse valor intermediário como a indicação de um fluxo de comutação ou de recuperação de erro em andamento (AUTOSAR_AP_SWS_StateManagement p. 67).

Este guia baseia-se exclusivamente em trechos da especificação da AUTOSAR Adaptive Platform R25-11.

Mitglieder

Mapa de membros

Vista de detalhes

Selecione uma entrada no índice.

Campos

CurrentState campo de serviço

This field represents the current state of StateMachine. If StateMachine is currently in transition between two different states, then the value of this field is set to "InTransition". Adaptive Applications can use this field for notifications if they are interested in state changes of a particular StateMachine.

CurrentState : StateMachineStateNameType // Field (Getter, Notifier)

Tipos de dados

Documentação

campo de serviço CurrentState [SWS_SM_91109] Upstream: RS_SM_00001, RS_SM_00004

CurrentState : StateMachineStateNameType  // Field (Getter, Notifier)

This field represents the current state of StateMachine. If StateMachine is currently in transition between two different states, then the value of this field is set to "InTransition". Adaptive Applications can use this field for notifications if they are interested in state changes of a particular StateMachine.

Scopeservice interface StateMachineNotification
TypStateMachineStateNameType
Version1.0
HasGettertrue
HasSetterfalse
HasNotifiertrue

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

Record
AUTOSAR/AP/record/SWS_SM_91109
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_SM_91109@rel:R25-11#6a0643ad
Content hash
6a0643ad
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_StateManagement.pdf#nameddest=SWS_SM_91109
Status: valid/unmigrated Version: rel:R25-11#9a559903 Versionshistorie & Revisions (1 transition, 3 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_SM_91109@rel:R25-11#9a559903
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#d52d9c602026-09-30
  • R24-11rel:R24-11#7c70cc8c2026-10-14
  • R25-11rel:R25-11#9a5599032026-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