From c445e48d6d9b2b83d4f5b7719d3db1e31a17c96a Mon Sep 17 00:00:00 2001 From: 0xboobface <0xboobface@gmail.com> Date: Tue, 30 Oct 2018 15:24:02 +0100 Subject: [PATCH] Don't try to log in twice --- src/main/java/ctbrec/sites/cam4/Cam4.java | 5 ++++- .../java/ctbrec/sites/cam4/Cam4HttpClient.java | 14 +++++++++++++- src/main/java/ctbrec/sites/cam4/Cam4Model.java | 7 +++---- 3 files changed, 20 insertions(+), 6 deletions(-) diff --git a/src/main/java/ctbrec/sites/cam4/Cam4.java b/src/main/java/ctbrec/sites/cam4/Cam4.java index 5d2f1957..5d791883 100644 --- a/src/main/java/ctbrec/sites/cam4/Cam4.java +++ b/src/main/java/ctbrec/sites/cam4/Cam4.java @@ -66,7 +66,10 @@ public class Cam4 extends AbstractSite { @Override public Integer getTokenBalance() throws IOException { - return 0; + if (!credentialsAvailable()) { + throw new IOException("Not logged in"); + } + return ((Cam4HttpClient)getHttpClient()).getTokenBalance(); } @Override diff --git a/src/main/java/ctbrec/sites/cam4/Cam4HttpClient.java b/src/main/java/ctbrec/sites/cam4/Cam4HttpClient.java index 38673390..3a40c555 100644 --- a/src/main/java/ctbrec/sites/cam4/Cam4HttpClient.java +++ b/src/main/java/ctbrec/sites/cam4/Cam4HttpClient.java @@ -24,7 +24,11 @@ public class Cam4HttpClient extends HttpClient { private static final transient Logger LOG = LoggerFactory.getLogger(Cam4HttpClient.class); @Override - public boolean login() throws IOException { + public synchronized boolean login() throws IOException { + if(loggedIn) { + return true; + } + BlockingQueue queue = new LinkedBlockingQueue<>(); Runnable showDialog = () -> { @@ -94,4 +98,12 @@ public class Cam4HttpClient extends HttpClient { } cookieJar.saveFromResponse(origUrl, cookies); } + + protected int getTokenBalance() throws IOException { + if(!loggedIn) { + login(); + } + + throw new RuntimeException("Not implemented, yet"); + } } diff --git a/src/main/java/ctbrec/sites/cam4/Cam4Model.java b/src/main/java/ctbrec/sites/cam4/Cam4Model.java index 6ef57fb3..a77adefe 100644 --- a/src/main/java/ctbrec/sites/cam4/Cam4Model.java +++ b/src/main/java/ctbrec/sites/cam4/Cam4Model.java @@ -124,14 +124,13 @@ public class Cam4Model extends AbstractModel { @Override public void invalidateCacheEntries() { - // TODO Auto-generated method stub - + resolution = null; + playlistUrl = null; } @Override public void receiveTip(int tokens) throws IOException { - // TODO Auto-generated method stub - + throw new RuntimeException("Not implemented for Cam4, yet"); } @Override