From c1bbce7bcde57799325131747996349272dae144 Mon Sep 17 00:00:00 2001 From: 0xboobface <0xboobface@gmail.com> Date: Sat, 20 Apr 2019 21:49:23 +0200 Subject: [PATCH] Move UnknownModel to its own class --- common/src/main/java/ctbrec/UnknownModel.java | 161 ++++++++++++++++++ .../java/ctbrec/recorder/RemoteRecorder.java | 153 +---------------- 2 files changed, 162 insertions(+), 152 deletions(-) create mode 100644 common/src/main/java/ctbrec/UnknownModel.java diff --git a/common/src/main/java/ctbrec/UnknownModel.java b/common/src/main/java/ctbrec/UnknownModel.java new file mode 100644 index 00000000..98a0ea73 --- /dev/null +++ b/common/src/main/java/ctbrec/UnknownModel.java @@ -0,0 +1,161 @@ +package ctbrec; + +import java.io.IOException; +import java.util.Collections; +import java.util.List; +import java.util.concurrent.ExecutionException; + +import com.iheartradio.m3u8.ParseException; +import com.iheartradio.m3u8.PlaylistException; + +import ctbrec.io.HttpClient; +import ctbrec.recorder.Recorder; +import ctbrec.recorder.download.StreamSource; +import ctbrec.sites.Site; + +public class UnknownModel extends AbstractModel { + @Override + public boolean isOnline(boolean ignoreCache) throws IOException, ExecutionException, InterruptedException { + return false; + } + + @Override + public List getStreamSources() throws IOException, ExecutionException, ParseException, PlaylistException { + return Collections.emptyList(); + } + + @Override + public void invalidateCacheEntries() { + } + + @Override + public void receiveTip(Double tokens) throws IOException { + } + + @Override + public int[] getStreamResolution(boolean failFast) throws ExecutionException { + return new int[2]; + } + + @Override + public boolean follow() throws IOException { + return false; + } + + @Override + public boolean unfollow() throws IOException { + return false; + } + + @Override + public Site getSite() { + return new Site() { + + @Override + public boolean supportsTips() { + return false; + } + + @Override + public boolean supportsSearch() { + return false; + } + + @Override + public boolean supportsFollow() { + return false; + } + + @Override + public void shutdown() { + } + + @Override + public void setRecorder(Recorder recorder) { + } + + @Override + public void setEnabled(boolean enabled) { + } + + @Override + public boolean searchRequiresLogin() { + return false; + } + + @Override + public List search(String q) throws IOException, InterruptedException { + return Collections.emptyList(); + } + + @Override + public boolean login() throws IOException { + return false; + } + + @Override + public boolean isSiteForModel(Model m) { + return false; + } + + @Override + public boolean isEnabled() { + return false; + } + + @Override + public void init() throws IOException { + } + + @Override + public Double getTokenBalance() throws IOException { + return 0d; + } + + @Override + public Recorder getRecorder() { + return null; + } + + @Override + public String getName() { + return "unknown"; + } + + @Override + public HttpClient getHttpClient() { + return null; + } + + @Override + public String getBuyTokensLink() { + return ""; + } + + @Override + public String getBaseUrl() { + return ""; + } + + @Override + public String getAffiliateLink() { + return ""; + } + + @Override + public boolean credentialsAvailable() { + return false; + } + + @Override + public Model createModelFromUrl(String url) { + return null; + } + + @Override + public Model createModel(String name) { + return null; + } + }; + } +} \ No newline at end of file diff --git a/common/src/main/java/ctbrec/recorder/RemoteRecorder.java b/common/src/main/java/ctbrec/recorder/RemoteRecorder.java index 5662a5e1..498e1578 100644 --- a/common/src/main/java/ctbrec/recorder/RemoteRecorder.java +++ b/common/src/main/java/ctbrec/recorder/RemoteRecorder.java @@ -10,29 +10,25 @@ import java.util.ArrayList; import java.util.Collections; import java.util.Iterator; import java.util.List; -import java.util.concurrent.ExecutionException; import org.json.JSONObject; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.iheartradio.m3u8.ParseException; -import com.iheartradio.m3u8.PlaylistException; import com.squareup.moshi.JsonAdapter; import com.squareup.moshi.Moshi; -import ctbrec.AbstractModel; import ctbrec.Config; import ctbrec.Hmac; import ctbrec.Model; import ctbrec.Recording; +import ctbrec.UnknownModel; import ctbrec.event.EventBusHolder; import ctbrec.event.RecordingStateChangedEvent; import ctbrec.io.HttpClient; import ctbrec.io.HttpException; import ctbrec.io.InstantJsonAdapter; import ctbrec.io.ModelJsonAdapter; -import ctbrec.recorder.download.StreamSource; import ctbrec.sites.Site; import okhttp3.MediaType; import okhttp3.Request; @@ -458,151 +454,4 @@ public class RemoteRecorder implements Recorder { } } } - - private static class UnknownModel extends AbstractModel { - @Override - public boolean isOnline(boolean ignoreCache) throws IOException, ExecutionException, InterruptedException { - return false; - } - - @Override - public List getStreamSources() throws IOException, ExecutionException, ParseException, PlaylistException { - return Collections.emptyList(); - } - - @Override - public void invalidateCacheEntries() { - } - - @Override - public void receiveTip(Double tokens) throws IOException { - } - - @Override - public int[] getStreamResolution(boolean failFast) throws ExecutionException { - return new int[2]; - } - - @Override - public boolean follow() throws IOException { - return false; - } - - @Override - public boolean unfollow() throws IOException { - return false; - } - - @Override - public Site getSite() { - return new Site() { - - @Override - public boolean supportsTips() { - return false; - } - - @Override - public boolean supportsSearch() { - return false; - } - - @Override - public boolean supportsFollow() { - return false; - } - - @Override - public void shutdown() { - } - - @Override - public void setRecorder(Recorder recorder) { - } - - @Override - public void setEnabled(boolean enabled) { - } - - @Override - public boolean searchRequiresLogin() { - return false; - } - - @Override - public List search(String q) throws IOException, InterruptedException { - return Collections.emptyList(); - } - - @Override - public boolean login() throws IOException { - return false; - } - - @Override - public boolean isSiteForModel(Model m) { - return false; - } - - @Override - public boolean isEnabled() { - return false; - } - - @Override - public void init() throws IOException { - } - - @Override - public Double getTokenBalance() throws IOException { - return 0d; - } - - @Override - public Recorder getRecorder() { - return null; - } - - @Override - public String getName() { - return "unknown"; - } - - @Override - public HttpClient getHttpClient() { - return null; - } - - @Override - public String getBuyTokensLink() { - return ""; - } - - @Override - public String getBaseUrl() { - return ""; - } - - @Override - public String getAffiliateLink() { - return ""; - } - - @Override - public boolean credentialsAvailable() { - return false; - } - - @Override - public Model createModelFromUrl(String url) { - return null; - } - - @Override - public Model createModel(String name) { - return null; - } - }; - } - } }