Class EnvSubjectPrefixNotificationTemplateResolver

java.lang.Object
io.leandev.appfuse.notification.EnvSubjectPrefixNotificationTemplateResolver
All Implemented Interfaces:
NotificationTemplateResolver

public class EnvSubjectPrefixNotificationTemplateResolver extends Object implements NotificationTemplateResolver

在已渲染主旨前置部署環境前綴(env marker)的 NotificationTemplateResolver decorator

包裝既有 resolver 鏈,呼叫 delegate 渲染後,env 有設即於 RenderedTemplate.subject 前加 [{env}] 前綴;內文不變。env 為 null / 空白、或渲染主旨為空時原樣回傳(no-op)。

讓通知(Email / LINE / 站內信…)收件者一眼辨識來源環境、避免測試通知誤認為正式信。env 值 慣例取應用的 app.env(各部署外部 conf 提供;正式環境不設 → 不加前綴,零 PROD 硬編碼), 與 /actuator/info、前端版本顯示的 env marker 同源同慣例。

BannerNotificationTemplateResolver 的主旨版兄弟:橫幅標記內文、本 decorator 標記主旨, 皆置於 resolver 鏈最外層,對所有 type × channel 一致生效(渲染在通道分流前只做一次)。 與 framework MailernoticeSubjectPrefix(郵件轉址通知前綴,EMAIL-only)正交:那是 轉址註記、本 decorator 是環境標示,層次不同、不重疊。

接線:包在 resolver 鏈最外層,如 new EnvSubjectPrefixNotificationTemplateResolver(existingChain, appEnv)

Since:
4.0.0
  • Constructor Details

    • EnvSubjectPrefixNotificationTemplateResolver

      public EnvSubjectPrefixNotificationTemplateResolver(NotificationTemplateResolver delegate, String env)
      Parameters:
      delegate - 被包裝的 resolver 鏈
      env - 部署環境標示(慣例取 app.env);null / 空白=正式環境慣例、不加前綴
  • Method Details