From a4840102857b6d9ad7df769d71be23e58e442fa4 Mon Sep 17 00:00:00 2001 From: Julian Arndt Date: Sun, 27 Sep 2020 23:26:41 +0200 Subject: [PATCH] Refactor and clean up code --- .../tippliga/TLWFootballMatchesUpdater.java | 11 +++ .../java/de/jeyp91/tippliga/TLWMatch.java | 67 ++++++++------- ...sCreator.java => TLWMatchdaysCreator.java} | 6 +- .../tippliga/TLWMatchesCreatorBase.java | 54 ++++++++++++ ...or.java => TLWMatchesCreatorFootball.java} | 63 ++------------ ...ava => TLWMatchesCreatorTipperLeague.java} | 48 +---------- ...java => TLWMatchesCreatorTipperPokal.java} | 47 ++--------- src/main/java/de/jeyp91/tippliga/TLWTeam.java | 23 ++++-- ...PokalCreator.java => TLWTeamsCreator.java} | 4 +- .../jeyp91/tippliga/TippligaSQLConnector.java | 82 ++++++++++--------- .../TLWFootballMatchdaysCreatorTest.java | 43 ---------- .../tippliga/TLWMatchdaysCreatorTest.java | 75 +++++++++++++++++ ...ava => TLWMatchesCreatorFootballTest.java} | 8 +- .../TLWMatchesCreatorTipperPokalTest.java | 16 ++++ .../tippliga/TLWMatchesCreatorTipperTest.java | 18 ++++ .../jeyp91/tippliga/TLWTeamsCreatorTest.java | 58 +++++++++++++ .../tippliga/TLWTeamsPokalCreatorTest.java | 58 ------------- .../tippliga/TLWTipperMatchesCreatorTest.java | 20 ----- .../TLWTipperPokalMatchesCreatorTest.java | 16 ---- .../tippliga/TippligaSQLConnectorTest.java | 5 +- 20 files changed, 349 insertions(+), 373 deletions(-) create mode 100644 src/main/java/de/jeyp91/tippliga/TLWFootballMatchesUpdater.java rename src/main/java/de/jeyp91/tippliga/{TLWFootballMatchdaysCreator.java => TLWMatchdaysCreator.java} (95%) create mode 100644 src/main/java/de/jeyp91/tippliga/TLWMatchesCreatorBase.java rename src/main/java/de/jeyp91/tippliga/{TLWFootballMatchesCreator.java => TLWMatchesCreatorFootball.java} (72%) rename src/main/java/de/jeyp91/tippliga/{TLWTipperMatchesCreator.java => TLWMatchesCreatorTipperLeague.java} (67%) rename src/main/java/de/jeyp91/tippliga/{TLWTipperPokalMatchesCreator.java => TLWMatchesCreatorTipperPokal.java} (65%) rename src/main/java/de/jeyp91/tippliga/{TLWTeamsPokalCreator.java => TLWTeamsCreator.java} (93%) delete mode 100644 src/test/java/de/jeyp91/tippliga/TLWFootballMatchdaysCreatorTest.java create mode 100644 src/test/java/de/jeyp91/tippliga/TLWMatchdaysCreatorTest.java rename src/test/java/de/jeyp91/tippliga/{TLWFootballMatchesCreatorTest.java => TLWMatchesCreatorFootballTest.java} (67%) create mode 100644 src/test/java/de/jeyp91/tippliga/TLWMatchesCreatorTipperPokalTest.java create mode 100644 src/test/java/de/jeyp91/tippliga/TLWMatchesCreatorTipperTest.java create mode 100644 src/test/java/de/jeyp91/tippliga/TLWTeamsCreatorTest.java delete mode 100644 src/test/java/de/jeyp91/tippliga/TLWTeamsPokalCreatorTest.java delete mode 100644 src/test/java/de/jeyp91/tippliga/TLWTipperMatchesCreatorTest.java delete mode 100644 src/test/java/de/jeyp91/tippliga/TLWTipperPokalMatchesCreatorTest.java diff --git a/src/main/java/de/jeyp91/tippliga/TLWFootballMatchesUpdater.java b/src/main/java/de/jeyp91/tippliga/TLWFootballMatchesUpdater.java new file mode 100644 index 0000000..81e4fbc --- /dev/null +++ b/src/main/java/de/jeyp91/tippliga/TLWFootballMatchesUpdater.java @@ -0,0 +1,11 @@ +package de.jeyp91.tippliga; + +public class TLWFootballMatchesUpdater { + public TLWFootballMatchesUpdater() { + + } + + public String getUpdateSQL() { + return ""; + } +} diff --git a/src/main/java/de/jeyp91/tippliga/TLWMatch.java b/src/main/java/de/jeyp91/tippliga/TLWMatch.java index d7d6a60..b69dd65 100644 --- a/src/main/java/de/jeyp91/tippliga/TLWMatch.java +++ b/src/main/java/de/jeyp91/tippliga/TLWMatch.java @@ -127,8 +127,6 @@ public class TLWMatch extends BaseMatch { this.matchday = matchday; this.league = league; this.matchNo = matchNo; - this.formulaHome = "D"; - this.formulaGuest = "D"; this.status = status; this.koMatch = koMatch; this.matchDatetime = matchDatetime; @@ -169,35 +167,42 @@ public class TLWMatch extends BaseMatch { return this.groupId; } - public Integer isSameMatch(OpenLigaDBMatch compareMatch) { - if(this.getSeason() != compareMatch.getSeason()) { - return COMPARISON_DIFFERENT; + public String getFormulaHome() { + String formula = "'D'"; + if(this.teamIdHome != null) { + return "''"; } - if(this.getMatchday() != compareMatch.getMatchday()) { - return COMPARISON_DIFFERENT; + else if (this.formulaHome != null) { + formula = this.formulaHome; } - if(this.getTeamIdHome() != compareMatch.getTeamIdHome()) { - return COMPARISON_DIFFERENT; + return formula; + } + + public String getFormulaGuest() { + String formula = "'D'"; + if(this.teamIdGuest != null) { + return "''"; } - if(this.getTeamIdGuest() != compareMatch.getTeamIdGuest()) { - return COMPARISON_DIFFERENT; + else if (this.formulaGuest != null) { + formula = this.formulaGuest; } - String thisDateTime = this.getMatchDateTime().replace("T", " "); - String tempDateTime = compareMatch.getMatchDateTime().replace("T", " "); - if(!tempDateTime.equals(thisDateTime)) { - return COMPARISON_DIFFERENT_DATETIME; - } - if(this.goalsHome != compareMatch.getGoalsHome() || - this.goalsGuest != compareMatch.getGoalsGuest()) { - return COMPARISON_DIFFERENT_RESULT; - } - return COMPARISON_IDENTICAL; + return formula; + } + + public String getSQLQueryInsert() { + return "INSERT INTO phpbb_footb_matches VALUES (" + + getSQLQueryValues() + + ");"; } public String getSQLQueryReplace() { + return "REPLACE INTO phpbb_footb_matches VALUES (" + + getSQLQueryValues() + + ");"; + } - String query = "REPLACE INTO phpbb_footb_matches VALUES (" + - this.season + ", " + + public String getSQLQueryValues() { + return this.season + ", " + this.league + ", " + this.matchNo + ", " + nullToSqlEmptyString(this.teamIdHome) + ", " + @@ -206,20 +211,22 @@ public class TLWMatch extends BaseMatch { nullToSqlEmptyString(this.goalsGuest) + ", " + this.matchday + ", " + this.status + ", " + - "'" + this.matchDatetime + "', " + - "'" + this.groupId + "', " + - "'" + this.formulaHome + "', " + - "'" + this.formulaGuest + "', " + + nullToSqlEmptyString(this.matchDatetime) + ", " + + nullToSqlEmptyString(this.groupId) + ", " + + getFormulaHome() + ", " + + getFormulaGuest() + ", " + nullToSqlEmptyString(this.koMatch) + ", " + nullToSqlEmptyString(this.goalsOvertimeHome) + ", " + nullToSqlEmptyString(this.goalsOvertimeGuest) + ", " + nullToSqlEmptyString(this.showTable) + ", " + - "'0.00','0.00','0.00','0.00');"; - - return query; + "'0.00','0.00','0.00','0.00'"; } private String nullToSqlEmptyString(Integer number) { return number != null ? number.toString() : "''"; } + + private String nullToSqlEmptyString(String string) { + return string != null ? "'"+string+"'" : "''"; + } } \ No newline at end of file diff --git a/src/main/java/de/jeyp91/tippliga/TLWFootballMatchdaysCreator.java b/src/main/java/de/jeyp91/tippliga/TLWMatchdaysCreator.java similarity index 95% rename from src/main/java/de/jeyp91/tippliga/TLWFootballMatchdaysCreator.java rename to src/main/java/de/jeyp91/tippliga/TLWMatchdaysCreator.java index acaf7e7..27bd5e3 100644 --- a/src/main/java/de/jeyp91/tippliga/TLWFootballMatchdaysCreator.java +++ b/src/main/java/de/jeyp91/tippliga/TLWMatchdaysCreator.java @@ -13,7 +13,7 @@ import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; -public class TLWFootballMatchdaysCreator { +public class TLWMatchdaysCreator { int season; int league; @@ -21,11 +21,11 @@ public class TLWFootballMatchdaysCreator { int matchesPerMatchday; JSONObject configObject; - public TLWFootballMatchdaysCreator (int season, int league, String configPath){ + public TLWMatchdaysCreator(int season, int league, String configPath){ this.season = season; this.league = league; - TLWFootballMatchesCreator matchesCreator = new TLWFootballMatchesCreator(2021, 1, configPath); + TLWMatchesCreatorFootball matchesCreator = new TLWMatchesCreatorFootball(2021, 1, configPath); this.matches = matchesCreator.getMatches(); JSONParser jsonParser = new JSONParser(); diff --git a/src/main/java/de/jeyp91/tippliga/TLWMatchesCreatorBase.java b/src/main/java/de/jeyp91/tippliga/TLWMatchesCreatorBase.java new file mode 100644 index 0000000..863c944 --- /dev/null +++ b/src/main/java/de/jeyp91/tippliga/TLWMatchesCreatorBase.java @@ -0,0 +1,54 @@ +package de.jeyp91.tippliga; + +import de.jeyp91.apifootball.APIFootballConnector; + +import java.util.ArrayList; + +public abstract class TLWMatchesCreatorBase { + + ArrayList TLWMatches; + APIFootballConnector conn; + + public TLWMatchesCreatorBase() { + this.TLWMatches = new ArrayList<>(); + } + + public ArrayList getMatches() { + return this.TLWMatches; + } + + public String getSQLInsertString() { + String sql = ""; + + ArrayList tlwMatches = getMatches(); + + // Add matches from config + for(TLWMatch match : tlwMatches) { + sql += match.getSQLQueryInsert() + "\n"; + } + + return sql; + } + + public int getNumberOfMatchdays() { + int matchday = 0; + for(TLWMatch match : this.TLWMatches) { + if(match.getMatchday() > matchday) { + matchday = match.getMatchday(); + } + } + return matchday; + } + + public ArrayList getMatchesForMatchday(int matchday) { + ArrayList matches = new ArrayList<>(); + + for(TLWMatch match : this.TLWMatches) { + if (match.getMatchday() == matchday) { + matches.add(match); + } + } + + return matches; + } +} diff --git a/src/main/java/de/jeyp91/tippliga/TLWFootballMatchesCreator.java b/src/main/java/de/jeyp91/tippliga/TLWMatchesCreatorFootball.java similarity index 72% rename from src/main/java/de/jeyp91/tippliga/TLWFootballMatchesCreator.java rename to src/main/java/de/jeyp91/tippliga/TLWMatchesCreatorFootball.java index 3e5fdf9..de991e1 100644 --- a/src/main/java/de/jeyp91/tippliga/TLWFootballMatchesCreator.java +++ b/src/main/java/de/jeyp91/tippliga/TLWMatchesCreatorFootball.java @@ -15,7 +15,7 @@ import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; -public class TLWFootballMatchesCreator { +public class TLWMatchesCreatorFootball extends TLWMatchesCreatorBase { int season; int league; @@ -25,20 +25,17 @@ public class TLWFootballMatchesCreator { int nextMatchNo = 1; JSONArray matchdayConfig; - APIFootballConnector conn; + public TLWMatchesCreatorFootball(int season, int league, String configFileName) { - ArrayList TLWMatches; + super(); - public TLWFootballMatchesCreator(int season, int league, String configFileName) { this.season = season; this.league = league; - conn = new APIFootballConnector(season - 1); + this.conn = new APIFootballConnector(season - 1); URL url = Resources.getResource(season + "\\" + configFileName); String jsonConfig = null; - this.TLWMatches = new ArrayList<>(); - try { JSONParser jsonParser = new JSONParser(); jsonConfig = Resources.toString(url, StandardCharsets.UTF_8); @@ -60,7 +57,7 @@ public class TLWFootballMatchesCreator { for(int i = 0; i < this.matchdayConfig.size(); i++) { int TLWMatchday = ((Long) ((JSONObject) this.matchdayConfig.get(i)).get("TLWMatchday")).intValue(); JSONArray matchesConfig = (JSONArray)((JSONObject) this.matchdayConfig.get(i)).get("matchesConfig"); - ArrayList APIFootballMatches = getMatchesForMatchday(matchesConfig); + ArrayList APIFootballMatches = getAPIFootballMatchesForMatchday(matchesConfig); int tempNumberOfMatchesBackup = this.matchesPerMatchday; if(((JSONObject) this.matchdayConfig.get(i)).containsKey("numberOfMatches")) { @@ -112,7 +109,7 @@ public class TLWFootballMatchesCreator { } } - private ArrayList getMatchesForMatchday(JSONArray config) { + private ArrayList getAPIFootballMatchesForMatchday(JSONArray config) { ArrayList apiFootballMatches = new ArrayList<>(); for (Object singleConfigObject : config) { JSONObject singleConfig = (JSONObject) singleConfigObject; @@ -140,52 +137,4 @@ public class TLWFootballMatchesCreator { long diffDays = diffTime / (1000 * 60 * 60 * 24); return (int) diffDays; } - - public ArrayList getMatches() { - return this.TLWMatches; - } - - public String getSQLInsertString() { - String sql = ""; - - ArrayList tlwMatches = getMatches(); - - // Add matches from config - for(TLWMatch match : tlwMatches) { - String teamIdHome = match.getTeamIdHome() != null ? match.getTeamIdHome().toString() : "''"; - String teamIdGuest = match.getTeamIdGuest() != null ? match.getTeamIdGuest().toString() : "''"; - - String matchSql = "REPLACE INTO phpbb_footb_matches VALUES("; - matchSql += match.getSeason().toString(); - matchSql += ", "; - matchSql += match.getLeague().toString(); - matchSql += ", "; - matchSql += match.getMatchNo().toString(); - matchSql += ", "; - matchSql += teamIdHome; - matchSql += ", "; - matchSql += teamIdGuest; - // No goals while creating league - matchSql += ", '', '', "; - matchSql += match.getMatchday().toString(); - // status 0 while creating - matchSql += ", "; - matchSql += match.getStatus().toString(); - matchSql += ", '"; - matchSql += match.getMatchDateTime(); - // group_id, formula_home, formula_guest - matchSql += "', '', '', '', '"; - // ko_match, - matchSql += match.getKoMatch(); - // goals_overtime_home, goals_overtime_guest - matchSql += "', '', '', "; - // show_table - matchSql += "0"; - // trend, odd_1, odd_x, odd_2, rating - matchSql += ", '', '0.00', '0.00', '0.00', '0.00');\n"; - sql += matchSql; - } - - return sql; - } } diff --git a/src/main/java/de/jeyp91/tippliga/TLWTipperMatchesCreator.java b/src/main/java/de/jeyp91/tippliga/TLWMatchesCreatorTipperLeague.java similarity index 67% rename from src/main/java/de/jeyp91/tippliga/TLWTipperMatchesCreator.java rename to src/main/java/de/jeyp91/tippliga/TLWMatchesCreatorTipperLeague.java index e7c90fb..e787a95 100644 --- a/src/main/java/de/jeyp91/tippliga/TLWTipperMatchesCreator.java +++ b/src/main/java/de/jeyp91/tippliga/TLWMatchesCreatorTipperLeague.java @@ -11,18 +11,17 @@ import java.net.URL; import java.nio.charset.StandardCharsets; import java.util.ArrayList; -public class TLWTipperMatchesCreator { +public class TLWMatchesCreatorTipperLeague extends TLWMatchesCreatorBase { int season; int league; - ArrayList TLWMatches; JSONArray matchPairingConfig; JSONObject tipperList; JSONArray tipperTeamConfig; ArrayList matchdays; - public TLWTipperMatchesCreator(int season, int league, String configFileName, ArrayList matchdays) { + public TLWMatchesCreatorTipperLeague(int season, int league, String configFileName, ArrayList matchdays) { this.season = season; this.league = league; this.matchdays = matchdays; @@ -31,8 +30,6 @@ public class TLWTipperMatchesCreator { URL tipperListUrl = Resources.getResource(season + "\\" + configFileName); URL tipperTeamConfigUrl = Resources.getResource("Tipper_Team_Config.json"); - this.TLWMatches = new ArrayList<>(); - try { JSONParser jsonParser = new JSONParser(); @@ -87,50 +84,11 @@ public class TLWTipperMatchesCreator { } } if(teamId == 0) { - System.out.println("Did not find Tipper ID for " + name); + System.out.println("ERROR! Did not find Tipper ID for " + name); } return teamId; } - public ArrayList getMatches() { - return this.TLWMatches; - } - - public String getSQLInsertString() { - String sql = ""; - - ArrayList tlwMatches = getMatches(); - - // Add matches from config - for(TLWMatch match : tlwMatches) { - String matchSql = "REPLACE INTO phpbb_footb_matches VALUES("; - matchSql += match.getSeason().toString(); - matchSql += ", "; - matchSql += match.getLeague().toString(); - matchSql += ", "; - matchSql += match.getMatchNo().toString(); - matchSql += ", "; - matchSql += match.getTeamIdHome().toString(); - matchSql += ", "; - matchSql += match.getTeamIdGuest().toString(); - // No goals while creating league - matchSql += ", '', '', "; - matchSql += match.getMatchday().toString(); - // status 0 while creating - matchSql += ", 0, '"; - matchSql += match.getMatchDateTime(); - // group_id, formula_home, formula_guest, ko_match, goals_overtime_home, goals_overtime_guest - matchSql += "', '', '', '', 0, '', '', "; - // show_table - matchSql += "0"; - // trend, odd_1, odd_x, odd_2, rating - matchSql += ", '', '0.00', '0.00', '0.00', '0.00');\n"; - sql += matchSql; - } - - return sql; - } - private String getDeliveryDateForMatchday(int matchday) { String deliveryDate = ""; for (TLWMatchday matchdayObject : this.matchdays) { diff --git a/src/main/java/de/jeyp91/tippliga/TLWTipperPokalMatchesCreator.java b/src/main/java/de/jeyp91/tippliga/TLWMatchesCreatorTipperPokal.java similarity index 65% rename from src/main/java/de/jeyp91/tippliga/TLWTipperPokalMatchesCreator.java rename to src/main/java/de/jeyp91/tippliga/TLWMatchesCreatorTipperPokal.java index 27cb7a7..d457a01 100644 --- a/src/main/java/de/jeyp91/tippliga/TLWTipperPokalMatchesCreator.java +++ b/src/main/java/de/jeyp91/tippliga/TLWMatchesCreatorTipperPokal.java @@ -11,7 +11,7 @@ import java.net.URL; import java.nio.charset.StandardCharsets; import java.util.ArrayList; -public class TLWTipperPokalMatchesCreator { +public class TLWMatchesCreatorTipperPokal extends TLWMatchesCreatorBase{ int season; int league; @@ -21,7 +21,7 @@ public class TLWTipperPokalMatchesCreator { JSONArray tipperTeamConfig; ArrayList matchdays; - public TLWTipperPokalMatchesCreator(int season, int league, String configFileName, ArrayList matchdays) { + public TLWMatchesCreatorTipperPokal(int season, int league, String configFileName, ArrayList matchdays) { this.season = season; this.league = league; this.matchdays = matchdays; @@ -51,16 +51,14 @@ public class TLWTipperPokalMatchesCreator { int matchday = 1; - for(int i = 1; i < 13; i++) { + for(int matchNo = 1; matchNo < 13; matchNo++) { - String homeName = this.tipperList.get(String.valueOf(2 * i - 1)).toString(); - String guestName = this.tipperList.get(String.valueOf(2 * i)).toString(); + String homeName = this.tipperList.get(String.valueOf(2 * matchNo - 1)).toString(); + String guestName = this.tipperList.get(String.valueOf(2 * matchNo)).toString(); int teamIdHome = getTeamIdFromTipperName(homeName); int teamIdGuest = getTeamIdFromTipperName(guestName); - int matchNo = i; - String matchDatetime = getDeliveryDateForMatchday(matchday); TLWMatch tlwMatch = new TLWMatch(this.season, this.league, matchday, matchNo, teamIdHome, teamIdGuest, matchDatetime); @@ -85,41 +83,6 @@ public class TLWTipperPokalMatchesCreator { return this.TLWMatches; } - public String getSQLInsertString() { - String sql = ""; - - ArrayList tlwMatches = getMatches(); - - // Add matches from config - for(TLWMatch match : tlwMatches) { - String matchSql = "REPLACE INTO phpbb_footb_matches VALUES("; - matchSql += match.getSeason().toString(); - matchSql += ", "; - matchSql += match.getLeague().toString(); - matchSql += ", "; - matchSql += match.getMatchNo().toString(); - matchSql += ", "; - matchSql += match.getTeamIdHome().toString(); - matchSql += ", "; - matchSql += match.getTeamIdGuest().toString(); - // No goals while creating league - matchSql += ", '', '', "; - matchSql += match.getMatchday().toString(); - // status 0 while creating - matchSql += ", 0, '"; - matchSql += match.getMatchDateTime(); - // group_id, formula_home, formula_guest, ko_match, goals_overtime_home, goals_overtime_guest - matchSql += "', '', '', '', 0, '', '', "; - // show_table - matchSql += "0"; - // trend, odd_1, odd_x, odd_2, rating - matchSql += ", '', '0.00', '0.00', '0.00', '0.00');\n"; - sql += matchSql; - } - - return sql; - } - private String getDeliveryDateForMatchday(int matchday) { String deliveryDate = ""; for (TLWMatchday matchdayObject : this.matchdays) { diff --git a/src/main/java/de/jeyp91/tippliga/TLWTeam.java b/src/main/java/de/jeyp91/tippliga/TLWTeam.java index 935cc86..56c280f 100644 --- a/src/main/java/de/jeyp91/tippliga/TLWTeam.java +++ b/src/main/java/de/jeyp91/tippliga/TLWTeam.java @@ -17,7 +17,7 @@ public class TLWTeam { private String groupId; private int matchday; - public TLWTeam(ResultSet rset) throws SQLException { + public TLWTeam(ResultSet rset) { final int SEASON = 1; final int LEAGUE = 2; final int TEAM_ID = 3; @@ -27,14 +27,19 @@ public class TLWTeam { final int GROUP_ID = 7; final int MATCHDAY = 8; - this.season = Integer.parseInt(rset.getString(SEASON)); - this.league = Integer.parseInt(rset.getString(LEAGUE)); - this.teamId = Integer.parseInt(rset.getString(TEAM_ID)); - this.teamName = rset.getString(TEAM_NAME); - this.teamNameShort = rset.getString(TEAM_NAME_SHORT); - this.teamSymbol = rset.getString(TEAM_SYMBOL); - this.groupId = rset.getString(GROUP_ID); - this.matchday = Integer.parseInt(rset.getString(MATCHDAY)); + try { + this.season = Integer.parseInt(rset.getString(SEASON)); + this.league = Integer.parseInt(rset.getString(LEAGUE)); + this.teamId = Integer.parseInt(rset.getString(TEAM_ID)); + this.teamName = rset.getString(TEAM_NAME); + this.teamNameShort = rset.getString(TEAM_NAME_SHORT); + this.teamSymbol = rset.getString(TEAM_SYMBOL); + this.groupId = rset.getString(GROUP_ID); + this.matchday = Integer.parseInt(rset.getString(MATCHDAY)); + } catch (SQLException e) { + /* TODO */ + e.printStackTrace(); + } } public int getSeason() { diff --git a/src/main/java/de/jeyp91/tippliga/TLWTeamsPokalCreator.java b/src/main/java/de/jeyp91/tippliga/TLWTeamsCreator.java similarity index 93% rename from src/main/java/de/jeyp91/tippliga/TLWTeamsPokalCreator.java rename to src/main/java/de/jeyp91/tippliga/TLWTeamsCreator.java index 434cc84..71cd2ab 100644 --- a/src/main/java/de/jeyp91/tippliga/TLWTeamsPokalCreator.java +++ b/src/main/java/de/jeyp91/tippliga/TLWTeamsCreator.java @@ -4,13 +4,13 @@ import java.util.ArrayList; import java.util.LinkedHashSet; import java.util.Set; -public class TLWTeamsPokalCreator { +public class TLWTeamsCreator { int season; int league; ArrayList matches; TippligaSQLConnector connector = new TippligaSQLConnector(); - public TLWTeamsPokalCreator(int season, int league, ArrayList matches) { + public TLWTeamsCreator(int season, int league, ArrayList matches) { this.season = season; this.league = league; this.matches = matches; diff --git a/src/main/java/de/jeyp91/tippliga/TippligaSQLConnector.java b/src/main/java/de/jeyp91/tippliga/TippligaSQLConnector.java index c1f8199..e0c6e45 100644 --- a/src/main/java/de/jeyp91/tippliga/TippligaSQLConnector.java +++ b/src/main/java/de/jeyp91/tippliga/TippligaSQLConnector.java @@ -3,6 +3,7 @@ package de.jeyp91.tippliga; import de.jeyp91.tippliga.TLWMatch; import de.jeyp91.tippliga.TLWTeam; +import javax.xml.transform.Result; import java.util.ArrayList; import java.sql.Connection; import java.sql.DriverManager; @@ -34,66 +35,67 @@ public class TippligaSQLConnector { public ArrayList getTeamsBySeasonAndLeague(String season, String league) { String queryString = "SELECT * FROM `phpbb_footb_teams` WHERE `season` = " + season + " AND `league` = " + league + ";"; - Statement stmt = null; - ResultSet rset = null; - ArrayList teams = new ArrayList(); - try { - stmt = con.createStatement(); - rset = stmt.executeQuery(queryString); - while ( rset.next()) { - teams.add(new TLWTeam(rset)); - } - } catch (SQLException e) { - /* TODO */ - e.printStackTrace(); - } - teams.sort((t1, t2) -> t1.getTeamId() - t2.getTeamId()); + ArrayList teams = new ArrayList<>(); + for (ResultSet rset : executeQuery(queryString)) { + teams.add(new TLWTeam(rset)); + } return teams; } public ArrayList getTeamsById(String id) { - String queryString = "SELECT * FROM `phpbb_footb_teams` WHERE `team_id` = " + id + ";"; - Statement stmt = null; - ResultSet rset = null; - ArrayList teams = new ArrayList(); - try { - stmt = con.createStatement(); - rset = stmt.executeQuery(queryString); - while ( rset.next()) { - teams.add(new TLWTeam(rset)); - } - } catch (SQLException e) { - /* TODO */ - e.printStackTrace(); + String queryString = "SELECT * FROM `phpbb_footb_teams` WHERE `team_id` = " + id + " ORDER BY `season` DESC;"; + + ArrayList teams = new ArrayList<>(); + for (ResultSet rset : executeQuery(queryString)) { + teams.add(new TLWTeam(rset)); } return teams; } - public ArrayList getMatchesBySeasonAndLeague(String season, String league) { - String queryString = "SELECT * FROM `phpbb_footb_matches` WHERE `season` = " + season + " AND `league` = " + league + ";"; - Statement stmt = null; - ResultSet rset = null; - ArrayList matches = new ArrayList(); - try { - stmt = con.createStatement(); - rset = stmt.executeQuery(queryString); - while (rset.next()) { - matches.add(new TLWMatch(rset)); - } - } catch (SQLException throwables) { - throwables.printStackTrace(); + private ArrayList getMatches(String queryString) { + + ArrayList matches = new ArrayList<>(); + for (ResultSet rset : executeQuery(queryString)) { + matches.add(new TLWMatch(rset)); } return matches; } + public ArrayList getMatches(String season, String league) { + String queryString = "SELECT * FROM `phpbb_footb_matches` WHERE `season` = " + season + " AND `league` = " + league + ";"; + return getMatches(queryString); + } + + public ArrayList getMatches(String season, String league, String matchday) { + String queryString = "SELECT * FROM `phpbb_footb_matches` WHERE `season` = " + season + " AND `league` = " + league + "AND `matchday` = " + matchday + ";"; + return getMatches(queryString); + } + public void updateMatchDateTime(String season, String league, String matchNo, String datetime) { String queryString = "UPDATE `phpbb_footb_matches` " + "SET match_datetime = " + datetime + " WHERE `season` = " + season + " AND `league` = " + league + " AND match_no = " + matchNo + ";"; + executeQuery(queryString); + } + + private ArrayList executeQuery (String queryString){ + Statement stmt; + ResultSet rset; + ArrayList results = new ArrayList<>(); + try { + stmt = con.createStatement(); + rset = stmt.executeQuery(queryString); + while (rset.next()) { + results.add(rset); + } + } catch (SQLException throwables) { + throwables.printStackTrace(); + } + return results; } } diff --git a/src/test/java/de/jeyp91/tippliga/TLWFootballMatchdaysCreatorTest.java b/src/test/java/de/jeyp91/tippliga/TLWFootballMatchdaysCreatorTest.java deleted file mode 100644 index cd3206f..0000000 --- a/src/test/java/de/jeyp91/tippliga/TLWFootballMatchdaysCreatorTest.java +++ /dev/null @@ -1,43 +0,0 @@ -package de.jeyp91.tippliga; - -import org.junit.Test; - -import java.util.ArrayList; - -import static org.junit.Assert.assertEquals; - -public class TLWFootballMatchdaysCreatorTest { - - @Test - public void getMatchdaysWTLPokalTest() { - TLWFootballMatchdaysCreator matchdaysCreator = new TLWFootballMatchdaysCreator(2021, 1, "WTL_Pokal.json"); - ArrayList matchdays = matchdaysCreator.getMatchdays(); - - assertEquals((Integer) 1, matchdays.get(0).getMatchday()); - } - - @Test - public void getMatchdaysWTLPokalSqlTest() { - - TLWFootballMatchdaysCreator matchdaysCreator = new TLWFootballMatchdaysCreator(2021, 98, "WTL_Pokal.json"); - String sql = matchdaysCreator.getMatchdaysSQL(); - System.out.println(sql); - } - - @Test - public void getMatchdaysTippligaTest() { - - TLWFootballMatchdaysCreator matchdaysCreator = new TLWFootballMatchdaysCreator(2021, 1, "Tippliga.json"); - ArrayList matchdays = matchdaysCreator.getMatchdays(); - - assertEquals((Integer) 1, matchdays.get(0).getMatchday()); - } - - @Test - public void getMatchdaysTippligaSqlTest() { - - TLWFootballMatchdaysCreator matchdaysCreator = new TLWFootballMatchdaysCreator(2021, 52, "Tippliga.json"); - String sql = matchdaysCreator.getMatchdaysSQL(); - System.out.println(sql); - } -} diff --git a/src/test/java/de/jeyp91/tippliga/TLWMatchdaysCreatorTest.java b/src/test/java/de/jeyp91/tippliga/TLWMatchdaysCreatorTest.java new file mode 100644 index 0000000..6d44c32 --- /dev/null +++ b/src/test/java/de/jeyp91/tippliga/TLWMatchdaysCreatorTest.java @@ -0,0 +1,75 @@ +package de.jeyp91.tippliga; + +import org.junit.Test; + +import java.util.ArrayList; + +import static org.junit.Assert.assertEquals; + +public class TLWMatchdaysCreatorTest { + + @Test + public void getMatchdaysTippligaTest() { + + TLWMatchdaysCreator matchdaysCreator = new TLWMatchdaysCreator(2021, 1, "Tippliga.json"); + ArrayList matchdays = matchdaysCreator.getMatchdays(); + + assertEquals((Integer) 1, matchdays.get(0).getMatchday()); + } + + @Test + public void getMatchdaysWTLPokalTest() { + TLWMatchdaysCreator matchdaysCreator = new TLWMatchdaysCreator(2021, 1, "WTL_Pokal.json"); + ArrayList matchdays = matchdaysCreator.getMatchdays(); + + assertEquals((Integer) 1, matchdays.get(0).getMatchday()); + } + + @Test + public void getMatchdaysTippliga1SqlTest() { + + TLWMatchdaysCreator matchdaysCreator = new TLWMatchdaysCreator(2021, 1, "Tippliga.json"); + String sql = matchdaysCreator.getMatchdaysSQL(); + System.out.println(sql); + } + + @Test + public void getMatchdaysTippliga2SqlTest() { + + TLWMatchdaysCreator matchdaysCreator = new TLWMatchdaysCreator(2021, 2, "Tippliga.json"); + String sql = matchdaysCreator.getMatchdaysSQL(); + System.out.println(sql); + } + + @Test + public void getMatchdaysTippliga51SqlTest() { + + TLWMatchdaysCreator matchdaysCreator = new TLWMatchdaysCreator(2021, 51, "Tippliga.json"); + String sql = matchdaysCreator.getMatchdaysSQL(); + System.out.println(sql); + } + + @Test + public void getMatchdaysTippliga52SqlTest() { + + TLWMatchdaysCreator matchdaysCreator = new TLWMatchdaysCreator(2021, 52, "Tippliga.json"); + String sql = matchdaysCreator.getMatchdaysSQL(); + System.out.println(sql); + } + + @Test + public void getMatchdaysWTLPokal48SqlTest() { + + TLWMatchdaysCreator matchdaysCreator = new TLWMatchdaysCreator(2021, 48, "WTL_Pokal.json"); + String sql = matchdaysCreator.getMatchdaysSQL(); + System.out.println(sql); + } + + @Test + public void getMatchdaysWTLPokal98SqlTest() { + + TLWMatchdaysCreator matchdaysCreator = new TLWMatchdaysCreator(2021, 98, "WTL_Pokal.json"); + String sql = matchdaysCreator.getMatchdaysSQL(); + System.out.println(sql); + } +} diff --git a/src/test/java/de/jeyp91/tippliga/TLWFootballMatchesCreatorTest.java b/src/test/java/de/jeyp91/tippliga/TLWMatchesCreatorFootballTest.java similarity index 67% rename from src/test/java/de/jeyp91/tippliga/TLWFootballMatchesCreatorTest.java rename to src/test/java/de/jeyp91/tippliga/TLWMatchesCreatorFootballTest.java index 9b3a2c9..71df8e1 100644 --- a/src/test/java/de/jeyp91/tippliga/TLWFootballMatchesCreatorTest.java +++ b/src/test/java/de/jeyp91/tippliga/TLWMatchesCreatorFootballTest.java @@ -6,11 +6,11 @@ import java.util.ArrayList; import static org.junit.Assert.assertEquals; -public class TLWFootballMatchesCreatorTest { +public class TLWMatchesCreatorFootballTest { @Test public void getMatchesTest() { - TLWFootballMatchesCreator creator = new TLWFootballMatchesCreator(2021, 1, "WTL_Pokal.json"); + TLWMatchesCreatorFootball creator = new TLWMatchesCreatorFootball(2021, 1, "WTL_Pokal.json"); ArrayList matches = creator.getMatches(); assertEquals((Integer) 1, matches.get(0).getMatchNo()); @@ -20,14 +20,14 @@ public class TLWFootballMatchesCreatorTest { @Test public void getMatchesTippligaSqlTest() { - TLWFootballMatchesCreator creator = new TLWFootballMatchesCreator(2021, 2, "Tippliga.json"); + TLWMatchesCreatorFootball creator = new TLWMatchesCreatorFootball(2021, 2, "Tippliga.json"); String sql = creator.getSQLInsertString(); System.out.println(sql); } @Test public void getMatchesWTLPokalSqlTest() { - TLWFootballMatchesCreator creator = new TLWFootballMatchesCreator(2021, 48, "WTL_Pokal.json"); + TLWMatchesCreatorFootball creator = new TLWMatchesCreatorFootball(2021, 48, "WTL_Pokal.json"); String sql = creator.getSQLInsertString(); System.out.println(sql); } diff --git a/src/test/java/de/jeyp91/tippliga/TLWMatchesCreatorTipperPokalTest.java b/src/test/java/de/jeyp91/tippliga/TLWMatchesCreatorTipperPokalTest.java new file mode 100644 index 0000000..d0f2357 --- /dev/null +++ b/src/test/java/de/jeyp91/tippliga/TLWMatchesCreatorTipperPokalTest.java @@ -0,0 +1,16 @@ +package de.jeyp91.tippliga; + +import org.junit.Test; + +public class TLWMatchesCreatorTipperPokalTest { + + @Test + public void getMatchesWTLPokalTest() { + TLWMatchdaysCreator matchdaysCreator = new TLWMatchdaysCreator(2021, 48, "WTL_Pokal.json"); + + TLWMatchesCreatorTipperPokal creator = new TLWMatchesCreatorTipperPokal(2021, 98, "WTL_Tipper.json", matchdaysCreator.getMatchdays()); + + String sql = creator.getSQLInsertString(); + System.out.println(sql); + } +} diff --git a/src/test/java/de/jeyp91/tippliga/TLWMatchesCreatorTipperTest.java b/src/test/java/de/jeyp91/tippliga/TLWMatchesCreatorTipperTest.java new file mode 100644 index 0000000..7558a43 --- /dev/null +++ b/src/test/java/de/jeyp91/tippliga/TLWMatchesCreatorTipperTest.java @@ -0,0 +1,18 @@ +package de.jeyp91.tippliga; + +import org.junit.Test; + +import static org.junit.Assert.assertEquals; + +public class TLWMatchesCreatorTipperTest { + + @Test + public void getMatchesTippligaTest() { + TLWMatchdaysCreator matchdaysCreator = new TLWMatchdaysCreator(2021, 2, "Tippliga.json"); + + TLWMatchesCreatorTipperLeague creator = new TLWMatchesCreatorTipperLeague(2021, 52, "2TL_Tipper.json", matchdaysCreator.getMatchdays()); + + String sql = creator.getSQLInsertString(); + System.out.println(sql); + } +} diff --git a/src/test/java/de/jeyp91/tippliga/TLWTeamsCreatorTest.java b/src/test/java/de/jeyp91/tippliga/TLWTeamsCreatorTest.java new file mode 100644 index 0000000..a8fc97b --- /dev/null +++ b/src/test/java/de/jeyp91/tippliga/TLWTeamsCreatorTest.java @@ -0,0 +1,58 @@ +package de.jeyp91.tippliga; + +import org.junit.Test; + +import java.util.ArrayList; + +import static org.junit.Assert.assertEquals; + +public class TLWTeamsCreatorTest { + @Test + public void getTeamsTippligaFootball1Test() { + TLWMatchesCreatorFootball matchesCreator = new TLWMatchesCreatorFootball(2021, 1, "Tippliga.json"); + ArrayList matches = matchesCreator.getMatches(); + + TLWTeamsCreator teamCreator = new TLWTeamsCreator(2021, 1, matches); + String sql = teamCreator.getSql(); + System.out.println(sql); + } + + @Test + public void getTeamsTipper1TLTest() { + TLWMatchdaysCreator matchdaysCreator = new TLWMatchdaysCreator(2021, 1, "Tippliga.json"); + + TLWMatchesCreatorTipperLeague creator = new TLWMatchesCreatorTipperLeague(2021, 51, "1TL_Tipper.json", matchdaysCreator.getMatchdays()); + + ArrayList matches = creator.getMatches(); + + TLWTeamsCreator teamCreator = new TLWTeamsCreator(2021, 51, matches); + String sql = teamCreator.getSql(); + System.out.println(sql); + } + + @Test + public void getTeamsTipper2TLTest() { + TLWMatchdaysCreator matchdaysCreator = new TLWMatchdaysCreator(2021, 2, "Tippliga.json"); + + TLWMatchesCreatorTipperLeague creator = new TLWMatchesCreatorTipperLeague(2021, 52, "2TL_Tipper.json", matchdaysCreator.getMatchdays()); + + ArrayList matches = creator.getMatches(); + + TLWTeamsCreator teamCreator = new TLWTeamsCreator(2021, 52, matches); + String sql = teamCreator.getSql(); + System.out.println(sql); + } + + @Test + public void getTeamsTipperWTLTest() { + TLWMatchdaysCreator matchdaysCreator = new TLWMatchdaysCreator(2021, 48, "WTL_Pokal.json"); + + TLWMatchesCreatorTipperPokal creator = new TLWMatchesCreatorTipperPokal(2021, 98, "WTL_Tipper.json", matchdaysCreator.getMatchdays()); + + ArrayList matches = creator.getMatches(); + + TLWTeamsCreator teamCreator = new TLWTeamsCreator(2021, 98, matches); + String sql = teamCreator.getSql(); + System.out.println(sql); + } +} diff --git a/src/test/java/de/jeyp91/tippliga/TLWTeamsPokalCreatorTest.java b/src/test/java/de/jeyp91/tippliga/TLWTeamsPokalCreatorTest.java deleted file mode 100644 index eda7698..0000000 --- a/src/test/java/de/jeyp91/tippliga/TLWTeamsPokalCreatorTest.java +++ /dev/null @@ -1,58 +0,0 @@ -package de.jeyp91.tippliga; - -import org.junit.Test; - -import java.util.ArrayList; - -import static org.junit.Assert.assertEquals; - -public class TLWTeamsPokalCreatorTest { - @Test - public void getTeamsWTLPokalTest() { - TLWFootballMatchesCreator matchesCreator = new TLWFootballMatchesCreator(2021, 2, "Tippliga.json"); - ArrayList matches = matchesCreator.getMatches(); - - TLWTeamsPokalCreator teamCreator = new TLWTeamsPokalCreator(2021, 2, matches); - String sql = teamCreator.getSql(); - System.out.println(sql); - } - - @Test - public void getTeamsTipper1TLTest() { - TLWFootballMatchdaysCreator matchdaysCreator = new TLWFootballMatchdaysCreator(2021, 1, "Tippliga.json"); - - TLWTipperMatchesCreator creator = new TLWTipperMatchesCreator(2021, 51, "1TL_Tipper.json", matchdaysCreator.getMatchdays()); - - ArrayList matches = creator.getMatches(); - - TLWTeamsPokalCreator teamCreator = new TLWTeamsPokalCreator(2021, 51, matches); - String sql = teamCreator.getSql(); - System.out.println(sql); - } - - @Test - public void getTeamsTipper2TLTest() { - TLWFootballMatchdaysCreator matchdaysCreator = new TLWFootballMatchdaysCreator(2021, 2, "Tippliga.json"); - - TLWTipperMatchesCreator creator = new TLWTipperMatchesCreator(2021, 52, "2TL_Tipper.json", matchdaysCreator.getMatchdays()); - - ArrayList matches = creator.getMatches(); - - TLWTeamsPokalCreator teamCreator = new TLWTeamsPokalCreator(2021, 52, matches); - String sql = teamCreator.getSql(); - System.out.println(sql); - } - - @Test - public void getTeamsTipperWTLTest() { - TLWFootballMatchdaysCreator matchdaysCreator = new TLWFootballMatchdaysCreator(2021, 48, "WTL_Pokal.json"); - - TLWTipperPokalMatchesCreator creator = new TLWTipperPokalMatchesCreator(2021, 98, "WTL_Tipper.json", matchdaysCreator.getMatchdays()); - - ArrayList matches = creator.getMatches(); - - TLWTeamsPokalCreator teamCreator = new TLWTeamsPokalCreator(2021, 98, matches); - String sql = teamCreator.getSql(); - System.out.println(sql); - } -} diff --git a/src/test/java/de/jeyp91/tippliga/TLWTipperMatchesCreatorTest.java b/src/test/java/de/jeyp91/tippliga/TLWTipperMatchesCreatorTest.java deleted file mode 100644 index 3981dd9..0000000 --- a/src/test/java/de/jeyp91/tippliga/TLWTipperMatchesCreatorTest.java +++ /dev/null @@ -1,20 +0,0 @@ -package de.jeyp91.tippliga; - -import org.junit.Test; - -import java.util.ArrayList; - -import static org.junit.Assert.assertEquals; - -public class TLWTipperMatchesCreatorTest { - - @Test - public void getMatchesTippligaTest() { - TLWFootballMatchdaysCreator matchdaysCreator = new TLWFootballMatchdaysCreator(2021, 2, "Tippliga.json"); - - TLWTipperMatchesCreator creator = new TLWTipperMatchesCreator(2021, 52, "2TL_Tipper.json", matchdaysCreator.getMatchdays()); - - String sql = creator.getSQLInsertString(); - System.out.println(sql); - } -} diff --git a/src/test/java/de/jeyp91/tippliga/TLWTipperPokalMatchesCreatorTest.java b/src/test/java/de/jeyp91/tippliga/TLWTipperPokalMatchesCreatorTest.java deleted file mode 100644 index f8eb116..0000000 --- a/src/test/java/de/jeyp91/tippliga/TLWTipperPokalMatchesCreatorTest.java +++ /dev/null @@ -1,16 +0,0 @@ -package de.jeyp91.tippliga; - -import org.junit.Test; - -public class TLWTipperPokalMatchesCreatorTest { - - @Test - public void getMatchesWTLPokalTest() { - TLWFootballMatchdaysCreator matchdaysCreator = new TLWFootballMatchdaysCreator(2021, 48, "WTL_Pokal.json"); - - TLWTipperPokalMatchesCreator creator = new TLWTipperPokalMatchesCreator(2021, 98, "WTL_Tipper.json", matchdaysCreator.getMatchdays()); - - String sql = creator.getSQLInsertString(); - System.out.println(sql); - } -} diff --git a/src/test/java/de/jeyp91/tippliga/TippligaSQLConnectorTest.java b/src/test/java/de/jeyp91/tippliga/TippligaSQLConnectorTest.java index 3e08c4d..a36828c 100644 --- a/src/test/java/de/jeyp91/tippliga/TippligaSQLConnectorTest.java +++ b/src/test/java/de/jeyp91/tippliga/TippligaSQLConnectorTest.java @@ -1,8 +1,5 @@ package de.jeyp91.tippliga; -import de.jeyp91.tippliga.TLWMatch; -import de.jeyp91.tippliga.TLWTeam; -import de.jeyp91.tippliga.TippligaSQLConnector; import org.junit.Before; import org.junit.Test; @@ -53,7 +50,7 @@ public class TippligaSQLConnectorTest { @Test public void getMatchesBySeasonAndLeague() { - ArrayList matches = tl.getMatchesBySeasonAndLeague("2020", "1"); + ArrayList matches = tl.getMatches("2020", "1"); assertEquals(468, matches.size());