Remove Exception declaration in abstract Encoder

This commit is contained in:
Rossen Stoyanchev 2016-09-16 12:19:38 -04:00
parent 9d8c089a21
commit aaa1281809
2 changed files with 10 additions and 13 deletions

View File

@ -47,14 +47,7 @@ public abstract class AbstractSingleValueEncoder<T> extends AbstractEncoder<T> {
return Flux.from(inputStream). return Flux.from(inputStream).
take(1). take(1).
concatMap(t -> { concatMap(t -> encode(t, bufferFactory, elementType, mimeType, hints));
try {
return encode(t, bufferFactory, elementType, mimeType, hints);
}
catch (Exception ex) {
return Flux.error(ex);
}
});
} }
/** /**
@ -65,9 +58,8 @@ public abstract class AbstractSingleValueEncoder<T> extends AbstractEncoder<T> {
* @param mimeType the mime type to process * @param mimeType the mime type to process
* @param hints Additional information about how to do decode, optional * @param hints Additional information about how to do decode, optional
* @return the output stream * @return the output stream
* @throws Exception in case of errors
*/ */
protected abstract Flux<DataBuffer> encode(T t, DataBufferFactory dataBufferFactory, protected abstract Flux<DataBuffer> encode(T t, DataBufferFactory dataBufferFactory,
ResolvableType type, MimeType mimeType, Map<String, Object> hints) throws Exception; ResolvableType type, MimeType mimeType, Map<String, Object> hints);
} }

View File

@ -64,10 +64,15 @@ public class ResourceEncoder extends AbstractSingleValueEncoder<Resource> {
@Override @Override
protected Flux<DataBuffer> encode(Resource resource, DataBufferFactory dataBufferFactory, protected Flux<DataBuffer> encode(Resource resource, DataBufferFactory dataBufferFactory,
ResolvableType type, MimeType mimeType, Map<String, Object> hints) throws IOException { ResolvableType type, MimeType mimeType, Map<String, Object> hints) {
ReadableByteChannel channel = resource.readableChannel(); try {
return DataBufferUtils.read(channel, dataBufferFactory, bufferSize); ReadableByteChannel channel = resource.readableChannel();
return DataBufferUtils.read(channel, dataBufferFactory, this.bufferSize);
}
catch (IOException ex) {
return Flux.error(ex);
}
} }
} }