docs: @SuppressWarnings({ "squid:S2221", "squid:S00112" })
      public <T> T runAsSystemAsTenant(final Callable<T> callable, final String tenant) {
          final SecurityContext oldContext = SecurityContextHolder.getContext();
          try {
              LOG.debug("entering system code execution");
              return tenantAware.runAsTenant(tenant, () -> {
                  try {
                      setSystemContext(SecurityContextHolder.getContext());
                      return callable.call();
  
                  } catch (final RuntimeException e) {
                      throw e;
                  } catch (final Exception e) {
                      throw new RuntimeException(e);
                  }
              });
  
          } finally {
              SecurityContextHolder.setContext(oldContext);
              LOG.debug("leaving system code execution");
          }
      }