Add site Camsoda

Add new package and classes for camsoda.com
This commit is contained in:
0xboobface 2018-10-25 16:19:47 +02:00
parent a7eff14c16
commit 9f9d726e5c
4 changed files with 206 additions and 0 deletions

View File

@ -0,0 +1,111 @@
package ctbrec.sites.camsoda;
import java.io.IOException;
import ctbrec.Model;
import ctbrec.io.HttpClient;
import ctbrec.recorder.Recorder;
import ctbrec.sites.Site;
import ctbrec.ui.TabProvider;
import javafx.scene.Node;
public class Camsoda implements Site {
private Recorder recorder;
private HttpClient httpClient;
@Override
public String getName() {
return "CamSoda";
}
@Override
public String getBaseUrl() {
return "https://www.camsoda.com";
}
@Override
public String getAffiliateLink() {
return "";
}
@Override
public void setRecorder(Recorder recorder) {
this.recorder = recorder;
}
@Override
public TabProvider getTabProvider() {
return new CamsodaTabProvider();
}
@Override
public Model createModel(String name) {
CamsodaModel model = new CamsodaModel();
model.setName(name);
model.setUrl(getBaseUrl() + "/" + name);
return model;
}
@Override
public Integer getTokenBalance() throws IOException {
return 0;
}
@Override
public String getBuyTokensLink() {
return getBaseUrl();
}
@Override
public void login() throws IOException {
httpClient.login();
}
@Override
public HttpClient getHttpClient() {
return httpClient;
}
@Override
public void init() throws IOException {
httpClient = new HttpClient() {
@Override
public boolean login() throws IOException {
return false;
}
};
}
@Override
public void shutdown() {
httpClient.shutdown();
}
@Override
public boolean supportsTips() {
return false;
}
@Override
public boolean supportsFollow() {
return false;
}
@Override
public boolean isSiteForModel(Model m) {
return m instanceof CamsodaModel;
}
@Override
public Node getConfigurationGui() {
return null;
}
@Override
public boolean credentialsAvailable() {
return false;
}
}

View File

@ -0,0 +1,76 @@
package ctbrec.sites.camsoda;
import java.io.IOException;
import java.util.List;
import java.util.concurrent.ExecutionException;
import com.iheartradio.m3u8.ParseException;
import com.iheartradio.m3u8.PlaylistException;
import ctbrec.AbstractModel;
import ctbrec.recorder.download.StreamSource;
import ctbrec.sites.Site;
public class CamsodaModel extends AbstractModel {
@Override
public boolean isOnline() throws IOException, ExecutionException, InterruptedException {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean isOnline(boolean ignoreCache) throws IOException, ExecutionException, InterruptedException {
// TODO Auto-generated method stub
return false;
}
@Override
public String getOnlineState(boolean failFast) throws IOException, ExecutionException {
// TODO Auto-generated method stub
return null;
}
@Override
public List<StreamSource> getStreamSources() throws IOException, ExecutionException, ParseException, PlaylistException {
// TODO Auto-generated method stub
return null;
}
@Override
public void invalidateCacheEntries() {
// TODO Auto-generated method stub
}
@Override
public void receiveTip(int tokens) throws IOException {
// TODO Auto-generated method stub
}
@Override
public int[] getStreamResolution(boolean failFast) throws ExecutionException {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean follow() throws IOException {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean unfollow() throws IOException {
// TODO Auto-generated method stub
return false;
}
@Override
public void setSite(Site site) {
// TODO Auto-generated method stub
}
}

View File

@ -0,0 +1,17 @@
package ctbrec.sites.camsoda;
import java.util.Collections;
import java.util.List;
import ctbrec.ui.TabProvider;
import javafx.scene.Scene;
import javafx.scene.control.Tab;
public class CamsodaTabProvider extends TabProvider {
@Override
public List<Tab> getTabs(Scene scene) {
return Collections.emptyList();
}
}

View File

@ -26,6 +26,7 @@ import ctbrec.recorder.LocalRecorder;
import ctbrec.recorder.Recorder;
import ctbrec.recorder.RemoteRecorder;
import ctbrec.sites.Site;
import ctbrec.sites.camsoda.Camsoda;
import ctbrec.sites.chaturbate.Chaturbate;
import ctbrec.sites.mfc.MyFreeCams;
import javafx.application.Application;
@ -59,6 +60,7 @@ public class CamrecApplication extends Application {
public void start(Stage primaryStage) throws Exception {
sites.add(new Chaturbate());
sites.add(new MyFreeCams());
sites.add(new Camsoda());
loadConfig();
createHttpClient();
bus = new AsyncEventBus(Executors.newSingleThreadExecutor());