ro.isdc.wro.model.resource.processor.decorator
Class ExceptionHandlingProcessorDecorator
java.lang.Object
ro.isdc.wro.util.AbstractDecorator<T>
ro.isdc.wro.model.resource.processor.decorator.AbstractProcessorDecoratorSupport<ResourcePreProcessor>
ro.isdc.wro.model.resource.processor.decorator.ProcessorDecorator
ro.isdc.wro.model.resource.processor.decorator.ExceptionHandlingProcessorDecorator
- All Implemented Interfaces:
- ImportAware, MinimizeAware, ResourcePostProcessor, ResourcePreProcessor, SupportAware, SupportedResourceTypeAware, ObjectDecorator<ResourcePreProcessor>
public class ExceptionHandlingProcessorDecorator
- extends ProcessorDecorator
Responsible for handling exception thrown by decorated processor. If the processing fails, the behavior will vary based on the WroConfiguration.isIgnoreFailingProcessor() flag:
- When the flag is false (default) - the exception is wrapped in
WroRuntimeException and thrown further
- When the flag is true - the exception is ignored and the writer will get the unchanged content from the reader.
- Since:
- 1.4.7
- Author:
- Alex Objelean
ExceptionHandlingProcessorDecorator
public ExceptionHandlingProcessorDecorator(Object processor)
- Decorates a processor with failure handling ability.
- Parameters:
processor - to decorate.
process
public void process(Resource resource,
Reader reader,
Writer writer)
throws IOException
- Process a content supplied by a reader and perform some sort of processing. It is important to know that you should
use reader for processing instead of trying to access the resource original content using
Resource, because
this way you can ignore the other preProcessors from the chain.
It is not require to explicitly handle exception. When the processing fails, the following can happen:
It is not required to close the reader and writers, because these will be closed for you.
- Specified by:
process in interface ResourcePreProcessor- Overrides:
process in class ProcessorDecorator
- Parameters:
resource - the original resource as it found in the model.reader - Reader used to read processed resource content.writer - Writer where used to write processed results.
- Throws:
IOException - when an exception occurs. The future version will change the exception type to Exception, because
any exception may occur during processing. The processing failure will be handled based on value of
WroConfiguration.isIgnoreFailingProcessor() configuration flag.
isIgnoreFailingProcessor
protected boolean isIgnoreFailingProcessor()
- Returns:
- true if the failure should be ignored. By default uses the
WroConfiguration to get the flag value.
Copyright © 2008-2013. All Rights Reserved.