From d44fc58bf2e393a23cbdd311e5a4cd62470b66ac Mon Sep 17 00:00:00 2001 From: 0xb00bface <0xboobface@gmail.com> Date: Sun, 23 May 2021 16:56:14 +0200 Subject: [PATCH] Fix display of resolution tag for amateur.tv --- .../src/main/java/ctbrec/ui/tabs/ThumbCell.java | 2 +- common/src/main/java/ctbrec/Model.java | 11 ++++++++++- .../java/ctbrec/sites/amateurtv/AmateurTv.java | 15 +++++---------- .../ctbrec/sites/amateurtv/AmateurTvModel.java | 8 ++------ 4 files changed, 18 insertions(+), 18 deletions(-) diff --git a/client/src/main/java/ctbrec/ui/tabs/ThumbCell.java b/client/src/main/java/ctbrec/ui/tabs/ThumbCell.java index 677cc3b7..7d4a994c 100644 --- a/client/src/main/java/ctbrec/ui/tabs/ThumbCell.java +++ b/client/src/main/java/ctbrec/ui/tabs/ThumbCell.java @@ -727,7 +727,7 @@ public class ThumbCell extends StackPane { try { return model.getStreamResolution(false); } catch (ExecutionException e) { - LOG.warn("Error loading stream resolution for model {}", model, e); + LOG.debug("Error loading stream resolution for model {}: {}", model, e.getLocalizedMessage()); return new int[2]; } } diff --git a/common/src/main/java/ctbrec/Model.java b/common/src/main/java/ctbrec/Model.java index 551ac5c4..0cb9ab1e 100644 --- a/common/src/main/java/ctbrec/Model.java +++ b/common/src/main/java/ctbrec/Model.java @@ -76,6 +76,15 @@ public interface Model extends Comparable, Serializable { public boolean isOnline() throws IOException, ExecutionException, InterruptedException; + /** + * + * @param failFast + * If set to true, the method returns immediately and might return false even if the model actually is online + * @return + * @throws IOException + * @throws ExecutionException + * @throws InterruptedException + */ public boolean isOnline(boolean ignoreCache) throws IOException, ExecutionException, InterruptedException; public State getOnlineState(boolean failFast) throws IOException, ExecutionException; @@ -98,7 +107,7 @@ public interface Model extends Comparable, Serializable { * Determines the stream resolution for this model * * @param failFast - * If set to true, the method returns emmediately, even if the resolution is unknown. If + * If set to true, the method returns immediately, even if the resolution is unknown. If * the resolution is unknown, the array contains 0,0 * * @return a tupel of width and height represented by an int[2] diff --git a/common/src/main/java/ctbrec/sites/amateurtv/AmateurTv.java b/common/src/main/java/ctbrec/sites/amateurtv/AmateurTv.java index 11bf2f63..16ae8612 100644 --- a/common/src/main/java/ctbrec/sites/amateurtv/AmateurTv.java +++ b/common/src/main/java/ctbrec/sites/amateurtv/AmateurTv.java @@ -6,17 +6,12 @@ import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - import ctbrec.Model; import ctbrec.io.HttpClient; import ctbrec.sites.AbstractSite; public class AmateurTv extends AbstractSite { - private static final Logger LOG = LoggerFactory.getLogger(AmateurTv.class); - public static String baseUrl = "https://www.amateur.tv"; private AmateurTvHttpClient httpClient; @@ -79,22 +74,22 @@ public class AmateurTv extends AbstractSite { @Override public boolean supportsTips() { - return true; + return false; } @Override public boolean supportsFollow() { - return true; + return false; } @Override public boolean supportsSearch() { - return true; + return false; } @Override public boolean searchRequiresLogin() { - return true; + return false; } @Override @@ -116,7 +111,7 @@ public class AmateurTv extends AbstractSite { @Override public Model createModelFromUrl(String url) { - Matcher m = Pattern.compile("https?://.*?amateur.tv/.*").matcher(url); + Matcher m = Pattern.compile("https?://.*?amateur.tv/(.*)").matcher(url); if(m.matches()) { String modelName = m.group(1); return createModel(modelName); diff --git a/common/src/main/java/ctbrec/sites/amateurtv/AmateurTvModel.java b/common/src/main/java/ctbrec/sites/amateurtv/AmateurTvModel.java index 832caebf..7697516d 100644 --- a/common/src/main/java/ctbrec/sites/amateurtv/AmateurTvModel.java +++ b/common/src/main/java/ctbrec/sites/amateurtv/AmateurTvModel.java @@ -13,8 +13,6 @@ import javax.xml.bind.JAXBException; import org.json.JSONObject; import org.jsoup.nodes.Element; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; import com.iheartradio.m3u8.Encoding; import com.iheartradio.m3u8.Format; @@ -37,8 +35,6 @@ import okhttp3.Response; public class AmateurTvModel extends AbstractModel { - private static final Logger LOG = LoggerFactory.getLogger(AmateurTvModel.class); - private boolean online = false; @Override @@ -53,11 +49,11 @@ public class AmateurTvModel extends AbstractModel { @Override public State getOnlineState(boolean failFast) throws IOException, ExecutionException { - if (failFast) { + if (failFast && onlineState != UNKNOWN) { return onlineState; } else { try { - isOnline(true); + onlineState = isOnline(true) ? ONLINE : OFFLINE; } catch (InterruptedException e) { Thread.currentThread().interrupt(); onlineState = OFFLINE;