SuppressLogbackStartupInfoLogs.java

package se.jobtechdev.personaldatagateway.api.logging;

import ch.qos.logback.core.status.OnConsoleStatusListener;
import ch.qos.logback.core.status.Status;

public class SuppressLogbackStartupInfoLogs extends OnConsoleStatusListener {

  // Extendable handle for implementing extra functionality
  protected void hookPostStart(Status status) {
    /* NOP */
  }

  @Override
  public void start() {
    final var statuses = context.getStatusManager().getCopyOfStatusList();
    for (final var status : statuses) {
      if (status.getLevel() != Status.INFO) {
        super.start();
        hookPostStart(status);
      }
    }
  }
}