Moved functionality to functions.
This commit is contained in:
@@ -4,6 +4,8 @@
|
||||
*/
|
||||
package controller.src;
|
||||
|
||||
import javax.xml.crypto.Data;
|
||||
|
||||
import connect.src.Client;
|
||||
import connect.src.TLSClient;
|
||||
import controller.src.DataProcessing.DataProcessorThread;
|
||||
@@ -21,7 +23,7 @@ import data.src.ViewToController.ViewToControllerData;
|
||||
import data.src.ViewToController.ViewToControllerData.ViewEvent;
|
||||
|
||||
import logger.src.MessageLogger;
|
||||
|
||||
import model.src.Model;
|
||||
import model.src.ModelRepresentation;
|
||||
import model.src.ConnectionModel.ConnectionStatus;
|
||||
import queues.src.ControllerToViewQueue;
|
||||
@@ -31,11 +33,13 @@ import queues.src.ViewToControllerQueue;
|
||||
public class ControllerThread extends Thread implements Controller {
|
||||
private static final String className = "ControllerThread";
|
||||
|
||||
private ModelRepresentation model;
|
||||
private final static boolean SUCCESSFUL = true;
|
||||
|
||||
private Model model;
|
||||
|
||||
private Client client;
|
||||
|
||||
public ControllerThread(ModelRepresentation model) {
|
||||
public ControllerThread(Model model) {
|
||||
this.model = model;
|
||||
}
|
||||
|
||||
@@ -72,39 +76,31 @@ public class ControllerThread extends Thread implements Controller {
|
||||
* necessary to establish a connection to a server.
|
||||
* @param viewToControllerData
|
||||
*/
|
||||
private void handleConnectToServerButtonWasPressed(ViewToControllerData viewToControllerData) {
|
||||
private void handleConnectToServerButtonWasPressed(ViewToControllerData data) {
|
||||
this.model.getConnectionModel().setConnectionStatus(ConnectionStatus.Pending);
|
||||
|
||||
ConnectToServerData connectToServerData = (ConnectToServerData)data;
|
||||
String ipAddress = connectToServerData.getIPAddress();
|
||||
int port = connectToServerData.getPort();
|
||||
|
||||
String ipAddress = ((ConnectToServerData)viewToControllerData).getIPAddress();
|
||||
int port = ((ConnectToServerData)viewToControllerData).getPort();
|
||||
|
||||
boolean validIP = Validate.isValidIPv4Address(ipAddress);
|
||||
boolean validIP = Validate.isValidIPv4Address(ipAddress);
|
||||
boolean validPort = Validate.isValidPort(port, 1, 60000);
|
||||
MessageLogger.printMessage(className, "IP: " + validIP + ", Port: " + validPort);
|
||||
|
||||
if (validIP) {
|
||||
if (validPort) {
|
||||
ControllerToConnectionClientData connectToServerData;
|
||||
connectToServerData = new ConnectToServer();
|
||||
((ConnectToServer)connectToServerData).setIPAddress(ipAddress);
|
||||
((ConnectToServer)connectToServerData).setPort(port);
|
||||
String trustStorePath = ((ConnectToServerData)viewToControllerData).getTrustStorePath();
|
||||
((ConnectToServer)connectToServerData).setTruststorePath(trustStorePath);
|
||||
String trustStorePassword = ((ConnectToServerData)viewToControllerData).getTrustStorePassword();
|
||||
((ConnectToServer)connectToServerData).setTruststorePassword(trustStorePassword);
|
||||
|
||||
this.client = new TLSClient();
|
||||
if (this.client.createConnection(connectToServerData) == true) {
|
||||
DataProcessorThread.getInstance().start();
|
||||
this.client.startReceiver();
|
||||
this.client.startSender();
|
||||
//SendingQueue.getInstance().add("getSysInf");
|
||||
SendingQueue.getInstance().add("getCon");
|
||||
//SendingQueue.getInstance().add("getNFTConf");
|
||||
if (this.client.createConnection(viewToControllerToClientConnectData(connectToServerData)) == SUCCESSFUL) {
|
||||
startThreads();
|
||||
|
||||
this.model.getConnectionModel().setConnectionStatus(ConnectionStatus.Connected);
|
||||
|
||||
ControllerToViewData controllerToViewData = new ConnectToServerSuccessful();
|
||||
ControllerToViewQueue.getInstance().add(controllerToViewData);
|
||||
|
||||
//SendingQueue.getInstance().add("getSysInf");
|
||||
//SendingQueue.getInstance().add("getCon");
|
||||
SendingQueue.getInstance().add("getNFTConf");
|
||||
}
|
||||
} else {
|
||||
//TODO send event to view that port is not valid.
|
||||
@@ -113,4 +109,20 @@ public class ControllerThread extends Thread implements Controller {
|
||||
//TODO send event to view that ip is not valid.
|
||||
}
|
||||
}
|
||||
|
||||
private ConnectToServer viewToControllerToClientConnectData(ConnectToServerData connectToServerDataView) {
|
||||
ConnectToServer connectToServerData = new ConnectToServer();
|
||||
connectToServerData.setIPAddress(connectToServerDataView.getIPAddress());
|
||||
connectToServerData.setPort(connectToServerDataView.getPort());
|
||||
connectToServerData.setTruststorePath(connectToServerDataView.getTrustStorePath());
|
||||
connectToServerData.setTruststorePassword(connectToServerDataView.getTrustStorePassword());
|
||||
return connectToServerData;
|
||||
}
|
||||
|
||||
private void startThreads() {
|
||||
DataProcessorThread.getInstance().start();
|
||||
DataProcessorThread.getInstance().setModel(model);
|
||||
this.client.startReceiver();
|
||||
this.client.startSender();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user