/** * Handle inputKey and inputValues and inputs for backwards compatibility. */ @Override protected void preRunChecks(Object reducer) { if (inputKey != null && !getInputValues().isEmpty()) { clearInput(); addInput(new ReduceFeeder<K1, V1>(getConfiguration()).updateInput(inputKey, getInputValues())); } if (inputs != null && !inputs.isEmpty()){ groupedInputs.clear(); groupedInputs = new ReduceFeeder<K1, V1>(getConfiguration()).updateAll(inputs); } if (groupedInputs == null || groupedInputs.isEmpty()) { throw new IllegalStateException("No input was provided"); } if (reducer == null) { throw new IllegalStateException("No Reducer class was provided"); } if (driverReused()) { throw new IllegalStateException("Driver reuse not allowed"); } else { setUsedOnceStatus(); } }