Program: 117622
Project: 117622
Buggy source:
@SuppressWarnings("String_Node_Str") @GetMany(ChampionList.class) public CloseableIterator<ChampionList> getManyChampionList(final Map<String,Object> query,final PipelineContext context){
  final Platform platform=(Platform)query.get("String_Node_Str");
  final Iterable<String> versions=(Iterable<String>)query.get("String_Node_Str");
  Utilities.checkNotNull(platform,"String_Node_Str",versions,"String_Node_Str");
  final String locale=query.get("String_Node_Str") == null ? platform.getDefaultLocale() : (String)query.get("String_Node_Str");
  final Set<String> includedData=query.get("String_Node_Str") == null ? ImmutableSet.of("String_Node_Str") : (Set<String>)query.get("String_Node_Str");
  final Boolean dataById=query.get("String_Node_Str") == null ? Boolean.FALSE : (Boolean)query.get("String_Node_Str");
  final Multimap<String,String> parameters=HashMultimap.create();
  parameters.put("String_Node_Str",locale);
  parameters.putAll("String_Node_Str",includedData);
  parameters.put("String_Node_Str",dataById.toString());
  final Iterator<String> iterator=versions.iterator();
  return CloseableIterators.from(new Iterator<ChampionList>(){
    @Override public boolean hasNext(){
      return iterator.hasNext();
    }
    @Override public ChampionList next(){
      final String version=iterator.next();
      final String content=get("String_Node_Str",version,locale);
      final ChampionList data=DataObject.fromJSON(ChampionList.class,new Function<JsonNode,JsonNode>(){
        private final Function<JsonNode,JsonNode> INCLUDED_DATA_PROCESSOR=new IncludedDataProcessor(Sets.union(includedData,IncludedDataProcessor.DEFAULT_CHAMPION_TAGS));
        @Override public JsonNode apply(        final JsonNode tree){
          if (tree == null) {
            return tree;
          }
          final ObjectNode data=(ObjectNode)tree.get("String_Node_Str");
          if (data == null) {
            return tree;
          }
          for (          final JsonNode champion : data) {
            INCLUDED_DATA_PROCESSOR.apply(champion);
            CHAMPION_PROCESSOR.apply(champion);
            if (dataById) {
              final String key=champion.get("String_Node_Str").asText();
              final int id=champion.get("String_Node_Str").asInt();
              data.remove(key);
              data.set(Integer.toString(id),champion);
            }
          }
          return tree;
        }
      }
,content);
      data.setPlatform(platform.getTag());
      data.setLocale(locale);
      data.setIncludedData(includedData);
      for (      final Champion champion : data.getData().values()) {
        champion.setPlatform(platform.getTag());
        champion.setVersion(data.getVersion());
        champion.setLocale(locale);
        champion.setIncludedData(includedData);
      }
      return data;
    }
    @Override public void remove(){
      throw new UnsupportedOperationException();
    }
  }
);
}

Fixed version (ground truth):
@SuppressWarnings("String_Node_Str") @GetMany(ChampionList.class) public CloseableIterator<ChampionList> getManyChampionList(final Map<String,Object> query,final PipelineContext context){
  final Platform platform=(Platform)query.get("String_Node_Str");
  final Iterable<String> versions=(Iterable<String>)query.get("String_Node_Str");
  Utilities.checkNotNull(platform,"String_Node_Str",versions,"String_Node_Str");
  final String locale=query.get("String_Node_Str") == null ? platform.getDefaultLocale() : (String)query.get("String_Node_Str");
  final Set<String> includedData=query.get("String_Node_Str") == null ? ImmutableSet.of("String_Node_Str") : (Set<String>)query.get("String_Node_Str");
  final Boolean dataById=query.get("String_Node_Str") == null ? Boolean.FALSE : (Boolean)query.get("String_Node_Str");
  final Multimap<String,String> parameters=HashMultimap.create();
  parameters.put("String_Node_Str",locale);
  parameters.putAll("String_Node_Str",includedData);
  parameters.put("String_Node_Str",dataById.toString());
  final Iterator<String> iterator=versions.iterator();
  return CloseableIterators.from(new Iterator<ChampionList>(){
    @Override public boolean hasNext(){
      return iterator.hasNext();
    }
    @Override public ChampionList next(){
      final String version=iterator.next();
      final String content=get("String_Node_Str",version,locale);
      final ChampionList data=DataObject.fromJSON(ChampionList.class,new Function<JsonNode,JsonNode>(){
        private final Function<JsonNode,JsonNode> INCLUDED_DATA_PROCESSOR=new IncludedDataProcessor(Sets.union(includedData,IncludedDataProcessor.DEFAULT_CHAMPION_TAGS));
        @Override public JsonNode apply(        final JsonNode tree){
          if (tree == null) {
            return tree;
          }
          final ObjectNode data=(ObjectNode)tree.get("String_Node_Str");
          if (data == null) {
            return tree;
          }
          for (          final JsonNode champion : data) {
            INCLUDED_DATA_PROCESSOR.apply(champion);
            CHAMPION_PROCESSOR.apply(champion);
            if (dataById) {
              final String key=champion.get("String_Node_Str").asText();
              final int id=champion.get("String_Node_Str").asInt();
              data.remove(key);
              data.set(Integer.toString(id),champion);
            }
          }
          return tree;
        }
      }
,content);
      if (data == null) {
        return null;
      }
      data.setPlatform(platform.getTag());
      data.setLocale(locale);
      data.setIncludedData(includedData);
      for (      final Champion champion : data.getData().values()) {
        champion.setPlatform(platform.getTag());
        champion.setVersion(data.getVersion());
        champion.setLocale(locale);
        champion.setIncludedData(includedData);
      }
      return data;
    }
    @Override public void remove(){
      throw new UnsupportedOperationException();
    }
  }
);
}