Class ConfigReloadResult

java.lang.Object
top.wcpe.beacon.agent.api.ConfigReloadResult

public final class ConfigReloadResult extends Object
一次配置重载的结果,由业务插件在 ReportingConfigChangeListener 中返回。

语义约定(见 docs/specs/delivery-reload-ack.md §3.1):

兼容性:本类是纯 Java 8 不可变值对象,零第三方依赖。抛出异常等同 failed(由 agent 侧兜住),但推荐显式返回 failed 以保留可读原因。

  • Method Details

    • ok

      public static ConfigReloadResult ok()
      重载成功。
    • ok

      public static ConfigReloadResult ok(String detailJson)
      重载成功,并附带结构化详情。
      Parameters:
      detailJson - 插件自定义的 JSON 文本,控制面原样透传不解析;可为 null
    • failed

      public static ConfigReloadResult failed(String reason)
      重载失败。
      Parameters:
      reason - 可读原因(会直接进交付回执与告警文案,请勿放敏感信息)
    • failed

      public static ConfigReloadResult failed(String reason, String detailJson)
      重载失败,并附带结构化详情。
      Parameters:
      reason - 可读原因
      detailJson - 插件自定义的 JSON 文本,控制面原样透传不解析;可为 null
    • isOk

      public boolean isOk()
      是否成功。
    • reason

      public String reason()
      可读原因;成功时为空串(永不为 null)。
    • detailJson

      public String detailJson()
      插件自定义结构化详情 JSON;无则空串(永不为 null)。
    • appliedMd5

      public Optional<String> appliedMd5()
      实际加载内容的 md5;未自报时为空。
    • appliedVersion

      public Optional<String> appliedVersion()
      实际解析出的规则/配置版本标识;未自报时为空。
    • appliedCount

      public OptionalInt appliedCount()
      实际加载的条目/活动数量;未自报时为空。
    • withAppliedMd5

      public ConfigReloadResult withAppliedMd5(String md5)
      回报「实际加载内容的 md5」,供控制面核对版本是否符合期望。
      Returns:
      新的结果实例(本类不可变)
    • withAppliedVersion

      public ConfigReloadResult withAppliedVersion(String version)
      回报「实际解析出的版本标识」,供控制面核对版本是否符合期望。
      Returns:
      新的结果实例(本类不可变)
    • withAppliedCount

      public ConfigReloadResult withAppliedCount(int count)
      回报「实际加载的条目/活动数量」。
      Returns:
      新的结果实例(本类不可变)
    • toString

      public String toString()
      Overrides:
      toString in class Object