docs: public void log(ServiceReference sr, int level, String message, Throwable exception) {
  
          switch (level) {
          case LOG_DEBUG:
              if (delegate.isDebugEnabled()) {
                  delegate.debug(createMessage(sr, message), exception);
              }
              break;
          case LOG_ERROR:
              if (delegate.isErrorEnabled()) {
                  delegate.error(createMessage(sr, message), exception);
              }
              break;
          case LOG_INFO:
              if (delegate.isInfoEnabled()) {
                  delegate.info(createMessage(sr, message), exception);
              }
              break;
          case LOG_WARNING:
              if (delegate.isWarnEnabled()) {
                  delegate.warn(createMessage(sr, message), exception);
              }
              break;
          default:
              break;
          }
      }