protected void processReader(IModule module, ModuleBuildReader reader) throws IOException {
		// Add the cache key generator list to the result list
		List<ICacheKeyGenerator> keyGenList = reader.getCacheKeyGenerators();
		if (keyGenList != null) {
			keyGens.addAll(keyGenList);
		}
		if (smGen != null) {
			// If we're generating a source map, then merge the source map for the module
			// into the layer source map.
			SourceMap moduleSourceMap = reader.getSourceMap();
			if (moduleSourceMap != null && writer instanceof LineCountingStringWriter) {
				sectionCount++;
				LineCountingStringWriter lcWriter = (LineCountingStringWriter)writer;
				try {
					smGen.mergeMapSection(lcWriter.getLine(), lcWriter.getColumn(), moduleSourceMap.map);
				} catch (SourceMapParseException e) {
					throw new IOException(e);
				}
				// Save the sources content, indexed by the module name, so that we can
				// add the 'sourcesContent' property to the layer map after the map
				// has been generated.  We need to do this because SourceMapGeneratorV3
				// does not merge the sourcesContent properties from module source maps into
				// the merged layer source map.
				sourcesMap.put(moduleSourceMap.name, moduleSourceMap.source);
			}
		}
		// Add the reader contents to the result
		try {
			IOUtils.copy(reader, writer);
		} finally {
			IOUtils.closeQuietly(reader);
		}
		if (reader.isError()) {
			errorMessages.add(reader.getErrorMessage());
		}
	}
protected void processReader ( IModule module , ModuleBuildReader reader ) throws IOException { List < ICacheKeyGenerator > keyGenList = reader . getCacheKeyGenerators ( ) ; if ( keyGenList != null ) { keyGens . addAll ( keyGenList ) ; } if ( smGen != null ) { SourceMap moduleSourceMap = reader . getSourceMap ( ) ; if ( moduleSourceMap != null && writer instanceof LineCountingStringWriter ) { sectionCount ++ ; LineCountingStringWriter lcWriter = ( LineCountingStringWriter ) writer ; try { smGen . mergeMapSection ( lcWriter . getLine ( ) , lcWriter . getColumn ( ) , moduleSourceMap . map ) ; } catch ( SourceMapParseException e ) { throw new IOException ( e ) ; } sourcesMap . put ( moduleSourceMap . name , moduleSourceMap . source ) ; } } try { IOUtils . copy ( reader , writer ) ; } finally { IOUtils . closeQuietly ( reader ) ; } if ( reader . isError ( ) ) { errorMessages . add ( reader . getErrorMessage ( ) ) ; } }
Adds the content from {@code reader}, together with any transport contributions,
to the response aggregation.
@param module
The module id
@param reader
The module build reader
@throws IOException