@Override
 public Mono<T> readMono(ResolvableType type, ReactiveHttpInputMessage inputMessage) {
   if (this.decoder == null) {
     return Mono.error(new IllegalStateException("No decoder set"));
   }
   MediaType contentType = getContentType(inputMessage);
   return this.decoder.decodeToMono(inputMessage.getBody(), type, contentType);
 }
 private MediaType getContentType(ReactiveHttpInputMessage inputMessage) {
   MediaType contentType = inputMessage.getHeaders().getContentType();
   return (contentType != null ? contentType : MediaType.APPLICATION_OCTET_STREAM);
 }