mirror of https://github.com/hykilpikonna/AquaDX
[DIVA] Enable response compression
parent
9712946688
commit
e992ca81c3
|
@ -16,7 +16,7 @@ public class ChuniResponseWrapper extends HttpServletResponseWrapper {
|
||||||
private ServletOutputStream filterOutput;
|
private ServletOutputStream filterOutput;
|
||||||
|
|
||||||
|
|
||||||
ChuniResponseWrapper(HttpServletResponse response) {
|
public ChuniResponseWrapper(HttpServletResponse response) {
|
||||||
super(response);
|
super(response);
|
||||||
output = new ByteArrayOutputStream();
|
output = new ByteArrayOutputStream();
|
||||||
}
|
}
|
||||||
|
@ -44,7 +44,7 @@ public class ChuniResponseWrapper extends HttpServletResponseWrapper {
|
||||||
return filterOutput;
|
return filterOutput;
|
||||||
}
|
}
|
||||||
|
|
||||||
byte[] toByteArray() {
|
public byte[] toByteArray() {
|
||||||
return output.toByteArray();
|
return output.toByteArray();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -45,7 +45,7 @@ public class GetGameSettingHandler implements BaseHandler {
|
||||||
GetGameSettingResp resp = new GetGameSettingResp(
|
GetGameSettingResp resp = new GetGameSettingResp(
|
||||||
gameSetting,
|
gameSetting,
|
||||||
false,
|
false,
|
||||||
false
|
true
|
||||||
);
|
);
|
||||||
|
|
||||||
String json = mapper.write(resp);
|
String json = mapper.write(resp);
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
package icu.samnyan.aqua.sega.diva.filter;
|
package icu.samnyan.aqua.sega.diva.filter;
|
||||||
|
|
||||||
import icu.samnyan.aqua.sega.chunithm.filter.ChuniRequestWrapper;
|
import icu.samnyan.aqua.sega.chunithm.filter.ChuniRequestWrapper;
|
||||||
|
import icu.samnyan.aqua.sega.chunithm.filter.ChuniResponseWrapper;
|
||||||
import icu.samnyan.aqua.sega.util.Compression;
|
import icu.samnyan.aqua.sega.util.Compression;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
@ -37,9 +38,17 @@ public class DivaCompressionFilter extends OncePerRequestFilter {
|
||||||
}
|
}
|
||||||
|
|
||||||
ChuniRequestWrapper requestWrapper = new ChuniRequestWrapper(request, reqResult);
|
ChuniRequestWrapper requestWrapper = new ChuniRequestWrapper(request, reqResult);
|
||||||
|
ChuniResponseWrapper responseWrapper = new ChuniResponseWrapper(response);
|
||||||
|
|
||||||
filterChain.doFilter(requestWrapper, response);
|
filterChain.doFilter(requestWrapper, responseWrapper);
|
||||||
|
byte[] respSrc = responseWrapper.toByteArray();
|
||||||
|
byte[] respResult = Compression.compress(respSrc);
|
||||||
|
|
||||||
|
|
||||||
|
response.setContentLength(respResult.length);
|
||||||
|
response.setHeader("pragma", "DFI");
|
||||||
|
|
||||||
|
response.getOutputStream().write(respResult);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
Loading…
Reference in New Issue