| package com.doumee.config.cloudfilter; | 
|   | 
| import javax.servlet.ReadListener; | 
| import javax.servlet.ServletInputStream; | 
| import javax.servlet.http.HttpServletRequest; | 
| import javax.servlet.http.HttpServletRequestWrapper; | 
| import java.io.BufferedReader; | 
| import java.io.ByteArrayInputStream; | 
| import java.io.IOException; | 
| import java.io.InputStreamReader; | 
| import java.nio.charset.StandardCharsets; | 
|   | 
|   | 
|   | 
| public class CustomHttpServletRequestWrapper extends HttpServletRequestWrapper { | 
|     private   String body; | 
|   | 
|     public CustomHttpServletRequestWrapper(HttpServletRequest request ) { | 
|         super(request); | 
|         this.body = body; | 
|     } | 
|   | 
|     @Override | 
|     public ServletInputStream getInputStream() throws IOException { | 
|         final ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(body.getBytes(StandardCharsets.UTF_8)); | 
|         ServletInputStream servletInputStream = new ServletInputStream() { | 
|             @Override | 
|             public boolean isFinished() { | 
|                 return false; | 
|             } | 
|   | 
|             @Override | 
|             public boolean isReady() { | 
|                 return false; | 
|             } | 
|   | 
|             @Override | 
|             public void setReadListener(ReadListener readListener) { | 
|             } | 
|   | 
|             @Override | 
|             public int read() throws IOException { | 
|                 return byteArrayInputStream.read(); | 
|             } | 
|         }; | 
|         return servletInputStream; | 
|     } | 
|   | 
|     @Override | 
|     public BufferedReader getReader() throws IOException { | 
|         return new BufferedReader(new InputStreamReader(this.getInputStream())); | 
|     } | 
|   | 
|     public String getBody() { | 
|         return body; | 
|     } | 
|   | 
|     public void setBody(String body) { | 
|         this.body = body; | 
|     } | 
| } |