removed the usage of mwc in omdbAPIQuery
This commit is contained in:
parent
a491937b30
commit
a1319382ff
|
@ -155,7 +155,6 @@ public class MainWindowController {
|
|||
private Main main;
|
||||
private MainWindowController mainWindowController;
|
||||
private UpdateController updateController;
|
||||
private OMDbAPIController omdbAPIController;
|
||||
private DBController dbController;
|
||||
private static final Logger LOGGER = LogManager.getLogger(MainWindowController.class.getName());
|
||||
|
||||
|
@ -166,7 +165,7 @@ public class MainWindowController {
|
|||
private boolean autoplay = false;
|
||||
|
||||
private final String version = "0.7.0";
|
||||
private final String buildNumber = "157";
|
||||
private final String buildNumber = "159";
|
||||
private final String versionName = "toothless dragon";
|
||||
private String btnStyle;
|
||||
private String color;
|
||||
|
@ -198,8 +197,7 @@ public class MainWindowController {
|
|||
public MainWindowController(Main main) {
|
||||
this.main = main;
|
||||
mainWindowController = this;
|
||||
dbController = new DBController(this.main, this);
|
||||
omdbAPIController = new OMDbAPIController(this, dbController, this.main);
|
||||
dbController = new DBController(this.main, this);
|
||||
}
|
||||
|
||||
@FXML
|
||||
|
@ -440,11 +438,10 @@ public class MainWindowController {
|
|||
if (currentTableFilm.getCached() || dbController.searchCacheByURL(getCurrentStreamUrl())) {
|
||||
LOGGER.info("loading from cache: " + getCurrentTitle());
|
||||
dbController.readCache(getCurrentStreamUrl());
|
||||
} else {
|
||||
omdbAPIController = new OMDbAPIController(mainWindowController, dbController, main);
|
||||
Thread omdbAPIThread = new Thread(omdbAPIController);
|
||||
} else {
|
||||
Thread omdbAPIThread = new Thread(new OMDbAPIController(main, dbController, currentTableFilm, omdbAPIKey));
|
||||
omdbAPIThread.setName("OMDbAPI");
|
||||
omdbAPIThread.start();
|
||||
omdbAPIThread.start();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
@ -818,6 +815,10 @@ public class MainWindowController {
|
|||
// TODO get all needed posters eg cache all not cached entries
|
||||
// TODO for entries not available show homeflix logo
|
||||
}
|
||||
|
||||
// Thread omdbAPIThread = new Thread(new OMDbAPIController(main, dbController, currentTableFilm, omdbAPIKey));
|
||||
// omdbAPIThread.setName("OMDbAPI");
|
||||
// omdbAPIThread.start();
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -39,38 +39,42 @@ import com.eclipsesource.json.JsonValue;
|
|||
import javafx.application.Platform;
|
||||
import kellerkinder.HomeFlix.application.Main;
|
||||
import kellerkinder.HomeFlix.application.MainWindowController;
|
||||
import kellerkinder.HomeFlix.datatypes.FilmTabelDataType;
|
||||
import kellerkinder.HomeFlix.datatypes.OMDbAPIResponseDataType;
|
||||
|
||||
public class OMDbAPIController implements Runnable {
|
||||
|
||||
private MainWindowController mainWindowController;
|
||||
private DBController dbController;
|
||||
private Main main;
|
||||
private DBController dbController;
|
||||
private FilmTabelDataType currentTableFilm;
|
||||
private String omdbAPIKey;
|
||||
private String URL = "https://www.omdbapi.com/?apikey=";
|
||||
private boolean useEpisode = true;
|
||||
private static final Logger LOGGER = LogManager.getLogger(MainWindowController.class.getName());
|
||||
|
||||
/**
|
||||
* constructor for the OMDbAPIController
|
||||
* @param mainWindowController the MainWindowController object
|
||||
* @param dbController the DBController object
|
||||
* @param main the Main object
|
||||
* @param dbController the DBController object
|
||||
* @param currentTableFilm the current film object
|
||||
* @param omdbAPIKey the omdbAPI key
|
||||
*/
|
||||
public OMDbAPIController(MainWindowController mainWindowController, DBController dbController, Main main){
|
||||
this.mainWindowController = mainWindowController;
|
||||
this.dbController = dbController;
|
||||
public OMDbAPIController(Main main, DBController dbController, FilmTabelDataType currentTableFilm, String omdbAPIKey) {
|
||||
this.main = main;
|
||||
this.dbController = dbController;
|
||||
this.currentTableFilm = currentTableFilm;
|
||||
this.omdbAPIKey = omdbAPIKey;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
LOGGER.info("Querying omdbAPI ...");
|
||||
JsonObject object;
|
||||
object = getByTitle(mainWindowController.getCurrentTitle());
|
||||
object = getByTitle(currentTableFilm.getTitle());
|
||||
if (object == null) return;
|
||||
|
||||
if (object.getString("Error", "").contains("not found!")) {
|
||||
String title = searchByTitle(mainWindowController.getCurrentTitle());
|
||||
String title = searchByTitle(currentTableFilm.getTitle());
|
||||
if (title.length() > 0) {
|
||||
object = getByTitle(title);
|
||||
|
||||
|
@ -122,12 +126,12 @@ public class OMDbAPIController implements Runnable {
|
|||
}
|
||||
|
||||
// adding to cache
|
||||
dbController.addCache(mainWindowController.getCurrentStreamUrl(), omdbResponse);
|
||||
dbController.setCached(mainWindowController.getCurrentStreamUrl());
|
||||
dbController.addCache(currentTableFilm.getStreamUrl(), omdbResponse);
|
||||
dbController.setCached(currentTableFilm.getStreamUrl());
|
||||
|
||||
// load data to the MainWindowController
|
||||
Platform.runLater(() -> {
|
||||
dbController.readCache(mainWindowController.getCurrentStreamUrl());
|
||||
dbController.readCache(currentTableFilm.getStreamUrl());
|
||||
});
|
||||
|
||||
return;
|
||||
|
@ -142,13 +146,13 @@ public class OMDbAPIController implements Runnable {
|
|||
String output = null;
|
||||
URL apiUrl;
|
||||
try {
|
||||
if (mainWindowController.getCurrentTableFilm().getSeason().length() > 0 && useEpisode) {
|
||||
apiUrl = new URL(URL + mainWindowController.getOmdbAPIKey() + "&t="
|
||||
if (currentTableFilm.getSeason().length() > 0 && useEpisode) {
|
||||
apiUrl = new URL(URL + omdbAPIKey + "&t="
|
||||
+ title.replace(" ", "%20")
|
||||
+ "&Season=" + mainWindowController.getCurrentTableFilm().getSeason()
|
||||
+ "&Episode=" + mainWindowController.getCurrentTableFilm().getEpisode());
|
||||
+ "&Season=" + currentTableFilm.getSeason()
|
||||
+ "&Episode=" + currentTableFilm.getEpisode());
|
||||
} else {
|
||||
apiUrl = new URL(URL + mainWindowController.getOmdbAPIKey() + "&t="
|
||||
apiUrl = new URL(URL + omdbAPIKey + "&t="
|
||||
+ title.replace(" ", "%20"));
|
||||
}
|
||||
|
||||
|
@ -179,7 +183,7 @@ public class OMDbAPIController implements Runnable {
|
|||
* English name use tmdb
|
||||
*/
|
||||
try {
|
||||
URL apiUrl = new URL(URL + mainWindowController.getOmdbAPIKey() + "&s=" + title.replace(" ", "%20"));
|
||||
URL apiUrl = new URL(URL + omdbAPIKey + "&s=" + title.replace(" ", "%20"));
|
||||
BufferedReader ina = new BufferedReader(new InputStreamReader(apiUrl.openStream()));
|
||||
output = ina.readLine();
|
||||
ina.close();
|
||||
|
|
Loading…
Reference in New Issue