From ee2bf2d1aa0a46f378738398ed8732e7a6202244 Mon Sep 17 00:00:00 2001 From: Josh Larson Date: Thu, 29 Dec 2016 10:08:02 -0600 Subject: [PATCH] Completely overhauled how the GUI operates and key parts of the backend --- .classpath | 3 + LightspeedJarLoader.zip | Bin 0 -> 7087 bytes data/lightspeed.sql | 3 +- fxml/BuildDataPane.css | 40 --- fxml/BuildDataPane.fxml | 72 ----- fxml/CreateServerPane.css | 8 - fxml/CreateServerPane.fxml | 41 --- fxml/DeploymentDataPane.css | 8 - fxml/DeploymentDataPane.fxml | 35 --- fxml/PrimaryView.css | 69 +++-- fxml/PrimaryView.fxml | 72 +++-- fxml/primary_tabs/Build.css | 11 + fxml/primary_tabs/Build.fxml | 45 +++ fxml/primary_tabs/Deployment.css | 24 ++ fxml/primary_tabs/Deployment.fxml | 54 ++++ fxml/primary_tabs/General.css | 11 + fxml/primary_tabs/General.fxml | 39 +++ hamcrest-core-1.3.jar | Bin 0 -> 45024 bytes junit-4.12.jar | Bin 0 -> 314932 bytes lib/rt.jar | Bin 0 -> 65933338 bytes src/com/projectswg/CombinedLightspeed.java | 69 +++++ src/com/projectswg/Lightspeed.java | 9 +- src/com/projectswg/LightweightLightspeed.java | 127 ++++++++ src/com/projectswg/common/control/Assert.java | 89 ++++++ .../common/control/IntentExecutor.java | 132 +++++++++ .../common/control/IntentManager.java | 12 +- .../common/control/IntentQueue.java | 46 +-- .../projectswg/common/control/Service.java | 19 +- .../projectswg/common/data/BackendData.java | 258 +--------------- .../common/data/BuildHistoryTable.java | 34 +-- .../common/data/HeavyweightBackendData.java | 164 ++++++++++ .../common/data/LightweightBackendData.java | 77 +++++ .../projectswg/common/data/SQLBuildData.java | 28 +- .../projectswg/common/data/TestDetails.java | 33 +-- .../projectswg/common/info/DataManager.java | 101 +------ .../common/info/HeavyweightDataManager.java | 121 ++++++++ .../common/info/LightweightConfig.java | 55 ++++ .../info/LightweightDataManager.java} | 72 ++--- .../projectswg/common/network/TCPServer.java | 27 +- .../packets/post/PostDeployPacket.java | 12 +- .../RequestDeploymentHistoryPacket.java | 12 +- .../ResponseDeploymentHistoryPacket.java | 68 +++-- .../lightspeed/CommunicationService.java | 11 +- .../lightspeed/DeploymentService.java | 27 +- .../lightspeed/LightspeedManager.java | 4 + .../lightspeed/StarshipProcess.java | 5 +- .../lightspeed/build/BuildMethod.java | 34 +++ .../lightspeed/build/BuildService.java | 31 +- .../lightspeed/build/InstallationState.java | 5 +- .../lightspeed/build/JavaBuildMethod.java | 119 ++++++++ .../lightspeed/build/MavenInterface.java | 5 +- .../lightspeed/build/ServerBuildData.java | 181 +++--------- .../build/jar_loader/LJLConstants.java | 44 +++ .../build/jar_loader/LJLURLConnection.java | 59 ++++ .../build/jar_loader/LJLURLStreamHandler.java | 58 ++++ .../LJLURLStreamHandlerFactory.java | 48 +++ .../build/jar_loader/LightspeedJarLoader.java | 93 ++++++ .../build/java_builder/CustomJavaBuild.java | 76 +++++ .../build/java_builder/CustomJavaCommon.java | 133 +++++++++ .../java_builder/CustomJavaException.java | 38 +++ .../build/java_builder/CustomJavaInstall.java | 167 +++++++++++ .../build/java_builder/CustomJavaTest.java | 106 +++++++ .../lightspeed_frontend/Frontend.java | 88 +----- .../LightspeedFrontendGUI.java | 45 ++- .../LightspeedFrontendText.java | 14 +- .../communication/FrontendCommunication.java | 23 ++ .../FrontendLightspeedSession.java | 2 +- .../data/SharedBuildData.java | 81 ++--- .../lightspeed_frontend/data/SharedData.java | 146 +++++++++ .../data/SharedDeploymentData.java | 14 + .../data/SharedServerData.java | 209 +++++++++++-- .../gui/BuildDataPane.java | 174 ----------- .../gui/LightspeedPrimaryView.java | 279 +++++------------- .../gui/primary_tabs/BuildTab.java | 246 +++++++++++++++ .../gui/primary_tabs/DeploymentTab.java | 244 +++++++++++++++ .../gui/primary_tabs/GeneralTab.java | 236 +++++++++++++++ .../intents/BuildDataUpdateIntent.java | 82 +++++ .../intents/ConnectionStateUpdateIntent.java | 55 ++++ .../intents/DeploymentDataUpdateIntent.java | 92 ++++++ .../intents/ServerDataUpdateIntent.java | 72 +++++ .../lightspeed_frontend/javafx/Dialog.java | 139 +++++++++ .../projectswg/lightspeed/TestLightspeed.java | 42 +++ .../LinearTestFrontendCommunication.java | 105 +++---- .../lightspeed/frontend/TestConnect.java | 89 ++++++ .../lightspeed/frontend/TestData.java | 101 +++++++ .../lightspeed/frontend/TestFrontend.java | 41 +++ 86 files changed, 4367 insertions(+), 1596 deletions(-) create mode 100644 LightspeedJarLoader.zip delete mode 100644 fxml/BuildDataPane.css delete mode 100644 fxml/BuildDataPane.fxml delete mode 100644 fxml/CreateServerPane.css delete mode 100644 fxml/CreateServerPane.fxml delete mode 100644 fxml/DeploymentDataPane.css delete mode 100644 fxml/DeploymentDataPane.fxml create mode 100644 fxml/primary_tabs/Build.css create mode 100644 fxml/primary_tabs/Build.fxml create mode 100644 fxml/primary_tabs/Deployment.css create mode 100644 fxml/primary_tabs/Deployment.fxml create mode 100644 fxml/primary_tabs/General.css create mode 100644 fxml/primary_tabs/General.fxml create mode 100644 hamcrest-core-1.3.jar create mode 100644 junit-4.12.jar create mode 100755 lib/rt.jar create mode 100644 src/com/projectswg/CombinedLightspeed.java create mode 100644 src/com/projectswg/LightweightLightspeed.java create mode 100644 src/com/projectswg/common/control/Assert.java create mode 100644 src/com/projectswg/common/control/IntentExecutor.java create mode 100644 src/com/projectswg/common/data/HeavyweightBackendData.java create mode 100644 src/com/projectswg/common/data/LightweightBackendData.java create mode 100644 src/com/projectswg/common/info/HeavyweightDataManager.java create mode 100644 src/com/projectswg/common/info/LightweightConfig.java rename src/com/projectswg/{lightspeed_frontend/gui/DeploymentDataPane.java => common/info/LightweightDataManager.java} (65%) create mode 100644 src/com/projectswg/lightspeed/build/BuildMethod.java create mode 100644 src/com/projectswg/lightspeed/build/JavaBuildMethod.java create mode 100644 src/com/projectswg/lightspeed/build/jar_loader/LJLConstants.java create mode 100644 src/com/projectswg/lightspeed/build/jar_loader/LJLURLConnection.java create mode 100644 src/com/projectswg/lightspeed/build/jar_loader/LJLURLStreamHandler.java create mode 100644 src/com/projectswg/lightspeed/build/jar_loader/LJLURLStreamHandlerFactory.java create mode 100644 src/com/projectswg/lightspeed/build/jar_loader/LightspeedJarLoader.java create mode 100644 src/com/projectswg/lightspeed/build/java_builder/CustomJavaBuild.java create mode 100644 src/com/projectswg/lightspeed/build/java_builder/CustomJavaCommon.java create mode 100644 src/com/projectswg/lightspeed/build/java_builder/CustomJavaException.java create mode 100644 src/com/projectswg/lightspeed/build/java_builder/CustomJavaInstall.java create mode 100644 src/com/projectswg/lightspeed/build/java_builder/CustomJavaTest.java create mode 100644 src/com/projectswg/lightspeed_frontend/data/SharedData.java delete mode 100644 src/com/projectswg/lightspeed_frontend/gui/BuildDataPane.java create mode 100644 src/com/projectswg/lightspeed_frontend/gui/primary_tabs/BuildTab.java create mode 100644 src/com/projectswg/lightspeed_frontend/gui/primary_tabs/DeploymentTab.java create mode 100644 src/com/projectswg/lightspeed_frontend/gui/primary_tabs/GeneralTab.java create mode 100644 src/com/projectswg/lightspeed_frontend/intents/BuildDataUpdateIntent.java create mode 100644 src/com/projectswg/lightspeed_frontend/intents/ConnectionStateUpdateIntent.java create mode 100644 src/com/projectswg/lightspeed_frontend/intents/DeploymentDataUpdateIntent.java create mode 100644 src/com/projectswg/lightspeed_frontend/intents/ServerDataUpdateIntent.java create mode 100644 src/com/projectswg/lightspeed_frontend/javafx/Dialog.java create mode 100644 test/com/projectswg/lightspeed/TestLightspeed.java rename src/com/projectswg/lightspeed_frontend/gui/CreateServerPane.java => test/com/projectswg/lightspeed/frontend/LinearTestFrontendCommunication.java (54%) create mode 100644 test/com/projectswg/lightspeed/frontend/TestConnect.java create mode 100644 test/com/projectswg/lightspeed/frontend/TestData.java create mode 100644 test/com/projectswg/lightspeed/frontend/TestFrontend.java diff --git a/.classpath b/.classpath index 8473db1..0369b72 100644 --- a/.classpath +++ b/.classpath @@ -1,8 +1,11 @@ + + + diff --git a/LightspeedJarLoader.zip b/LightspeedJarLoader.zip new file mode 100644 index 0000000000000000000000000000000000000000..3b893aa51950316e7c5fb042b7bb138d65b833fc GIT binary patch literal 7087 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 G?SBAg*&8+h literal 0 HcmV?d00001 diff --git a/data/lightspeed.sql b/data/lightspeed.sql index eddc082..463e589 100644 --- a/data/lightspeed.sql +++ b/data/lightspeed.sql @@ -19,8 +19,7 @@ CREATE TABLE IF NOT EXISTS builds ( test_total INTEGER, test_failures INTEGER, test_errors INTEGER, - test_skipped INTEGER, - jar TEXT + test_skipped INTEGER ); CREATE TABLE IF NOT EXISTS deployments ( diff --git a/fxml/BuildDataPane.css b/fxml/BuildDataPane.css deleted file mode 100644 index 3e9698b..0000000 --- a/fxml/BuildDataPane.css +++ /dev/null @@ -1,40 +0,0 @@ - -#idText { - -fx-font-weight: bold; -} - -.Text { - -fx-padding: 5 0 5 0; -} - -.table-view { - -fx-focus-color: transparent; - -fx-min-height: 50px; -} - -.column-header { - -fx-text-fill: white; - -fx-font-size: 10pt; - -fx-cell-size: 30px; -} - -.table-cell { - -fx-alignment: CENTER-LEFT; - -fx-font-size: 10pt; - -fx-fill: white; -} - -.table-row-cell { - -fx-cell-size: 30px; -} - -.table-row-cell:filled:selected { - -fx-background: -fx-control-inner-background ; - -fx-background-color: -fx-table-cell-border-color, -fx-background ; - -fx-background-insets: 0, 0 0 1 0 ; - -fx-table-cell-border-color: derive(-fx-color, 5%); -} - -.table-row-cell:odd:filled:selected { - -fx-background: -fx-control-inner-background-alt ; -} diff --git a/fxml/BuildDataPane.fxml b/fxml/BuildDataPane.fxml deleted file mode 100644 index b03162b..0000000 --- a/fxml/BuildDataPane.fxml +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/fxml/CreateServerPane.css b/fxml/CreateServerPane.css deleted file mode 100644 index c5f3123..0000000 --- a/fxml/CreateServerPane.css +++ /dev/null @@ -1,8 +0,0 @@ - -#idText { - -fx-font-weight: bold; -} - -.Text { - -fx-padding: 5 0 5 0; -} diff --git a/fxml/CreateServerPane.fxml b/fxml/CreateServerPane.fxml deleted file mode 100644 index 7239c36..0000000 --- a/fxml/CreateServerPane.fxml +++ /dev/null @@ -1,41 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -