Implement login and followed tab for cherry.tv
This commit is contained in:
parent
36cacda106
commit
881e8afb4c
|
@ -29,6 +29,7 @@ public class CherryTvFollowedTab extends ThumbOverviewTab implements FollowedTab
|
|||
super.createGui();
|
||||
group = new ToggleGroup();
|
||||
addOnlineOfflineSelector();
|
||||
setFilter(true);
|
||||
}
|
||||
|
||||
private void addOnlineOfflineSelector() {
|
||||
|
@ -42,21 +43,25 @@ public class CherryTvFollowedTab extends ThumbOverviewTab implements FollowedTab
|
|||
HBox.setMargin(offline, new Insets(5, 5, 5, 5));
|
||||
online.setSelected(true);
|
||||
group.selectedToggleProperty().addListener(e -> {
|
||||
((CherryTvUpdateService) updateService).setFilter(m -> {
|
||||
try {
|
||||
return m.isOnline(false) == online.isSelected();
|
||||
} catch (InterruptedException ex) {
|
||||
Thread.currentThread().interrupt();
|
||||
return false;
|
||||
} catch (Exception ex) {
|
||||
return false;
|
||||
}
|
||||
});
|
||||
setFilter(online.isSelected());
|
||||
queue.clear();
|
||||
updateService.restart();
|
||||
});
|
||||
}
|
||||
|
||||
private void setFilter(boolean online) {
|
||||
((CherryTvUpdateService) updateService).setFilter(m -> {
|
||||
try {
|
||||
return m.isOnline(false) == online;
|
||||
} catch (InterruptedException ex) {
|
||||
Thread.currentThread().interrupt();
|
||||
return false;
|
||||
} catch (Exception ex) {
|
||||
return false;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onSuccess() {
|
||||
grid.getChildren().remove(status);
|
||||
|
|
|
@ -76,7 +76,6 @@ public class CherryTvUpdateService extends PaginatedScheduledService {
|
|||
try (var response = site.getHttpClient().execute(request)) {
|
||||
if (response.isSuccessful()) {
|
||||
String body = Objects.requireNonNull(response.body()).string();
|
||||
LOG.debug(body);
|
||||
Stream<Model> stream = parseModels(body).stream();
|
||||
if (filter != null) {
|
||||
stream = stream.filter(filter);
|
||||
|
|
|
@ -60,11 +60,11 @@ public class CherryTvHttpClient extends HttpClient {
|
|||
.post(requestBody)
|
||||
.build();
|
||||
|
||||
LOG.debug("Logging in: {}\n{}", request.url(), body.toString(2));
|
||||
LOG.debug("Logging in: {}", request.url());
|
||||
try (Response response = execute(request)) {
|
||||
if (response.isSuccessful()) {
|
||||
JSONObject resp = new JSONObject(Objects.requireNonNull(response.body()).string());
|
||||
LOG.info(resp.toString(2));
|
||||
LOG.trace(resp.toString(2));
|
||||
JSONObject data = resp.getJSONObject("data");
|
||||
JSONObject login = data.getJSONObject("login");
|
||||
loggedIn = login.optBoolean("success");
|
||||
|
|
Loading…
Reference in New Issue