Dentro do Interceptor.intercept (), como sei se a ação já foi executada?

Estou implementando algumas coisas no meu aplicativo baseado no Struts usando interceptores e estou ficando confuso sobre como o ciclo de vida deles funciona. De acordo com os documentos do Struts ("Interceptadores", "Interceptores de escrita" e"Foto grande"), deve funcionar algo como isto:

FirstInterceptor
  NextInterceptor
    LastInterceptor
      Action
      Result
    LastInterceptor
  NextInterceptor
FirstInterceptor

o que faz sentido, mas estou tropeçando em como distinguir uma chamada de interceptador executando antes da ação de uma execução após a renderização do resultado (estou pulandoPreResultListenerestá aqui).Se eu iniciar um depurador, recebo duas chamadas paraintercept() e não consegue encontrar nada muito óbvio noActionInvocation Eu estou sendo aprovado. (Atualizar: Esta parte foi uma grande confusão do meu lado, e eu pude responder minha pergunta abaixo quando a recebi)

o"Foto grande" A página fala de maneira um tanto confusa de uma cláusula "antes" e "depois" "chamada", mas não sei o que fazer com isso:

[...]

Isso inclui invocar quaisquer interceptadores (a cláusula before) antes de invocar a própria ação.

[...]

Os interceptores são executados novamente (na ordem inversa, chamando a cláusula after).

[...]

(Atualizar: Essas duas frases ainda são ruins)

questionAnswers(1)

yourAnswerToTheQuestion