Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 0 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,2 @@
target/
/.idea/
.env
package-lock.json
16 changes: 0 additions & 16 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -45,22 +45,6 @@
<artifactId>javafx-fxml</artifactId>
<version>${javafx.version}</version>
</dependency>
<dependency>
<groupId>tools.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>3.0.1</version>
</dependency>
<dependency>
<groupId>io.github.cdimascio</groupId>
<artifactId>dotenv-java</artifactId>
<version>3.2.0</version>
</dependency>
<dependency>
<groupId>org.wiremock</groupId>
<artifactId>wiremock</artifactId>
<version>4.0.0-beta.15</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
Expand Down
12 changes: 2 additions & 10 deletions src/main/java/com/example/HelloController.java
Original file line number Diff line number Diff line change
@@ -1,16 +1,14 @@
package com.example;
import javafx.event.ActionEvent;

import javafx.fxml.FXML;
import javafx.scene.control.Label;
import javafx.scene.control.ListView;

/**
* Controller layer: mediates between the view (FXML) and the model.
*/
public class HelloController {

private final HelloModel model = new HelloModel(new NtfyConnectionImpl());
public ListView<NtfyMessageDto> messageView;
private final HelloModel model = new HelloModel();

@FXML
private Label messageLabel;
Expand All @@ -20,11 +18,5 @@ private void initialize() {
if (messageLabel != null) {
messageLabel.setText(model.getGreeting());
}
messageView.setItems(model.getMessages());

}

public void sendMessage(ActionEvent actionEvent) {
model.sendMessage();
}
}
3 changes: 2 additions & 1 deletion src/main/java/com/example/HelloFX.java
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
package com.example;

import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
Expand All @@ -12,7 +13,7 @@ public void start(Stage stage) throws Exception {
FXMLLoader fxmlLoader = new FXMLLoader(HelloFX.class.getResource("hello-view.fxml"));
Parent root = fxmlLoader.load();
Scene scene = new Scene(root, 640, 480);
stage.setTitle("Chatt Client");
stage.setTitle("Hello MVC");
stage.setScene(scene);
stage.show();
}
Expand Down
47 changes: 3 additions & 44 deletions src/main/java/com/example/HelloModel.java
Original file line number Diff line number Diff line change
@@ -1,56 +1,15 @@
package com.example;
import javafx.application.Platform;
import javafx.beans.property.SimpleStringProperty;
import javafx.beans.property.StringProperty;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;


/**
* Model layer: encapsulates application data and business logic.
*/
public class HelloModel {

private final NtfyConnection connection;

private final ObservableList<NtfyMessageDto> messages = FXCollections.observableArrayList();
private final StringProperty messageToSend = new SimpleStringProperty();

public HelloModel(NtfyConnection connection) {
this.connection = connection;
receiveMessage();
}


public ObservableList<NtfyMessageDto> getMessages() {
return messages;
}

public String getMessageToSend() {
return messageToSend.get();
}

public StringProperty messageToSendProperty() {
return messageToSend;
}

public void setMessageToSend(String message) {
messageToSend.set(message);
}

/**
* Returns a greeting based on the current Java and JavaFX versions.
*/
public String getGreeting() {
return "Chat Client by Adam";
}

public void sendMessage() {
connection.send(messageToSend.get());

}

public void receiveMessage() {
connection.receive(m->Platform.runLater(()->messages.add(m)));
String javaVersion = System.getProperty("java.version");
String javafxVersion = System.getProperty("javafx.version");
return "Hello, JavaFX " + javafxVersion + ", running on Java " + javaVersion + ".";
}
}
17 changes: 0 additions & 17 deletions src/main/java/com/example/ManyParameters.java

This file was deleted.

38 changes: 0 additions & 38 deletions src/main/java/com/example/ManyParametersBuilder.java

This file was deleted.

9 changes: 0 additions & 9 deletions src/main/java/com/example/NtfyConnection.java

This file was deleted.

62 changes: 0 additions & 62 deletions src/main/java/com/example/NtfyConnectionImpl.java

This file was deleted.

6 changes: 0 additions & 6 deletions src/main/java/com/example/NtfyMessageDto.java

This file was deleted.

13 changes: 0 additions & 13 deletions src/main/java/com/example/Singelton.java

This file was deleted.

4 changes: 0 additions & 4 deletions src/main/java/module-info.java
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
module hellofx {
requires javafx.controls;
requires javafx.fxml;
requires io.github.cdimascio.dotenv.java;
requires java.net.http;
requires tools.jackson.databind;
requires javafx.graphics;

opens com.example to javafx.fxml;
exports com.example;
Expand Down
19 changes: 8 additions & 11 deletions src/main/resources/com/example/hello-view.fxml
Original file line number Diff line number Diff line change
@@ -1,12 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>

<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>

<VBox alignment="CENTER" xmlns="http://javafx.com/javafx/17.0.12" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.HelloController">

<Label fx:id="messageLabel" text="Adams Chat Client" />
<Button onAction="#sendMessage" prefHeight="25.0" prefWidth="115.0" text="Send message" />
<ListView fx:id="messageView" />

</VBox>
<?import javafx.scene.layout.StackPane?>
<?import javafx.scene.control.Label?>

<StackPane xmlns="http://javafx.com/javafx" xmlns:fx="http://javafx.com/fxml" fx:controller="com.example.HelloController">
<children>
<Label fx:id="messageLabel" text="Hello, JavaFX!" />
</children>
</StackPane>
45 changes: 0 additions & 45 deletions src/test/java/com/example/HelloModelTest.java

This file was deleted.

18 changes: 0 additions & 18 deletions src/test/java/com/example/NtfyConnectionSpy.java

This file was deleted.