docs: public static InjectionException checkForRecursiveException(Throwable t, String message)
      {
          InjectionException iex;
          RecursiveInjectionException.RecursionDetection rd = RecursiveInjectionException.detectRecursiveInjection(t);
          switch (rd) {
              case Recursive:
                  iex = new RecursiveInjectionException(message);
                  ((RecursiveInjectionException) iex).ivLogged = false;
                  break;
              case RecursiveAlreadyLogged:
                  iex = new RecursiveInjectionException(message);
                  ((RecursiveInjectionException) iex).ivLogged = true;
                  break;
              case NotRecursive:
              default:
                  iex = new InjectionException(message, t);
          }
          return iex;
      }