core/src/main/java/com/twitter/elephantbird/mapreduce/input/combine/CompositeInputSplit.java
@SuppressWarnings("unchecked")  // Generic array assignment
  public void readFields(DataInput in) throws IOException {
    if (conf == null) {
      throw new IOException("Hadoop Configuration not set via setConf");
    }
    int card = WritableUtils.readVInt(in);
    splits = new ArrayList<InputSplit>();
    for (int i = 0; i < card; ++i) {
      splits.add(SplitUtil.deserializeInputSplit(conf, (DataInputStream) in));
    }
  }
@SuppressWarnings("unchecked")  // Generic array assignment
  public void readFields(DataInput in) throws IOException {
    if (conf == null) {
      throw new IOException("Hadoop Configuration not set via setConf");
    }
    int card = WritableUtils.readVInt(in);
    splits = new ArrayList<InputSplit>();
    for (int i = 0; i < card; ++i) {
      splits.add(SplitUtil.deserializeInputSplit(conf, (DataInputStream) in));
    }
  }
{@inheritDoc}
@throws IOException If the child InputSplit cannot be read, typically
for failing access checks.