Made queues static so all classes can access them in a static way instead of adding references everywhere.

This commit is contained in:
WickedJack99
2023-12-04 01:27:09 +01:00
parent 095d841772
commit 1e45a6db07
6 changed files with 51 additions and 39 deletions

View File

@@ -4,10 +4,6 @@
*/
package controller.src;
import java.util.Queue;
public interface Controller {
public void start();
public void setControllerToViewQueue(Queue<ControllerToViewData> queueControllerToView);
public void setViewToControllerQueue(Queue<ViewToControllerData> queueViewToController);
}

View File

@@ -4,13 +4,6 @@
*/
package gui.src;
import java.util.Queue;
import controller.src.ControllerToViewData;
import controller.src.ViewToControllerData;
public interface View {
public void start();
public void setControllerToViewQueue(Queue<ControllerToViewData> queueControllerToView);
public void setViewToControllerQueue(Queue<ViewToControllerData> queueViewToController);
}

View File

@@ -4,18 +4,11 @@
*/
package gui.src;
import java.util.Queue;
import controller.src.ControllerToViewData;
import controller.src.ViewToControllerData;
import gui.src.frames.MainFrame;
public class ViewThread extends Thread implements View {
private static final String className = "ViewThread";
private Queue<ControllerToViewData> controllerToViewQueue;
private Queue<ViewToControllerData> viewToControllerQueue;
public void run() {
MainFrame.start();
printMessage("Swing ui thread was started.");
@@ -28,12 +21,4 @@ public class ViewThread extends Thread implements View {
private static void printMessage(String message) {
System.out.println(className + ": " + message);
}
public void setControllerToViewQueue(Queue<ControllerToViewData> controllerToViewQueue) {
this.controllerToViewQueue = controllerToViewQueue;
}
public void setViewToControllerQueue(Queue<ViewToControllerData> viewToControllerQueue) {
this.viewToControllerQueue = viewToControllerQueue;
}
}

View File

@@ -4,31 +4,31 @@
*/
package main.src;
import java.util.Queue;
import java.util.concurrent.ConcurrentLinkedQueue;
import controller.src.Controller;
import controller.src.ControllerThread;
import controller.src.ControllerToViewData;
import controller.src.ViewToControllerData;
import gui.src.View;
import gui.src.ViewThread;
import logger.src.MessageLogger;
import model.src.ModelRepresentation;
import queues.src.ControllerToViewQueue;
import queues.src.ViewToControllerQueue;
public final class Main {
private static final String className = "Main";
public static void main(String[] args) {
Queue<ControllerToViewData> controllerToViewQueue = new ConcurrentLinkedQueue<ControllerToViewData>();
Queue<ViewToControllerData> viewToControllerQueue = new ConcurrentLinkedQueue<ViewToControllerData>();
ControllerToViewQueue.getInstance();
MessageLogger.printMessage(className, "ControllerToViewQueue was created.");
ViewToControllerQueue.getInstance();
MessageLogger.printMessage(className, "ViewToControllerQueue was created.");
View view = new ViewThread();
MessageLogger.printMessage(className, "View was created.");
view.setControllerToViewQueue(controllerToViewQueue);
view.setViewToControllerQueue(viewToControllerQueue);
MessageLogger.printMessage(className, "Queues were added to view.");
view.start();
MessageLogger.printMessage(className, "View was started.");
@@ -37,9 +37,6 @@ public final class Main {
Controller controller = new ControllerThread(view, model);
MessageLogger.printMessage(className, "Controller was created.");
controller.setControllerToViewQueue(controllerToViewQueue);
controller.setViewToControllerQueue(viewToControllerQueue);
MessageLogger.printMessage(className, "Queues were added to controller.");
controller.start();
MessageLogger.printMessage(className, "Controller was started.");
}

View File

@@ -0,0 +1,18 @@
/**
* @author Aaron Moser
* @date 04.12.2023
*/
package queues.src;
import java.util.concurrent.ConcurrentLinkedQueue;
public class ControllerToViewQueue extends ConcurrentLinkedQueue<ControllerToViewQueue> {
private static ControllerToViewQueue controllerToViewQueueInstance;
public static ControllerToViewQueue getInstance() {
if (null == controllerToViewQueueInstance) {
controllerToViewQueueInstance = new ControllerToViewQueue();
}
return controllerToViewQueueInstance;
}
}

View File

@@ -0,0 +1,23 @@
/**
* @author Aaron Moser
* @date 04.12.2023
*/
package queues.src;
import java.util.concurrent.ConcurrentLinkedQueue;
import data.src.ViewToControllerData;
/**
*
*/
public class ViewToControllerQueue extends ConcurrentLinkedQueue<ViewToControllerData> {
private static ViewToControllerQueue viewToControllerQueueInstance;
public static ViewToControllerQueue getInstance() {
if (null == viewToControllerQueueInstance) {
viewToControllerQueueInstance = new ViewToControllerQueue();
}
return viewToControllerQueueInstance;
}
}