Reader input = reader;
Writer output = null;
LOG.debug("processing resource: {}", requestUri);
try {
final StopWatch stopWatch = new StopWatch();
final Injector injector = InjectorBuilder.create(new BaseWroManagerFactory()).build();
final List<ResourcePreProcessor> processors = getProcessorsList();
if (processors == null || processors.isEmpty()) {
IOUtils.copy(reader, writer);
} else {
for (final ResourcePreProcessor processor : processors) {
stopWatch.start("Using " + processor.getClass().getSimpleName());
// inject all required properties
injector.inject(processor);
output = new StringWriter();
LOG.debug("Using {} processor", processor);
processor.process(createResource(requestUri), input, output);