Merge pull request #11 from Seil0/dev

update to build 127 "plasma cow"
This commit is contained in:
Jannik
2017-06-01 17:21:14 +02:00
committed by GitHub
22 changed files with 51 additions and 33 deletions
+2 -2
View File
@@ -4,8 +4,8 @@
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
<classpathentry kind="con" path="org.eclipse.fx.ide.jdt.core.JAVAFX_CONTAINER"/> <classpathentry kind="con" path="org.eclipse.fx.ide.jdt.core.JAVAFX_CONTAINER"/>
<classpathentry kind="lib" path="src/libraries/minimal-json-0.9.4.jar"/> <classpathentry kind="lib" path="src/libraries/minimal-json-0.9.4.jar"/>
<classpathentry kind="lib" path="src/libraries/sqlite-jdbc-3.16.1.jar"/>
<classpathentry kind="lib" path="src/libraries/jfoenix-1.3.0.jar"/>
<classpathentry kind="lib" path="src/libraries/commons-io-2.5.jar"/> <classpathentry kind="lib" path="src/libraries/commons-io-2.5.jar"/>
<classpathentry kind="lib" path="src/libraries/jfoenix-1.4.0.jar"/>
<classpathentry kind="lib" path="src/libraries/sqlite-jdbc-3.18.0.jar"/>
<classpathentry kind="output" path="bin"/> <classpathentry kind="output" path="bin"/>
</classpath> </classpath>
+1
View File
@@ -1,5 +1,6 @@
eclipse.preferences.version=1 eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
org.eclipse.jdt.core.compiler.compliance=1.8 org.eclipse.jdt.core.compiler.compliance=1.8
+2 -1
View File
@@ -2,12 +2,13 @@
Project HomeFlix is a Kellerkinder Project, that alowes you to sort all your local saved movies in clean UI. Project HomeFlix is a Kellerkinder Project, that alowes you to sort all your local saved movies in clean UI.
The dev branch is **only merged** into master when a **new release** is released. Please commit all changes to [dev](https://github.com/Seil0/Project-HomeFlix/tree/dev). The dev branch is **only merged** into master when a **new release** is released, so **master contains the latest released version**. Please commit all changes to [dev](https://github.com/Seil0/Project-HomeFlix/tree/dev).
Librarys used in this Project: Librarys used in this Project:
JFoenix: https://github.com/jfoenixadmin/JFoenix JFoenix: https://github.com/jfoenixadmin/JFoenix
minimal-json: https://github.com/ralfstx/minimal-json minimal-json: https://github.com/ralfstx/minimal-json
sqlite-jdbc: https://github.com/xerial/sqlite-jdbc sqlite-jdbc: https://github.com/xerial/sqlite-jdbc
apache commons io : https://commons.apache.org/proper/commons-io/
## Installation ## Installation
+1
View File
@@ -1 +1,2 @@
/application/ /application/
/libraries/
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+9 -14
View File
@@ -32,7 +32,6 @@ import java.io.InputStreamReader;
import java.io.OutputStream; import java.io.OutputStream;
import java.io.PrintWriter; import java.io.PrintWriter;
import java.io.StringWriter; import java.io.StringWriter;
import java.lang.Thread.State;
import java.math.BigInteger; import java.math.BigInteger;
import java.net.URI; import java.net.URI;
import java.net.URISyntaxException; import java.net.URISyntaxException;
@@ -184,10 +183,8 @@ public class MainWindowController {
static boolean firststart = false; static boolean firststart = false;
private int hashA = -2055934614; private int hashA = -2055934614;
private String version = "0.5.1"; private String version = "0.5.1";
private String buildNumber = "125"; private String buildNumber = "127";
private String versionName = "plasma cow"; private String versionName = "plasma cow";
private String buildURL = "https://raw.githubusercontent.com/Seil0/Project-HomeFlix/master/updates/buildNumber.txt";
private String downloadLink = "https://raw.githubusercontent.com/Seil0/Project-HomeFlix/master/updates/downloadLink.txt";
private File dirWin = new File(System.getProperty("user.home") + "/Documents/HomeFlix"); private File dirWin = new File(System.getProperty("user.home") + "/Documents/HomeFlix");
private File dirLinux = new File(System.getProperty("user.home") + "/HomeFlix"); private File dirLinux = new File(System.getProperty("user.home") + "/HomeFlix");
private File fileWin = new File(dirWin + "/config.xml"); private File fileWin = new File(dirWin + "/config.xml");
@@ -470,13 +467,9 @@ public class MainWindowController {
@FXML @FXML
private void updateBtnAction(){ private void updateBtnAction(){
System.out.println(Updater.getState()); Thread updateThread = new Thread(Updater);
if(Updater.getState() == State.NEW){ updateThread.setName("Updater");
Updater.start(); updateThread.start();
}else{
Updater.run();
}
} }
@FXML @FXML
@@ -519,7 +512,7 @@ public class MainWindowController {
*/ */
void setMain(Main main) { void setMain(Main main) {
this.main = main; this.main = main;
Updater = new updater(this,buildURL, downloadLink, buildNumber); Updater = new updater(this, buildNumber);
dbController = new DBController(this, this.main); dbController = new DBController(this, this.main);
ApiQuery = new apiQuery(this, dbController, this.main); ApiQuery = new apiQuery(this, dbController, this.main);
} }
@@ -763,8 +756,10 @@ public class MainWindowController {
if(autoUpdate){ if(autoUpdate){
autoupdateBtn.setSelected(true); autoupdateBtn.setSelected(true);
try { try {
Updater.start(); Thread updateThread = new Thread(Updater);
Updater.join(); updateThread.setName("Updater");
updateThread.start();
updateThread.join();
} catch (InterruptedException e) { } catch (InterruptedException e) {
e.printStackTrace(); e.printStackTrace();
} }
+35 -15
View File
@@ -15,20 +15,25 @@ import javax.swing.ProgressMonitorInputStream;
import org.apache.commons.io.FileUtils; import org.apache.commons.io.FileUtils;
import com.eclipsesource.json.Json;
import com.eclipsesource.json.JsonArray;
import com.eclipsesource.json.JsonObject;
import com.eclipsesource.json.JsonValue;
import javafx.application.Platform; import javafx.application.Platform;
public class updater extends Thread{ public class updater implements Runnable{
private MainWindowController mainWindowController; private MainWindowController mainWindowController;
private String buildURL;
private String downloadLink;
private String updateBuildNumber;
private String buildNumber; private String buildNumber;
private String apiOutput;
private String updateBuildNumber; //tag_name from Github
private String browserDownloadUrl; //update download link
private String githubApi = "https://api.github.com/repos/Seil0/Project-HomeFlix/releases/latest";
public updater(MainWindowController m, String buildURL,String downloadLink,String buildNumber){
public updater(MainWindowController m, String buildNumber){
mainWindowController=m; mainWindowController=m;
this.buildURL=buildURL;
this.downloadLink=downloadLink;
this.buildNumber=buildNumber; this.buildNumber=buildNumber;
} }
@@ -37,14 +42,27 @@ public class updater extends Thread{
Platform.runLater(() -> { Platform.runLater(() -> {
mainWindowController.updateBtn.setText(mainWindowController.bundle.getString("checkingUpdates")); mainWindowController.updateBtn.setText(mainWindowController.bundle.getString("checkingUpdates"));
}); });
try {
URL url = new URL(buildURL); //URL of the text file with the current build number try {
BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream())); URL githubApiUrl = new URL(githubApi);
updateBuildNumber = in.readLine(); //write InputStream in String BufferedReader ina = new BufferedReader(new InputStreamReader(githubApiUrl.openStream()));
in.close(); apiOutput = ina.readLine();
ina.close();
} catch (IOException e1) { } catch (IOException e1) {
mainWindowController.showErrorMsg(mainWindowController.errorUpdateV, e1); mainWindowController.showErrorMsg(mainWindowController.errorUpdateV, e1);
e1.printStackTrace();
} }
JsonObject object = Json.parse(apiOutput).asObject();
JsonArray objectAssets = Json.parse(apiOutput).asObject().get("assets").asArray();
updateBuildNumber = object.getString("tag_name", "");
// updateName = object.getString("name", "");
// updateChanges = object.getString("body", "");
for (JsonValue asset : objectAssets) {
browserDownloadUrl = asset.asObject().getString("browser_download_url", "");
}
System.out.println("Build: "+buildNumber+", Update: "+updateBuildNumber); System.out.println("Build: "+buildNumber+", Update: "+updateBuildNumber);
//Compares the program BuildNumber with the current BuildNumber if program BuildNumber < current BuildNumber then perform a update //Compares the program BuildNumber with the current BuildNumber if program BuildNumber < current BuildNumber then perform a update
@@ -61,9 +79,10 @@ public class updater extends Thread{
mainWindowController.updateBtn.setText(mainWindowController.bundle.getString("updateBtnavail")); mainWindowController.updateBtn.setText(mainWindowController.bundle.getString("updateBtnavail"));
}); });
System.out.println("update available"); System.out.println("update available");
System.out.println("download link: " + browserDownloadUrl);
try { try {
//get the download-Data URL //get the download-Data URL
URL downloadURL = new URL(downloadLink); URL downloadURL = new URL(browserDownloadUrl);
BufferedReader in = new BufferedReader(new InputStreamReader(downloadURL.openStream())); BufferedReader in = new BufferedReader(new InputStreamReader(downloadURL.openStream()));
String updateDataURL = in.readLine(); String updateDataURL = in.readLine();
@@ -80,8 +99,9 @@ public class updater extends Thread{
Runtime.getRuntime().exec("java -jar ProjectHomeFlix.jar"); //start again Runtime.getRuntime().exec("java -jar ProjectHomeFlix.jar"); //start again
System.exit(0); //finishes itself System.exit(0); //finishes itself
} catch (IOException e) { } catch (IOException e) {
//in case there is an error Platform.runLater(() -> {
mainWindowController.showErrorMsg(mainWindowController.errorUpdateD, e); mainWindowController.showErrorMsg(mainWindowController.errorUpdateD, e);
});
} }
} }
} }
Binary file not shown.
Binary file not shown.