code: protected String toJsonBySwitchedJsonEngine(JsonManager jsonManager, Object jsonResult, Supplier<RealJsonEngine> jsonEngineSwitcher) {
          final RealJsonEngine switchedEngine = jsonEngineSwitcher.get(); // application's callback
          if (switchedEngine == null) { // check for user method
              throw new IllegalStateException("The jsonEngineSwitcher cannot return null: " + jsonEngineSwitcher);
          }
          return switchedEngine.toJson(jsonResult);
      }
docs: ---------------