Use factory methods to create new HTTP requests

This commit is contained in:
0xb00bface 2022-11-26 18:49:44 +01:00
parent 97b4aa992f
commit 1accff0557
1 changed files with 17 additions and 29 deletions

View File

@ -91,7 +91,7 @@ public class BongaCamsModel extends AbstractModel {
private boolean basicOnlineCheck() {
try {
String url = site.getBaseUrl() + "/profile/" + getName().toLowerCase();
Request req = new Request.Builder().url(url).build();
Request req = newRequestBuilder().url(url).build();
try (Response resp = site.getHttpClient().execute(req)) {
if (resp.isSuccessful()) {
String body = Objects.requireNonNull(resp.body(), HTTP_RESPONSE_BODY_IS_NULL).string();
@ -146,12 +146,9 @@ public class BongaCamsModel extends AbstractModel {
.add(ARGS, getName())
.add(ARGS, "false")
.build();
Request request = new Request.Builder()
Request request = newRequestBuilder()
.url(url)
.addHeader(USER_AGENT, Config.getInstance().getSettings().httpUserAgent)
.addHeader(ACCEPT, MIMETYPE_APPLICATION_JSON)
.addHeader(ACCEPT_LANGUAGE, Locale.ENGLISH.getLanguage())
.addHeader(REFERER, getSite().getBaseUrl())
.addHeader(X_REQUESTED_WITH, XML_HTTP_REQUEST)
.post(body)
.build();
@ -192,7 +189,7 @@ public class BongaCamsModel extends AbstractModel {
@Override
public List<StreamSource> getStreamSources() throws IOException, ExecutionException, ParseException, PlaylistException {
String streamUrl = getStreamUrl();
Request req = new Request.Builder().url(streamUrl).build();
Request req = newRequestBuilder().url(streamUrl).build();
try (Response response = site.getHttpClient().execute(req)) {
if (response.isSuccessful()) {
InputStream inputStream = Objects.requireNonNull(response.body(), HTTP_RESPONSE_BODY_IS_NULL).byteStream();
@ -253,11 +250,9 @@ public class BongaCamsModel extends AbstractModel {
.add(ARGS, Integer.toString(userId))
.add("args[3]", "")
.build();
Request request = new Request.Builder()
Request request = newRequestBuilder()
.url(url)
.addHeader(USER_AGENT, Config.getInstance().getSettings().httpUserAgent)
.addHeader(ACCEPT, MIMETYPE_APPLICATION_JSON)
.addHeader(ACCEPT_LANGUAGE, Locale.ENGLISH.getLanguage())
.addHeader(REFERER, getSite().getBaseUrl() + '/' + getName())
.addHeader(X_REQUESTED_WITH, XML_HTTP_REQUEST)
.post(body)
@ -313,13 +308,10 @@ public class BongaCamsModel extends AbstractModel {
.add("src", "public-chat")
.add("_csrf_token", getCsrfToken())
.build();
Request req = new Request.Builder()
Request req = newRequestBuilder()
.url(url)
.method("POST", body)
.header(ACCEPT, "*/*")
.header(ACCEPT_LANGUAGE, Locale.ENGLISH.getLanguage())
.header(REFERER, getUrl())
.header(USER_AGENT, Config.getInstance().getSettings().httpUserAgent)
.header(X_REQUESTED_WITH, XML_HTTP_REQUEST)
.build();
try (Response resp = site.getHttpClient().execute(req)) {
@ -340,13 +332,7 @@ public class BongaCamsModel extends AbstractModel {
}
private String getCsrfToken() throws IOException {
Request req = new Request.Builder()
.url(getUrl())
.header(ACCEPT, "*/*")
.header(ACCEPT_LANGUAGE, Locale.ENGLISH.getLanguage())
.header(REFERER, getSite().getBaseUrl())
.header(USER_AGENT, Config.getInstance().getSettings().httpUserAgent)
.build();
Request req = newRequestBuilder().url(getUrl()).build();
try (Response resp = site.getHttpClient().execute(req)) {
if (resp.isSuccessful()) {
String content = Objects.requireNonNull(resp.body(), HTTP_RESPONSE_BODY_IS_NULL).string();
@ -371,13 +357,10 @@ public class BongaCamsModel extends AbstractModel {
RequestBody body = new FormBody.Builder()
.add("_csrf_token", getCsrfToken())
.build();
Request req = new Request.Builder()
Request req = newRequestBuilder()
.url(url)
.method("POST", body)
.header(ACCEPT, "*/*")
.header(ACCEPT_LANGUAGE, Locale.ENGLISH.getLanguage())
.header(REFERER, getUrl())
.header(USER_AGENT, Config.getInstance().getSettings().httpUserAgent)
.header(X_REQUESTED_WITH, XML_HTTP_REQUEST)
.build();
try (Response resp = site.getHttpClient().execute(req)) {
@ -413,11 +396,7 @@ public class BongaCamsModel extends AbstractModel {
@Override
public boolean exists() throws IOException {
Request req = new Request.Builder() // @formatter:off
.url(getUrl())
.header(USER_AGENT, Config.getInstance().getSettings().httpUserAgent)
.header(ACCEPT_LANGUAGE, Locale.ENGLISH.getLanguage())
.build(); // @formatter:on
Request req = newRequestBuilder().url(getUrl()).build();
try (Response response = getSite().getHttpClient().execute(req)) {
if (!response.isSuccessful() && response.code() == 404) {
return false;
@ -426,4 +405,13 @@ public class BongaCamsModel extends AbstractModel {
}
}
}
private Request.Builder newRequestBuilder() {
return new Request.Builder()
.url(getUrl())
.header(ACCEPT, "*/*")
.header(ACCEPT_LANGUAGE, Locale.ENGLISH.getLanguage())
.header(REFERER, getSite().getBaseUrl())
.header(USER_AGENT, Config.getInstance().getSettings().httpUserAgent);
}
}