diff --git a/.gitignore b/.gitignore
index 9fb18b4..aa03912 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,3 @@
.idea
out
+target
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..22e609f
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,62 @@
+
+ 4.0.0
+ ftp.sar
+ ftp-sar
+ 1.0
+ FTP-SAR
+
+
+ UTF-8
+ 5.5.2
+
+
+
+
+ org.openjfx
+ javafx
+ 11
+ pom
+
+
+ org.openjfx
+ javafx-controls
+ 11
+
+
+ org.openjfx
+ javafx-fxml
+ 11
+
+
+ org.junit.jupiter
+ junit-jupiter
+ ${junit.jupiter.version}
+ test
+
+
+
+
+
+ maven-compiler-plugin
+ 3.8.1
+
+ 11
+ 11
+
+
+
+ maven-surefire-plugin
+ 2.22.2
+
+
+ org.openjfx
+ javafx-maven-plugin
+ 0.0.3
+
+ ftp.sar.Main
+
+
+
+
+
\ No newline at end of file
diff --git a/src/application/client/server/ServerConnector.java b/src/application/client/server/ServerConnector.java
deleted file mode 100644
index 9835886..0000000
--- a/src/application/client/server/ServerConnector.java
+++ /dev/null
@@ -1,108 +0,0 @@
-package application.client.server;
-
-import application.PropertiesLoader;
-import application.client.exception.CannotConnectException;
-
-import java.io.*;
-import java.net.Socket;
-
-public class ServerConnector {
- private PropertiesLoader propertiesLoader = PropertiesLoader.getInstance();
-
- public ServerConnector() {
- }
-
- public boolean readFileList(Server server) {
- try {
- Socket socket = new Socket(server.getIp(), server.getPort());
- DataOutputStream dataOutputStream = new DataOutputStream(socket.getOutputStream());
- OutputStreamWriter outputStreamWriter = new OutputStreamWriter(dataOutputStream);
- BufferedWriter bufferedWriter = new BufferedWriter(outputStreamWriter);
-
- String command = "GET_ALL_FILES";
-
- bufferedWriter.write(command, 0, command.length());
- bufferedWriter.flush();
- bufferedWriter.close();
- socket.close();
-
-
-
- socket = new Socket(server.getIp(), server.getPort());
- DataInputStream dataInputStream = new DataInputStream(socket.getInputStream());
- InputStreamReader inputStreamReader = new InputStreamReader(dataInputStream);
- BufferedReader reader = new BufferedReader(inputStreamReader);
-
- while (true) {
- String file = reader.readLine();
- System.out.println(file);
-
- if (file == null) {
- break;
- }
-
- server.addToFileList(file);
- }
-
- return true;
- } catch (Exception e) {
- e.printStackTrace();
- }
-
- return false;
- }
-
-// public static Connector getInstance() {
-// return instance;
-// }
-//
-// public void connect(String ip) throws CannotConnectException {
-// this.isConnect = false;
-// try {
-// this.client = new Socket(ip, Integer.parseInt(this.propertiesLoader.get("port")));
-// this.checkIfConnect();
-// } catch (IOException e) {
-// throw new CannotConnectException();
-// }
-// }
-//
-// private void checkIfConnect() {
-// String pattern = this.propertiesLoader.get("serverStatusConnect");
-//
-// this.isConnect = pattern.equals(this.getMessage());
-// }
-//
-// public String getMessage() {
-// String message = null;
-// try {
-// System.out.println("Trying to get input stream");
-// DataInputStream inputStream = new DataInputStream(this.client.getInputStream());
-// InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
-// BufferedReader br = new BufferedReader(inputStreamReader);
-// message = br.readLine();
-// } catch (IOException e) {
-// e.printStackTrace();
-// }
-// System.out.println("Message received: "+ message);
-// return message;
-// }
-//
-// public void getFileList() {
-// try {
-// DataOutputStream outputStream = new DataOutputStream(this.client.getOutputStream());
-// OutputStreamWriter outputStreamWriter = new OutputStreamWriter(outputStream);
-// BufferedWriter bufferedWriter = new BufferedWriter(outputStreamWriter);
-//
-// bufferedWriter.write("GET_ALL_FILES");
-// bufferedWriter.flush();
-//
-// this.getMessage();
-// } catch (IOException e) {
-// e.printStackTrace();
-// }
-// }
-//
-// public boolean isConnect() {
-// return this.isConnect;
-// }
-}
diff --git a/src/application/client/validator/Validator.java b/src/application/client/validator/Validator.java
deleted file mode 100644
index 86646b5..0000000
--- a/src/application/client/validator/Validator.java
+++ /dev/null
@@ -1,5 +0,0 @@
-package application.client.validator;
-
-public interface Validator {
- public boolean validate(Object value);
-}
diff --git a/src/application/Main.java b/src/main/java/ftp/sar/Main.java
similarity index 66%
rename from src/application/Main.java
rename to src/main/java/ftp/sar/Main.java
index 46a7c86..aa574e8 100644
--- a/src/application/Main.java
+++ b/src/main/java/ftp/sar/Main.java
@@ -1,18 +1,23 @@
-package application;
+package ftp.sar;
-import application.client.view.ResourceLoader;
+import ftp.sar.view.ResourceLoader;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;
-
public class Main extends Application {
@Override
public void start(Stage primaryStage) throws Exception{
+
+ Object o = getClass();
+
ResourceLoader loader = ResourceLoader.getInstance();
+ Object c = loader.getResource("main_page.fxml");
+ Object a = getClass().getClassLoader().getResource("resources/main_page.fxml");
+ Object b = getClass().getClassLoader().getResource("main_page.fxml");
Parent root = FXMLLoader.load(loader.getResource("main_page.fxml"));
primaryStage.setTitle("FTP SAR");
diff --git a/src/application/PropertiesLoader.java b/src/main/java/ftp/sar/PropertiesLoader.java
similarity index 95%
rename from src/application/PropertiesLoader.java
rename to src/main/java/ftp/sar/PropertiesLoader.java
index 2923445..f3e95eb 100644
--- a/src/application/PropertiesLoader.java
+++ b/src/main/java/ftp/sar/PropertiesLoader.java
@@ -1,7 +1,7 @@
-package application;
+package ftp.sar;
-import application.client.view.ResourceLoader;
+import ftp.sar.view.ResourceLoader;
import java.io.FileOutputStream;
import java.io.IOException;
diff --git a/src/application/client/exception/CannotConnectException.java b/src/main/java/ftp/sar/exception/CannotConnectException.java
similarity index 70%
rename from src/application/client/exception/CannotConnectException.java
rename to src/main/java/ftp/sar/exception/CannotConnectException.java
index 8c38252..841d3cb 100644
--- a/src/application/client/exception/CannotConnectException.java
+++ b/src/main/java/ftp/sar/exception/CannotConnectException.java
@@ -1,4 +1,4 @@
-package application.client.exception;
+package ftp.sar.exception;
import java.io.IOException;
diff --git a/src/application/client/server/Server.java b/src/main/java/ftp/sar/server/Server.java
similarity index 84%
rename from src/application/client/server/Server.java
rename to src/main/java/ftp/sar/server/Server.java
index d2e8c20..cdd1c8b 100644
--- a/src/application/client/server/Server.java
+++ b/src/main/java/ftp/sar/server/Server.java
@@ -1,12 +1,11 @@
-package application.client.server;
+package ftp.sar.server;
import java.util.ArrayList;
-import java.util.List;
public class Server {
private String ip;
private int port;
- private ArrayList fileList = new ArrayList();
+ private ArrayList fileList = new ArrayList<>();
public Server (String ip, int port) {
this.ip = ip;
diff --git a/src/main/java/ftp/sar/server/ServerConnector.java b/src/main/java/ftp/sar/server/ServerConnector.java
new file mode 100644
index 0000000..3de5de9
--- /dev/null
+++ b/src/main/java/ftp/sar/server/ServerConnector.java
@@ -0,0 +1,64 @@
+package ftp.sar.server;
+
+import ftp.sar.PropertiesLoader;
+import ftp.sar.exception.CannotConnectException;
+
+import java.io.*;
+import java.net.Socket;
+
+public class ServerConnector {
+ private PropertiesLoader propertiesLoader = PropertiesLoader.getInstance();
+
+ public ServerConnector() {
+ }
+
+ public boolean readFileList(Server server) throws CannotConnectException {
+
+ this.sendRequest("GET_ALL_FILES", server);
+
+ try {
+ Socket socket = new Socket(server.getIp(), server.getPort());
+ DataInputStream dataInputStream = new DataInputStream(socket.getInputStream());
+ InputStreamReader inputStreamReader = new InputStreamReader(dataInputStream);
+ BufferedReader reader = new BufferedReader(inputStreamReader);
+
+ while (true) {
+ String file = reader.readLine();
+ System.out.println(file);
+
+ if (file == null) {
+ break;
+ }
+
+ server.addToFileList(file);
+ }
+
+ return true;
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+
+ return false;
+ }
+
+ private void sendRequest(
+ String request,
+ Server server
+ ) throws CannotConnectException {
+ Socket socket;
+ try {
+ socket = new Socket(server.getIp(), server.getPort());
+ DataOutputStream dataOutputStream = new DataOutputStream(socket.getOutputStream());
+ OutputStreamWriter outputStreamWriter = new OutputStreamWriter(dataOutputStream);
+ BufferedWriter bufferedWriter = new BufferedWriter(outputStreamWriter);
+
+ bufferedWriter.write(request, 0, request.length());
+ bufferedWriter.flush();
+ bufferedWriter.close();
+ socket.close();
+ } catch (IOException e) {
+ throw new CannotConnectException();
+ }
+
+ }
+}
diff --git a/src/application/client/server/ServerFactory.java b/src/main/java/ftp/sar/server/ServerFactory.java
similarity index 66%
rename from src/application/client/server/ServerFactory.java
rename to src/main/java/ftp/sar/server/ServerFactory.java
index 77094a0..464ad69 100644
--- a/src/application/client/server/ServerFactory.java
+++ b/src/main/java/ftp/sar/server/ServerFactory.java
@@ -1,20 +1,23 @@
-package application.client.server;
+package ftp.sar.server;
-import application.client.validator.IpValidator;
-
-import java.util.ArrayList;
+import ftp.sar.exception.CannotConnectException;
+import ftp.sar.validator.IpValidator;
public class ServerFactory {
public Server create(String ip, int port) {
if (!this.validate(ip)) {
return null;
- };
+ }
Server server = this.createServer(ip, port);
ServerConnector connector = new ServerConnector();
- connector.readFileList(server);
+ try {
+ connector.readFileList(server);
+ } catch (CannotConnectException e) {
+ e.printStackTrace();
+ }
return server;
}
diff --git a/src/application/client/validator/IpValidator.java b/src/main/java/ftp/sar/validator/IpValidator.java
similarity index 92%
rename from src/application/client/validator/IpValidator.java
rename to src/main/java/ftp/sar/validator/IpValidator.java
index 4613645..97cfcd4 100644
--- a/src/application/client/validator/IpValidator.java
+++ b/src/main/java/ftp/sar/validator/IpValidator.java
@@ -1,4 +1,4 @@
-package application.client.validator;
+package ftp.sar.validator;
import java.security.InvalidParameterException;
diff --git a/src/main/java/ftp/sar/validator/Validator.java b/src/main/java/ftp/sar/validator/Validator.java
new file mode 100644
index 0000000..a73bfde
--- /dev/null
+++ b/src/main/java/ftp/sar/validator/Validator.java
@@ -0,0 +1,5 @@
+package ftp.sar.validator;
+
+public interface Validator {
+ boolean validate(Object value);
+}
diff --git a/src/application/client/view/ResourceLoader.java b/src/main/java/ftp/sar/view/ResourceLoader.java
similarity index 63%
rename from src/application/client/view/ResourceLoader.java
rename to src/main/java/ftp/sar/view/ResourceLoader.java
index 26f8c44..8d3a9d7 100644
--- a/src/application/client/view/ResourceLoader.java
+++ b/src/main/java/ftp/sar/view/ResourceLoader.java
@@ -1,18 +1,17 @@
-package application.client.view;
+package ftp.sar.view;
import java.io.InputStream;
import java.net.URL;
public class ResourceLoader {
private static final ResourceLoader instance = new ResourceLoader();
- public static final String RESOURCE_FOLDER = "resource/";
public URL getResource(String name) {
- return getClass().getClassLoader().getResource(RESOURCE_FOLDER + name);
+ return getClass().getClassLoader().getResource(name);
}
public InputStream getResourceAsStream(String name) {
- return getClass().getClassLoader().getResourceAsStream(RESOURCE_FOLDER + name);
+ return getClass().getClassLoader().getResourceAsStream( name);
}
public String getPath(String name) {
diff --git a/src/application/client/view/mainPage/MainPageController.java b/src/main/java/ftp/sar/view/mainPage/MainPageController.java
similarity index 73%
rename from src/application/client/view/mainPage/MainPageController.java
rename to src/main/java/ftp/sar/view/mainPage/MainPageController.java
index 880dbf3..04ba4c9 100644
--- a/src/application/client/view/mainPage/MainPageController.java
+++ b/src/main/java/ftp/sar/view/mainPage/MainPageController.java
@@ -1,7 +1,6 @@
-package application.client.view.mainPage;
+package ftp.sar.view.mainPage;
-import application.client.server.ServerConnector;
-import application.client.server.ServerFactory;
+import ftp.sar.server.ServerFactory;
import javafx.event.Event;
import javafx.fxml.FXML;
import javafx.scene.control.TextField;
diff --git a/src/resource/config.properties b/src/main/resources/config.properties
similarity index 100%
rename from src/resource/config.properties
rename to src/main/resources/config.properties
diff --git a/src/resource/main_page.fxml b/src/main/resources/main_page.fxml
similarity index 93%
rename from src/resource/main_page.fxml
rename to src/main/resources/main_page.fxml
index 0e7a0e9..583c075 100644
--- a/src/resource/main_page.fxml
+++ b/src/main/resources/main_page.fxml
@@ -6,7 +6,7 @@
-
+
diff --git a/src/test/java/ftp/sar/server/TestServer.java b/src/test/java/ftp/sar/server/TestServer.java
new file mode 100644
index 0000000..8ed3494
--- /dev/null
+++ b/src/test/java/ftp/sar/server/TestServer.java
@@ -0,0 +1,17 @@
+package ftp.sar.server;
+
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.*;
+
+class TestServer {
+ public static final String IP = "192.168.0.1";
+ public static final int PORT = 6666;
+
+ @Test
+ public void testCreateServer() {
+ Server server = new Server(IP, PORT);
+
+ assertEquals(IP, server.getIp());
+ }
+}
\ No newline at end of file
diff --git a/target/classes/config.properties b/target/classes/config.properties
new file mode 100644
index 0000000..4543094
--- /dev/null
+++ b/target/classes/config.properties
@@ -0,0 +1,2 @@
+port=7332
+serverStatusConnect=CONNECT
\ No newline at end of file
diff --git a/target/classes/ftp/sar/Main.class b/target/classes/ftp/sar/Main.class
new file mode 100644
index 0000000..a7f81cb
Binary files /dev/null and b/target/classes/ftp/sar/Main.class differ
diff --git a/target/classes/ftp/sar/PropertiesLoader.class b/target/classes/ftp/sar/PropertiesLoader.class
new file mode 100644
index 0000000..c9f6afc
Binary files /dev/null and b/target/classes/ftp/sar/PropertiesLoader.class differ
diff --git a/target/classes/ftp/sar/exception/CannotConnectException.class b/target/classes/ftp/sar/exception/CannotConnectException.class
new file mode 100644
index 0000000..936a922
Binary files /dev/null and b/target/classes/ftp/sar/exception/CannotConnectException.class differ
diff --git a/target/classes/ftp/sar/server/Server.class b/target/classes/ftp/sar/server/Server.class
new file mode 100644
index 0000000..8ed34a9
Binary files /dev/null and b/target/classes/ftp/sar/server/Server.class differ
diff --git a/target/classes/ftp/sar/server/ServerConnector.class b/target/classes/ftp/sar/server/ServerConnector.class
new file mode 100644
index 0000000..080752f
Binary files /dev/null and b/target/classes/ftp/sar/server/ServerConnector.class differ
diff --git a/target/classes/ftp/sar/server/ServerFactory.class b/target/classes/ftp/sar/server/ServerFactory.class
new file mode 100644
index 0000000..240a6f8
Binary files /dev/null and b/target/classes/ftp/sar/server/ServerFactory.class differ
diff --git a/target/classes/ftp/sar/validator/IpValidator.class b/target/classes/ftp/sar/validator/IpValidator.class
new file mode 100644
index 0000000..45223a4
Binary files /dev/null and b/target/classes/ftp/sar/validator/IpValidator.class differ
diff --git a/target/classes/ftp/sar/validator/Validator.class b/target/classes/ftp/sar/validator/Validator.class
new file mode 100644
index 0000000..2e9a424
Binary files /dev/null and b/target/classes/ftp/sar/validator/Validator.class differ
diff --git a/target/classes/ftp/sar/view/ResourceLoader.class b/target/classes/ftp/sar/view/ResourceLoader.class
new file mode 100644
index 0000000..5e2c464
Binary files /dev/null and b/target/classes/ftp/sar/view/ResourceLoader.class differ
diff --git a/target/classes/ftp/sar/view/mainPage/MainPageController.class b/target/classes/ftp/sar/view/mainPage/MainPageController.class
new file mode 100644
index 0000000..7e7380f
Binary files /dev/null and b/target/classes/ftp/sar/view/mainPage/MainPageController.class differ
diff --git a/target/classes/main_page.fxml b/target/classes/main_page.fxml
new file mode 100644
index 0000000..583c075
--- /dev/null
+++ b/target/classes/main_page.fxml
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/target/maven-status/maven-compiler-plugin/compile/null/createdFiles.lst b/target/maven-status/maven-compiler-plugin/compile/null/createdFiles.lst
new file mode 100644
index 0000000..246faf8
--- /dev/null
+++ b/target/maven-status/maven-compiler-plugin/compile/null/createdFiles.lst
@@ -0,0 +1,10 @@
+ftp/sar/validator/Validator.class
+ftp/sar/PropertiesLoader.class
+ftp/sar/server/ServerFactory.class
+ftp/sar/view/mainPage/MainPageController.class
+ftp/sar/view/ResourceLoader.class
+ftp/sar/validator/IpValidator.class
+ftp/sar/exception/CannotConnectException.class
+ftp/sar/server/ServerConnector.class
+ftp/sar/server/Server.class
+ftp/sar/Main.class
diff --git a/target/maven-status/maven-compiler-plugin/compile/null/inputFiles.lst b/target/maven-status/maven-compiler-plugin/compile/null/inputFiles.lst
new file mode 100644
index 0000000..39fda5d
--- /dev/null
+++ b/target/maven-status/maven-compiler-plugin/compile/null/inputFiles.lst
@@ -0,0 +1,10 @@
+/home/mkdrwal/project/ZSIK_Projekt/src/main/java/ftp/sar/view/ResourceLoader.java
+/home/mkdrwal/project/ZSIK_Projekt/src/main/java/ftp/sar/server/ServerFactory.java
+/home/mkdrwal/project/ZSIK_Projekt/src/main/java/ftp/sar/Main.java
+/home/mkdrwal/project/ZSIK_Projekt/src/main/java/ftp/sar/PropertiesLoader.java
+/home/mkdrwal/project/ZSIK_Projekt/src/main/java/ftp/sar/server/Server.java
+/home/mkdrwal/project/ZSIK_Projekt/src/main/java/ftp/sar/validator/Validator.java
+/home/mkdrwal/project/ZSIK_Projekt/src/main/java/ftp/sar/view/mainPage/MainPageController.java
+/home/mkdrwal/project/ZSIK_Projekt/src/main/java/ftp/sar/validator/IpValidator.java
+/home/mkdrwal/project/ZSIK_Projekt/src/main/java/ftp/sar/server/ServerConnector.java
+/home/mkdrwal/project/ZSIK_Projekt/src/main/java/ftp/sar/exception/CannotConnectException.java