if (input[i]!=null) { input[i].ensureData(throughput[i]);
if (inputChannel[i]!=null) { inputChannel[i].ensureData(throughput[i]);
    public void prepareToWork() {        if (!Stream.scheduledRun) {            // for the day when joiners can ever receive messages,            // make sure that all inputs are ready before starting            // execution, so that messages can be delivered in time            int throughput[] =                (sjIter != null                 ? sjIter.getJoinPopWeights(nWork)                 : flIter.getJoinPopWeights(nWork));            for (int i=0; i<input.length; i++) {                // input will be null for RR joiners that don't read                // in one direction                if (input[i]!=null) {                    input[i].ensureData(throughput[i]);                }            }        }        super.prepareToWork();    }