test commit
This commit is contained in:
parent
d9e84b899d
commit
a460c751cf
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,72 +1,91 @@
|
||||||
package application;
|
package application;
|
||||||
import java.sql.Connection;
|
|
||||||
import java.sql.DriverManager;
|
import java.sql.Connection;
|
||||||
import java.sql.PreparedStatement;
|
import java.sql.DriverManager;
|
||||||
|
import java.sql.PreparedStatement;
|
||||||
import java.sql.ResultSet;
|
import java.sql.ResultSet;
|
||||||
import java.sql.SQLException;
|
import java.sql.SQLException;
|
||||||
import java.sql.Statement;
|
import java.sql.Statement;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.FileInputStream;
|
import java.io.FileInputStream;
|
||||||
|
|
||||||
class DBController {
|
class DBController
|
||||||
|
{
|
||||||
|
|
||||||
|
private Connection connection;
|
||||||
|
|
||||||
private Connection connection;
|
|
||||||
|
|
||||||
private String DB_PATH_Win = "C:/ProgramData/PWMaster/datenbank.db";
|
private String DB_PATH_Win = "C:/ProgramData/PWMaster/datenbank.db";
|
||||||
private String DB_PATH_Linux = System.getProperty("user.home") + "/bin/PWMaster/datenbank.db";
|
|
||||||
|
private String DB_PATH_Linux = System.getProperty("user.home")
|
||||||
|
+ "/bin/PWMaster/datenbank.db";
|
||||||
|
|
||||||
private Main main;
|
private Main main;
|
||||||
//private Cryption crypo = new Cryption();
|
|
||||||
private String schluessel; //Für Ver-/Entschlüsselung
|
// private Cryption crypo = new Cryption();
|
||||||
|
private String schluessel; // Für Ver-/Entschlüsselung
|
||||||
public void main() {
|
|
||||||
|
public void main()
|
||||||
|
{
|
||||||
try {
|
try {
|
||||||
if(System.getProperty("os.name").equals("Linux")) {
|
if (System.getProperty("os.name").equals("Linux")) {
|
||||||
connection = DriverManager.getConnection("jdbc:sqlite:" + DB_PATH_Linux);
|
connection = DriverManager
|
||||||
|
.getConnection("jdbc:sqlite:" + DB_PATH_Linux);
|
||||||
} else {
|
} else {
|
||||||
connection = DriverManager.getConnection("jdbc:sqlite:" + DB_PATH_Win);
|
connection = DriverManager
|
||||||
|
.getConnection("jdbc:sqlite:" + DB_PATH_Win);
|
||||||
}
|
}
|
||||||
} catch (SQLException e) {
|
} catch (SQLException e) {
|
||||||
// TODO Auto-generated catch block
|
// TODO Auto-generated catch block
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
DBController(Main main){
|
|
||||||
|
DBController(Main main)
|
||||||
|
{
|
||||||
this.main = main;
|
this.main = main;
|
||||||
}
|
}
|
||||||
public void verbindeDatenbank() { //Verbinde mit der Datenbank-Datei
|
|
||||||
try {
|
public void verbindeDatenbank()
|
||||||
if (connection != null)
|
{ // Verbinde mit der Datenbank-Datei
|
||||||
return;
|
try {
|
||||||
if(System.getProperty("os.name").equals("Linux")) {
|
if (connection != null)
|
||||||
connection = DriverManager.getConnection("jdbc:sqlite:" + DB_PATH_Linux);
|
return;
|
||||||
|
if (System.getProperty("os.name").equals("Linux")) {
|
||||||
|
connection = DriverManager
|
||||||
|
.getConnection("jdbc:sqlite:" + DB_PATH_Linux);
|
||||||
} else {
|
} else {
|
||||||
connection = DriverManager.getConnection("jdbc:sqlite:" + DB_PATH_Win);
|
connection = DriverManager
|
||||||
|
.getConnection("jdbc:sqlite:" + DB_PATH_Win);
|
||||||
}
|
}
|
||||||
if (!connection.isClosed())
|
if (!connection.isClosed())
|
||||||
System.out.println();
|
System.out.println();
|
||||||
} catch (SQLException e) {
|
} catch (SQLException e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
Runtime.getRuntime().addShutdownHook(new Thread() {
|
Runtime.getRuntime().addShutdownHook(new Thread() {
|
||||||
public void run() {
|
public void run()
|
||||||
try {
|
{
|
||||||
if (!connection.isClosed() && connection != null) {
|
try {
|
||||||
connection.close();
|
if (!connection.isClosed() && connection != null) {
|
||||||
if (connection.isClosed())
|
connection.close();
|
||||||
System.out.println();
|
if (connection.isClosed())
|
||||||
}
|
System.out.println();
|
||||||
} catch (SQLException e) {
|
}
|
||||||
e.printStackTrace();
|
} catch (SQLException e) {
|
||||||
}
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
});
|
}
|
||||||
}
|
});
|
||||||
public void fuellenDatenbank(int pID, String pDatum, String pKonto, String pNutzername, String pEmail, String pPasswort) { //Neuen Eintrag erstellen
|
}
|
||||||
try {
|
|
||||||
PreparedStatement ps = connection.prepareStatement("INSERT INTO konten VALUES (?, ?, ?, ?, ?, ?);");
|
public void fuellenDatenbank(int pID, String pDatum, String pKonto,
|
||||||
ps.setInt(1, pID); //Primärschlässel
|
String pNutzername, String pEmail, String pPasswort)
|
||||||
|
{ // Neuen Eintrag erstellen
|
||||||
|
try {
|
||||||
|
PreparedStatement ps = connection.prepareStatement(
|
||||||
|
"INSERT INTO konten VALUES (?, ?, ?, ?, ?, ?);");
|
||||||
|
ps.setInt(1, pID); // Primärschlässel
|
||||||
ps.setString(2, pDatum);
|
ps.setString(2, pDatum);
|
||||||
ps.setString(3, pKonto);
|
ps.setString(3, pKonto);
|
||||||
ps.setString(4, pNutzername);
|
ps.setString(4, pNutzername);
|
||||||
|
@ -74,230 +93,277 @@ class DBController {
|
||||||
ps.setString(6, pPasswort);
|
ps.setString(6, pPasswort);
|
||||||
|
|
||||||
ps.addBatch();
|
ps.addBatch();
|
||||||
connection.setAutoCommit(false);
|
connection.setAutoCommit(false);
|
||||||
ps.executeBatch(); //SQL ausführen
|
ps.executeBatch(); // SQL ausführen
|
||||||
connection.setAutoCommit(true);
|
connection.setAutoCommit(true);
|
||||||
//connection.close();
|
// connection.close();
|
||||||
} catch (SQLException e) {
|
} catch (SQLException e) {
|
||||||
System.err.println("Couldn't handle DB-Query");
|
System.err.println("Couldn't handle DB-Query");
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
public void erstelleDatenbank(){ //Erstelle Tabelle mit Reihen
|
|
||||||
try {
|
public void erstelleDatenbank()
|
||||||
Statement stmt = connection.createStatement();
|
{ // Erstelle Tabelle mit Reihen
|
||||||
stmt.executeUpdate("DROP TABLE IF EXISTS konten;");
|
try {
|
||||||
stmt.executeUpdate("CREATE TABLE konten (id, datum, konto, nutzername, email, passwort);");
|
Statement stmt = connection.createStatement();
|
||||||
} catch (SQLException e) {
|
stmt.executeUpdate("DROP TABLE IF EXISTS konten;");
|
||||||
System.err.println("Couldn't handle DB-Query");
|
stmt.executeUpdate(
|
||||||
e.printStackTrace();
|
"CREATE TABLE konten (id, datum, konto, nutzername, email, passwort);");
|
||||||
}
|
} catch (SQLException e) {
|
||||||
|
System.err.println("Couldn't handle DB-Query");
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
public boolean existiertDatenbank(String pPfad){ //Prüft ob die Datenbank existiert
|
|
||||||
|
public boolean existiertDatenbank(String pPfad)
|
||||||
|
{ // Prüft ob die Datenbank existiert
|
||||||
File varTmpDir = new File(pPfad);
|
File varTmpDir = new File(pPfad);
|
||||||
if(!varTmpDir.exists()){
|
if (!varTmpDir.exists()) {
|
||||||
return false;
|
return false;
|
||||||
}else{
|
} else {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
private void ausgebenSyso(){ //Debugging Ausgabe der kompletten Datenbank
|
|
||||||
try {
|
|
||||||
Statement stmt = connection.createStatement();
|
|
||||||
ResultSet rs = stmt.executeQuery("SELECT * FROM konten;");
|
|
||||||
while (rs.next()) {
|
|
||||||
System.out.println("Datum = " + rs.getString("datum"));
|
|
||||||
System.out.println("Konto = " + rs.getString("konto"));
|
|
||||||
System.out.println("Nutzername = " + rs.getString("nutzername"));
|
|
||||||
System.out.println("E-Mail = " + rs.getString("email"));
|
|
||||||
System.out.println("Passwort = " + rs.getString("passwort"));
|
|
||||||
System.out.println(" ");
|
|
||||||
}
|
|
||||||
|
|
||||||
} catch (SQLException e) {
|
private void ausgebenSyso()
|
||||||
System.err.println("Couldn't handle DB-Query");
|
{ // Debugging Ausgabe der kompletten Datenbank
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
public String getDatum(int pID){ //Gibt das Datum zurück
|
|
||||||
try {
|
|
||||||
Statement stmt = connection.createStatement();
|
|
||||||
ResultSet rs = stmt.executeQuery("SELECT id, datum FROM konten WHERE id = "+pID+";" );
|
|
||||||
return rs.getString("datum");
|
|
||||||
} catch (SQLException e) {
|
|
||||||
System.err.println("Couldn't handle DB-Query");
|
|
||||||
e.printStackTrace();
|
|
||||||
return "Error 404";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
public String getKonto(int pID){ //Gibt das Konto zurück
|
|
||||||
try {
|
|
||||||
Statement stmt = connection.createStatement();
|
|
||||||
ResultSet rs = stmt.executeQuery("SELECT id, konto FROM konten WHERE id = "+pID+";" );
|
|
||||||
return rs.getString("konto");
|
|
||||||
} catch (SQLException e) {
|
|
||||||
System.err.println("Couldn't handle DB-Query");
|
|
||||||
e.printStackTrace();
|
|
||||||
return "Error 404";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
public String getNutzername(int pID){ //Gibt den Nutzernamen zurück
|
|
||||||
try {
|
|
||||||
Statement stmt = connection.createStatement();
|
|
||||||
ResultSet rs = stmt.executeQuery("SELECT id, nutzername FROM konten WHERE id = "+pID+";" );
|
|
||||||
return rs.getString("nutzername");
|
|
||||||
} catch (SQLException e) {
|
|
||||||
System.err.println("Couldn't handle DB-Query");
|
|
||||||
e.printStackTrace();
|
|
||||||
return "Error 404";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
public String getEmail(int pID){ //Gibt die Email zurück
|
|
||||||
try {
|
|
||||||
Statement stmt = connection.createStatement();
|
|
||||||
ResultSet rs = stmt.executeQuery("SELECT id, email FROM konten WHERE id = "+pID+";" );
|
|
||||||
return rs.getString("email");
|
|
||||||
|
|
||||||
} catch (SQLException e) {
|
|
||||||
System.err.println("Couldn't handle DB-Query");
|
|
||||||
e.printStackTrace();
|
|
||||||
return "Error 404";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
public String getPasswort(int pID){ //Gibt das Passwort zurück
|
|
||||||
try {
|
|
||||||
Statement stmt = connection.createStatement();
|
|
||||||
ResultSet rs = stmt.executeQuery("SELECT id, passwort FROM konten WHERE id = "+pID+";" );
|
|
||||||
return rs.getString("passwort");
|
|
||||||
|
|
||||||
} catch (SQLException e) {
|
|
||||||
System.err.println("Couldn't handle DB-Query");
|
|
||||||
e.printStackTrace();
|
|
||||||
return "Error 404";
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDatum(int pID, String pDatum){ //Setzt das Datum
|
|
||||||
try {
|
|
||||||
Statement stmt = connection.createStatement();
|
|
||||||
stmt.executeUpdate("UPDATE konten SET datum = '"+pDatum+"'WHERE id ="+pID+";");
|
|
||||||
} catch (SQLException e) {
|
|
||||||
System.err.println("Couldn't handle DB-Query");
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setKonto(int pID, String pKonto){ //Setzt das Konto
|
|
||||||
try {
|
|
||||||
Statement stmt = connection.createStatement();
|
|
||||||
stmt.executeUpdate("UPDATE konten SET konto = '"+pKonto+"'WHERE id ="+pID+";");
|
|
||||||
} catch (SQLException e) {
|
|
||||||
System.err.println("Couldn't handle DB-Query");
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setNutername(int pID, String pNutername){ //Setzt den Nutzername
|
|
||||||
try {
|
|
||||||
Statement stmt = connection.createStatement();
|
|
||||||
stmt.executeUpdate("UPDATE konten SET nutzername = '"+pNutername+"'WHERE id ="+pID+";");
|
|
||||||
} catch (SQLException e) {
|
|
||||||
System.err.println("Couldn't handle DB-Query");
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setEmail(int pID, String pEmail){ //Setzt die Email
|
|
||||||
try {
|
|
||||||
Statement stmt = connection.createStatement();
|
|
||||||
stmt.executeUpdate("UPDATE konten SET email = '"+pEmail+"'WHERE id ="+pID+";");
|
|
||||||
} catch (SQLException e) {
|
|
||||||
System.err.println("Couldn't handle DB-Query");
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setPasswort(int pID, String pPasswort){ //Setzt das Passwort
|
|
||||||
try {
|
|
||||||
Statement stmt = connection.createStatement();
|
|
||||||
stmt.executeUpdate("UPDATE konten SET passwort = '"+pPasswort+"'WHERE id ="+pID+";");
|
|
||||||
} catch (SQLException e) {
|
|
||||||
System.err.println("Couldn't handle DB-Query");
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void loeschenEintrag(int pID){ //Löscht den Eintrag
|
|
||||||
int alteOrdnung = getNeueID(); //Speichert die ID des letzten Eintrags
|
|
||||||
try {
|
try {
|
||||||
if(pID == getNeueID() -1){ //Falls letzter Eintrag gelöscht werden soll
|
Statement stmt = connection.createStatement();
|
||||||
PreparedStatement ps = connection.prepareStatement("DELETE FROM konten WHERE id=?");
|
ResultSet rs = stmt.executeQuery("SELECT * FROM konten;");
|
||||||
|
while (rs.next()) {
|
||||||
|
System.out.println("Datum = " + rs.getString("datum"));
|
||||||
|
System.out.println("Konto = " + rs.getString("konto"));
|
||||||
|
System.out.println("Nutzername = " + rs.getString("nutzername"));
|
||||||
|
System.out.println("E-Mail = " + rs.getString("email"));
|
||||||
|
System.out.println("Passwort = " + rs.getString("passwort"));
|
||||||
|
System.out.println(" ");
|
||||||
|
}
|
||||||
|
|
||||||
|
} catch (SQLException e) {
|
||||||
|
System.err.println("Couldn't handle DB-Query");
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getDatum(int pID)
|
||||||
|
{ // Gibt das Datum zurück
|
||||||
|
try {
|
||||||
|
Statement stmt = connection.createStatement();
|
||||||
|
ResultSet rs = stmt.executeQuery(
|
||||||
|
"SELECT id, datum FROM konten WHERE id = " + pID + ";");
|
||||||
|
return rs.getString("datum");
|
||||||
|
} catch (SQLException e) {
|
||||||
|
System.err.println("Couldn't handle DB-Query");
|
||||||
|
e.printStackTrace();
|
||||||
|
return "Error 404";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getKonto(int pID)
|
||||||
|
{ // Gibt das Konto zurück
|
||||||
|
try {
|
||||||
|
Statement stmt = connection.createStatement();
|
||||||
|
ResultSet rs = stmt.executeQuery(
|
||||||
|
"SELECT id, konto FROM konten WHERE id = " + pID + ";");
|
||||||
|
return rs.getString("konto");
|
||||||
|
} catch (SQLException e) {
|
||||||
|
System.err.println("Couldn't handle DB-Query");
|
||||||
|
e.printStackTrace();
|
||||||
|
return "Error 404";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getNutzername(int pID)
|
||||||
|
{ // Gibt den Nutzernamen zurück
|
||||||
|
try {
|
||||||
|
Statement stmt = connection.createStatement();
|
||||||
|
ResultSet rs = stmt.executeQuery(
|
||||||
|
"SELECT id, nutzername FROM konten WHERE id = " + pID + ";");
|
||||||
|
return rs.getString("nutzername");
|
||||||
|
} catch (SQLException e) {
|
||||||
|
System.err.println("Couldn't handle DB-Query");
|
||||||
|
e.printStackTrace();
|
||||||
|
return "Error 404";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getEmail(int pID)
|
||||||
|
{ // Gibt die Email zurück
|
||||||
|
try {
|
||||||
|
Statement stmt = connection.createStatement();
|
||||||
|
ResultSet rs = stmt.executeQuery(
|
||||||
|
"SELECT id, email FROM konten WHERE id = " + pID + ";");
|
||||||
|
return rs.getString("email");
|
||||||
|
|
||||||
|
} catch (SQLException e) {
|
||||||
|
System.err.println("Couldn't handle DB-Query");
|
||||||
|
e.printStackTrace();
|
||||||
|
return "Error 404";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getPasswort(int pID)
|
||||||
|
{ // Gibt das Passwort zurück
|
||||||
|
try {
|
||||||
|
Statement stmt = connection.createStatement();
|
||||||
|
ResultSet rs = stmt.executeQuery(
|
||||||
|
"SELECT id, passwort FROM konten WHERE id = " + pID + ";");
|
||||||
|
return rs.getString("passwort");
|
||||||
|
|
||||||
|
} catch (SQLException e) {
|
||||||
|
System.err.println("Couldn't handle DB-Query");
|
||||||
|
e.printStackTrace();
|
||||||
|
return "Error 404";
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDatum(int pID, String pDatum)
|
||||||
|
{ // Setzt das Datum
|
||||||
|
try {
|
||||||
|
Statement stmt = connection.createStatement();
|
||||||
|
stmt.executeUpdate("UPDATE konten SET datum = '" + pDatum
|
||||||
|
+ "'WHERE id =" + pID + ";");
|
||||||
|
} catch (SQLException e) {
|
||||||
|
System.err.println("Couldn't handle DB-Query");
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setKonto(int pID, String pKonto)
|
||||||
|
{ // Setzt das Konto
|
||||||
|
try {
|
||||||
|
Statement stmt = connection.createStatement();
|
||||||
|
stmt.executeUpdate("UPDATE konten SET konto = '" + pKonto
|
||||||
|
+ "'WHERE id =" + pID + ";");
|
||||||
|
} catch (SQLException e) {
|
||||||
|
System.err.println("Couldn't handle DB-Query");
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setNutername(int pID, String pNutername)
|
||||||
|
{ // Setzt den Nutzername
|
||||||
|
try {
|
||||||
|
Statement stmt = connection.createStatement();
|
||||||
|
stmt.executeUpdate("UPDATE konten SET nutzername = '" + pNutername
|
||||||
|
+ "'WHERE id =" + pID + ";");
|
||||||
|
} catch (SQLException e) {
|
||||||
|
System.err.println("Couldn't handle DB-Query");
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEmail(int pID, String pEmail)
|
||||||
|
{ // Setzt die Email
|
||||||
|
try {
|
||||||
|
Statement stmt = connection.createStatement();
|
||||||
|
stmt.executeUpdate("UPDATE konten SET email = '" + pEmail
|
||||||
|
+ "'WHERE id =" + pID + ";");
|
||||||
|
} catch (SQLException e) {
|
||||||
|
System.err.println("Couldn't handle DB-Query");
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPasswort(int pID, String pPasswort)
|
||||||
|
{ // Setzt das Passwort
|
||||||
|
try {
|
||||||
|
Statement stmt = connection.createStatement();
|
||||||
|
stmt.executeUpdate("UPDATE konten SET passwort = '" + pPasswort
|
||||||
|
+ "'WHERE id =" + pID + ";");
|
||||||
|
} catch (SQLException e) {
|
||||||
|
System.err.println("Couldn't handle DB-Query");
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void loeschenEintrag(int pID)
|
||||||
|
{ // Löscht den Eintrag
|
||||||
|
int alteOrdnung = getNeueID(); // Speichert die ID des letzten Eintrags
|
||||||
|
try {
|
||||||
|
if (pID == getNeueID() - 1) { // Falls letzter Eintrag gelöscht werden
|
||||||
|
// soll
|
||||||
|
PreparedStatement ps = connection
|
||||||
|
.prepareStatement("DELETE FROM konten WHERE id=?");
|
||||||
ps.setInt(1, pID);
|
ps.setInt(1, pID);
|
||||||
ps.executeUpdate();
|
ps.executeUpdate();
|
||||||
}else{ // Wenn ein Eintrag in mitten der DB gelöscht wird, dann wird hochkopiert
|
} else { // Wenn ein Eintrag in mitten der DB gelöscht wird, dann wird
|
||||||
while(!(pID+1 == alteOrdnung -1)){
|
// hochkopiert
|
||||||
|
while (!(pID + 1 == alteOrdnung - 1)) {
|
||||||
int pIDneu = pID + 1;
|
int pIDneu = pID + 1;
|
||||||
Statement stmt = connection.createStatement();
|
Statement stmt = connection.createStatement();
|
||||||
ResultSet rs = stmt.executeQuery("SELECT id, datum, konto, nutzername, email, passwort FROM konten WHERE id = "+pIDneu+";" );
|
ResultSet rs = stmt.executeQuery(
|
||||||
|
"SELECT id, datum, konto, nutzername, email, passwort FROM konten WHERE id = "
|
||||||
|
+ pIDneu + ";");
|
||||||
|
|
||||||
String pDatum = rs.getString("datum");
|
String pDatum = rs.getString("datum");
|
||||||
String pKonto = rs.getString("konto");
|
String pKonto = rs.getString("konto");
|
||||||
String pNutzername = rs.getString("nutzername");
|
String pNutzername = rs.getString("nutzername");
|
||||||
String pEmail = rs.getString("email");
|
String pEmail = rs.getString("email");
|
||||||
String pPasswort = rs.getString("passwort");
|
String pPasswort = rs.getString("passwort");
|
||||||
|
|
||||||
stmt.executeUpdate("UPDATE konten SET datum = '"+pDatum+"', konto = '"+pKonto+"', nutzername = '"+pNutzername+"', email = '"+pEmail+"', passwort = '"+pPasswort+"'WHERE id ="+pID+";");
|
stmt.executeUpdate("UPDATE konten SET datum = '" + pDatum
|
||||||
|
+ "', konto = '" + pKonto + "', nutzername = '"
|
||||||
|
+ pNutzername + "', email = '" + pEmail + "', passwort = '"
|
||||||
|
+ pPasswort + "'WHERE id =" + pID + ";");
|
||||||
pID = pID + 1;
|
pID = pID + 1;
|
||||||
}
|
}
|
||||||
PreparedStatement ps = connection.prepareStatement("DELETE FROM konten WHERE id=?");
|
PreparedStatement ps = connection
|
||||||
ps.setInt(1, alteOrdnung -1);
|
.prepareStatement("DELETE FROM konten WHERE id=?");
|
||||||
|
ps.setInt(1, alteOrdnung - 1);
|
||||||
ps.executeUpdate();
|
ps.executeUpdate();
|
||||||
}
|
}
|
||||||
} catch (SQLException e) {
|
} catch (SQLException e) {
|
||||||
System.err.println("Couldn't handle DB-Query");
|
System.err.println("Couldn't handle DB-Query");
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getNeueID(){ //Gibt die ID des nächsten Eintrags zurück
|
public int getNeueID()
|
||||||
|
{ // Gibt die ID des nächsten Eintrags zurück
|
||||||
int neueID = 0;
|
int neueID = 0;
|
||||||
try {
|
try {
|
||||||
Statement stmt = connection.createStatement();
|
Statement stmt = connection.createStatement();
|
||||||
ResultSet rs = stmt.executeQuery("SELECT * FROM konten;");
|
ResultSet rs = stmt.executeQuery("SELECT * FROM konten;");
|
||||||
while (rs.next()) {
|
while (rs.next()) {
|
||||||
neueID = rs.getInt("id") + 1;
|
neueID = rs.getInt("id") + 1;
|
||||||
}
|
}
|
||||||
rs.close();
|
rs.close();
|
||||||
} catch (SQLException e) {
|
} catch (SQLException e) {
|
||||||
System.err.println("Couldn't handle DB-Query");
|
System.err.println("Couldn't handle DB-Query");
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
return neueID;
|
return neueID;
|
||||||
}
|
}
|
||||||
|
|
||||||
public ArrayList<tableData> ladeTabelle(){ //Gibt ein Objekt daten mit allen Einträgen der DB zurück
|
public ArrayList<tableData> ladeTabelle()
|
||||||
|
{ // Gibt ein Objekt daten mit allen Einträgen der DB zurück
|
||||||
ArrayList<tableData> daten = new ArrayList<>();
|
ArrayList<tableData> daten = new ArrayList<>();
|
||||||
try {
|
try {
|
||||||
Statement stmt = connection.createStatement();
|
Statement stmt = connection.createStatement();
|
||||||
ResultSet rs = stmt.executeQuery("SELECT * FROM konten;");
|
ResultSet rs = stmt.executeQuery("SELECT * FROM konten;");
|
||||||
while (rs.next()) {
|
while (rs.next()) {
|
||||||
try {
|
try {
|
||||||
// Entschlüsselte Daten werden als Datenobjekt gespeichert
|
// Entschlüsselte Daten werden als Datenobjekt gespeichert
|
||||||
//daten.add(new tableData(rs.getInt("id"), crypo.entschluesseln(rs.getString("datum"), schluessel), crypo.entschluesseln(rs.getString("konto"),schluessel)));
|
// daten.add(new tableData(rs.getInt("id"),
|
||||||
|
// crypo.entschluesseln(rs.getString("datum"), schluessel),
|
||||||
|
// crypo.entschluesseln(rs.getString("konto"),schluessel)));
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
// TODO Auto-generated catch block
|
// TODO Auto-generated catch block
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (SQLException e) {
|
} catch (SQLException e) {
|
||||||
System.err.println("Couldn't handle DB-Query");
|
System.err.println("Couldn't handle DB-Query");
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
return daten;
|
return daten;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setSchluessel(String pSchluessel){ //Setzt den Schlüssel für die Ver-/Entschlüsslung
|
public void setSchluessel(String pSchluessel)
|
||||||
|
{ // Setzt den Schlüssel für die Ver-/Entschlüsslung
|
||||||
schluessel = pSchluessel;
|
schluessel = pSchluessel;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
package application;
|
package application;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.FileInputStream;
|
import java.io.FileInputStream;
|
||||||
import java.security.GeneralSecurityException;
|
import java.security.GeneralSecurityException;
|
||||||
import java.security.SecureRandom;
|
import java.security.SecureRandom;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.Random;
|
import java.util.Random;
|
||||||
import com.j256.twofactorauth.TimeBasedOneTimePasswordUtil;
|
|
||||||
import javafx.application.Application;
|
import javafx.application.Application;
|
||||||
import javafx.application.Platform;
|
import javafx.application.Platform;
|
||||||
import javafx.fxml.FXMLLoader;
|
import javafx.fxml.FXMLLoader;
|
||||||
|
@ -27,69 +27,86 @@ import javafx.scene.image.ImageView;
|
||||||
import javafx.scene.layout.AnchorPane;
|
import javafx.scene.layout.AnchorPane;
|
||||||
import javafx.scene.layout.GridPane;
|
import javafx.scene.layout.GridPane;
|
||||||
|
|
||||||
public class Main extends Application {
|
public class Main extends Application
|
||||||
|
{
|
||||||
private MainWindowController mwc;
|
private MainWindowController mwc;
|
||||||
|
|
||||||
private DBController dbc = new DBController(this);
|
private DBController dbc = new DBController(this);
|
||||||
private String schluesselNutzer; //Passwort des Nutzers
|
|
||||||
|
private String schluesselNutzer; // Passwort des Nutzers
|
||||||
|
|
||||||
private Stage primaryStage;
|
private Stage primaryStage;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void start(Stage primaryStage) {
|
public void start(Stage primaryStage)
|
||||||
|
{
|
||||||
this.primaryStage = primaryStage;
|
this.primaryStage = primaryStage;
|
||||||
mainWindow();
|
mainWindow();
|
||||||
}
|
}
|
||||||
private void mainWindow(){
|
|
||||||
try {
|
|
||||||
FXMLLoader loader = new FXMLLoader(getClass().getResource("MainWindow.fxml"));
|
|
||||||
AnchorPane pane = loader.load();
|
|
||||||
|
|
||||||
//primaryStage.setWidth(1536);
|
private void mainWindow()
|
||||||
//primaryStage.setHeight(864);
|
{
|
||||||
primaryStage.setTitle("jFxKasse"); //Title der Stage
|
try {
|
||||||
|
FXMLLoader loader = new FXMLLoader(
|
||||||
|
getClass().getResource("MainWindow.fxml"));
|
||||||
|
AnchorPane pane = loader.load();
|
||||||
|
// Test
|
||||||
|
// primaryStage.setWidth(1536);
|
||||||
|
// primaryStage.setHeight(864);
|
||||||
|
primaryStage.setTitle("jFxKasse"); // Title der Stage
|
||||||
|
|
||||||
mwc = loader.getController();
|
mwc = loader.getController();
|
||||||
mwc.setMain(this, dbc);
|
mwc.setMain(this, dbc);
|
||||||
|
|
||||||
firstStart(); //Prüft ob das Programm zuvor gestartet wurde
|
firstStart(); // Prüft ob das Programm zuvor gestartet wurde
|
||||||
|
|
||||||
dbc.main(); //Startet die Datenbank
|
dbc.main(); // Startet die Datenbank
|
||||||
mwc.initUI(); //Startet die UI
|
mwc.initUI(); // Startet die UI
|
||||||
mwc.fuelleTablle(); //Ladt die Einträge in die Tabelle
|
mwc.fuelleTablle(); // Ladt die Einträge in die Tabelle
|
||||||
|
|
||||||
Scene scene = new Scene(pane);
|
Scene scene = new Scene(pane);
|
||||||
scene.getStylesheets().add(Main.class.getResource("application.css").toExternalForm());
|
scene.getStylesheets()
|
||||||
primaryStage.setScene(scene);
|
.add(Main.class.getResource("application.css").toExternalForm());
|
||||||
primaryStage.show(); //zeigt die Stage an
|
primaryStage.setScene(scene);
|
||||||
} catch(Exception e) {
|
primaryStage.show(); // zeigt die Stage an
|
||||||
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
public static void main(String[] args) {
|
|
||||||
|
public static void main(String[] args)
|
||||||
|
{
|
||||||
launch(args);
|
launch(args);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void firstStart() throws Exception{
|
|
||||||
if(mwc.loadSettings()){ //Wenn XML gefunden
|
|
||||||
dbc.verbindeDatenbank(); //Verbindet mit der Datenbank-Datei
|
|
||||||
|
|
||||||
|
|
||||||
}else{ //Wenn keine XML gefunden --> erster Start
|
private void firstStart() throws Exception
|
||||||
|
{
|
||||||
|
if (mwc.loadSettings()) { // Wenn XML gefunden
|
||||||
|
dbc.verbindeDatenbank(); // Verbindet mit der Datenbank-Datei
|
||||||
|
|
||||||
|
} else { // Wenn keine XML gefunden --> erster Start
|
||||||
System.out.println("keine XML gefunden!");
|
System.out.println("keine XML gefunden!");
|
||||||
if(System.getProperty("os.name").equals("Linux")) {
|
if (System.getProperty("os.name").equals("Linux")) {
|
||||||
|
|
||||||
File dir = new File(System.getProperty("user.home") + "/bin/PWMaster"); //Erstellt den Unterordner
|
File dir = new File(
|
||||||
dir.mkdir(); //Erstellt den Unterordner
|
System.getProperty("user.home") + "/bin/PWMaster"); // Erstellt
|
||||||
|
// den
|
||||||
|
// Unterordner
|
||||||
|
dir.mkdir(); // Erstellt den Unterordner
|
||||||
} else {
|
} else {
|
||||||
File dir = new File("C:/ProgramData/PWMaster/"); //Erstellt den Unterordner
|
File dir = new File("C:/ProgramData/PWMaster/"); // Erstellt den
|
||||||
dir.mkdir(); //Erstellt den Unterordner
|
// Unterordner
|
||||||
|
dir.mkdir(); // Erstellt den Unterordner
|
||||||
}
|
}
|
||||||
|
|
||||||
mwc.saveSettings(schluesselNutzer, "dd"); // speichert das Passwort und den Individueller Schlüssel für die API in der XML
|
mwc.saveSettings(schluesselNutzer, "dd"); // speichert das Passwort und
|
||||||
dbc.verbindeDatenbank(); //Verbindet mit der Datenbank-Datei
|
// den Individueller
|
||||||
|
// Schlüssel für die API in
|
||||||
|
// der XML
|
||||||
|
dbc.verbindeDatenbank(); // Verbindet mit der Datenbank-Datei
|
||||||
dbc.erstelleDatenbank(); // Neue Datenbank-Datei wird erstellt
|
dbc.erstelleDatenbank(); // Neue Datenbank-Datei wird erstellt
|
||||||
System.exit(0); //Programm wird beendet
|
System.exit(0); // Programm wird beendet
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,40 +38,62 @@ import javafx.scene.layout.AnchorPane;
|
||||||
import javafx.scene.layout.GridPane;
|
import javafx.scene.layout.GridPane;
|
||||||
import javafx.util.Pair;
|
import javafx.util.Pair;
|
||||||
|
|
||||||
public class MainWindowController {
|
public class MainWindowController
|
||||||
|
{
|
||||||
private static final String String = null;
|
private static final String String = null;
|
||||||
|
|
||||||
Toolkit toolkit = Toolkit.getDefaultToolkit();
|
Toolkit toolkit = Toolkit.getDefaultToolkit();
|
||||||
|
|
||||||
Clipboard clipboard = toolkit.getSystemClipboard();
|
Clipboard clipboard = toolkit.getSystemClipboard();
|
||||||
|
|
||||||
@FXML
|
@FXML
|
||||||
private AnchorPane mainAnchorpane;
|
private AnchorPane mainAnchorpane;
|
||||||
|
|
||||||
@FXML
|
@FXML
|
||||||
private TreeTableView<tableData> mainTreeTable;
|
private TreeTableView<tableData> mainTreeTable;
|
||||||
|
|
||||||
@FXML
|
@FXML
|
||||||
private TreeTableColumn<tableData, String> datumSpalte;
|
private TreeTableColumn<tableData, String> datumSpalte;
|
||||||
|
|
||||||
@FXML
|
@FXML
|
||||||
private TreeTableColumn<tableData, String> kontoSpalte;
|
private TreeTableColumn<tableData, String> kontoSpalte;
|
||||||
|
|
||||||
@FXML
|
@FXML
|
||||||
private TreeTableColumn<tableData, Integer> idSpalte = new TreeTableColumn<>("");
|
private TreeTableColumn<tableData, Integer> idSpalte = new TreeTableColumn<>(
|
||||||
|
"");
|
||||||
|
|
||||||
@FXML
|
@FXML
|
||||||
private Button ueberbtn;
|
private Button ueberbtn;
|
||||||
|
|
||||||
private Main main;
|
private Main main;
|
||||||
|
|
||||||
private DBController dbc;
|
private DBController dbc;
|
||||||
private String filepathXMLWin = "C:/ProgramData/PWMaster/config.xml"; //Pfad wo die XML liegt
|
|
||||||
private String filepathXMLLinux = System.getProperty("user.home") + "/bin/PWMaster/config.xml"; //Pfad wo die XML liegt
|
private String filepathXMLWin = "C:/ProgramData/PWMaster/config.xml"; // Pfad
|
||||||
|
// wo
|
||||||
|
// die
|
||||||
|
// XML
|
||||||
|
// liegt
|
||||||
|
|
||||||
|
private String filepathXMLLinux = System.getProperty("user.home")
|
||||||
|
+ "/bin/PWMaster/config.xml"; // Pfad wo die XML liegt
|
||||||
|
|
||||||
private boolean showPasswort = false;
|
private boolean showPasswort = false;
|
||||||
|
|
||||||
private String schluessel;
|
private String schluessel;
|
||||||
|
|
||||||
private String base32Secret;
|
private String base32Secret;
|
||||||
|
|
||||||
private int id;
|
private int id;
|
||||||
|
|
||||||
@FXML
|
@FXML
|
||||||
TreeItem<tableData> root = new TreeItem<>(new tableData(0, "0", "0"));
|
TreeItem<tableData> root = new TreeItem<>(new tableData(0, "0", "0"));
|
||||||
Properties props = new Properties();
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Properties props = new Properties();
|
||||||
|
|
||||||
@FXML
|
@FXML
|
||||||
public void ueberbtnAction(ActionEvent event) { //Öffnet den Über-Dialog
|
public void ueberbtnAction(ActionEvent event)
|
||||||
|
{ // Öffnet den Über-Dialog
|
||||||
|
|
||||||
// Erstellt einen Dialog
|
// Erstellt einen Dialog
|
||||||
Dialog<Pair<String, String>> dialog = new Dialog<>();
|
Dialog<Pair<String, String>> dialog = new Dialog<>();
|
||||||
|
@ -87,97 +109,129 @@ public class MainWindowController {
|
||||||
grid.setVgap(10);
|
grid.setVgap(10);
|
||||||
grid.setPadding(new Insets(20, 150, 10, 10));
|
grid.setPadding(new Insets(20, 150, 10, 10));
|
||||||
|
|
||||||
grid.add(new Label("Datenbank: sqlite.org - Public Domain"
|
grid.add(new Label("Datenbank: sqlite.org - Public Domain"
|
||||||
+"\nBASE64Decoder: java2s.com/Code/Jar/s/DownloadsunmiscBASE64Decoderjar.htm - GPLv2"
|
+ "\nBASE64Decoder: java2s.com/Code/Jar/s/DownloadsunmiscBASE64Decoderjar.htm - GPLv2"
|
||||||
+"\nCrypo: blog.axxg.de/ - Copyright 2013 AxxG Alexander Grösel"
|
+ "\nCrypo: blog.axxg.de/ - Copyright 2013 AxxG Alexander Grösel"
|
||||||
+" \nzwei Faktoren: github.com/j256/two-factor-auth - ISC License"
|
+ " \nzwei Faktoren: github.com/j256/two-factor-auth - ISC License"
|
||||||
+" \nUI Design: eclipse.org/efxclipse/install.html - Eclipse Public License 1.0"
|
+ " \nUI Design: eclipse.org/efxclipse/install.html - Eclipse Public License 1.0"
|
||||||
+" \nUI - Datenbank Integration: basierend auf Project-HomeFlix - github.com/Seil0/Project-HomeFlix - GPLv3 \n"
|
+ " \nUI - Datenbank Integration: basierend auf Project-HomeFlix - github.com/Seil0/Project-HomeFlix - GPLv3 \n"
|
||||||
+" \nMaintainer: hendrik.schutter@icloud.com"
|
+ " \nMaintainer: hendrik.schutter@icloud.com"
|
||||||
+" \n(c) 2017 Hendrik Schutter"), 0, 0);
|
+ " \n(c) 2017 Hendrik Schutter"), 0, 0);
|
||||||
|
|
||||||
dialog.getDialogPane().setContent(grid); //Setzt die GridPane auf die DialogPane
|
dialog.getDialogPane().setContent(grid); // Setzt die GridPane auf die
|
||||||
|
// DialogPane
|
||||||
dialog.showAndWait();
|
dialog.showAndWait();
|
||||||
}
|
}
|
||||||
|
|
||||||
@FXML
|
@FXML
|
||||||
|
|
||||||
public void fuelleTablle(){ //Lädt die Datenbank in die Tabelle
|
public void fuelleTablle()
|
||||||
|
{ // Lädt die Datenbank in die Tabelle
|
||||||
|
|
||||||
dbc.setSchluessel(schluessel);
|
dbc.setSchluessel(schluessel);
|
||||||
for(int i = 0; i < dbc.ladeTabelle().size(); i++){
|
for (int i = 0; i < dbc.ladeTabelle().size(); i++) {
|
||||||
tableData helpTableData = new tableData(dbc.ladeTabelle().get(i).getID(),
|
tableData helpTableData = new tableData(
|
||||||
dbc.ladeTabelle().get(i).getDatum(), dbc.ladeTabelle().get(i).getKonto());
|
dbc.ladeTabelle().get(i).getID(),
|
||||||
|
dbc.ladeTabelle().get(i).getDatum(),
|
||||||
|
dbc.ladeTabelle().get(i).getKonto());
|
||||||
root.getChildren().add(new TreeItem<tableData>(helpTableData));
|
root.getChildren().add(new TreeItem<tableData>(helpTableData));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
public void initUI(){
|
|
||||||
|
public void initUI()
|
||||||
|
{
|
||||||
mainTreeTable.setRoot(root);
|
mainTreeTable.setRoot(root);
|
||||||
mainTreeTable.setShowRoot(false);
|
mainTreeTable.setShowRoot(false);
|
||||||
mainTreeTable.setEditable(false);
|
mainTreeTable.setEditable(false);
|
||||||
//Setzt die Textfelder
|
// Setzt die Textfelder
|
||||||
|
|
||||||
|
|
||||||
idSpalte.setCellValueFactory(cellData -> cellData.getValue().getValue().idProperty().asObject());
|
idSpalte.setCellValueFactory(
|
||||||
datumSpalte.setCellValueFactory(cellData -> cellData.getValue().getValue().datumProperty());
|
cellData -> cellData.getValue().getValue().idProperty().asObject());
|
||||||
kontoSpalte.setCellValueFactory(cellData -> cellData.getValue().getValue().kontoProperty());
|
datumSpalte.setCellValueFactory(
|
||||||
|
cellData -> cellData.getValue().getValue().datumProperty());
|
||||||
|
kontoSpalte.setCellValueFactory(
|
||||||
|
cellData -> cellData.getValue().getValue().kontoProperty());
|
||||||
mainTreeTable.getColumns().add(idSpalte);
|
mainTreeTable.getColumns().add(idSpalte);
|
||||||
mainTreeTable.getColumns().get(2).setVisible(false);
|
mainTreeTable.getColumns().get(2).setVisible(false);
|
||||||
mainTreeTable.getSelectionModel().selectedItemProperty().addListener(new ChangeListener<Object>() {
|
mainTreeTable.getSelectionModel().selectedItemProperty()
|
||||||
@Override
|
.addListener(new ChangeListener<Object>() {
|
||||||
public void changed(ObservableValue<?> observable, Object oldVal, Object newVal){
|
@Override
|
||||||
// last = selected; //for auto-play
|
public void changed(ObservableValue<?> observable, Object oldVal,
|
||||||
int selected = mainTreeTable.getSelectionModel().getSelectedIndex(); //get selected item
|
Object newVal)
|
||||||
id = idSpalte.getCellData(selected); //Ausgewählte Spalte
|
{
|
||||||
showPasswort =false;
|
// last = selected; //for auto-play
|
||||||
|
int selected = mainTreeTable.getSelectionModel()
|
||||||
try { //Setzt den entschlüsselten Inhalt in die Textfelder
|
.getSelectedIndex(); // get selected item
|
||||||
//tf01.setText("Verschlüsseltes Passwort von " + crypo.entschluesseln(dbc.getKonto(id), schluessel) + " : " + dbc.getPasswort(id));
|
id = idSpalte.getCellData(selected); // Ausgewählte Spalte
|
||||||
//tfNutzername.setText(crypo.entschluesseln(dbc.getNutzername(id), schluessel));
|
showPasswort = false;
|
||||||
//tfEmail.setText(crypo.entschluesseln(dbc.getEmail(id), schluessel));
|
|
||||||
//tfPasswort.setText(crypo.entschluesseln(dbc.getPasswort(id), schluessel));
|
try { // Setzt den entschlüsselten Inhalt in die Textfelder
|
||||||
} catch (Exception e) {
|
// tf01.setText("Verschlüsseltes Passwort von " +
|
||||||
// TODO Auto-generated catch block
|
// crypo.entschluesseln(dbc.getKonto(id), schluessel) + " :
|
||||||
e.printStackTrace();
|
// " + dbc.getPasswort(id));
|
||||||
}
|
// tfNutzername.setText(crypo.entschluesseln(dbc.getNutzername(id),
|
||||||
}
|
// schluessel));
|
||||||
});
|
// tfEmail.setText(crypo.entschluesseln(dbc.getEmail(id),
|
||||||
|
// schluessel));
|
||||||
|
// tfPasswort.setText(crypo.entschluesseln(dbc.getPasswort(id),
|
||||||
|
// schluessel));
|
||||||
|
} catch (Exception e) {
|
||||||
|
// TODO Auto-generated catch block
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
public void setMain(Main main, DBController dbc){
|
|
||||||
|
public void setMain(Main main, DBController dbc)
|
||||||
|
{
|
||||||
this.main = main;
|
this.main = main;
|
||||||
this.dbc = dbc;
|
this.dbc = dbc;
|
||||||
}
|
}
|
||||||
public String getSystemDatum(){ //Gibt das System-Datum zurück
|
|
||||||
|
public String getSystemDatum()
|
||||||
|
{ // Gibt das System-Datum zurück
|
||||||
java.util.Date now = new java.util.Date();
|
java.util.Date now = new java.util.Date();
|
||||||
java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("dd.MM.yyyy");
|
java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat(
|
||||||
|
"dd.MM.yyyy");
|
||||||
String heutigesDatum = sdf.format(now);
|
String heutigesDatum = sdf.format(now);
|
||||||
return heutigesDatum;
|
return heutigesDatum;
|
||||||
}
|
}
|
||||||
public void saveSettings(String schluessel, String base32Secret) throws Exception{
|
|
||||||
OutputStream outputStream; //new output-stream
|
public void saveSettings(String schluessel, String base32Secret)
|
||||||
|
throws Exception
|
||||||
|
{
|
||||||
|
OutputStream outputStream; // new output-stream
|
||||||
try {
|
try {
|
||||||
//props.setProperty("key", crypo.verschluesseln(schluessel, crypo.getProgrammSchluessel())); //writes path into property
|
// props.setProperty("key", crypo.verschluesseln(schluessel,
|
||||||
//props.setProperty("TOTPkey", crypo.verschluesseln(base32Secret, crypo.getProgrammSchluessel())); //writes path into property
|
// crypo.getProgrammSchluessel())); //writes path into property
|
||||||
if(System.getProperty("os.name").equals("Linux")) {
|
// props.setProperty("TOTPkey", crypo.verschluesseln(base32Secret,
|
||||||
|
// crypo.getProgrammSchluessel())); //writes path into property
|
||||||
|
if (System.getProperty("os.name").equals("Linux")) {
|
||||||
outputStream = new FileOutputStream(filepathXMLLinux);
|
outputStream = new FileOutputStream(filepathXMLLinux);
|
||||||
} else {
|
} else {
|
||||||
outputStream = new FileOutputStream(filepathXMLWin);
|
outputStream = new FileOutputStream(filepathXMLWin);
|
||||||
}
|
}
|
||||||
props.storeToXML(outputStream, "PWMaster settings"); //writes new .xml
|
props.storeToXML(outputStream, "PWMaster settings"); // writes new .xml
|
||||||
outputStream.close();
|
outputStream.close();
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
public boolean loadSettings() throws Exception{ //Ladt die Daten aus der XML
|
|
||||||
|
public boolean loadSettings() throws Exception
|
||||||
|
{ // Ladt die Daten aus der XML
|
||||||
InputStream inputStream;
|
InputStream inputStream;
|
||||||
try {
|
try {
|
||||||
if(System.getProperty("os.name").equals("Linux")) {
|
if (System.getProperty("os.name").equals("Linux")) {
|
||||||
inputStream = new FileInputStream(filepathXMLLinux);
|
inputStream = new FileInputStream(filepathXMLLinux);
|
||||||
} else {
|
} else {
|
||||||
inputStream = new FileInputStream(filepathXMLWin);
|
inputStream = new FileInputStream(filepathXMLWin);
|
||||||
}
|
}
|
||||||
props.loadFromXML(inputStream);
|
props.loadFromXML(inputStream);
|
||||||
//schluessel = crypo.entschluesseln(props.getProperty("key"), crypo.getProgrammSchluessel()); //liest schluessel von property
|
// schluessel = crypo.entschluesseln(props.getProperty("key"),
|
||||||
//base32Secret = crypo.entschluesseln(props.getProperty("TOTPkey"), crypo.getProgrammSchluessel()); //liest schluessel von property
|
// crypo.getProgrammSchluessel()); //liest schluessel von property
|
||||||
|
// base32Secret = crypo.entschluesseln(props.getProperty("TOTPkey"),
|
||||||
|
// crypo.getProgrammSchluessel()); //liest schluessel von property
|
||||||
inputStream.close();
|
inputStream.close();
|
||||||
return true;
|
return true;
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
|
@ -185,17 +239,25 @@ public class MainWindowController {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
public String getSchluesselXML(){ //Gibt den Schlüssel zurück für die Main
|
|
||||||
|
public String getSchluesselXML()
|
||||||
|
{ // Gibt den Schlüssel zurück für die Main
|
||||||
return schluessel;
|
return schluessel;
|
||||||
}
|
}
|
||||||
public void starteDB(){ //Startet die Datenbank
|
|
||||||
|
public void starteDB()
|
||||||
|
{ // Startet die Datenbank
|
||||||
dbc.verbindeDatenbank();
|
dbc.verbindeDatenbank();
|
||||||
}
|
}
|
||||||
public void erzeugeDB(){ //Erzeuge die Datenbank
|
|
||||||
|
public void erzeugeDB()
|
||||||
|
{ // Erzeuge die Datenbank
|
||||||
dbc.erstelleDatenbank();
|
dbc.erstelleDatenbank();
|
||||||
dbc.verbindeDatenbank();
|
dbc.verbindeDatenbank();
|
||||||
}
|
}
|
||||||
public String getbase32Secret(){ //Gibt den base32Secret zurück für die Main
|
|
||||||
|
public String getbase32Secret()
|
||||||
|
{ // Gibt den base32Secret zurück für die Main
|
||||||
return base32Secret;
|
return base32Secret;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,42 +5,64 @@ import javafx.beans.property.SimpleIntegerProperty;
|
||||||
import javafx.beans.property.SimpleStringProperty;
|
import javafx.beans.property.SimpleStringProperty;
|
||||||
import javafx.beans.property.StringProperty;
|
import javafx.beans.property.StringProperty;
|
||||||
|
|
||||||
public class tableData { //Datenobjekt mit der ID, Datum und Konto
|
public class tableData
|
||||||
|
{ // Datenobjekt mit der ID, Datum und Konto
|
||||||
|
|
||||||
private final IntegerProperty id = new SimpleIntegerProperty();
|
private final IntegerProperty id = new SimpleIntegerProperty();
|
||||||
|
|
||||||
private final StringProperty datum = new SimpleStringProperty();
|
private final StringProperty datum = new SimpleStringProperty();
|
||||||
|
|
||||||
private final StringProperty konto = new SimpleStringProperty();
|
private final StringProperty konto = new SimpleStringProperty();
|
||||||
|
|
||||||
public tableData(final int id, final String datum, final String konto){
|
public tableData(final int id, final String datum, final String konto)
|
||||||
|
{
|
||||||
this.id.set(id);
|
this.id.set(id);
|
||||||
this.datum.set(datum);
|
this.datum.set(datum);
|
||||||
this.konto.set(konto);
|
this.konto.set(konto);
|
||||||
}
|
}
|
||||||
public IntegerProperty idProperty(){
|
|
||||||
|
public IntegerProperty idProperty()
|
||||||
|
{
|
||||||
return id;
|
return id;
|
||||||
}
|
}
|
||||||
public StringProperty datumProperty(){
|
|
||||||
|
public StringProperty datumProperty()
|
||||||
|
{
|
||||||
return datum;
|
return datum;
|
||||||
}
|
}
|
||||||
public StringProperty kontoProperty(){
|
|
||||||
|
public StringProperty kontoProperty()
|
||||||
|
{
|
||||||
return konto;
|
return konto;
|
||||||
}
|
}
|
||||||
public int getID(){
|
|
||||||
|
public int getID()
|
||||||
|
{
|
||||||
return idProperty().get();
|
return idProperty().get();
|
||||||
}
|
}
|
||||||
public String getDatum(){
|
|
||||||
|
public String getDatum()
|
||||||
|
{
|
||||||
return datumProperty().get();
|
return datumProperty().get();
|
||||||
}
|
}
|
||||||
public String getKonto(){
|
|
||||||
|
public String getKonto()
|
||||||
|
{
|
||||||
return kontoProperty().get();
|
return kontoProperty().get();
|
||||||
}
|
}
|
||||||
public final void setID(int id){
|
|
||||||
|
public final void setID(int id)
|
||||||
|
{
|
||||||
idProperty().set(id);
|
idProperty().set(id);
|
||||||
}
|
}
|
||||||
public final void setdatum(String datum){
|
|
||||||
|
public final void setdatum(String datum)
|
||||||
|
{
|
||||||
datumProperty().set(datum);
|
datumProperty().set(datum);
|
||||||
}
|
}
|
||||||
public final void setkonto(String konto){
|
|
||||||
|
public final void setkonto(String konto)
|
||||||
|
{
|
||||||
kontoProperty().set(konto);
|
kontoProperty().set(konto);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue