From 5f6d1449dac8f3008ac73ad402992817d0125469 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Mon, 22 Jul 2019 10:35:22 -0400 Subject: [PATCH 001/247] Update Elevator.java --- src/Elevator.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/Elevator.java b/src/Elevator.java index 4e73e59..ada99c5 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -41,6 +41,22 @@ public void moveUp(){ } } + + /** + * Author: Erik Burr + * Issue #9 moveUp + */ + public void PushUp(){} + + + /** + * Author: Erik Burr + * Issue #9 moveUp + */ + public void PushDown(){} + + + /** * Author: Elijah Smith * Issue #22 getter method From 3af0363131178c5fb72880e258631b2d4a5e0d6b Mon Sep 17 00:00:00 2001 From: Erik Burr Date: Tue, 23 Jul 2019 12:16:22 -0400 Subject: [PATCH 002/247] Starting to add pushUp and pushDown method --- src/Elevator.java | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index ada99c5..876ae7e 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -44,18 +44,17 @@ public void moveUp(){ /** * Author: Erik Burr - * Issue #9 moveUp - */ - public void PushUp(){} - - - /** - * Author: Erik Burr - * Issue #9 moveUp + * Issue #17 pushUp/pushDown */ - public void PushDown(){} - - + public void pushUp(){ + + } + + + public void PushDown(){ + + } + /** * Author: Elijah Smith From b09baec6ac1e4745b5b97c4d91bf7586f8ad2a95 Mon Sep 17 00:00:00 2001 From: Erik Burr Date: Tue, 23 Jul 2019 21:49:37 -0400 Subject: [PATCH 003/247] commit --- src/Elevator.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 876ae7e..e1f2d1d 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -1,3 +1,5 @@ +import java.util.ArrayList; + /** * */ @@ -7,6 +9,9 @@ public class Elevator { private int currentFloor; private int destinationFloor; private int numberOfFloors; + ArrayList pushedUp = new ArrayList(); + ArrayList pushedDown = new ArrayList(); + /** * Author: Elijah Smith @@ -45,16 +50,16 @@ public void moveUp(){ /** * Author: Erik Burr * Issue #17 pushUp/pushDown - */ + * public void pushUp(){ } - public void PushDown(){ + public void pushDown(){ } - +*/ /** * Author: Elijah Smith From 6635885e7ea6dc6dd6c2b7084c6c1f5d748f7759 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Tue, 23 Jul 2019 22:38:16 -0400 Subject: [PATCH 004/247] Update Elevator.java --- src/Elevator.java | 56 +++++++++++++++++++++++++++++------------------ 1 file changed, 35 insertions(+), 21 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index e1f2d1d..d71865a 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -1,9 +1,5 @@ import java.util.ArrayList; -/** - * - */ - public class Elevator { private int currentFloor; @@ -11,8 +7,10 @@ public class Elevator { private int numberOfFloors; ArrayList pushedUp = new ArrayList(); ArrayList pushedDown = new ArrayList(); + Passenger pass = new Passenger(currentFloor); + /** * Author: Elijah Smith * Issue #18 Constructor @@ -39,28 +37,28 @@ public void moveDown() { * Issue #9 moveUp */ public void moveUp(){ - int newCurrent = this.currentFloor - this.destinationFloor; + int newCurrent = this.destinationFloor - this.currentFloor; for(int i = 0; i < newCurrent; i++) { - while(this.currentFloor != this.destinationFloor) { - this.currentFloor--; - } + this.currentFloor++; + } } - - - /** + + /** * Author: Erik Burr * Issue #17 pushUp/pushDown - * + */ public void pushUp(){ - + pushedUp.add(pass); } - - + + /** + * Author: Erik Burr + * Issue #17 pushUp/pushDown + */ public void pushDown(){ - + pushedDown.add(pass); } -*/ - + /** * Author: Elijah Smith * Issue #22 getter method @@ -68,13 +66,29 @@ public void pushDown(){ public int getCurrentFloor() { return this.currentFloor; } - + /** * Author: Erik Burr - * Issue #9 destinationFloor + * Issue #9 moveUp */ public int getDestinationFloor() { - return this.destinationFloor; + return this.destinationFloor; + } + + public int getNumberOfFloors() { + return this.numberOfFloors; + } + + public void setCurrentFloor(int currentFloor) { + this.currentFloor = currentFloor; + } + + public void setDestinationFloor(int destinationFloor) { + this.destinationFloor = destinationFloor; + } + + public void setNumberOfFloors(int numberOfFloors) { + this.numberOfFloors = numberOfFloors; } } From 829f71443cafa29f5298ded72bfedae4e044b97a Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Tue, 23 Jul 2019 22:47:25 -0400 Subject: [PATCH 005/247] finishing up our basic simulation, some things may be transferred to Display.java for obvious reasons --- src/ElevSim.java | 63 ++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 58 insertions(+), 5 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 46e8538..64d8219 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -7,11 +7,64 @@ public class ElevSim { public static void main(String[] args) { - Scanner kb = new Scanner(System.in); - System.out.println("Enter the desired floor: "); - int df = kb.nextInt(); //df is desired floor + Scanner kb = new Scanner(System.in); + int elevCurrent = 1; + int passCurrent = 1; + char decision = 'u'; + int maxFloors = 100; + //Elevator elev = new Elevator(maxFloors); + //Controller control = new Controller(elev); - //hard coded 5 as the numberOfFloor parameter because Im not quite sure how to handle that now - Elevator elevator = new Elevator(1, df, 5); + while(Character.toLowerCase(decision) != 's') { + System.out.print("Which direction would you like to go? "/* + elev.setCurrentFloor()*/); + decision = kb.next().charAt(0); + switch(Character.toLowerCase(decision)) { + case 'u': + System.out.println("Going up..."); + //elev.pushUp(); + break; + case 'd': + System.out.println("Going down..."); + //elev.pushDown(); + break; + default: + decision = 's'; + System.out.println("Exiting simulation..."); + break; + } + + /* cycle for next passenger + passManager.next(); + control.next(); + status.display(); + */ + + /*if(display.getStatus() == 's') + decision = "s"; + */ + char decision2 = 'y'; + while(Character.toLowerCase(decision2) != 'n' && decision != 's') { + System.out.print("Are there new passengers? "); + decision2 = kb.next().charAt(0); + switch(Character.toLowerCase(decision2)) { + case 'y': + //passManager.newPassenger(//whatever this entails); + System.out.print("New passenger added to list!\n"); + break; + case 'n': + decision2 = 'n'; + System.out.print("There are no new passengers, continuing simulation...\n"); + break; + case 's': + decision = 's'; + System.out.print("Exiting simulation...\n"); + break; + default: + decision2 = 'n'; + break; + } + + } + } } } From 1e8fdb385804763b5584117f42fd1db50df7bd9a Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Tue, 23 Jul 2019 23:01:11 -0400 Subject: [PATCH 006/247] added a few needed things --- src/ElevSim.java | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 64d8219..9da3525 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -11,6 +11,7 @@ public static void main(String[] args) { int elevCurrent = 1; int passCurrent = 1; char decision = 'u'; + String stringDecision = ""; int maxFloors = 100; //Elevator elev = new Elevator(maxFloors); //Controller control = new Controller(elev); @@ -20,19 +21,30 @@ public static void main(String[] args) { decision = kb.next().charAt(0); switch(Character.toLowerCase(decision)) { case 'u': - System.out.println("Going up..."); + System.out.print("Waiting on Elevator to go Up...\n"); //elev.pushUp(); break; case 'd': - System.out.println("Going down..."); + System.out.print("Waiting on elevator to go Down...\n"); //elev.pushDown(); break; default: decision = 's'; - System.out.println("Exiting simulation..."); + System.out.print("Exiting simulation...\n"); break; } + if(decision == 'u') { + System.out.print("To which floor would you like to go up to? "); + //elev.moveUp(elevCurrent, passDestination); + } + if(decision == 'd') { + System.out.print("To which floor would you like to go down to? "); + //elev.moveDown(elevCurrent, passDestination); + } + + + /* cycle for next passenger passManager.next(); control.next(); @@ -62,8 +74,7 @@ public static void main(String[] args) { default: decision2 = 'n'; break; - } - + } } } } From 3e3f28cd05f42751338952b628d3677d216ac9de Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 24 Jul 2019 10:27:10 -0400 Subject: [PATCH 007/247] Update Passenger.java --- src/Passenger.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/Passenger.java b/src/Passenger.java index e7d8172..9648e97 100644 --- a/src/Passenger.java +++ b/src/Passenger.java @@ -24,4 +24,14 @@ public int getDestinationFloor() { return this.destinationFloor; } + + public void setStartFloor(int startFloor) + { + this.startFloor = startFloor; + } + + public void setDestinationFloor(int destinationFloor) + { + this.destinationFloor = destinationFloor; + } } From 5ef8d34ef8b3bf2c287ed4b4b67ea27256420291 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 24 Jul 2019 10:29:13 -0400 Subject: [PATCH 008/247] Update ElevSim.java --- src/ElevSim.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index d9e11a8..46e8538 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -3,9 +3,15 @@ * version: Mon Jul 15, 2019 * Issue #2 */ - +import java.util.Scanner; + public class ElevSim { public static void main(String[] args) { - + Scanner kb = new Scanner(System.in); + System.out.println("Enter the desired floor: "); + int df = kb.nextInt(); //df is desired floor + + //hard coded 5 as the numberOfFloor parameter because Im not quite sure how to handle that now + Elevator elevator = new Elevator(1, df, 5); } } From 8359e0ddf322cce7ffdc2684e6bac57dd28aef8f Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 24 Jul 2019 10:29:55 -0400 Subject: [PATCH 009/247] Update Display.java --- src/Display.java | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/src/Display.java b/src/Display.java index 039f95e..bd49196 100644 --- a/src/Display.java +++ b/src/Display.java @@ -17,7 +17,9 @@ public Display(Passenger passenger, Elevator elevator) { /* *Displays floor passenger is currently on */ - public void display_currentP (Passenger passenger) { + + public void display_currentP () { + System.out.println("Passenger is on floor " + passenger.getStartFloor()); } @@ -25,35 +27,32 @@ public void display_currentP (Passenger passenger) { /* *Displays the floor the passenger has selected */ - public void display_selectP (Passenger passenger) { - + + public void display_selectP () { + System.out.println("Passenger has selected floor " + passenger.getDestinationFloor()); } /* *Displays the floor the passenger has arrived at */ - public void display_destP (Passenger passenger) { - - System.out.printlnP("Passenger has arrived at floor " + passenger.getDestinationFloor()); + public void display_destP () { + System.out.println("Passenger has arrived at floor " + passenger.getDestinationFloor()); } /* *Displays the floor the elevator leaves from */ - public void display_currentE (Elevator elevator) { + public void display_currentE () { - System.out.println("Elevator leaves from floor " + elevator.getCurrentFloor()); + System.out.println("Elevator doors close\nElevator leaves from floor " + elevator.getCurrentFloor()); } /* *Displays the floor the elevator has arrived at */ - public void display_destE (Elevator elevator) { + public void display_destE () { - System.out.println("Eleavtor arrives at floor " + elevator.getDestinationFloor()); + System.out.println("Elevator doors open\nElevator arrives at floor " + elevator.getDestinationFloor()); } - - - } From 6e360e695eec34b987bcf2b572cf4ac170af4014 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 24 Jul 2019 10:30:38 -0400 Subject: [PATCH 010/247] Create Controller.java --- src/Controller.java | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 src/Controller.java diff --git a/src/Controller.java b/src/Controller.java new file mode 100644 index 0000000..abdbd87 --- /dev/null +++ b/src/Controller.java @@ -0,0 +1,11 @@ +public abstract class Controller +{ + protected Elevator elevator; + + protected Controller(Elevator elevator) + { + this.elevator = elevator; + } + + public abstract void next(); +} From e7fe43abd552339b0fa01ac60f28cc94a493a5bd Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 24 Jul 2019 10:51:03 -0400 Subject: [PATCH 011/247] added a few more things to get the simulation running --- src/ElevSim.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 9da3525..1207e78 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -9,12 +9,17 @@ public class ElevSim { public static void main(String[] args) { Scanner kb = new Scanner(System.in); int elevCurrent = 1; - int passCurrent = 1; + System.out.print("Which floor are you currently on? "); + int passCurrent = kb.nextInt(); + int passDestination = 1; char decision = 'u'; + int floorDecision = 1; String stringDecision = ""; int maxFloors = 100; + //Elevator elev = new Elevator(maxFloors); //Controller control = new Controller(elev); + //PassengerManager passManager = new PassengerManager(//numberOfFloors?); while(Character.toLowerCase(decision) != 's') { System.out.print("Which direction would you like to go? "/* + elev.setCurrentFloor()*/); @@ -36,10 +41,16 @@ public static void main(String[] args) { if(decision == 'u') { System.out.print("To which floor would you like to go up to? "); + floorDecision = kb.nextInt(); + if(floorDecision > maxFloors || floorDecision < passCurrent) + decision = 's'; //elev.moveUp(elevCurrent, passDestination); } if(decision == 'd') { System.out.print("To which floor would you like to go down to? "); + floorDecision = kb.nextInt(); + if(floorDecision > maxFloors || floorDecision < passCurrent) + decision = 's'; //elev.moveDown(elevCurrent, passDestination); } From d36d168bba7c5dde5ca688e69fe0a0ce56013efa Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Wed, 24 Jul 2019 10:51:27 -0400 Subject: [PATCH 012/247] stopped field added and stop method too --- src/Elevator.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/Elevator.java b/src/Elevator.java index d71865a..2bb8862 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -8,7 +8,7 @@ public class Elevator { ArrayList pushedUp = new ArrayList(); ArrayList pushedDown = new ArrayList(); Passenger pass = new Passenger(currentFloor); - + private boolean stopped; /** @@ -75,6 +75,14 @@ public int getDestinationFloor() { return this.destinationFloor; } + public boolean stop() { + this.stopped = true; + } + + public boolean getStopped() { + return this.stopped; + } + public int getNumberOfFloors() { return this.numberOfFloors; } From dfde6fd6d0fe75c57d3a0d54ecb09109c441e85e Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 24 Jul 2019 10:58:03 -0400 Subject: [PATCH 013/247] setting stop to false within moveUp() moveDown() --- src/Elevator.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Elevator.java b/src/Elevator.java index 30d8927..2122377 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -24,6 +24,7 @@ public Elevator(int currentFloor, int destinationFloor, int numberOfFloors) { */ public void moveDown() { currentFloor--; + stop = false; } /** @@ -31,7 +32,8 @@ public void moveDown() { * Issue #57/51 moveUp */ public void moveUp(){ - currentFloor++; + currentFloor++; + stop = false; } /** From 34f08278763634509c27bae9cf261d3eda05edd9 Mon Sep 17 00:00:00 2001 From: Erik Burr Date: Wed, 24 Jul 2019 10:58:06 -0400 Subject: [PATCH 014/247] Finished pushUp/pueshDown --- src/Elevator.java | 34 +++++++++++++++------------------- 1 file changed, 15 insertions(+), 19 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index d71865a..b3ec954 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -5,9 +5,9 @@ public class Elevator { private int currentFloor; private int destinationFloor; private int numberOfFloors; - ArrayList pushedUp = new ArrayList(); - ArrayList pushedDown = new ArrayList(); - Passenger pass = new Passenger(currentFloor); + boolean[] pushedUp; + boolean[] pushedDown; + @@ -18,7 +18,9 @@ public class Elevator { public Elevator(int currentFloor, int destinationFloor, int numberOfFloors) { this.currentFloor = currentFloor; this.destinationFloor = destinationFloor; - this.numberOfFloors = numberOfFloors; + this.numberOfFloors = numberOfFloors; + boolean[] pushedUp = new boolean[numberOfFloors]; + boolean[] pushedDown = new boolean[numberOfFloors]; } /** @@ -47,16 +49,13 @@ public void moveUp(){ * Author: Erik Burr * Issue #17 pushUp/pushDown */ - public void pushUp(){ - pushedUp.add(pass); + public void pushUp(int currentFloor){ + pushedUp[currentFloor] = true; } - - /** - * Author: Erik Burr - * Issue #17 pushUp/pushDown - */ - public void pushDown(){ - pushedDown.add(pass); + + public void pushDown(int currentFloor){ + pushedDown[currentFloor] = true; + } /** @@ -66,11 +65,8 @@ public void pushDown(){ public int getCurrentFloor() { return this.currentFloor; } - - /** - * Author: Erik Burr - * Issue #9 moveUp - */ + + public int getDestinationFloor() { return this.destinationFloor; } @@ -80,7 +76,7 @@ public int getNumberOfFloors() { } public void setCurrentFloor(int currentFloor) { - this.currentFloor = currentFloor; + this.currentFloor = currentFloor; } public void setDestinationFloor(int destinationFloor) { From d240d9dc6153d0acfbca545b41bfc7b47ad64d15 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 24 Jul 2019 11:01:34 -0400 Subject: [PATCH 015/247] added stop() and getStopped() methods for issue17 --- src/Elevator.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/Elevator.java b/src/Elevator.java index 2122377..7064d32 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -36,6 +36,22 @@ public void moveUp(){ stop = false; } + /** + * Author: Elijah Smith + * stop(): boolean method + */ + public boolean stop() { + this.stopped = true; + } + + /** + * Author: Elijah Smith + * getStopped(): boolean + */ + pubilc boolean getStopped() { + return this.stopped; + } + /** * Author: Elijah Smith * Issue #22 getter method From 5c028c1b8faa65db02b57ff7b1ed6e54d5b0192d Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 24 Jul 2019 11:11:46 -0400 Subject: [PATCH 016/247] Update Elevator.java --- src/Elevator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Elevator.java b/src/Elevator.java index 8e1fe03..39b83a4 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -69,7 +69,7 @@ public int getDestinationFloor() { return this.destinationFloor; } - public boolean stop() { + public void stop() { this.stopped = true; } From 78f0021c6123415f31d60a8134fdde120e91d8d1 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 24 Jul 2019 11:25:26 -0400 Subject: [PATCH 017/247] Update Elevator.java --- src/Elevator.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 1b7165d..6c8a065 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -16,9 +16,9 @@ public class Elevator { public Elevator(int currentFloor, int destinationFloor, int numberOfFloors) { this.currentFloor = currentFloor; this.destinationFloor = destinationFloor; - this.numberOfFloors = numberOfFloors; - boolean[] pushedUp = new boolean[numberOfFloors]; - boolean[] pushedDown = new boolean[numberOfFloors]; + this.numberOfFloors = numberOfFloors; + pushedUp = new boolean[numberOfFloors]; + pushedDown = new boolean[numberOfFloors]; } /** From 7720598309ad62ce892ce17775e6b3e03faf21ab Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 24 Jul 2019 11:29:16 -0400 Subject: [PATCH 018/247] Update Elevator.java --- src/Elevator.java | 40 ++++++++++++---------------------------- 1 file changed, 12 insertions(+), 28 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 6c8a065..12ff41e 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -16,9 +16,9 @@ public class Elevator { public Elevator(int currentFloor, int destinationFloor, int numberOfFloors) { this.currentFloor = currentFloor; this.destinationFloor = destinationFloor; - this.numberOfFloors = numberOfFloors; - pushedUp = new boolean[numberOfFloors]; - pushedDown = new boolean[numberOfFloors]; + this.numberOfFloors = numberOfFloors; + pushedUp = new boolean[numberOfFloors]; + pushedDown = new boolean[numberOfFloors]; } /** @@ -45,11 +45,11 @@ public void moveUp(){ * Issue #17 pushUp/pushDown */ public void pushUp(int currentFloor){ - pushedUp[currentFloor] = true; + pushedUp[currentFloor] = true; } - + public void pushDown(int currentFloor){ - pushedDown[currentFloor] = true; + pushedDown[currentFloor] = true; } /** @@ -58,38 +58,24 @@ public void pushDown(int currentFloor){ */ public int getCurrentFloor() { return this.currentFloor; - } + } public int getDestinationFloor() { return this.destinationFloor; } - - public void stop() { - this.stopped = true; - } - - public boolean getStopped() { - return this.stopped; - } + public int getNumberOfFloors() { return this.numberOfFloors; } - public void setCurrentFloor(int currentFloor) { - this.currentFloor = currentFloor; - } - public void setDestinationFloor(int destinationFloor) { - this.destinationFloor = destinationFloor; - } - - public void setNumberOfFloors(int numberOfFloors) { - this.numberOfFloors = numberOfFloors; + public void stop() { + this.stopped = true; } - public int getNumberOfFloors() { - return this.numberOfFloors; + public boolean getStopped() { + return this.stopped; } public void setCurrentFloor(int currentFloor) { @@ -104,5 +90,3 @@ public void setNumberOfFloors(int numberOfFloors) { this.numberOfFloors = numberOfFloors; } } - - From 6680d4f2b352e57f13aeb79c1625d92c3e8b49c2 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 24 Jul 2019 11:40:07 -0400 Subject: [PATCH 019/247] Update Tests.java --- tests/Tests.java | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/tests/Tests.java b/tests/Tests.java index c0b466d..7b72b24 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -26,6 +26,30 @@ public void testMoveUp() { int newCurrent = elev.getCurrentFloor(); assertEquals(1, newCurrent); } + + /** + * Author: Erik Burr + * + */ + @Test + public void testPushUp() { + Elevator elev = new Elevator(1, 5, 5); + int newCurrent = elev.getCurrentFloor(); + elev.pushUp(newCurrent); + assertEquals(1, newCurrent); + } + + /** + * Author: Erik Burr + * + */ + @Test + public void testPushDown() { + Elevator elev = new Elevator(1, 5, 5); + int newCurrent = elev.getCurrentFloor(); + elev.pushDown(newCurrent); + assertEquals(1, newCurrent); + } /** From d4e30bb977565b5b990748183baaee315e55525b Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 24 Jul 2019 11:50:02 -0400 Subject: [PATCH 020/247] adding a few more things --- src/ElevSim.java | 79 ++++++++++++++++++++++++++++++------------------ 1 file changed, 50 insertions(+), 29 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 1207e78..6df66bf 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -9,9 +9,8 @@ public class ElevSim { public static void main(String[] args) { Scanner kb = new Scanner(System.in); int elevCurrent = 1; - System.out.print("Which floor are you currently on? "); - int passCurrent = kb.nextInt(); int passDestination = 1; + int passCurrent = 1; char decision = 'u'; int floorDecision = 1; String stringDecision = ""; @@ -20,42 +19,51 @@ public static void main(String[] args) { //Elevator elev = new Elevator(maxFloors); //Controller control = new Controller(elev); //PassengerManager passManager = new PassengerManager(//numberOfFloors?); - + System.out.println("Entering elevator simulation... Type \"s\" to exit at anytime."); + while(Character.toLowerCase(decision) != 's') { - System.out.print("Which direction would you like to go? "/* + elev.setCurrentFloor()*/); - decision = kb.next().charAt(0); + System.out.print("Which floor are you currently on? "); + passCurrent = kb.nextInt(); + + //base cases for maxFloor level and lowest floor level(1) + if(passCurrent == 1) + decision = 'u'; + else if(passCurrent == maxFloors) + decision = 'd'; + else { + System.out.print("Which direction would you like to go? "/* + elev.setCurrentFloor()*/); + decision = kb.next().charAt(0); + } + switch(Character.toLowerCase(decision)) { + //elevator going Up case case 'u': System.out.print("Waiting on Elevator to go Up...\n"); //elev.pushUp(); + System.out.print("To which floor would you like to go up to? "); + floorDecision = kb.nextInt(); + if(floorDecision > maxFloors || floorDecision <= passCurrent) + decision = 's'; + //elev.moveUp(elevCurrent, passDestination); break; + + //elevator going Down case case 'd': - System.out.print("Waiting on elevator to go Down...\n"); - //elev.pushDown(); - break; + System.out.print("Waiting on elevator to go Down...\n"); + //elev.pushDown(); + System.out.print("To which floor would you like to go down to? "); + floorDecision = kb.nextInt(); + if(floorDecision > maxFloors || floorDecision >= passCurrent) + decision = 's'; + //elev.moveDown(elevCurrent, passDestination); + break; + default: - decision = 's'; - System.out.print("Exiting simulation...\n"); - break; - } - - if(decision == 'u') { - System.out.print("To which floor would you like to go up to? "); - floorDecision = kb.nextInt(); - if(floorDecision > maxFloors || floorDecision < passCurrent) - decision = 's'; - //elev.moveUp(elevCurrent, passDestination); + decision = 's'; + System.out.print("Exiting simulation...\n"); + break; } - if(decision == 'd') { - System.out.print("To which floor would you like to go down to? "); - floorDecision = kb.nextInt(); - if(floorDecision > maxFloors || floorDecision < passCurrent) - decision = 's'; - //elev.moveDown(elevCurrent, passDestination); - } - - - + /* cycle for next passenger passManager.next(); control.next(); @@ -65,6 +73,7 @@ public static void main(String[] args) { /*if(display.getStatus() == 's') decision = "s"; */ + char decision2 = 'y'; while(Character.toLowerCase(decision2) != 'n' && decision != 's') { System.out.print("Are there new passengers? "); @@ -87,6 +96,18 @@ public static void main(String[] args) { break; } } + + switch(decision) { + case 'u': + System.out.print("Going up to floor " + floorDecision + "\n"); + break; + case 'd': + System.out.print("Going down to floor " + floorDecision + "\n"); + default: + decision = 's'; + System.out.print("Exiting simulation...\n"); + break; + } } } } From c40fb7563609c243f57cd78aedfc5570c02ff81a Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 24 Jul 2019 11:56:15 -0400 Subject: [PATCH 021/247] adding a few more things --- src/ElevSim.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/ElevSim.java b/src/ElevSim.java index 6df66bf..5bef90b 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -103,6 +103,7 @@ else if(passCurrent == maxFloors) break; case 'd': System.out.print("Going down to floor " + floorDecision + "\n"); + break; default: decision = 's'; System.out.print("Exiting simulation...\n"); From 9a53930893d7ec01de629c4878f5d9cdfa24e524 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 24 Jul 2019 11:57:54 -0400 Subject: [PATCH 022/247] typo --- src/Elevator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Elevator.java b/src/Elevator.java index 7064d32..286e8d2 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -48,7 +48,7 @@ public boolean stop() { * Author: Elijah Smith * getStopped(): boolean */ - pubilc boolean getStopped() { + public boolean getStopped() { return this.stopped; } From 7dd340c18dc7ff3e2a4582c8b2f25df7dc7ae31e Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 24 Jul 2019 11:58:01 -0400 Subject: [PATCH 023/247] Update Elevator.java --- src/Elevator.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 12ff41e..cb502d8 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -45,11 +45,11 @@ public void moveUp(){ * Issue #17 pushUp/pushDown */ public void pushUp(int currentFloor){ - pushedUp[currentFloor] = true; + pushedUp[currentFloor + 1] = true; } public void pushDown(int currentFloor){ - pushedDown[currentFloor] = true; + pushedDown[currentFloor + 1] = true; } /** From 9a3546f18d3c8df1a20fb8666baf97be4860a2f2 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 24 Jul 2019 11:59:22 -0400 Subject: [PATCH 024/247] Update Elevator.java --- src/Elevator.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Elevator.java b/src/Elevator.java index cb502d8..d21c1ee 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -69,7 +69,6 @@ public int getNumberOfFloors() { return this.numberOfFloors; } - public void stop() { this.stopped = true; } From 54f024fa3725bd0312d55c15573dc43ab5b95b8f Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 24 Jul 2019 12:00:01 -0400 Subject: [PATCH 025/247] Update Elevator.java --- src/Elevator.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Elevator.java b/src/Elevator.java index d21c1ee..2bec4f6 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -64,7 +64,6 @@ public int getDestinationFloor() { return this.destinationFloor; } - public int getNumberOfFloors() { return this.numberOfFloors; } From 1fdc8a039e3d827ca7d991302ceaef268e0b2b54 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 24 Jul 2019 12:04:31 -0400 Subject: [PATCH 026/247] fixed a few things --- src/Elevator.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 286e8d2..4a9dd36 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -7,7 +7,9 @@ public class Elevator { private int currentFloor; private int destinationFloor; private int numberOfFloors; - + private boolean[] pushedUp; + private boolean[] pushedDown; + private boolean stopped; /** * Author: Elijah Smith * Issue #18 Constructor @@ -24,7 +26,7 @@ public Elevator(int currentFloor, int destinationFloor, int numberOfFloors) { */ public void moveDown() { currentFloor--; - stop = false; + stopped = false; } /** @@ -33,7 +35,7 @@ public void moveDown() { */ public void moveUp(){ currentFloor++; - stop = false; + stopped = false; } /** From ec151f7c46ae5753311e6ff1b3be0648b1e3fbca Mon Sep 17 00:00:00 2001 From: Will Date: Wed, 24 Jul 2019 12:04:42 -0400 Subject: [PATCH 027/247] Started the DefaultControllers next() method. --- src/DefaultController.java | 52 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/src/DefaultController.java b/src/DefaultController.java index a3a7a3f..f32923c 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -1,12 +1,64 @@ +import java.util.ArrayList; + public class DefaultController extends Controller { + private bool movingUp; + private bool movingDown; + public DefaultController(Elevator elevator) { super(elevator); + + this.movingUp = false; + this.movingDown = false; } public void next() { + int maxFloor = elevator.//getMaxfloor + int currentFloor = elevator.//getcurrentfloor + + ArrayList destFloors = elevator.//getDestFloors + boolean pushUpFloors[] = elevator.//getPushUpFloors + boolean pushDownFloors[] = elevator.//getPushDownFloors + + + if(currentFloor == 0 || currentFloor == maxFloor) + { + movingUp = false; + movingDown = false; + } + + if(currentFloor == 0 && (destFloors.size() > 0 || elevator.//pushTrue)) + { + movingUp = true; + } + else if (currentFloor == maxFloor && (destFloors.size() > 0 || elevator.//pushTrue)) + { + movingDown = true; + } + + if(destFloors.contains(currentFloor)) + { + elevator.stop(); + } + else if(movingUp && pushUpFloors[currentFloor]) + { + elevator.stop(); + } + else if(movingDown && pushDownFloors[currentFloor]) + { + elevator.stop(); + } + + if(movingUp) + { + elevator.moveUp(); + } + else if(movingDown) + { + elevator.moveDown(); + } } } From d30edf484b38e7f691e37ef0d6ac7f5ec7d2d5ed Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 24 Jul 2019 12:09:24 -0400 Subject: [PATCH 028/247] Update Elevator.java --- src/Elevator.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 2bec4f6..3e287bc 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -5,8 +5,8 @@ public class Elevator { private int currentFloor; private int destinationFloor; private int numberOfFloors; - boolean[] pushedUp; - boolean[] pushedDown; + private boolean[] pushedUp; + private boolean[] pushedDown; private boolean stopped; /** From 97bb55ac55aeb3e88250d47f9037ad29db04651a Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 24 Jul 2019 12:10:38 -0400 Subject: [PATCH 029/247] typo --- src/Elevator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Elevator.java b/src/Elevator.java index 4a9dd36..069b705 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -42,7 +42,7 @@ public void moveUp(){ * Author: Elijah Smith * stop(): boolean method */ - public boolean stop() { + public void stop() { this.stopped = true; } From 8cc48bc3baa4a0aef1f19edbc6e14faba8a2fe45 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 24 Jul 2019 12:20:47 -0400 Subject: [PATCH 030/247] fixed a few tests --- tests/Tests.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/Tests.java b/tests/Tests.java index c0b466d..eb8d09e 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -9,10 +9,10 @@ public class Tests */ @Test public void testMoveDown() { - Elevator elevator = new Elevator(5, 1, 5); + Elevator elevator = new Elevator(5, 4, 5); elevator.moveDown(); int newCurrent = elevator.getCurrentFloor(); - assertEquals(1, newCurrent); + assertEquals(4, newCurrent); } /** @@ -21,10 +21,10 @@ public void testMoveDown() { */ @Test public void testMoveUp() { - Elevator elev = new Elevator(1, 5, 5); + Elevator elev = new Elevator(1, 2, 5); elev.moveUp(); int newCurrent = elev.getCurrentFloor(); - assertEquals(1, newCurrent); + assertEquals(2, newCurrent); } From 8dc10f712cfb37f4978513b4146d64a3e47e7861 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Wed, 24 Jul 2019 12:29:30 -0400 Subject: [PATCH 031/247] Added methods --- src/Display.java | 73 +++++++++++++++++++----------------------------- 1 file changed, 29 insertions(+), 44 deletions(-) diff --git a/src/Display.java b/src/Display.java index bd49196..bbde945 100644 --- a/src/Display.java +++ b/src/Display.java @@ -1,58 +1,43 @@ /* * - *Author Jake Wooten - * Iusse #7 + * Author: Matthew Frankel + * Issue 56 * */ -public class Display { +public class Display +{ + Elevator el; + PassengerManager pm; -Elevator elevator; -Passenger passenger; - - public Display(Passenger passenger, Elevator elevator) { - - this.passenger = passenger; - this.elevator = elevator; - } - /* - *Displays floor passenger is currently on - */ - - public void display_currentP () { - - - System.out.println("Passenger is on floor " + passenger.getStartFloor()); + public Display(PassengerManager pm, Elevator el) + { + this.pm = pm; + this.el = el; } - /* - *Displays the floor the passenger has selected - */ - - public void display_selectP () { - - System.out.println("Passenger has selected floor " + passenger.getDestinationFloor()); + public void start() + { + System.out.println("Starting simulation..."); + System.out.println("Press \"s\" to exit at any time); } - /* - *Displays the floor the passenger has arrived at - */ - public void display_destP () { - System.out.println("Passenger has arrived at floor " + passenger.getDestinationFloor()); + public void goingUp() + { + System.out.println("Elevator going up..."); } - /* - *Displays the floor the elevator leaves from - */ - public void display_currentE () { - - System.out.println("Elevator doors close\nElevator leaves from floor " + elevator.getCurrentFloor()); + public void goingDown() + { + System.out.println("Elevator going down..."); } - - /* - *Displays the floor the elevator has arrived at - */ - public void display_destE () { - - System.out.println("Elevator doors open\nElevator arrives at floor " + elevator.getDestinationFloor()); + + public void exit() + { + System.out.println("Exiting simulation..."); + } + + public void displayCurrentFloor() + { + System.out.println("Elevator is currently on floor" + el.getCurrentFloor()); } } From 37a9dd446363e12dc26fd277e3cf1209c776afe7 Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Wed, 24 Jul 2019 17:48:48 -0400 Subject: [PATCH 032/247] updated Passenger class here with next method because this branch has the pushUP and pushDown methods --- src/Passenger.java | 32 +++++++++++++++++++++++++++++--- 1 file changed, 29 insertions(+), 3 deletions(-) diff --git a/src/Passenger.java b/src/Passenger.java index 9648e97..19dadbf 100644 --- a/src/Passenger.java +++ b/src/Passenger.java @@ -2,19 +2,45 @@ public class Passenger { private int startFloor; private int destinationFloor; - - public Passenger(int startFloor, int destinationFloor) + private boolean waiting; + Elevator elev; + public Passenger(Elevator, elev, int startFloor, int destinationFloor) { + this.elev = elev; this.startFloor = startFloor; this.destinationFloor = destinationFloor; + this.waiting = false; } - public Passenger(int destinationFloor) + public Passenger(Elevator elev, int destinationFloor) { + this.elev = elev; + this.waiting = false; this.startFloor = 1; this.destinationFloor = destinationFloor; } + public void next() + { + if(!this.waiting) + { + if(this.destinationFloor > elev.getCurrentFloor) + { + elev.pushUp(this.startFloor); + } + else + { + elev.pushDown(this.startFloor); + } + this.waiting = true; + } + } + + public boolean getWaiting() + { + return this.waiting; + } + public int getStartFloor() { return this.startFloor; From a3686163377be5b927af3f0d6f656660897848d6 Mon Sep 17 00:00:00 2001 From: jakewooten <42622871+jakewooten@users.noreply.github.com> Date: Wed, 24 Jul 2019 17:51:06 -0400 Subject: [PATCH 033/247] Update Passenger.java took out an unneeded comma --- src/Passenger.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Passenger.java b/src/Passenger.java index 19dadbf..25ba429 100644 --- a/src/Passenger.java +++ b/src/Passenger.java @@ -4,7 +4,7 @@ public class Passenger private int destinationFloor; private boolean waiting; Elevator elev; - public Passenger(Elevator, elev, int startFloor, int destinationFloor) + public Passenger(Elevator elev, int startFloor, int destinationFloor) { this.elev = elev; this.startFloor = startFloor; From 916754b8d026e5aadd0311d552f7a7eb2abb3aa0 Mon Sep 17 00:00:00 2001 From: jakewooten <42622871+jakewooten@users.noreply.github.com> Date: Wed, 24 Jul 2019 17:52:36 -0400 Subject: [PATCH 034/247] Update Passenger.java added parenthesis for a method call --- src/Passenger.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Passenger.java b/src/Passenger.java index 25ba429..640c788 100644 --- a/src/Passenger.java +++ b/src/Passenger.java @@ -24,7 +24,7 @@ public void next() { if(!this.waiting) { - if(this.destinationFloor > elev.getCurrentFloor) + if(this.destinationFloor > elev.getCurrentFloor()) { elev.pushUp(this.startFloor); } From 7862854169425c076d210e8c919ad6682d95a808 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 24 Jul 2019 22:01:40 -0400 Subject: [PATCH 035/247] new constructor for Elevator added tests --- src/Elevator.java | 13 +++++++++++-- tests/Tests.java | 23 +++++++++++++++++++++++ 2 files changed, 34 insertions(+), 2 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 7055947..83cdc3d 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -9,6 +9,15 @@ public class Elevator { private boolean[] pushedDown; private boolean stopped; + /** + * Author: Elijah Smith + * Issue #61 new Constructor + */ + public Elevator(int numberOfFloors) { + this.currentFloor = 1; + pushedUp = new boolean[numberOfFloors]; + pushedDown = new boolean[numberOfFloors]; + } /** * Author: Elijah Smith * Issue #18 Constructor @@ -17,8 +26,8 @@ public Elevator(int currentFloor, int destinationFloor, int numberOfFloors) { this.currentFloor = currentFloor; this.destinationFloor = destinationFloor; this.numberOfFloors = numberOfFloors; - pushedUp = new boolean[numberOfFloors]; - pushedDown = new boolean[numberOfFloors]; + pushedUp = new boolean[numberOfFloors]; + pushedDown = new boolean[numberOfFloors]; } /** diff --git a/tests/Tests.java b/tests/Tests.java index 295f9a8..194ccb8 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -64,6 +64,29 @@ public void testCurrentFloor() { Elevator elevator = new Elevator(currentFloor, destinationFloor, totalFloors); } + /** + * Author: Elijah Smith + */ + @Test + public void testElevatorConstructor1() { + Elevator elev = new Elevator(100); + + assertEquals(1, elev.getCurrentFloor()); + assertEquals(100, elev.getNumberOfFloors()); + } + + /** + * Author: Elijah Smith + */ + @Test + public void testElevatorConstructor2() { + Elevator elev = new Elevator(2, 99, 100); + + assertEquals(2, elev.getCurrentFloor()); + assertEquals(99, elev.getDestinationFloor()); + assertEquals(100, elev.getNumberOfFloors()); + } + @Test public void testPassengerConstructor1() { From 583e667811d9b1247748e359912acd7280a136ca Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 24 Jul 2019 22:10:34 -0400 Subject: [PATCH 036/247] additions... --- src/ElevSim.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 5bef90b..e52761e 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -19,6 +19,7 @@ public static void main(String[] args) { //Elevator elev = new Elevator(maxFloors); //Controller control = new Controller(elev); //PassengerManager passManager = new PassengerManager(//numberOfFloors?); + // System.out.println("Entering elevator simulation... Type \"s\" to exit at anytime."); while(Character.toLowerCase(decision) != 's') { @@ -44,7 +45,7 @@ else if(passCurrent == maxFloors) floorDecision = kb.nextInt(); if(floorDecision > maxFloors || floorDecision <= passCurrent) decision = 's'; - //elev.moveUp(elevCurrent, passDestination); + //elev.setDestinationFloor(floorDecision); break; //elevator going Down case @@ -55,7 +56,7 @@ else if(passCurrent == maxFloors) floorDecision = kb.nextInt(); if(floorDecision > maxFloors || floorDecision >= passCurrent) decision = 's'; - //elev.moveDown(elevCurrent, passDestination); + //elev.setDestinationFloor(floorDecision); break; default: From 67a13507a07607ffde3d2f9e42b7d1965d8267a0 Mon Sep 17 00:00:00 2001 From: Will Date: Thu, 25 Jul 2019 10:30:09 -0400 Subject: [PATCH 037/247] Minor changes to controller next() method. --- src/DefaultController.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index f32923c..a31943d 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -15,8 +15,8 @@ public DefaultController(Elevator elevator) public void next() { - int maxFloor = elevator.//getMaxfloor - int currentFloor = elevator.//getcurrentfloor + int maxFloor = elevator.getNumberOfFloors(); + int currentFloor = elevator.getCurrentFloor(); ArrayList destFloors = elevator.//getDestFloors boolean pushUpFloors[] = elevator.//getPushUpFloors From d49dbdfc350dee18fe4f38b29bb76d3259f013e1 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Thu, 25 Jul 2019 10:31:14 -0400 Subject: [PATCH 038/247] Fixed displayCurrentFloor() --- src/Display.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Display.java b/src/Display.java index bbde945..bbd9a3f 100644 --- a/src/Display.java +++ b/src/Display.java @@ -38,6 +38,6 @@ public void exit() public void displayCurrentFloor() { - System.out.println("Elevator is currently on floor" + el.getCurrentFloor()); + System.out.println("Elevator is currently on floor " + el.getCurrentFloor()); } } From e86e5548086209c5276bda2bda1e33969a154885 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Thu, 25 Jul 2019 10:46:28 -0400 Subject: [PATCH 039/247] Update Elevator.java --- src/Elevator.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 83cdc3d..57b4c70 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -15,8 +15,8 @@ public class Elevator { */ public Elevator(int numberOfFloors) { this.currentFloor = 1; - pushedUp = new boolean[numberOfFloors]; - pushedDown = new boolean[numberOfFloors]; + pushedUp = new boolean[numberOfFloors + 1]; + pushedDown = new boolean[numberOfFloors + 1]; } /** * Author: Elijah Smith From 6a8f059b2a7e48732264300a4b7773ac61e45bbf Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Thu, 25 Jul 2019 10:46:58 -0400 Subject: [PATCH 040/247] Update Elevator.java --- src/Elevator.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 57b4c70..1fec7e8 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -53,11 +53,11 @@ public void moveUp() { * Issue #17 pushUp/pushDown */ public void pushUp(int currentFloor){ - pushedUp[currentFloor + 1] = true; + pushedUp[currentFloor] = true; } public void pushDown(int currentFloor){ - pushedDown[currentFloor + 1] = true; + pushedDown[currentFloor] = true; } /** From d542f98b9f58f8b69d90ec19c8d377b96767e680 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Thu, 25 Jul 2019 10:52:03 -0400 Subject: [PATCH 041/247] Update Display.java --- src/Display.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Display.java b/src/Display.java index bbd9a3f..079376e 100644 --- a/src/Display.java +++ b/src/Display.java @@ -18,7 +18,7 @@ public Display(PassengerManager pm, Elevator el) public void start() { System.out.println("Starting simulation..."); - System.out.println("Press \"s\" to exit at any time); + System.out.println("Press \"s\" to exit at any time"); } public void goingUp() From de8d903a552407c44d73bafb3fd12028221fe08e Mon Sep 17 00:00:00 2001 From: Will Date: Thu, 25 Jul 2019 10:54:58 -0400 Subject: [PATCH 042/247] Added pushTrue method that returns true if pushUp or pushDown have a true value. --- src/Elevator.java | 11 +++++++++++ tests/Tests.java | 17 +++++++++++++++++ 2 files changed, 28 insertions(+) diff --git a/src/Elevator.java b/src/Elevator.java index 83cdc3d..6dc8a2d 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -59,6 +59,17 @@ public void pushUp(int currentFloor){ public void pushDown(int currentFloor){ pushedDown[currentFloor + 1] = true; } + + public boolean pushTrue() + { + for(int loop = 0; loop < pushedUp.length; loop++) + { + if(pushedUp[loop] || pushedDown[loop]) + return true; + } + + return false; + } /** * Author: Elijah Smith diff --git a/tests/Tests.java b/tests/Tests.java index 194ccb8..11eb6d4 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -87,6 +87,23 @@ public void testElevatorConstructor2() { assertEquals(100, elev.getNumberOfFloors()); } + @Test + public void testPushTrue1() + { + Elevator elev = new Elevator(1, 5, 10); + + assertEquals(false, elev.pushTrue()); + } + + @Test void testPushTrue2() + { + Elevator elev = new Elevator(1, 5, 10); + elev.pushUp(4); + + assertEquals(true, elev.pushTrue()); + + } + @Test public void testPassengerConstructor1() { From 2e332ca77af3eabb1f228cddd69d94a8c08347a0 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Thu, 25 Jul 2019 10:55:18 -0400 Subject: [PATCH 043/247] Update ElevSim.java --- src/ElevSim.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 64d8219..d9f18ab 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -4,7 +4,7 @@ * Issue #2 */ import java.util.Scanner; - + public class ElevSim { public static void main(String[] args) { Scanner kb = new Scanner(System.in); From 9098d961aa3361907f218bf5bd436587f252f2fb Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Thu, 25 Jul 2019 10:57:23 -0400 Subject: [PATCH 044/247] Update Elevator.java --- src/Elevator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Elevator.java b/src/Elevator.java index 1fec7e8..611d6be 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -1,5 +1,5 @@ import java.util.ArrayList; - + public class Elevator { private int currentFloor; From 95fd0fdf0f8e795bab0b8a20b5907f44baa123b8 Mon Sep 17 00:00:00 2001 From: Will Date: Thu, 25 Jul 2019 10:57:36 -0400 Subject: [PATCH 045/247] Fixed minor issue with test. --- tests/Tests.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/Tests.java b/tests/Tests.java index 11eb6d4..1766dde 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -95,7 +95,8 @@ public void testPushTrue1() assertEquals(false, elev.pushTrue()); } - @Test void testPushTrue2() + @Test + public void testPushTrue2() { Elevator elev = new Elevator(1, 5, 10); elev.pushUp(4); From 597dc523a100d8c0fb454f2e86dbf2555dd39e93 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Thu, 25 Jul 2019 10:59:08 -0400 Subject: [PATCH 046/247] Update Elevator.java --- src/Elevator.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 611d6be..7780e70 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -15,8 +15,8 @@ public class Elevator { */ public Elevator(int numberOfFloors) { this.currentFloor = 1; - pushedUp = new boolean[numberOfFloors + 1]; - pushedDown = new boolean[numberOfFloors + 1]; + pushedUp = new boolean[numberOfFloors+1]; + pushedDown = new boolean[numberOfFloors+1]; } /** * Author: Elijah Smith From e583b8fcec9855b23c13768f0f40ac8be3a57bc4 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Thu, 25 Jul 2019 11:06:08 -0400 Subject: [PATCH 047/247] Update Elevator.java --- src/Elevator.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/Elevator.java b/src/Elevator.java index 1fec7e8..dfcb2db 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -1,4 +1,5 @@ import java.util.ArrayList; +import java.util.concurrent.TimeUnit; public class Elevator { @@ -36,6 +37,7 @@ public Elevator(int currentFloor, int destinationFloor, int numberOfFloors) { */ public void moveDown() { currentFloor--; + TimeUnit.SECONDS.sleep(3) stopped = false; } @@ -45,6 +47,7 @@ public void moveDown() { */ public void moveUp() { currentFloor++; + TimeUnit.SECONDS.sleep(3) stopped = false; } From d0de71f41dc054fd34b01c1f82e0c2678f39e094 Mon Sep 17 00:00:00 2001 From: Will Date: Thu, 25 Jul 2019 11:06:14 -0400 Subject: [PATCH 048/247] Continued minor progress on next() --- src/DefaultController.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index a31943d..785f247 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -21,6 +21,7 @@ public void next() ArrayList destFloors = elevator.//getDestFloors boolean pushUpFloors[] = elevator.//getPushUpFloors boolean pushDownFloors[] = elevator.//getPushDownFloors + boolean pushTrue = elevator.pushTrue(); if(currentFloor == 0 || currentFloor == maxFloor) @@ -29,11 +30,11 @@ public void next() movingDown = false; } - if(currentFloor == 0 && (destFloors.size() > 0 || elevator.//pushTrue)) + if(currentFloor == 0 && (destFloors.size() > 0 || pushTrue)) { movingUp = true; } - else if (currentFloor == maxFloor && (destFloors.size() > 0 || elevator.//pushTrue)) + else if (currentFloor == maxFloor && (destFloors.size() > 0 || pushTrue)) { movingDown = true; } From f9921a9749a089fdecd2e198518e5b34a298e63d Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Thu, 25 Jul 2019 11:15:39 -0400 Subject: [PATCH 049/247] accessor methods for pushedUp and pushedDown arrays --- src/Elevator.java | 19 +++++++++++++++++-- tests/Tests.java | 32 +++++++++++++++++++++++++------- 2 files changed, 42 insertions(+), 9 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 7055947..d09fb76 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -17,8 +17,8 @@ public Elevator(int currentFloor, int destinationFloor, int numberOfFloors) { this.currentFloor = currentFloor; this.destinationFloor = destinationFloor; this.numberOfFloors = numberOfFloors; - pushedUp = new boolean[numberOfFloors]; - pushedDown = new boolean[numberOfFloors]; + pushedUp = new boolean[numberOfFloors]; + pushedDown = new boolean[numberOfFloors]; } /** @@ -67,6 +67,21 @@ public int getNumberOfFloors() { return this.numberOfFloors; } + /** + * Author: Elijah Smith + * Issue #67 pushedUp accessor + */ + public boolean[] getPushedUpArray() { + return this.pushedUp; + } + + /** + * Author: Elijah Smith + * Issue #67 pushedDown accessor + */ + public boolean[] getPushedDownArray() { + return this.pushedDown; + } public void stop() { this.stopped = true; } diff --git a/tests/Tests.java b/tests/Tests.java index 295f9a8..b2ab11f 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -62,23 +62,41 @@ public void testCurrentFloor() { int destinationFloor = 420; int totalFloors = 600; Elevator elevator = new Elevator(currentFloor, destinationFloor, totalFloors); + + assertEquals(60, elevator.getCurrentFloor()); } + /** + * Author: Elijah Smith + */ + public void testGetPushedUpArray() { + Elevator elev = new Elevator(100); + elev.pushUp(3); + elev.pushDown(4); + + boolean[] goingUp = elev.getPushedUpArray(); + boolean[] goingDown = elev.getPushedDownArray(); + + boolean up = goingUp[3]; + boolean down = goingDown[4]; + + assertEquals(true, up); + assertEquals(true, down); + } + + /** + * Author: Elijah Smith + + */ @Test public void testPassengerConstructor1() { - Passenger pass = new Passenger(3, 10); - - assertEquals(3, pass.getStartFloor()); - assertEquals(10, pass.getDestinationFloor()); + } @Test public void testPassengerConstructor2() { - Passenger pass = new Passenger(50); - assertEquals(1, pass.getStartFloor()); - assertEquals(50, pass.getDestinationFloor()); } } From ed8d5a410b3332b86d00a5501cda0b117f38d661 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Thu, 25 Jul 2019 11:17:59 -0400 Subject: [PATCH 050/247] Update ElevSim.java --- src/ElevSim.java | 29 +++++++++++++++++++---------- 1 file changed, 19 insertions(+), 10 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index d9f18ab..9f75598 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -1,10 +1,5 @@ -/** - * Author: Elijah Smith - * version: Mon Jul 15, 2019 - * Issue #2 - */ import java.util.Scanner; - + public class ElevSim { public static void main(String[] args) { Scanner kb = new Scanner(System.in); @@ -20,13 +15,27 @@ public static void main(String[] args) { decision = kb.next().charAt(0); switch(Character.toLowerCase(decision)) { case 'u': - System.out.println("Going up..."); - //elev.pushUp(); + try { + Thread.sleep(3000); + System.out.println("Going up..."); + } + + catch (InterruptedException e) { + e.printStackTrace(); + } break; + case 'd': - System.out.println("Going down..."); - //elev.pushDown(); + try { + Thread.sleep(3000); + System.out.println("Going down..."); + } + + catch (InterruptedException e) { + e.printStackTrace(); + } break; + default: decision = 's'; System.out.println("Exiting simulation..."); From b68addae7e95213cfa30d9014b037655fb523eac Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Thu, 25 Jul 2019 11:18:49 -0400 Subject: [PATCH 051/247] Update Elevator.java --- src/Elevator.java | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index dfcb2db..8e14bf9 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -34,11 +34,19 @@ public Elevator(int currentFloor, int destinationFloor, int numberOfFloors) { /** * Author: Elijah Smith * Issue #57/51 moveDown() + * @throws Exception */ public void moveDown() { currentFloor--; - TimeUnit.SECONDS.sleep(3) stopped = false; + try { + Thread.sleep(3000); + System.out.println("Elevator going down..."); + } + + catch (InterruptedException e) { + e.printStackTrace(); + } } /** @@ -47,8 +55,15 @@ public void moveDown() { */ public void moveUp() { currentFloor++; - TimeUnit.SECONDS.sleep(3) - stopped = false; + stopped = false; + try { + Thread.sleep(3000); + System.out.println("Elevator going up..."); + } + + catch (InterruptedException e) { + e.printStackTrace(); + } } /** From 3fc524c143912f04db2126e53079916388bd454d Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Thu, 25 Jul 2019 11:34:25 -0400 Subject: [PATCH 052/247] destinationFloor field is now an arrayList with a getter and add method --- src/Elevator.java | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index f3f9a27..22a9ab8 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -3,7 +3,7 @@ public class Elevator { private int currentFloor; - private int destinationFloor; + private ArrayList destinationFloor; private int numberOfFloors; private boolean[] pushedUp; private boolean[] pushedDown; @@ -78,9 +78,13 @@ public boolean pushTrue() public int getCurrentFloor() { return this.currentFloor; } + + public void addDestinationFloor(int df) { + destinationFloor.add(df); + } - public int getDestinationFloor() { - return this.destinationFloor; + public ArrayList getDestinationFloor() { + return this.destinationFloor; } public int getNumberOfFloors() { @@ -99,9 +103,6 @@ public void setCurrentFloor(int currentFloor) { this.currentFloor = currentFloor; } - public void setDestinationFloor(int destinationFloor) { - this.destinationFloor = destinationFloor; - } public void setNumberOfFloors(int numberOfFloors) { this.numberOfFloors = numberOfFloors; From 8564672df694dbf93d960abe5d5034b8fc5b9761 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Thu, 25 Jul 2019 11:37:55 -0400 Subject: [PATCH 053/247] Update ElevSim.java --- src/ElevSim.java | 87 ++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 77 insertions(+), 10 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 46e8538..8971abb 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -1,17 +1,84 @@ -/** - * Author: Elijah Smith - * version: Mon Jul 15, 2019 - * Issue #2 - */ import java.util.Scanner; public class ElevSim { public static void main(String[] args) { - Scanner kb = new Scanner(System.in); - System.out.println("Enter the desired floor: "); - int df = kb.nextInt(); //df is desired floor + Scanner kb = new Scanner(System.in); + int elevCurrent = 1; + int passCurrent = 1; + char decision = 'u'; + int maxFloors = 100; + Elevator elev = new Elevator(maxFloors); + int current = elev.getCurrentFloor(); + //Controller control = new Controller(elev); - //hard coded 5 as the numberOfFloor parameter because Im not quite sure how to handle that now - Elevator elevator = new Elevator(1, df, 5); + while(Character.toLowerCase(decision) != 's') { + System.out.print("Which direction would you like to go? "/* + elev.setCurrentFloor()*/); + decision = kb.next().charAt(0); + switch(Character.toLowerCase(decision)) { + case 'u': + try { + System.out.println("Going up..."); + Thread.sleep(3000); + System.out.println(current); + current++; + } + + catch (InterruptedException e) { + e.printStackTrace(); + } + break; + + case 'd': + try { + System.out.println("Going down..."); + Thread.sleep(3000); + System.out.println(current); + current++; + } + + catch (InterruptedException e) { + e.printStackTrace(); + } + break; + + default: + decision = 's'; + System.out.println("Exiting simulation..."); + break; + } + + /* cycle for next passenger + passManager.next(); + control.next(); + status.display(); + */ + + /*if(display.getStatus() == 's') + decision = "s"; + */ + char decision2 = 'y'; + while(Character.toLowerCase(decision2) != 'n' && decision != 's') { + System.out.print("Are there new passengers? "); + decision2 = kb.next().charAt(0); + switch(Character.toLowerCase(decision2)) { + case 'y': + //passManager.newPassenger(//whatever this entails); + System.out.print("New passenger added to list!\n"); + break; + case 'n': + decision2 = 'n'; + System.out.print("There are no new passengers, continuing simulation...\n"); + break; + case 's': + decision = 's'; + System.out.print("Exiting simulation...\n"); + break; + default: + decision2 = 'n'; + break; + } + + } + } } } From 26393523b98f77cbbbdcbf203b57a73aa8111312 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Thu, 25 Jul 2019 11:38:37 -0400 Subject: [PATCH 054/247] Update Elevator.java --- src/Elevator.java | 80 ++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 65 insertions(+), 15 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 30d8927..8e14bf9 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -1,13 +1,24 @@ -/** - * - */ +import java.util.ArrayList; +import java.util.concurrent.TimeUnit; public class Elevator { private int currentFloor; private int destinationFloor; private int numberOfFloors; - + private boolean[] pushedUp; + private boolean[] pushedDown; + private boolean stopped; + + /** + * Author: Elijah Smith + * Issue #61 new Constructor + */ + public Elevator(int numberOfFloors) { + this.currentFloor = 1; + pushedUp = new boolean[numberOfFloors + 1]; + pushedDown = new boolean[numberOfFloors + 1]; + } /** * Author: Elijah Smith * Issue #18 Constructor @@ -16,40 +27,81 @@ public Elevator(int currentFloor, int destinationFloor, int numberOfFloors) { this.currentFloor = currentFloor; this.destinationFloor = destinationFloor; this.numberOfFloors = numberOfFloors; + pushedUp = new boolean[numberOfFloors]; + pushedDown = new boolean[numberOfFloors]; } /** * Author: Elijah Smith * Issue #57/51 moveDown() + * @throws Exception */ public void moveDown() { currentFloor--; + stopped = false; + try { + Thread.sleep(3000); + System.out.println("Elevator going down..."); + } + + catch (InterruptedException e) { + e.printStackTrace(); + } } /** * Author: Elijah Smith * Issue #57/51 moveUp */ - public void moveUp(){ - currentFloor++; + public void moveUp() { + currentFloor++; + stopped = false; + try { + Thread.sleep(3000); + System.out.println("Elevator going up..."); + } + + catch (InterruptedException e) { + e.printStackTrace(); + } } - + + /** + * Author: Erik Burr + * Issue #17 pushUp/pushDown + */ + public void pushUp(int currentFloor){ + pushedUp[currentFloor] = true; + } + + public void pushDown(int currentFloor){ + pushedDown[currentFloor] = true; + } + /** * Author: Elijah Smith * Issue #22 getter method */ - public int getCurrentFloor() { + public int getCurrentFloor() { return this.currentFloor; - } - - public int getDestinationFloor() { - return this.destinationFloor; } - + + public int getDestinationFloor() { + return this.destinationFloor; + } + public int getNumberOfFloors() { return this.numberOfFloors; } + public void stop() { + this.stopped = true; + } + + public boolean getStopped() { + return this.stopped; + } + public void setCurrentFloor(int currentFloor) { this.currentFloor = currentFloor; } @@ -62,5 +114,3 @@ public void setNumberOfFloors(int numberOfFloors) { this.numberOfFloors = numberOfFloors; } } - - From 63e4a9cd2b831a535902799bf99c9654529dbfae Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Thu, 25 Jul 2019 11:39:36 -0400 Subject: [PATCH 055/247] Integer is now in the arrayList --- src/Elevator.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 22a9ab8..9c1d1f0 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -3,7 +3,7 @@ public class Elevator { private int currentFloor; - private ArrayList destinationFloor; + private ArrayList destinationFloor; private int numberOfFloors; private boolean[] pushedUp; private boolean[] pushedDown; @@ -83,7 +83,7 @@ public void addDestinationFloor(int df) { destinationFloor.add(df); } - public ArrayList getDestinationFloor() { + public ArrayList getDestinationFloor() { return this.destinationFloor; } From 9c82f4744277c5c7422e97b6a3bbf16455097cce Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Thu, 25 Jul 2019 11:46:27 -0400 Subject: [PATCH 056/247] Update Elevator.java --- src/Elevator.java | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 35764b4..eb4fe7b 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -75,19 +75,6 @@ public void pushUp(int currentFloor){ pushedUp[currentFloor] = true; } - public void pushDown(int currentFloor){ - pushedDown[currentFloor] = true; - stopped = false; - } - - /** - * Author: Erik Burr - * Issue #17 pushUp/pushDown - */ - public void pushUp(int currentFloor){ - pushedUp[currentFloor] = true; - } - public void pushDown(int currentFloor){ pushedDown[currentFloor] = true; } From 73c1b2d7ffe05f389adbd979c2287db91b7203bf Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Thu, 25 Jul 2019 11:46:31 -0400 Subject: [PATCH 057/247] a few more things added --- src/ElevSim.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index e52761e..4b53cc2 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -16,7 +16,7 @@ public static void main(String[] args) { String stringDecision = ""; int maxFloors = 100; - //Elevator elev = new Elevator(maxFloors); + Elevator elev = new Elevator(maxFloors); //Controller control = new Controller(elev); //PassengerManager passManager = new PassengerManager(//numberOfFloors?); // @@ -32,7 +32,7 @@ public static void main(String[] args) { else if(passCurrent == maxFloors) decision = 'd'; else { - System.out.print("Which direction would you like to go? "/* + elev.setCurrentFloor()*/); + System.out.print("Which direction would you like to go? "); decision = kb.next().charAt(0); } @@ -40,23 +40,23 @@ else if(passCurrent == maxFloors) //elevator going Up case case 'u': System.out.print("Waiting on Elevator to go Up...\n"); - //elev.pushUp(); + elev.pushUp(); System.out.print("To which floor would you like to go up to? "); floorDecision = kb.nextInt(); if(floorDecision > maxFloors || floorDecision <= passCurrent) decision = 's'; - //elev.setDestinationFloor(floorDecision); + //elev.addDestinationFloor(floorDecision); break; //elevator going Down case case 'd': System.out.print("Waiting on elevator to go Down...\n"); - //elev.pushDown(); + elev.pushDown(); System.out.print("To which floor would you like to go down to? "); floorDecision = kb.nextInt(); if(floorDecision > maxFloors || floorDecision >= passCurrent) decision = 's'; - //elev.setDestinationFloor(floorDecision); + //elev.addDestinationFloor(floorDecision); break; default: From e7419e92372a4dc4c3c7989ad7bf9ee3a8f9959d Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Thu, 25 Jul 2019 11:46:44 -0400 Subject: [PATCH 058/247] updated elevator constructors and tests for those constructors --- src/Elevator.java | 6 ++++-- tests/Tests.java | 3 +-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 9c1d1f0..f32bc0b 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -15,6 +15,8 @@ public class Elevator { */ public Elevator(int numberOfFloors) { this.currentFloor = 1; + this.numberOfFloors = numberOfFloors; + this.destinationFloor = new ArrayList<>(); pushedUp = new boolean[numberOfFloors+1]; pushedDown = new boolean[numberOfFloors+1]; } @@ -22,9 +24,9 @@ public Elevator(int numberOfFloors) { * Author: Elijah Smith * Issue #18 Constructor */ - public Elevator(int currentFloor, int destinationFloor, int numberOfFloors) { + public Elevator(int currentFloor, int numberOfFloors) { this.currentFloor = currentFloor; - this.destinationFloor = destinationFloor; + this.destinationFloor = new ArrayList(); this.numberOfFloors = numberOfFloors; pushedUp = new boolean[numberOfFloors]; pushedDown = new boolean[numberOfFloors]; diff --git a/tests/Tests.java b/tests/Tests.java index 1766dde..912c37a 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -80,10 +80,9 @@ public void testElevatorConstructor1() { */ @Test public void testElevatorConstructor2() { - Elevator elev = new Elevator(2, 99, 100); + Elevator elev = new Elevator(2, 100); assertEquals(2, elev.getCurrentFloor()); - assertEquals(99, elev.getDestinationFloor()); assertEquals(100, elev.getNumberOfFloors()); } From 628b89734b1717521b67149c3fbe2aa05c7927c3 Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Thu, 25 Jul 2019 11:51:28 -0400 Subject: [PATCH 059/247] updated the elevator constructor tests to match the number of parameters is takes --- tests/Tests.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/tests/Tests.java b/tests/Tests.java index 912c37a..2339529 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -9,7 +9,7 @@ public class Tests */ @Test public void testMoveDown() { - Elevator elevator = new Elevator(5, 4, 5); + Elevator elevator = new Elevator(5, 5); elevator.moveDown(); int newCurrent = elevator.getCurrentFloor(); assertEquals(4, newCurrent); @@ -21,7 +21,7 @@ public void testMoveDown() { */ @Test public void testMoveUp() { - Elevator elev = new Elevator(1, 2, 5); + Elevator elev = new Elevator(1, 5); elev.moveUp(); int newCurrent = elev.getCurrentFloor(); assertEquals(2, newCurrent); @@ -33,7 +33,7 @@ public void testMoveUp() { */ @Test public void testPushUp() { - Elevator elev = new Elevator(1, 5, 5); + Elevator elev = new Elevator(1, 5); int newCurrent = elev.getCurrentFloor(); elev.pushUp(newCurrent); assertEquals(1, newCurrent); @@ -45,7 +45,7 @@ public void testPushUp() { */ @Test public void testPushDown() { - Elevator elev = new Elevator(1, 5, 5); + Elevator elev = new Elevator(1, 5); int newCurrent = elev.getCurrentFloor(); elev.pushDown(newCurrent); assertEquals(1, newCurrent); @@ -89,7 +89,7 @@ public void testElevatorConstructor2() { @Test public void testPushTrue1() { - Elevator elev = new Elevator(1, 5, 10); + Elevator elev = new Elevator(1, 10); assertEquals(false, elev.pushTrue()); } @@ -97,7 +97,7 @@ public void testPushTrue1() @Test public void testPushTrue2() { - Elevator elev = new Elevator(1, 5, 10); + Elevator elev = new Elevator(1, 10); elev.pushUp(4); assertEquals(true, elev.pushTrue()); From 410882020ec1a1b5db9147db77e3994976aedf95 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Thu, 25 Jul 2019 11:51:37 -0400 Subject: [PATCH 060/247] Update ElevSim.java --- src/ElevSim.java | 23 ----------------------- 1 file changed, 23 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 8a070aa..fbd34ee 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -48,29 +48,6 @@ public static void main(String[] args) { break; } - /* cycle for next passenger - passManager.next(); - control.next(); - status.display(); - */ - - while(Character.toLowerCase(decision) != 's') { - System.out.print("Which direction would you like to go? "/* + elev.setCurrentFloor()*/); - decision = kb.next().charAt(0); - switch(Character.toLowerCase(decision)) { - case 'u': - System.out.println("Going up..."); - //elev.pushUp(); - break; - case 'd': - System.out.println("Going down..."); - //elev.pushDown(); - break; - default: - decision = 's'; - System.out.println("Exiting simulation..."); - break; - } /* cycle for next passenger passManager.next(); From 5afa11754ebe6c6b33450dec1bd45bd13300e7dc Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Thu, 25 Jul 2019 11:55:50 -0400 Subject: [PATCH 061/247] Update Display.java --- src/Display.java | 73 ++++++++++++++++++++++++------------------------ 1 file changed, 37 insertions(+), 36 deletions(-) diff --git a/src/Display.java b/src/Display.java index 079376e..3cc21f7 100644 --- a/src/Display.java +++ b/src/Display.java @@ -1,43 +1,44 @@ /* - * - * Author: Matthew Frankel - * Issue 56 - * */ +* +* Author: Matthew Frankel +* Issue 56 +* */ public class Display { - Elevator el; - PassengerManager pm; + Elevator el; + PassengerManager pm; - public Display(PassengerManager pm, Elevator el) - { - this.pm = pm; - this.el = el; - } + public Display(PassengerManager pm, Elevator el) + { + this.pm = pm; + this.el = el; + } + + public void start() + { + System.out.println("Starting simulation..."); + System.out.println("Press \"s\" to exit at any time"); + } + + public void goingUp() + { + System.out.println("Elevator going up..."); + el.getCurrentFloor(); + } + + public void goingDown() + { + System.out.println("Elevator going down..."); + } - public void start() - { - System.out.println("Starting simulation..."); - System.out.println("Press \"s\" to exit at any time"); - } - - public void goingUp() - { - System.out.println("Elevator going up..."); - } - - public void goingDown() - { - System.out.println("Elevator going down..."); - } - - public void exit() - { - System.out.println("Exiting simulation..."); - } - - public void displayCurrentFloor() - { - System.out.println("Elevator is currently on floor " + el.getCurrentFloor()); - } + public void exit() + { + System.out.println("Exiting simulation..."); + } + + public void displayCurrentFloor() + { + System.out.println("Elevator is currently on floor " + el.getCurrentFloor()); + } } From ec8793c5f60012ea1add9b459cae923f404298b4 Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Thu, 25 Jul 2019 12:04:48 -0400 Subject: [PATCH 062/247] missed a correction on a creation of an elevator object --- tests/Tests.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/tests/Tests.java b/tests/Tests.java index 2339529..dff8520 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -59,9 +59,8 @@ public void testPushDown() { @Test public void testCurrentFloor() { int currentFloor = 60; - int destinationFloor = 420; int totalFloors = 600; - Elevator elevator = new Elevator(currentFloor, destinationFloor, totalFloors); + Elevator elevator = new Elevator(currentFloor, totalFloors); } /** From 54ae4acfc9ff666955cea7ac17aecda8e72f10bc Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Thu, 25 Jul 2019 12:13:58 -0400 Subject: [PATCH 063/247] added a comment so I can commit again because I think this will work --- tests/Tests.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/Tests.java b/tests/Tests.java index dff8520..f434d93 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -84,7 +84,9 @@ public void testElevatorConstructor2() { assertEquals(2, elev.getCurrentFloor()); assertEquals(100, elev.getNumberOfFloors()); } - + /** + *this is a comment + */ @Test public void testPushTrue1() { From 85f71862007285e21c18d7f955a25cb0f5db82b4 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Thu, 25 Jul 2019 12:22:46 -0400 Subject: [PATCH 064/247] Create PassengerManager --- src/PassengerManager | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 src/PassengerManager diff --git a/src/PassengerManager b/src/PassengerManager new file mode 100644 index 0000000..7e12e9a --- /dev/null +++ b/src/PassengerManager @@ -0,0 +1,39 @@ +import java.util.Random; +import java.util.ArrayList; + +public class PassengerManager +{ + private Elevator elevator; + private ArrayList passengers; + + public PassengerManager(Elevator elevator) + { + this.elevator = elevator; + this.passengers = new ArrayList(); + } + + public Passenger newPassenger(int numFloors) + { + Random rand = new Random(); + int start = rand.nextInt(numFloors) + 1; + int dest = rand.nextInt(numFloors) + 1; + + while (dest == start) + { + dest = rand.nextInt(numFloors) + 1; + } + + Passenger newPass = new Passenger(start, dest); + passengers.add(newPass); + + return newPass; + } + + public void next() + { + for (int i = 0; i < passengers.size(); i++) + { + passengers.get(i).next(); + } + } +} From 7f4cfeb8bf60b9078913b4d7ba157466d8652ac7 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Thu, 25 Jul 2019 12:27:21 -0400 Subject: [PATCH 065/247] Rename PassengerManager to PassengerManager.java --- src/{PassengerManager => PassengerManager.java} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename src/{PassengerManager => PassengerManager.java} (100%) diff --git a/src/PassengerManager b/src/PassengerManager.java similarity index 100% rename from src/PassengerManager rename to src/PassengerManager.java From 09cfcbceffa9ae6ae8f6d371da78119f5e6f69dc Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Wed, 24 Jul 2019 17:48:48 -0400 Subject: [PATCH 066/247] updated Passenger class here with next method because this branch has the pushUP and pushDown methods --- src/Passenger.java | 32 +++++++++++++++++++++++++++++--- 1 file changed, 29 insertions(+), 3 deletions(-) diff --git a/src/Passenger.java b/src/Passenger.java index 9648e97..19dadbf 100644 --- a/src/Passenger.java +++ b/src/Passenger.java @@ -2,19 +2,45 @@ public class Passenger { private int startFloor; private int destinationFloor; - - public Passenger(int startFloor, int destinationFloor) + private boolean waiting; + Elevator elev; + public Passenger(Elevator, elev, int startFloor, int destinationFloor) { + this.elev = elev; this.startFloor = startFloor; this.destinationFloor = destinationFloor; + this.waiting = false; } - public Passenger(int destinationFloor) + public Passenger(Elevator elev, int destinationFloor) { + this.elev = elev; + this.waiting = false; this.startFloor = 1; this.destinationFloor = destinationFloor; } + public void next() + { + if(!this.waiting) + { + if(this.destinationFloor > elev.getCurrentFloor) + { + elev.pushUp(this.startFloor); + } + else + { + elev.pushDown(this.startFloor); + } + this.waiting = true; + } + } + + public boolean getWaiting() + { + return this.waiting; + } + public int getStartFloor() { return this.startFloor; From 5c3e475e609bb265d0bc941b1a889f9ebd00cd4d Mon Sep 17 00:00:00 2001 From: jakewooten <42622871+jakewooten@users.noreply.github.com> Date: Wed, 24 Jul 2019 17:51:06 -0400 Subject: [PATCH 067/247] Update Passenger.java took out an unneeded comma --- src/Passenger.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Passenger.java b/src/Passenger.java index 19dadbf..25ba429 100644 --- a/src/Passenger.java +++ b/src/Passenger.java @@ -4,7 +4,7 @@ public class Passenger private int destinationFloor; private boolean waiting; Elevator elev; - public Passenger(Elevator, elev, int startFloor, int destinationFloor) + public Passenger(Elevator elev, int startFloor, int destinationFloor) { this.elev = elev; this.startFloor = startFloor; From 60446d3f900c3a858be4ae1c0f16a9769213346b Mon Sep 17 00:00:00 2001 From: jakewooten <42622871+jakewooten@users.noreply.github.com> Date: Wed, 24 Jul 2019 17:52:36 -0400 Subject: [PATCH 068/247] Update Passenger.java added parenthesis for a method call --- src/Passenger.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Passenger.java b/src/Passenger.java index 25ba429..640c788 100644 --- a/src/Passenger.java +++ b/src/Passenger.java @@ -24,7 +24,7 @@ public void next() { if(!this.waiting) { - if(this.destinationFloor > elev.getCurrentFloor) + if(this.destinationFloor > elev.getCurrentFloor()) { elev.pushUp(this.startFloor); } From 080532e57905fe0b482a04d25c835387c0fa7590 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Thu, 25 Jul 2019 16:44:31 -0400 Subject: [PATCH 069/247] kind of at a stand still... --- src/ElevSim.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 4b53cc2..aaa2dda 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -18,7 +18,7 @@ public static void main(String[] args) { Elevator elev = new Elevator(maxFloors); //Controller control = new Controller(elev); - //PassengerManager passManager = new PassengerManager(//numberOfFloors?); + PassengerManager passManager = new PassengerManager(maxFloors); // System.out.println("Entering elevator simulation... Type \"s\" to exit at anytime."); From bbf64a96671d20c90c15e1bb68a7f6486ed62a5c Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Fri, 26 Jul 2019 00:11:25 -0400 Subject: [PATCH 070/247] added getters for pushedUp and pushedDown methods --- src/Elevator.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/Elevator.java b/src/Elevator.java index a3f4d21..dbda2f6 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -94,6 +94,14 @@ public boolean pushTrue() * Author: Elijah Smith * Issue #22 getter method */ + public boolean[] getPushedUp() { + return this.pushedUp(); + } + + public boolean[] getPushedDown() { + return this.pushedDown(); + } + public int getCurrentFloor() { return this.currentFloor; } From 72612572c9213aa993723500c82e2bc861fafa6a Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Fri, 26 Jul 2019 00:16:35 -0400 Subject: [PATCH 071/247] got rid of unneeded parentheses --- src/Elevator.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index dbda2f6..89fb3fa 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -95,11 +95,11 @@ public boolean pushTrue() * Issue #22 getter method */ public boolean[] getPushedUp() { - return this.pushedUp(); + return this.pushedUp; } public boolean[] getPushedDown() { - return this.pushedDown(); + return this.pushedDown; } public int getCurrentFloor() { From 743fc92cef600c88b33d885f0fe4e373dfcf1efc Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Sat, 27 Jul 2019 21:51:16 -0400 Subject: [PATCH 072/247] commenting out what is not finished yet in our project (PassengerManager and a few Elevator methods) --- src/ElevSim.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 2e5cab3..c037bdc 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -13,7 +13,7 @@ public static void main(String[] args) { Elevator elev = new Elevator(maxFloors); //Controller control = new Controller(elev); - PassengerManager passManager = new PassengerManager(maxFloors); + //PassengerManager passManager = new PassengerManager(maxFloors); // System.out.println("Entering elevator simulation... Type \"s\" to exit at anytime."); @@ -35,7 +35,7 @@ else if(passCurrent == maxFloors) //elevator going Up case case 'u': System.out.print("Waiting on Elevator to go Up...\n"); - elev.pushUp(); + //elev.pushUp(); System.out.print("To which floor would you like to go up to? "); floorDecision = kb.nextInt(); if(floorDecision > maxFloors || floorDecision <= passCurrent) @@ -46,7 +46,7 @@ else if(passCurrent == maxFloors) //elevator going Down case case 'd': System.out.print("Waiting on elevator to go Down...\n"); - elev.pushDown(); + //elev.pushDown(); System.out.print("To which floor would you like to go down to? "); floorDecision = kb.nextInt(); if(floorDecision > maxFloors || floorDecision >= passCurrent) From 9dc775d0a45d9a012d5ff2834bd72ccfb8a1e4f5 Mon Sep 17 00:00:00 2001 From: Will Date: Sun, 28 Jul 2019 13:23:13 -0400 Subject: [PATCH 073/247] Finished default controller. --- src/DefaultController.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index 785f247..859f2be 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -18,9 +18,9 @@ public void next() int maxFloor = elevator.getNumberOfFloors(); int currentFloor = elevator.getCurrentFloor(); - ArrayList destFloors = elevator.//getDestFloors - boolean pushUpFloors[] = elevator.//getPushUpFloors - boolean pushDownFloors[] = elevator.//getPushDownFloors + ArrayList destFloors = elevator.getDestinationFloor(); + boolean pushUpFloors[] = elevator.getPushedUp(); + boolean pushDownFloors[] = elevator.getPushedDown(); boolean pushTrue = elevator.pushTrue(); From b4c15e983ff38eb2d18f575f0f68ff87ef5bf062 Mon Sep 17 00:00:00 2001 From: Will Date: Sun, 28 Jul 2019 13:25:25 -0400 Subject: [PATCH 074/247] Wrote test for controller. --- tests/Tests.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/tests/Tests.java b/tests/Tests.java index c0b466d..885228d 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -57,4 +57,16 @@ public void testPassengerConstructor2() assertEquals(1, pass.getStartFloor()); assertEquals(50, pass.getDestinationFloor()); } + + @Test + public void testDefaultController1() + { + Elevator elev = new Elevator(1, 10); + DefaultController control = new DefaultController(elev); + + elev.pushUp(5); + control.next(); + + assertEquals(2, elev.getCurrentFloor()); + } } From bade8f0e58e8f89c02fd9a0765c8dc0e3e02f993 Mon Sep 17 00:00:00 2001 From: Will Date: Wed, 24 Jul 2019 12:04:42 -0400 Subject: [PATCH 075/247] Started the DefaultControllers next() method. --- src/DefaultController.java | 52 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/src/DefaultController.java b/src/DefaultController.java index a3a7a3f..f32923c 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -1,12 +1,64 @@ +import java.util.ArrayList; + public class DefaultController extends Controller { + private bool movingUp; + private bool movingDown; + public DefaultController(Elevator elevator) { super(elevator); + + this.movingUp = false; + this.movingDown = false; } public void next() { + int maxFloor = elevator.//getMaxfloor + int currentFloor = elevator.//getcurrentfloor + + ArrayList destFloors = elevator.//getDestFloors + boolean pushUpFloors[] = elevator.//getPushUpFloors + boolean pushDownFloors[] = elevator.//getPushDownFloors + + + if(currentFloor == 0 || currentFloor == maxFloor) + { + movingUp = false; + movingDown = false; + } + + if(currentFloor == 0 && (destFloors.size() > 0 || elevator.//pushTrue)) + { + movingUp = true; + } + else if (currentFloor == maxFloor && (destFloors.size() > 0 || elevator.//pushTrue)) + { + movingDown = true; + } + + if(destFloors.contains(currentFloor)) + { + elevator.stop(); + } + else if(movingUp && pushUpFloors[currentFloor]) + { + elevator.stop(); + } + else if(movingDown && pushDownFloors[currentFloor]) + { + elevator.stop(); + } + + if(movingUp) + { + elevator.moveUp(); + } + else if(movingDown) + { + elevator.moveDown(); + } } } From 57a799a3e455b0b436dbd583477a53d45ec04189 Mon Sep 17 00:00:00 2001 From: Will Date: Thu, 25 Jul 2019 10:30:09 -0400 Subject: [PATCH 076/247] Minor changes to controller next() method. --- src/DefaultController.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index f32923c..a31943d 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -15,8 +15,8 @@ public DefaultController(Elevator elevator) public void next() { - int maxFloor = elevator.//getMaxfloor - int currentFloor = elevator.//getcurrentfloor + int maxFloor = elevator.getNumberOfFloors(); + int currentFloor = elevator.getCurrentFloor(); ArrayList destFloors = elevator.//getDestFloors boolean pushUpFloors[] = elevator.//getPushUpFloors From c5cdb6395d57daa8636c076b7a7a5d285c79f5a4 Mon Sep 17 00:00:00 2001 From: Will Date: Thu, 25 Jul 2019 11:06:14 -0400 Subject: [PATCH 077/247] Continued minor progress on next() --- src/DefaultController.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index a31943d..785f247 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -21,6 +21,7 @@ public void next() ArrayList destFloors = elevator.//getDestFloors boolean pushUpFloors[] = elevator.//getPushUpFloors boolean pushDownFloors[] = elevator.//getPushDownFloors + boolean pushTrue = elevator.pushTrue(); if(currentFloor == 0 || currentFloor == maxFloor) @@ -29,11 +30,11 @@ public void next() movingDown = false; } - if(currentFloor == 0 && (destFloors.size() > 0 || elevator.//pushTrue)) + if(currentFloor == 0 && (destFloors.size() > 0 || pushTrue)) { movingUp = true; } - else if (currentFloor == maxFloor && (destFloors.size() > 0 || elevator.//pushTrue)) + else if (currentFloor == maxFloor && (destFloors.size() > 0 || pushTrue)) { movingDown = true; } From cf39fbfcbab21bc48edab4b2a09c1c443487abc8 Mon Sep 17 00:00:00 2001 From: Will Date: Sun, 28 Jul 2019 13:23:13 -0400 Subject: [PATCH 078/247] Finished default controller. --- src/DefaultController.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index 785f247..859f2be 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -18,9 +18,9 @@ public void next() int maxFloor = elevator.getNumberOfFloors(); int currentFloor = elevator.getCurrentFloor(); - ArrayList destFloors = elevator.//getDestFloors - boolean pushUpFloors[] = elevator.//getPushUpFloors - boolean pushDownFloors[] = elevator.//getPushDownFloors + ArrayList destFloors = elevator.getDestinationFloor(); + boolean pushUpFloors[] = elevator.getPushedUp(); + boolean pushDownFloors[] = elevator.getPushedDown(); boolean pushTrue = elevator.pushTrue(); From aa90d0723f33aafffab7e461187b65a5e98cce46 Mon Sep 17 00:00:00 2001 From: Will Date: Sun, 28 Jul 2019 13:25:25 -0400 Subject: [PATCH 079/247] Wrote test for controller. --- tests/Tests.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/tests/Tests.java b/tests/Tests.java index e11e0fb..b366f27 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -145,4 +145,16 @@ public void testPassengerConstructor2() { } + + @Test + public void testDefaultController1() + { + Elevator elev = new Elevator(1, 10); + DefaultController control = new DefaultController(elev); + + elev.pushUp(5); + control.next(); + + assertEquals(2, elev.getCurrentFloor()); + } } From 0e008130fca230f27ed337503dc951a832a7ee73 Mon Sep 17 00:00:00 2001 From: Will Date: Sun, 28 Jul 2019 13:28:17 -0400 Subject: [PATCH 080/247] Fixed typo. --- src/DefaultController.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index 859f2be..4a2cda2 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -2,8 +2,8 @@ public class DefaultController extends Controller { - private bool movingUp; - private bool movingDown; + private boolean movingUp; + private boolean movingDown; public DefaultController(Elevator elevator) { From e52d995a1ecb1f5fb20fd4527512c4f1b0a3adf5 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Sun, 28 Jul 2019 13:31:25 -0400 Subject: [PATCH 081/247] Create Timer.java --- src/Timer.java | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 src/Timer.java diff --git a/src/Timer.java b/src/Timer.java new file mode 100644 index 0000000..9c37916 --- /dev/null +++ b/src/Timer.java @@ -0,0 +1,46 @@ +public class Timer extends Thread + { + int timeUsed; + boolean timeV; + TimerClient callbackObject; + + public Timer(int millis) + { + timeUsed = millis; + timeV = false; + } + public Timer(int millis, TimerClient client) + { + this(millis); + callbackObject = client; + } + public void run() + { + try + { + Thread.sleep(timeUsed); + } + catch(Exception e) + { + + } + + timeV = true; + if (callbackObject != null) + { + callbackObject.timerCallback(); + } + } + + public boolean expired() + { + return timeV; + } + + public void start() + { + //System.out.println("Starting: " + timeUsed + " Second Timer "); + super.start(); + + } + } From 59fd0b1d17a199c2aa9973537b2acd3de27f4cac Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Sun, 28 Jul 2019 13:32:14 -0400 Subject: [PATCH 082/247] Create TimerTest.java --- src/TimerTest.java | 108 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 108 insertions(+) create mode 100644 src/TimerTest.java diff --git a/src/TimerTest.java b/src/TimerTest.java new file mode 100644 index 0000000..87b7b8c --- /dev/null +++ b/src/TimerTest.java @@ -0,0 +1,108 @@ +interface TimerClient { + public void timerCallback(); + } + + public class TimerTest implements TimerClient + { + double numSeconds = 4.5; + double pollDelay = 0.25; + int numPolls = 0; + int numExpectedPolls = (int)(numSeconds / pollDelay) - 1; // last poll will work! + boolean timerExpired = false; + + public void timerCallback() { + timerExpired = true; + } + public static void main(String[] args) + { + TimerTest test = new TimerTest(); + test.runPollTest(); + + test.runInterruptTest(); + } + public void runPollTest() { + pollDelay *= 1000; + System.out.println("Testing using poll method:"); + System.out.println("\tTest will sleep for " + + pollDelay + "ms then poll timer to see if expired."); + System.out.println("\tEach poll will print a dot."); + + System.out.println("\tCreating " + numSeconds + " second timer..."); + Timer t = new Timer((int)(numSeconds*1000)); + + System.out.println("\tStarting timer..."); + System.out.print("\t"); + t.start(); + + while(true) + { + try + { + Thread.sleep((int)pollDelay); + + } + catch(Exception e) + { + } + + if(! t.expired()) + { + numPolls++; + System.out.print("."); + } + else + { + break; + } + } + System.out.println(); + System.out.println("\tNumber of polls was " + numPolls); + System.out.println("\tNumber of expected polls was " + numExpectedPolls); + if (numExpectedPolls == numPolls) + System.out.println("Poll Test PASSED!"); + else if (numExpectedPolls-1 <= numPolls && numPolls <= numExpectedPolls+1) + System.out.println("Poll Test PASSED! (small timing variance between threads is allowed)"); + else + System.out.println("Poll Test FAILED!"); + } + + public void runInterruptTest() { + numPolls = 0; + System.out.println("Testing using interrupt method:"); + System.out.println("\tTest will sleep for " + + pollDelay + "ms and then awake and print a dot."); + System.out.println("\tWhen timer expires it will interrupt causing sleeping to stop."); + + System.out.println("\tCreating " + numSeconds + " second timer..."); + Timer t = new Timer((int)(numSeconds*1000), this); // pass object with callback method + + System.out.println("\tStarting timer..."); + System.out.print("\t"); + t.start(); + + while(! timerExpired) + { + try + { + Thread.sleep((int)pollDelay); + + } + catch(Exception e) + { + } + + numPolls++; + System.out.print("."); + } + System.out.println(); + System.out.println("\tNumber of sleeps was " + numPolls); + System.out.println("\tNumber of expected sleeps was " + numExpectedPolls); + if (numExpectedPolls == numPolls) + System.out.println("Interrupt Test PASSED!"); + else if (numExpectedPolls-1 <= numPolls && numPolls <= numExpectedPolls+1) + System.out.println("Interrupt Test PASSED! (small timing variance between threads is allowed)"); + else + System.out.println("Interrupt Test FAILED!"); + } + } + From d590884dce21a330220e96af297df92a3aeaa91f Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Sun, 28 Jul 2019 13:33:33 -0400 Subject: [PATCH 083/247] Update ElevSim.java --- src/ElevSim.java | 57 +++++++++++++++++++++++++++++------------------- 1 file changed, 35 insertions(+), 22 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 9f75598..28aa3ce 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -1,39 +1,51 @@ import java.util.Scanner; public class ElevSim { - public static void main(String[] args) { + public static void main(String[] args) throws InterruptedException { Scanner kb = new Scanner(System.in); int elevCurrent = 1; int passCurrent = 1; char decision = 'u'; int maxFloors = 100; - //Elevator elev = new Elevator(maxFloors); + Elevator elev = new Elevator(maxFloors); + Timer time = new Timer(3000); + int current = elev.getCurrentFloor(); //Controller control = new Controller(elev); - + System.out.println("Welcome to our Elevator Simulation \n\n\n"); + + while(Character.toLowerCase(decision) != 's') { - System.out.print("Which direction would you like to go? "/* + elev.setCurrentFloor()*/); + + try { + Thread.sleep(2000); + } catch (InterruptedException e1) { + e1.printStackTrace(); + } + System.out.println("The elevator has arrived: \nFloor Level " + current + "\n\n"); + System.out.println("The doors are opening, please enter the elevator..."); + + + + + System.out.print("Which direction would you like to go? \n Please enter: \n u for up, \n d for down."/* + elev.setCurrentFloor()*/); + System.out.println(); + System.out.println(); + System.out.println(); + + + decision = kb.next().charAt(0); switch(Character.toLowerCase(decision)) { case 'u': - try { - Thread.sleep(3000); - System.out.println("Going up..."); - } - - catch (InterruptedException e) { - e.printStackTrace(); - } + System.out.println("Going up to floor " + (current + 1)); + time.run(); + current++; break; case 'd': - try { - Thread.sleep(3000); - System.out.println("Going down..."); - } - - catch (InterruptedException e) { - e.printStackTrace(); - } + System.out.println("Going down to floor " + (current - 1)); + time.run(); + current--; break; default: @@ -53,7 +65,8 @@ public static void main(String[] args) { */ char decision2 = 'y'; while(Character.toLowerCase(decision2) != 'n' && decision != 's') { - System.out.print("Are there new passengers? "); + System.out.println("\nAre there new passengers? "); + System.out.println("\nPlease enter: \nn for No, \ny for Yes \n\n\n"); decision2 = kb.next().charAt(0); switch(Character.toLowerCase(decision2)) { case 'y': @@ -62,7 +75,7 @@ public static void main(String[] args) { break; case 'n': decision2 = 'n'; - System.out.print("There are no new passengers, continuing simulation...\n"); + System.out.print("There are no new passengers, continuing simulation...\n\n"); break; case 's': decision = 's'; From 64e2ee9b94d5a97096195c9229765a3a3b3f0357 Mon Sep 17 00:00:00 2001 From: Will Date: Sun, 28 Jul 2019 13:34:21 -0400 Subject: [PATCH 084/247] Removed duplicate test. --- tests/Tests.java | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/tests/Tests.java b/tests/Tests.java index 877ccb8..b366f27 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -157,16 +157,4 @@ public void testDefaultController1() assertEquals(2, elev.getCurrentFloor()); } - - @Test - public void testDefaultController1() - { - Elevator elev = new Elevator(1, 10); - DefaultController control = new DefaultController(elev); - - elev.pushUp(5); - control.next(); - - assertEquals(2, elev.getCurrentFloor()); - } } From 982deab6e788e5694b2ecf419f2060d5156bbed8 Mon Sep 17 00:00:00 2001 From: Will Date: Sun, 28 Jul 2019 13:38:21 -0400 Subject: [PATCH 085/247] Changed currentfloor check to check for floor 1. --- src/DefaultController.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index 4a2cda2..13b36bc 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -24,13 +24,13 @@ public void next() boolean pushTrue = elevator.pushTrue(); - if(currentFloor == 0 || currentFloor == maxFloor) + if(currentFloor == 1 || currentFloor == maxFloor) { movingUp = false; movingDown = false; } - if(currentFloor == 0 && (destFloors.size() > 0 || pushTrue)) + if(currentFloor == 1 && (destFloors.size() > 0 || pushTrue)) { movingUp = true; } From 152763908e454968e269e69d10b0baa47b3225cc Mon Sep 17 00:00:00 2001 From: Will Date: Sun, 28 Jul 2019 13:45:50 -0400 Subject: [PATCH 086/247] Fixed Passenger contructor call. --- src/PassengerManager.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/PassengerManager.java b/src/PassengerManager.java index 7e12e9a..f2ba0b6 100644 --- a/src/PassengerManager.java +++ b/src/PassengerManager.java @@ -23,7 +23,7 @@ public Passenger newPassenger(int numFloors) dest = rand.nextInt(numFloors) + 1; } - Passenger newPass = new Passenger(start, dest); + Passenger newPass = new Passenger(elevator, start, dest); passengers.add(newPass); return newPass; From 87b25904567c76f37a68a10f584b76c9695d2ead Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Sun, 28 Jul 2019 14:03:19 -0400 Subject: [PATCH 087/247] Update ElevSim.java --- src/ElevSim.java | 33 +++++++++------------------------ 1 file changed, 9 insertions(+), 24 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 28aa3ce..8eba6e2 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -9,41 +9,26 @@ public static void main(String[] args) throws InterruptedException { int maxFloors = 100; Elevator elev = new Elevator(maxFloors); Timer time = new Timer(3000); + Timer time2 = new Timer(2000); int current = elev.getCurrentFloor(); //Controller control = new Controller(elev); System.out.println("Welcome to our Elevator Simulation \n\n\n"); - while(Character.toLowerCase(decision) != 's') { - - try { - Thread.sleep(2000); - } catch (InterruptedException e1) { - e1.printStackTrace(); - } + time2.run(); System.out.println("The elevator has arrived: \nFloor Level " + current + "\n\n"); System.out.println("The doors are opening, please enter the elevator..."); - - - - - System.out.print("Which direction would you like to go? \n Please enter: \n u for up, \n d for down."/* + elev.setCurrentFloor()*/); - System.out.println(); - System.out.println(); - System.out.println(); - - - + System.out.print("Which direction would you like to go? \n Please enter: \n u for up, \n d for down. \n\n"); decision = kb.next().charAt(0); switch(Character.toLowerCase(decision)) { case 'u': - System.out.println("Going up to floor " + (current + 1)); + System.out.println("\nGoing up to floor " + (current + 1)); time.run(); current++; break; case 'd': - System.out.println("Going down to floor " + (current - 1)); + System.out.println("\nGoing down to floor " + (current - 1)); time.run(); current--; break; @@ -66,20 +51,20 @@ public static void main(String[] args) throws InterruptedException { char decision2 = 'y'; while(Character.toLowerCase(decision2) != 'n' && decision != 's') { System.out.println("\nAre there new passengers? "); - System.out.println("\nPlease enter: \nn for No, \ny for Yes \n\n\n"); + System.out.println(" Please enter: \n n for No, \n y for Yes \n"); decision2 = kb.next().charAt(0); switch(Character.toLowerCase(decision2)) { case 'y': //passManager.newPassenger(//whatever this entails); - System.out.print("New passenger added to list!\n"); + System.out.println("\nNew passenger added to list!\n"); break; case 'n': decision2 = 'n'; - System.out.print("There are no new passengers, continuing simulation...\n\n"); + System.out.println("There are no new passengers, continuing simulation...\n\n"); break; case 's': decision = 's'; - System.out.print("Exiting simulation...\n"); + System.out.println("Exiting simulation...\n"); break; default: decision2 = 'n'; From bdc6fb7d5de7880723e5d4dbe09202e0a5b7f81c Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Sun, 28 Jul 2019 15:01:18 -0400 Subject: [PATCH 088/247] Number of floor, and passangeer Main method updated to keep track of floor and passenger, updated some of the display prompts --- src/ElevSim.java | 50 ++++++++++++++++++++++++++++++++---------------- 1 file changed, 34 insertions(+), 16 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 9262dea..e6679ab 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -10,29 +10,34 @@ public static void main(String[] args) throws InterruptedException { Elevator elev = new Elevator(maxFloors); Timer time = new Timer(3000); Timer time2 = new Timer(2000); - int current = elev.getCurrentFloor(); + int passanger = 1; //Controller control = new Controller(elev); - System.out.println("Welcome to our Elevator Simulation \n\n\n"); + System.out.println("Welcome to our Elevator Simulation:\n (Enter s to exit simulation) \n\n\n"); + time2.run(); + System.out.println("The doors are opening...\n"); + time2.run(); + System.out.println("Please enter the elevator:"); + time2.run(); + + while(Character.toLowerCase(decision) != 's') { - time2.run(); - System.out.println("The elevator has arrived: \nFloor Level " + current + "\n\n"); - System.out.println("The doors are opening, please enter the elevator..."); - System.out.print("Which direction would you like to go? \n Please enter: \n u for up, \n d for down. \n\n"); + + System.out.println("Which direction would you like to go? \n Please enter: \n u for up, \n d for down \n\n"); decision = kb.next().charAt(0); + switch(Character.toLowerCase(decision)) { case 'u': - - System.out.println("\nGoing up to floor " + (current + 1)); + System.out.println("\nGoing up to floor " + (current + 1) + "\n"); time.run(); current++; break; case 'd': - System.out.println("\nGoing down to floor " + (current - 1)); - time.run(); - current--; + System.out.println("\nGoing down to floor " + (current - 1) + "\n"); + time.run(); + current--; break; default: @@ -41,29 +46,42 @@ public static void main(String[] args) throws InterruptedException { break; } - /* cycle for next passenger passManager.next(); control.next(); status.display(); */ + /*if(display.getStatus() == 's') decision = "s"; */ char decision2 = 'y'; + System.out.println("The elevator has arrived: \nFloor Level: " + current + "\n\n"); + while(Character.toLowerCase(decision2) != 'n' && decision != 's') { - System.out.println("\nAre there new passengers? "); - System.out.println(" Please enter: \n n for No, \n y for Yes \n"); + System.out.println("\nAre there new passengers? \n Number of Passangers: " + passanger); + System.out.println(" Please enter: \n n for No, \n y for Yes, \n l to enter number of passangers that have left.\n"); decision2 = kb.next().charAt(0); switch(Character.toLowerCase(decision2)) { case 'y': + passanger++; //passManager.newPassenger(//whatever this entails); - System.out.println("\nNew passenger added to list!\n"); + System.out.println("\nNew passenger added to list!"); break; case 'n': decision2 = 'n'; - System.out.println("There are no new passengers, continuing simulation...\n\n"); + System.out.println("There are no new passengers, doors closing...\n\n"); + break; + + case 'l': + decision2 = 'l'; + int departing; + System.out.println("Enter number of passangers leaving:"); + departing = kb.nextInt(); + passanger = passanger - departing; + System.out.println(departing + " passenger(s) have left, " + passanger + " passangers remain."); break; + case 's': decision = 's'; System.out.println("Exiting simulation...\n"); From 54ba7f67cc98bd256cb5b1950de63bb0b2606b3f Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Sun, 28 Jul 2019 15:09:42 -0400 Subject: [PATCH 089/247] Update ElevSim.java --- src/ElevSim.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index e6679ab..cbc6bca 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -56,10 +56,10 @@ public static void main(String[] args) throws InterruptedException { decision = "s"; */ char decision2 = 'y'; - System.out.println("The elevator has arrived: \nFloor Level: " + current + "\n\n"); - + System.out.println("The elevator has arrived: \nFloor Level: " + current); + System.out.println("____________________________\n\n"); while(Character.toLowerCase(decision2) != 'n' && decision != 's') { - System.out.println("\nAre there new passengers? \n Number of Passangers: " + passanger); + System.out.println("\nAre there new passengers? \n\nNumber of Passangers: " + passanger); System.out.println(" Please enter: \n n for No, \n y for Yes, \n l to enter number of passangers that have left.\n"); decision2 = kb.next().charAt(0); switch(Character.toLowerCase(decision2)) { From 3ef0092ce9cf2679d514b0fc5a93da2b72c3042f Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Sun, 28 Jul 2019 15:36:10 -0400 Subject: [PATCH 090/247] Update ElevSim.java --- src/ElevSim.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index cbc6bca..e5bc9ca 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -59,8 +59,8 @@ public static void main(String[] args) throws InterruptedException { System.out.println("The elevator has arrived: \nFloor Level: " + current); System.out.println("____________________________\n\n"); while(Character.toLowerCase(decision2) != 'n' && decision != 's') { - System.out.println("\nAre there new passengers? \n\nNumber of Passangers: " + passanger); - System.out.println(" Please enter: \n n for No, \n y for Yes, \n l to enter number of passangers that have left.\n"); + System.out.println("\nAre there new passengers? \n\nNumber of Passengers: " + passanger); + System.out.println(" Please enter: \n n for No, \n y for Yes, \n l to enter number of passengers that have left.\n"); decision2 = kb.next().charAt(0); switch(Character.toLowerCase(decision2)) { case 'y': @@ -76,10 +76,10 @@ public static void main(String[] args) throws InterruptedException { case 'l': decision2 = 'l'; int departing; - System.out.println("Enter number of passangers leaving:"); + System.out.println("Enter number of passengers leaving:"); departing = kb.nextInt(); passanger = passanger - departing; - System.out.println(departing + " passenger(s) have left, " + passanger + " passangers remain."); + System.out.println(departing + " passenger(s) have left, " + passanger + " passengers remain."); break; case 's': From e7a47f400f2f8c51e57733068aeefb951e33e0cb Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Sun, 28 Jul 2019 18:57:55 -0400 Subject: [PATCH 091/247] these tests should pass now inside of Tests.java instead of having to use TimerTest.java --- tests/Tests.java | 129 ++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 127 insertions(+), 2 deletions(-) diff --git a/tests/Tests.java b/tests/Tests.java index e11e0fb..675a1f2 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -1,6 +1,11 @@ import static org.junit.Assert.*; import org.junit.Test; +//brought in from TimerTest.java +interface TimerClient { + public void timerCallBack(); +} + public class Tests { /** @@ -49,9 +54,129 @@ public void testPushDown() { int newCurrent = elev.getCurrentFloor(); elev.pushDown(newCurrent); assertEquals(1, newCurrent); - } - + } + //simple values needed for TimerTest + double numSeconds = 4.5; + double pollDelay = 0.25; + int numPolls = 0; + int numExpectedPolls = (int)(numSeconds / pollDelay) - 1; // last poll will work! + boolean timerExpired = false; + boolean state = false; + //method needed for TimerTest + public void timerCallback() { + timerExpired = true; + } + + /** + * Author: Elijah Smith + */ + public void runPollTest() { + pollDelay *= 1000; + System.out.println("Testing using poll method:"); + System.out.println("\tTest will sleep for " + + pollDelay + "ms then poll timer to see if expired."); + System.out.println("\tEach poll will print a dot."); + + System.out.println("\tCreating " + numSeconds + " second timer..."); + Timer t = new Timer((int)(numSeconds*1000)); + + System.out.println("\tStarting timer..."); + System.out.print("\t"); + t.start(); + + while(true) + { + try + { + Thread.sleep((int)pollDelay); + + } + catch(Exception e) + { + } + + if(!t.expired()) + { + numPolls++; + System.out.print("."); + } + else + { + break; + } + } + System.out.println(); + System.out.println("\tNumber of polls was " + numPolls); + System.out.println("\tNumber of expected polls was " + numExpectedPolls); + if (numExpectedPolls == numPolls) { + System.out.println("Poll Test PASSED!"); + assertEquals(numExpectedPolls, numPolls); + } + else if (numExpectedPolls-1 <= numPolls && numPolls <= numExpectedPolls+1) { + System.out.println("Poll Test PASSED! (small timing variance between threads is allowed)"); + state = true; + assertTrue(state); + } + else { + System.out.println("Poll Test FAILED!"); + assertTrue(state); + } + } + + /** + * Author: Elijah Smith + * test brought from TimerTest.java + */ + @Test + public void runInterruptTest() { + numPolls = 0; + System.out.println("Testing using interrupt method:"); + System.out.println("\tTest will sleep for " + + pollDelay + "ms and then awake and print a dot."); + System.out.println("\tWhen timer expires it will interrupt causing sleeping to stop."); + + System.out.println("\tCreating " + numSeconds + " second timer..."); + Timer t = new Timer((int)(numSeconds*1000), this); // pass object with callback method + + System.out.println("\tStarting timer..."); + System.out.print("\t"); + t.start(); + + while(! timerExpired) + { + try + { + Thread.sleep((int)pollDelay); + + } + catch(Exception e) + { + } + + numPolls++; + System.out.print("."); + } + System.out.println(); + System.out.println("\tNumber of sleeps was " + numPolls); + System.out.println("\tNumber of expected sleeps was " + numExpectedPolls); + + if (numExpectedPolls == numPolls) { + System.out.println("Interrupt Test PASSED!"); + assertEquals(numExpectedPolls, numPolls); + } + else if (numExpectedPolls-1 <= numPolls && numPolls <= numExpectedPolls+1) { + System.out.println("Interrupt Test PASSED! (small timing variance between threads is allowed)"); + state = true; + assertTrue(state); + } + else { + state = false; + System.out.println("Interrupt Test FAILED!"); + assertTrue(state); + } + } + /** * Author: Elijah Smith * From d711dc0dbe596add872493f974b8a2811cfb9eae Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Sun, 28 Jul 2019 19:02:08 -0400 Subject: [PATCH 092/247] currently fixing travis --- tests/Tests.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/Tests.java b/tests/Tests.java index 675a1f2..b32af6f 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -6,7 +6,7 @@ interface TimerClient { public void timerCallBack(); } -public class Tests +public class Tests implements TimerClient { /** * Author: Elijah Smith @@ -147,7 +147,7 @@ public void runInterruptTest() { { try { - Thread.sleep((int)pollDelay); + r Thread.sleep((int)pollDelay); } catch(Exception e) From a9f577376135f282bde377655bcf4e6d45e9f42f Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Sun, 28 Jul 2019 19:04:25 -0400 Subject: [PATCH 093/247] typo --- tests/Tests.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Tests.java b/tests/Tests.java index b32af6f..0ed29ff 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -147,7 +147,7 @@ public void runInterruptTest() { { try { - r Thread.sleep((int)pollDelay); + Thread.sleep((int)pollDelay); } catch(Exception e) From 44613435be88b4168c3e289f3a33604ab0e696f0 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Sun, 28 Jul 2019 19:07:50 -0400 Subject: [PATCH 094/247] corrected implementation of abstract --- tests/Tests.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Tests.java b/tests/Tests.java index 0ed29ff..4c613ac 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -3,7 +3,7 @@ //brought in from TimerTest.java interface TimerClient { - public void timerCallBack(); + public void timerCallback(); } public class Tests implements TimerClient From f48bf8e0f066e83f87a7dbfd60b02abf58cc6b9a Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Sun, 28 Jul 2019 19:11:36 -0400 Subject: [PATCH 095/247] removed TimerTest.java (no longer needed) --- src/TimerTest.java | 108 --------------------------------------------- 1 file changed, 108 deletions(-) delete mode 100644 src/TimerTest.java diff --git a/src/TimerTest.java b/src/TimerTest.java deleted file mode 100644 index 87b7b8c..0000000 --- a/src/TimerTest.java +++ /dev/null @@ -1,108 +0,0 @@ -interface TimerClient { - public void timerCallback(); - } - - public class TimerTest implements TimerClient - { - double numSeconds = 4.5; - double pollDelay = 0.25; - int numPolls = 0; - int numExpectedPolls = (int)(numSeconds / pollDelay) - 1; // last poll will work! - boolean timerExpired = false; - - public void timerCallback() { - timerExpired = true; - } - public static void main(String[] args) - { - TimerTest test = new TimerTest(); - test.runPollTest(); - - test.runInterruptTest(); - } - public void runPollTest() { - pollDelay *= 1000; - System.out.println("Testing using poll method:"); - System.out.println("\tTest will sleep for " - + pollDelay + "ms then poll timer to see if expired."); - System.out.println("\tEach poll will print a dot."); - - System.out.println("\tCreating " + numSeconds + " second timer..."); - Timer t = new Timer((int)(numSeconds*1000)); - - System.out.println("\tStarting timer..."); - System.out.print("\t"); - t.start(); - - while(true) - { - try - { - Thread.sleep((int)pollDelay); - - } - catch(Exception e) - { - } - - if(! t.expired()) - { - numPolls++; - System.out.print("."); - } - else - { - break; - } - } - System.out.println(); - System.out.println("\tNumber of polls was " + numPolls); - System.out.println("\tNumber of expected polls was " + numExpectedPolls); - if (numExpectedPolls == numPolls) - System.out.println("Poll Test PASSED!"); - else if (numExpectedPolls-1 <= numPolls && numPolls <= numExpectedPolls+1) - System.out.println("Poll Test PASSED! (small timing variance between threads is allowed)"); - else - System.out.println("Poll Test FAILED!"); - } - - public void runInterruptTest() { - numPolls = 0; - System.out.println("Testing using interrupt method:"); - System.out.println("\tTest will sleep for " - + pollDelay + "ms and then awake and print a dot."); - System.out.println("\tWhen timer expires it will interrupt causing sleeping to stop."); - - System.out.println("\tCreating " + numSeconds + " second timer..."); - Timer t = new Timer((int)(numSeconds*1000), this); // pass object with callback method - - System.out.println("\tStarting timer..."); - System.out.print("\t"); - t.start(); - - while(! timerExpired) - { - try - { - Thread.sleep((int)pollDelay); - - } - catch(Exception e) - { - } - - numPolls++; - System.out.print("."); - } - System.out.println(); - System.out.println("\tNumber of sleeps was " + numPolls); - System.out.println("\tNumber of expected sleeps was " + numExpectedPolls); - if (numExpectedPolls == numPolls) - System.out.println("Interrupt Test PASSED!"); - else if (numExpectedPolls-1 <= numPolls && numPolls <= numExpectedPolls+1) - System.out.println("Interrupt Test PASSED! (small timing variance between threads is allowed)"); - else - System.out.println("Interrupt Test FAILED!"); - } - } - From fa7ce8ecb5b7be3e1b6fbce9e8369002e4d3c8de Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Sun, 28 Jul 2019 19:25:29 -0400 Subject: [PATCH 096/247] implemented the TimerClient call back within ElevSim --- src/ElevSim.java | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index e5bc9ca..a87adf2 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -1,5 +1,12 @@ import java.util.Scanner; +/** + * Author: Elijah Smith + */ +interface TimerClient { + public void timerCallback(); +} + public class ElevSim { public static void main(String[] args) throws InterruptedException { Scanner kb = new Scanner(System.in); @@ -11,7 +18,7 @@ public static void main(String[] args) throws InterruptedException { Timer time = new Timer(3000); Timer time2 = new Timer(2000); int current = elev.getCurrentFloor(); - int passanger = 1; + int passenger = 1; //Controller control = new Controller(elev); System.out.println("Welcome to our Elevator Simulation:\n (Enter s to exit simulation) \n\n\n"); time2.run(); @@ -19,9 +26,7 @@ public static void main(String[] args) throws InterruptedException { time2.run(); System.out.println("Please enter the elevator:"); time2.run(); - - - + while(Character.toLowerCase(decision) != 's') { System.out.println("Which direction would you like to go? \n Please enter: \n u for up, \n d for down \n\n"); @@ -59,7 +64,7 @@ public static void main(String[] args) throws InterruptedException { System.out.println("The elevator has arrived: \nFloor Level: " + current); System.out.println("____________________________\n\n"); while(Character.toLowerCase(decision2) != 'n' && decision != 's') { - System.out.println("\nAre there new passengers? \n\nNumber of Passengers: " + passanger); + System.out.println("\nAre there new passengers? \n\nNumber of Passengers: " + passenger); System.out.println(" Please enter: \n n for No, \n y for Yes, \n l to enter number of passengers that have left.\n"); decision2 = kb.next().charAt(0); switch(Character.toLowerCase(decision2)) { From 6decb260dab76d39e676fa14b2e585472c9f1ab8 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Sun, 28 Jul 2019 19:29:14 -0400 Subject: [PATCH 097/247] essentially the same as my last commit --- src/ElevSim.java | 2 +- tests/Tests.java | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index a87adf2..f183532 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -7,7 +7,7 @@ interface TimerClient { public void timerCallback(); } -public class ElevSim { +public class ElevSim implements TimerClient { public static void main(String[] args) throws InterruptedException { Scanner kb = new Scanner(System.in); int elevCurrent = 1; diff --git a/tests/Tests.java b/tests/Tests.java index 4c613ac..3ce8df1 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -2,11 +2,11 @@ import org.junit.Test; //brought in from TimerTest.java -interface TimerClient { - public void timerCallback(); -} +//interface TimerClient { +// public void timerCallback(); +//} -public class Tests implements TimerClient +public class Tests //implements TimerClient { /** * Author: Elijah Smith @@ -64,9 +64,9 @@ public void testPushDown() { boolean timerExpired = false; boolean state = false; //method needed for TimerTest - public void timerCallback() { - timerExpired = true; - } + //public void timerCallback() { + // timerExpired = true; + // } /** * Author: Elijah Smith From 426301eb2ef1df0b45f975f4500fcf7d85309ad1 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Sun, 28 Jul 2019 19:32:41 -0400 Subject: [PATCH 098/247] typo --- src/ElevSim.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index f183532..732827e 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -69,7 +69,7 @@ public static void main(String[] args) throws InterruptedException { decision2 = kb.next().charAt(0); switch(Character.toLowerCase(decision2)) { case 'y': - passanger++; + passenger++; //passManager.newPassenger(//whatever this entails); System.out.println("\nNew passenger added to list!"); break; @@ -83,8 +83,8 @@ public static void main(String[] args) throws InterruptedException { int departing; System.out.println("Enter number of passengers leaving:"); departing = kb.nextInt(); - passanger = passanger - departing; - System.out.println(departing + " passenger(s) have left, " + passanger + " passengers remain."); + passenger -= departing; + System.out.println(departing + " passenger(s) have left, " + passenger + " passengers remain."); break; case 's': From 2cca22f3bf53871e562ee1eb63185378ae889f92 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Sun, 28 Jul 2019 19:38:57 -0400 Subject: [PATCH 099/247] just fixing some things... --- src/ElevSim.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/ElevSim.java b/src/ElevSim.java index 732827e..264c668 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -8,6 +8,16 @@ interface TimerClient { } public class ElevSim implements TimerClient { + + /** + * Author: Elijah Smith + * needed for Timer/TimerClient + */ + boolean timerExpired = false; + interface void timerCallback() { + timerExpired = true; + } + public static void main(String[] args) throws InterruptedException { Scanner kb = new Scanner(System.in); int elevCurrent = 1; From 5e2988e6359cd47eb6a0172e9a7eaccd4b2a4986 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Sun, 28 Jul 2019 19:40:58 -0400 Subject: [PATCH 100/247] typo... again --- src/ElevSim.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 264c668..d15c82d 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -14,7 +14,7 @@ public class ElevSim implements TimerClient { * needed for Timer/TimerClient */ boolean timerExpired = false; - interface void timerCallback() { + public void timerCallback() { timerExpired = true; } From f69ca55688a45ffa8eb33064c959efd41fe2919d Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Sun, 28 Jul 2019 19:45:13 -0400 Subject: [PATCH 101/247] empty commit --- tests/Tests.java | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/tests/Tests.java b/tests/Tests.java index 3ce8df1..1a7157d 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -2,11 +2,11 @@ import org.junit.Test; //brought in from TimerTest.java -//interface TimerClient { -// public void timerCallback(); -//} +interface TimerClient { + public void timerCallback(); +} -public class Tests //implements TimerClient +public class Tests implements TimerClient { /** * Author: Elijah Smith @@ -56,17 +56,17 @@ public void testPushDown() { assertEquals(1, newCurrent); } - //simple values needed for TimerTest + //simple values needed for Timer double numSeconds = 4.5; double pollDelay = 0.25; int numPolls = 0; int numExpectedPolls = (int)(numSeconds / pollDelay) - 1; // last poll will work! boolean timerExpired = false; boolean state = false; - //method needed for TimerTest - //public void timerCallback() { - // timerExpired = true; - // } + //method needed for TimerClient + public void timerCallback() { + timerExpired = true; + } /** * Author: Elijah Smith From 7c472bf7b6055a3534c050702ae62326ba942208 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Sun, 28 Jul 2019 19:46:06 -0400 Subject: [PATCH 102/247] Changed prompts to use display class --- src/ElevSim.java | 30 ++++++++++-------------------- 1 file changed, 10 insertions(+), 20 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index d15c82d..f5cde80 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -25,39 +25,30 @@ public static void main(String[] args) throws InterruptedException { char decision = 'u'; int maxFloors = 100; Elevator elev = new Elevator(maxFloors); + PassengerManager passman = new PassengerManager(elev); + Display disp = new Display(passman,elev); Timer time = new Timer(3000); Timer time2 = new Timer(2000); int current = elev.getCurrentFloor(); int passenger = 1; - //Controller control = new Controller(elev); - System.out.println("Welcome to our Elevator Simulation:\n (Enter s to exit simulation) \n\n\n"); - time2.run(); - System.out.println("The doors are opening...\n"); - time2.run(); - System.out.println("Please enter the elevator:"); - time2.run(); + + disp.start(); while(Character.toLowerCase(decision) != 's') { - System.out.println("Which direction would you like to go? \n Please enter: \n u for up, \n d for down \n\n"); decision = kb.next().charAt(0); switch(Character.toLowerCase(decision)) { - case 'u': - System.out.println("\nGoing up to floor " + (current + 1) + "\n"); - time.run(); - current++; + case 'u': + disp.goingUp(); break; case 'd': - System.out.println("\nGoing down to floor " + (current - 1) + "\n"); - time.run(); - current--; + disp.goingDown(); break; default: - decision = 's'; - System.out.println("Exiting simulation..."); + disp.exit(); break; } @@ -98,9 +89,8 @@ public static void main(String[] args) throws InterruptedException { break; case 's': - decision = 's'; - System.out.println("Exiting simulation...\n"); - break; + disp.exit(); + default: decision2 = 'n'; break; From cacc890ae70dc09d653677f21e8f18427eaa11c3 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Sun, 28 Jul 2019 19:57:41 -0400 Subject: [PATCH 103/247] Create TimerTest.java --- src/TimerTest.java | 107 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 107 insertions(+) create mode 100644 src/TimerTest.java diff --git a/src/TimerTest.java b/src/TimerTest.java new file mode 100644 index 0000000..ac361b2 --- /dev/null +++ b/src/TimerTest.java @@ -0,0 +1,107 @@ +interface TimerClient { + public void timerCallback(); +} + +public class TimerTest implements TimerClient +{ + double numSeconds = 4.5; + double pollDelay = 0.25; + int numPolls = 0; + int numExpectedPolls = (int)(numSeconds / pollDelay) - 1; // last poll will work! + boolean timerExpired = false; + + public void timerCallback() { + timerExpired = true; + } + public static void main(String[] args) + { + TimerTest test = new TimerTest(); + test.runPollTest(); + + test.runInterruptTest(); + } + public void runPollTest() { + pollDelay *= 1000; + System.out.println("Testing using poll method:"); + System.out.println("\tTest will sleep for " + + pollDelay + "ms then poll timer to see if expired."); + System.out.println("\tEach poll will print a dot."); + + System.out.println("\tCreating " + numSeconds + " second timer..."); + Timer t = new Timer((int)(numSeconds*1000)); + + System.out.println("\tStarting timer..."); + System.out.print("\t"); + t.start(); + + while(true) + { + try + { + Thread.sleep((int)pollDelay); + + } + catch(Exception e) + { + } + + if(! t.expired()) + { + numPolls++; + System.out.print("."); + } + else + { + break; + } + } + System.out.println(); + System.out.println("\tNumber of polls was " + numPolls); + System.out.println("\tNumber of expected polls was " + numExpectedPolls); + if (numExpectedPolls == numPolls) + System.out.println("Poll Test PASSED!"); + else if (numExpectedPolls-1 <= numPolls && numPolls <= numExpectedPolls+1) + System.out.println("Poll Test PASSED! (small timing variance between threads is allowed)"); + else + System.out.println("Poll Test FAILED!"); + } + + public void runInterruptTest() { + numPolls = 0; + System.out.println("Testing using interrupt method:"); + System.out.println("\tTest will sleep for " + + pollDelay + "ms and then awake and print a dot."); + System.out.println("\tWhen timer expires it will interrupt causing sleeping to stop."); + + System.out.println("\tCreating " + numSeconds + " second timer..."); + Timer t = new Timer((int)(numSeconds*1000), this); // pass object with callback method + + System.out.println("\tStarting timer..."); + System.out.print("\t"); + t.start(); + + while(! timerExpired) + { + try + { + Thread.sleep((int)pollDelay); + + } + catch(Exception e) + { + } + + numPolls++; + System.out.print("."); + } + System.out.println(); + System.out.println("\tNumber of sleeps was " + numPolls); + System.out.println("\tNumber of expected sleeps was " + numExpectedPolls); + if (numExpectedPolls == numPolls) + System.out.println("Interrupt Test PASSED!"); + else if (numExpectedPolls-1 <= numPolls && numPolls <= numExpectedPolls+1) + System.out.println("Interrupt Test PASSED! (small timing variance between threads is allowed)"); + else + System.out.println("Interrupt Test FAILED!"); + } +} From 2749bf8108b7ed8d164f7113f4bd15ee1b50f03a Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Sun, 28 Jul 2019 20:08:55 -0400 Subject: [PATCH 104/247] trying to fix travis --- src/ElevSim.java | 19 +------------------ src/TimerTest.java | 4 ---- 2 files changed, 1 insertion(+), 22 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index f5cde80..44a5395 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -1,23 +1,6 @@ import java.util.Scanner; -/** - * Author: Elijah Smith - */ -interface TimerClient { - public void timerCallback(); -} - -public class ElevSim implements TimerClient { - - /** - * Author: Elijah Smith - * needed for Timer/TimerClient - */ - boolean timerExpired = false; - public void timerCallback() { - timerExpired = true; - } - +public class ElevSim { public static void main(String[] args) throws InterruptedException { Scanner kb = new Scanner(System.in); int elevCurrent = 1; diff --git a/src/TimerTest.java b/src/TimerTest.java index ac361b2..fe8339e 100644 --- a/src/TimerTest.java +++ b/src/TimerTest.java @@ -1,7 +1,3 @@ -interface TimerClient { - public void timerCallback(); -} - public class TimerTest implements TimerClient { double numSeconds = 4.5; From 5dea2a85eda5a870af4cb3c0c6c428c568a58cc8 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Sun, 28 Jul 2019 20:14:48 -0400 Subject: [PATCH 105/247] Update TimerTest.java --- src/TimerTest.java | 189 +++++++++++++++++++++++---------------------- 1 file changed, 97 insertions(+), 92 deletions(-) diff --git a/src/TimerTest.java b/src/TimerTest.java index fe8339e..0bbe8c8 100644 --- a/src/TimerTest.java +++ b/src/TimerTest.java @@ -1,103 +1,108 @@ -public class TimerTest implements TimerClient -{ - double numSeconds = 4.5; - double pollDelay = 0.25; - int numPolls = 0; - int numExpectedPolls = (int)(numSeconds / pollDelay) - 1; // last poll will work! - boolean timerExpired = false; - public void timerCallback() { - timerExpired = true; - } - public static void main(String[] args) - { - TimerTest test = new TimerTest(); - test.runPollTest(); + interface TimerClient { + public void timerCallback(); + } - test.runInterruptTest(); - } - public void runPollTest() { - pollDelay *= 1000; - System.out.println("Testing using poll method:"); - System.out.println("\tTest will sleep for " - + pollDelay + "ms then poll timer to see if expired."); - System.out.println("\tEach poll will print a dot."); + public class TimerTest implements TimerClient + { + double numSeconds = 4.5; + double pollDelay = 0.25; + int numPolls = 0; + int numExpectedPolls = (int)(numSeconds / pollDelay) - 1; // last poll will work! + boolean timerExpired = false; - System.out.println("\tCreating " + numSeconds + " second timer..."); - Timer t = new Timer((int)(numSeconds*1000)); + public void timerCallback() { + timerExpired = true; + } + public static void main(String[] args) + { + TimerTest test = new TimerTest(); + test.runPollTest(); - System.out.println("\tStarting timer..."); - System.out.print("\t"); - t.start(); + test.runInterruptTest(); + } + public void runPollTest() { + pollDelay *= 1000; + System.out.println("Testing using poll method:"); + System.out.println("\tTest will sleep for " + + pollDelay + "ms then poll timer to see if expired."); + System.out.println("\tEach poll will print a dot."); - while(true) - { - try - { - Thread.sleep((int)pollDelay); - - } - catch(Exception e) - { - } + System.out.println("\tCreating " + numSeconds + " second timer..."); + Timer t = new Timer((int)(numSeconds*1000)); - if(! t.expired()) - { - numPolls++; - System.out.print("."); - } - else - { - break; - } - } - System.out.println(); - System.out.println("\tNumber of polls was " + numPolls); - System.out.println("\tNumber of expected polls was " + numExpectedPolls); - if (numExpectedPolls == numPolls) - System.out.println("Poll Test PASSED!"); - else if (numExpectedPolls-1 <= numPolls && numPolls <= numExpectedPolls+1) - System.out.println("Poll Test PASSED! (small timing variance between threads is allowed)"); - else - System.out.println("Poll Test FAILED!"); - } + System.out.println("\tStarting timer..."); + System.out.print("\t"); + t.start(); - public void runInterruptTest() { - numPolls = 0; - System.out.println("Testing using interrupt method:"); - System.out.println("\tTest will sleep for " - + pollDelay + "ms and then awake and print a dot."); - System.out.println("\tWhen timer expires it will interrupt causing sleeping to stop."); + while(true) + { + try + { + Thread.sleep((int)pollDelay); + + } + catch(Exception e) + { + } - System.out.println("\tCreating " + numSeconds + " second timer..."); - Timer t = new Timer((int)(numSeconds*1000), this); // pass object with callback method + if(! t.expired()) + { + numPolls++; + System.out.print("."); + } + else + { + break; + } + } + System.out.println(); + System.out.println("\tNumber of polls was " + numPolls); + System.out.println("\tNumber of expected polls was " + numExpectedPolls); + if (numExpectedPolls == numPolls) + System.out.println("Poll Test PASSED!"); + else if (numExpectedPolls-1 <= numPolls && numPolls <= numExpectedPolls+1) + System.out.println("Poll Test PASSED! (small timing variance between threads is allowed)"); + else + System.out.println("Poll Test FAILED!"); + } - System.out.println("\tStarting timer..."); - System.out.print("\t"); - t.start(); + public void runInterruptTest() { + numPolls = 0; + System.out.println("Testing using interrupt method:"); + System.out.println("\tTest will sleep for " + + pollDelay + "ms and then awake and print a dot."); + System.out.println("\tWhen timer expires it will interrupt causing sleeping to stop."); - while(! timerExpired) - { - try - { - Thread.sleep((int)pollDelay); - - } - catch(Exception e) - { - } + System.out.println("\tCreating " + numSeconds + " second timer..."); + Timer t = new Timer((int)(numSeconds*1000), this); // pass object with callback method - numPolls++; - System.out.print("."); - } - System.out.println(); - System.out.println("\tNumber of sleeps was " + numPolls); - System.out.println("\tNumber of expected sleeps was " + numExpectedPolls); - if (numExpectedPolls == numPolls) - System.out.println("Interrupt Test PASSED!"); - else if (numExpectedPolls-1 <= numPolls && numPolls <= numExpectedPolls+1) - System.out.println("Interrupt Test PASSED! (small timing variance between threads is allowed)"); - else - System.out.println("Interrupt Test FAILED!"); - } -} + System.out.println("\tStarting timer..."); + System.out.print("\t"); + t.start(); + + while(! timerExpired) + { + try + { + Thread.sleep((int)pollDelay); + + } + catch(Exception e) + { + } + + numPolls++; + System.out.print("."); + } + System.out.println(); + System.out.println("\tNumber of sleeps was " + numPolls); + System.out.println("\tNumber of expected sleeps was " + numExpectedPolls); + if (numExpectedPolls == numPolls) + System.out.println("Interrupt Test PASSED!"); + else if (numExpectedPolls-1 <= numPolls && numPolls <= numExpectedPolls+1) + System.out.println("Interrupt Test PASSED! (small timing variance between threads is allowed)"); + else + System.out.println("Interrupt Test FAILED!"); + } + } From 0900a65453041a84f0aa0cc730e4583982a5b06f Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Sun, 28 Jul 2019 20:46:36 -0400 Subject: [PATCH 106/247] Added tests for display class --- tests/Tests.java | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/tests/Tests.java b/tests/Tests.java index 1a7157d..d59bc19 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -255,6 +255,38 @@ public void testGetPushedUpArray() { assertEquals(true, down); } + @Test + public void testdisplay1() + { + Elevator elev = new Elevator(1, 10); + PassengerManager passman = new PassengerManager(elev); + Display disp = new Display(passman, elev); + disp.goingUp(); + disp.goingDown(); + + assertEquals(Display.current, 1); + } + + + @Test + public void testdisplay2() + { + Elevator elev = new Elevator(1, 10); + PassengerManager passman = new PassengerManager(elev); + Display disp = new Display(passman, elev); + disp.goingUp(); + disp.goingUp(); + disp.goingUp(); + disp.goingUp(); + disp.goingUp(); + + assertEquals(Display.current, 6); + } + + + + + /** * Author: Elijah Smith From 49b612b888d528104702a7f635a034cc586c5d44 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Sun, 28 Jul 2019 20:47:21 -0400 Subject: [PATCH 107/247] Update Display.java --- src/Display.java | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/src/Display.java b/src/Display.java index 3cc21f7..809eb9a 100644 --- a/src/Display.java +++ b/src/Display.java @@ -6,8 +6,11 @@ public class Display { - Elevator el; + static Elevator el = new Elevator(100); PassengerManager pm; + Timer time = new Timer(3000); + Timer time2 = new Timer(2000); + public static int current = el.getCurrentFloor(); public Display(PassengerManager pm, Elevator el) { @@ -17,19 +20,26 @@ public Display(PassengerManager pm, Elevator el) public void start() { - System.out.println("Starting simulation..."); - System.out.println("Press \"s\" to exit at any time"); + System.out.println("Welcome to our Elevator Simulation:\n (Enter s to exit simulation) \n\n\n"); + time2.run(); + System.out.println("The doors are opening...\n"); + time2.run(); + System.out.println("Please enter the elevator:"); + time2.run(); } public void goingUp() { - System.out.println("Elevator going up..."); - el.getCurrentFloor(); + System.out.println("\nGoing up to floor " + (current + 1) + "\n"); + time.run(); + current++; } public void goingDown() - { - System.out.println("Elevator going down..."); + { + System.out.println("\nGoing down to floor " + (current - 1) + "\n"); + time.run(); + current--; } public void exit() From 5862a4411c6d51cd6f2f7e28272fd391adc1972c Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Sun, 28 Jul 2019 21:42:13 -0400 Subject: [PATCH 108/247] Update ElevSim.java --- src/ElevSim.java | 21 +++++---------------- 1 file changed, 5 insertions(+), 16 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index bf3b8ce..6fca7c5 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -28,11 +28,13 @@ public static void main(String[] args) throws InterruptedException { switch(Character.toLowerCase(decision)) { case 'u': + decision = 'u'; disp.goingUp(); + break; //elevator going Down case case 'd': - + decision = 'd'; disp.goingDown(); break; @@ -80,27 +82,14 @@ public static void main(String[] args) throws InterruptedException { System.out.println(departing + " passenger(s) have left, " + passenger + " passengers remain."); break; - case 's': - disp.exit(); default: - decision2 = 'n'; + decision2 = 's'; + disp.exit(); break; } } - switch(decision) { - case 'u': - System.out.print("Going up to floor " + floorDecision + "\n"); - break; - case 'd': - System.out.print("Going down to floor " + floorDecision + "\n"); - break; - default: - decision = 's'; - System.out.print("Exiting simulation...\n"); - break; - } }}} From 7c0061f44bdb04e0eaafd23f081520bd09f3e02f Mon Sep 17 00:00:00 2001 From: Will Date: Mon, 29 Jul 2019 10:27:59 -0400 Subject: [PATCH 109/247] Try new thing for ElevSim --- src/ElevSim.java | 78 +++++++----------------------------------------- 1 file changed, 11 insertions(+), 67 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 9f75598..dc31cb3 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -7,73 +7,17 @@ public static void main(String[] args) { int passCurrent = 1; char decision = 'u'; int maxFloors = 100; - //Elevator elev = new Elevator(maxFloors); - //Controller control = new Controller(elev); + Elevator elev = new Elevator(maxFloors); + PassengerManager passengerManager= new PassengerManager(elev); + Controller control = new DefaultController(elev); + + System.out.println("Welcome to the Elevator Simulator."); + while(true) + { + passengerManager.next(); + controller.next(); - while(Character.toLowerCase(decision) != 's') { - System.out.print("Which direction would you like to go? "/* + elev.setCurrentFloor()*/); - decision = kb.next().charAt(0); - switch(Character.toLowerCase(decision)) { - case 'u': - try { - Thread.sleep(3000); - System.out.println("Going up..."); - } - - catch (InterruptedException e) { - e.printStackTrace(); - } - break; - - case 'd': - try { - Thread.sleep(3000); - System.out.println("Going down..."); - } - - catch (InterruptedException e) { - e.printStackTrace(); - } - break; - - default: - decision = 's'; - System.out.println("Exiting simulation..."); - break; - } - - /* cycle for next passenger - passManager.next(); - control.next(); - status.display(); - */ - - /*if(display.getStatus() == 's') - decision = "s"; - */ - char decision2 = 'y'; - while(Character.toLowerCase(decision2) != 'n' && decision != 's') { - System.out.print("Are there new passengers? "); - decision2 = kb.next().charAt(0); - switch(Character.toLowerCase(decision2)) { - case 'y': - //passManager.newPassenger(//whatever this entails); - System.out.print("New passenger added to list!\n"); - break; - case 'n': - decision2 = 'n'; - System.out.print("There are no new passengers, continuing simulation...\n"); - break; - case 's': - decision = 's'; - System.out.print("Exiting simulation...\n"); - break; - default: - decision2 = 'n'; - break; - } - - } + System.out.println(elev.getCurrentFloor()); } - } + } } From af08339b0bd154d7344c06f26620956fbd5da5a8 Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Mon, 29 Jul 2019 12:12:07 -0400 Subject: [PATCH 110/247] changed destinationFloor from ArrayList to boolean array --- src/Elevator.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 686952c..5b0b280 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -4,7 +4,7 @@ public class Elevator { private int currentFloor; - private ArrayList destinationFloor; + private boolean[] destinationFloor; private int numberOfFloors; private boolean[] pushedUp; private boolean[] pushedDown; @@ -17,7 +17,7 @@ public class Elevator { public Elevator(int numberOfFloors) { this.currentFloor = 1; this.numberOfFloors = numberOfFloors; - this.destinationFloor = new ArrayList<>(); + destinationFloor = new boolean[numberOfFloors+1]; pushedUp = new boolean[numberOfFloors+1]; pushedDown = new boolean[numberOfFloors+1]; } @@ -27,8 +27,8 @@ public Elevator(int numberOfFloors) { */ public Elevator(int currentFloor, int numberOfFloors) { this.currentFloor = currentFloor; - this.destinationFloor = new ArrayList(); - this.numberOfFloors = numberOfFloors; + this.destinationFloor = destinationFloor; + destinationFloor = new boolean[numberOfFloors+1]; pushedUp = new boolean[numberOfFloors + 1]; pushedDown = new boolean[numberOfFloors + 1]; } @@ -106,11 +106,11 @@ public int getCurrentFloor() { return this.currentFloor; } - public void addDestinationFloor(int df) { - destinationFloor.add(df); + public void addDestinationFloor(int currentFloor) { + destinationFloor[currentFloor] = true; } - public ArrayList getDestinationFloor() { + public boolean[] getDestinationFloor() { return this.destinationFloor; } From 22fbfa70ee8b4212871c5526853f33ef7151230b Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Mon, 29 Jul 2019 12:24:28 -0400 Subject: [PATCH 111/247] changed destinationFloor in defaultController, stop --- src/DefaultController.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index 13b36bc..7238a81 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -18,7 +18,7 @@ public void next() int maxFloor = elevator.getNumberOfFloors(); int currentFloor = elevator.getCurrentFloor(); - ArrayList destFloors = elevator.getDestinationFloor(); + boolean[] destFloors = elevator.getDestinationFloor(); boolean pushUpFloors[] = elevator.getPushedUp(); boolean pushDownFloors[] = elevator.getPushedDown(); boolean pushTrue = elevator.pushTrue(); @@ -30,16 +30,16 @@ public void next() movingDown = false; } - if(currentFloor == 1 && (destFloors.size() > 0 || pushTrue)) + if(currentFloor == 1 && (destFloors.size > 0 || pushTrue)) { movingUp = true; } - else if (currentFloor == maxFloor && (destFloors.size() > 0 || pushTrue)) + else if (currentFloor == maxFloor && (destFloors.size > 0 || pushTrue)) { movingDown = true; } - if(destFloors.contains(currentFloor)) + if(destFloors[currentFloor]) { elevator.stop(); } From c68a09788cbe219c34fbdbac9cdd1337a1da138c Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Mon, 29 Jul 2019 12:27:49 -0400 Subject: [PATCH 112/247] Update ElevSim.java --- src/ElevSim.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 3efaf62..3a8fa8a 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -21,7 +21,7 @@ public static void main(String[] args) throws InterruptedException { while(true) { passengerManager.next(); - controller.next(); + control.next(); System.out.println(elev.getCurrentFloor()); } From 8d4f04fca3c18c1c1553a40b3b9de293e2904f09 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Mon, 29 Jul 2019 16:21:47 -0400 Subject: [PATCH 113/247] Changed destFloors.size too destFloors.length --- src/DefaultController.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index 7238a81..78eb11d 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -30,11 +30,11 @@ public void next() movingDown = false; } - if(currentFloor == 1 && (destFloors.size > 0 || pushTrue)) + if(currentFloor == 1 && (destFloors.length > 0 || pushTrue)) { movingUp = true; } - else if (currentFloor == maxFloor && (destFloors.size > 0 || pushTrue)) + else if (currentFloor == maxFloor && (destFloors.length > 0 || pushTrue)) { movingDown = true; } From db0b136a7576d0c65b3734bdc2ba685d69c003ba Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Tue, 30 Jul 2019 10:40:40 -0400 Subject: [PATCH 114/247] Removed parameter on newPassenger() --- src/PassengerManager.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/PassengerManager.java b/src/PassengerManager.java index f2ba0b6..af5441b 100644 --- a/src/PassengerManager.java +++ b/src/PassengerManager.java @@ -12,15 +12,15 @@ public PassengerManager(Elevator elevator) this.passengers = new ArrayList(); } - public Passenger newPassenger(int numFloors) + public Passenger newPassenger() { Random rand = new Random(); - int start = rand.nextInt(numFloors) + 1; - int dest = rand.nextInt(numFloors) + 1; + int start = rand.nextInt(elevator.getNumberOfFloors) + 1; + int dest = rand.nextInt(elevator.getNumberOfFloors) + 1; while (dest == start) { - dest = rand.nextInt(numFloors) + 1; + dest = rand.nextInt(elevator.getNumberOfFloors) + 1; } Passenger newPass = new Passenger(elevator, start, dest); From 6d0343f144ba3d9c3fea5ac21f7ed4a2496d445b Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Tue, 30 Jul 2019 10:44:29 -0400 Subject: [PATCH 115/247] Added missing parentheses to method call --- src/PassengerManager.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/PassengerManager.java b/src/PassengerManager.java index af5441b..af6dd17 100644 --- a/src/PassengerManager.java +++ b/src/PassengerManager.java @@ -15,12 +15,12 @@ public PassengerManager(Elevator elevator) public Passenger newPassenger() { Random rand = new Random(); - int start = rand.nextInt(elevator.getNumberOfFloors) + 1; - int dest = rand.nextInt(elevator.getNumberOfFloors) + 1; + int start = rand.nextInt(elevator.getNumberOfFloors()) + 1; + int dest = rand.nextInt(elevator.getNumberOfFloors()) + 1; while (dest == start) { - dest = rand.nextInt(elevator.getNumberOfFloors) + 1; + dest = rand.nextInt(elevator.getNumberOfFloors()) + 1; } Passenger newPass = new Passenger(elevator, start, dest); From ffc1beb808edfd3aed87ea9b398d2de249ce780d Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Tue, 30 Jul 2019 10:59:05 -0400 Subject: [PATCH 116/247] Added two calls to newPassenger() --- src/ElevSim.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/ElevSim.java b/src/ElevSim.java index 3a8fa8a..28ce620 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -18,6 +18,10 @@ public static void main(String[] args) throws InterruptedException { Controller control = new DefaultController(elev); System.out.println("Welcome to the Elevator Simulator."); + + Passenger p1 = passengerManager.newPassenger(); + Passenger p2 = passengerManager.newPassenger(); + while(true) { passengerManager.next(); From 3554eb03a16464ae4add707079c93fc291f88ed0 Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Tue, 30 Jul 2019 11:08:42 -0400 Subject: [PATCH 117/247] stop() updated to set pushedUp[] pushedDown[] and destinationFloor[] to false --- src/Elevator.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/Elevator.java b/src/Elevator.java index 5b0b280..bdcacec 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -135,6 +135,9 @@ public boolean[] getPushedDownArray() { } public void stop() { this.stopped = true; + destinationFloor[currentFloor] = false; + pushedUp[currentFloor] = false; + pushedDown[currentFloor] = false; } public boolean getStopped() { From 09a8fabcdc072b35ba4eb8d0e7a6cb97a820e678 Mon Sep 17 00:00:00 2001 From: Will Date: Tue, 30 Jul 2019 11:43:22 -0400 Subject: [PATCH 118/247] Added hasDestFloor to Elevator class. --- src/Elevator.java | 26 +++++++++++++++++++------- tests/Tests.java | 28 +++++++++++----------------- 2 files changed, 30 insertions(+), 24 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index bdcacec..dd06179 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -4,7 +4,7 @@ public class Elevator { private int currentFloor; - private boolean[] destinationFloor; + private boolean[] destinationFloors; private int numberOfFloors; private boolean[] pushedUp; private boolean[] pushedDown; @@ -17,7 +17,7 @@ public class Elevator { public Elevator(int numberOfFloors) { this.currentFloor = 1; this.numberOfFloors = numberOfFloors; - destinationFloor = new boolean[numberOfFloors+1]; + destinationFloors = new boolean[numberOfFloors+1]; pushedUp = new boolean[numberOfFloors+1]; pushedDown = new boolean[numberOfFloors+1]; } @@ -27,8 +27,9 @@ public Elevator(int numberOfFloors) { */ public Elevator(int currentFloor, int numberOfFloors) { this.currentFloor = currentFloor; - this.destinationFloor = destinationFloor; - destinationFloor = new boolean[numberOfFloors+1]; + this.numberOfFloors = numberOfFloors; + + destinationFloors = new boolean[numberOfFloors+1]; pushedUp = new boolean[numberOfFloors + 1]; pushedDown = new boolean[numberOfFloors + 1]; } @@ -89,6 +90,17 @@ public boolean pushTrue() } return false; } + + public boolean hasDestFloor() + { + for(int loop = 0; loop < destinationFloors.length; loop++) + { + if(destinationFloors[loop]) + return true; + } + + return false; + } /** * Author: Elijah Smith @@ -107,11 +119,11 @@ public int getCurrentFloor() { } public void addDestinationFloor(int currentFloor) { - destinationFloor[currentFloor] = true; + destinationFloors[currentFloor] = true; } public boolean[] getDestinationFloor() { - return this.destinationFloor; + return this.destinationFloors; } public int getNumberOfFloors() { @@ -135,7 +147,7 @@ public boolean[] getPushedDownArray() { } public void stop() { this.stopped = true; - destinationFloor[currentFloor] = false; + destinationFloors[currentFloor] = false; pushedUp[currentFloor] = false; pushedDown[currentFloor] = false; } diff --git a/tests/Tests.java b/tests/Tests.java index 5df4aec..82921e7 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -128,6 +128,7 @@ else if (numExpectedPolls-1 <= numPolls && numPolls <= numExpectedPolls+1) { * Author: Elijah Smith * test brought from TimerTest.java */ + /* @Test public void runInterruptTest() { numPolls = 0; @@ -176,6 +177,7 @@ else if (numExpectedPolls-1 <= numPolls && numPolls <= numExpectedPolls+1) { assertTrue(state); } } + */ /** * Author: Elijah Smith @@ -283,26 +285,18 @@ public void testdisplay2() assertEquals(Display.current, 6); } - - - - - /** - * Author: Elijah Smith - - */ - @Test - public void testPassengerConstructor1() - { - - } - @Test - public void testPassengerConstructor2() + public void testHasDestFloor() { - + Elevator elev = new Elevator(1, 10); + + assertEquals(false, elev.hasDestFloor()); + + elev.addDestinationFloor(7); + + assertEquals(true, elev.hasDestFloor()); } - + @Test public void testDefaultController1() { From 020b391c97dc808e2040d19fe0bbc10f107ce015 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Tue, 30 Jul 2019 11:52:43 -0400 Subject: [PATCH 119/247] Added getter for the ArrayList of Passengers --- src/PassengerManager.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/PassengerManager.java b/src/PassengerManager.java index af6dd17..72a0e77 100644 --- a/src/PassengerManager.java +++ b/src/PassengerManager.java @@ -36,4 +36,9 @@ public void next() passengers.get(i).next(); } } + + public ArrayList getPassengers() + { + return passengers; + } } From f9298b68c5ea5e7ff82fdc93d8f2ff3b6aa0fe12 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Tue, 30 Jul 2019 11:53:21 -0400 Subject: [PATCH 120/247] Added display method and method calls within --- src/Display.java | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/src/Display.java b/src/Display.java index 809eb9a..0df83f2 100644 --- a/src/Display.java +++ b/src/Display.java @@ -18,14 +18,20 @@ public Display(PassengerManager pm, Elevator el) this.el = el; } + public void display() + { + start(); + goingUp(); + goingDown(); + + } + public void start() { - System.out.println("Welcome to our Elevator Simulation:\n (Enter s to exit simulation) \n\n\n"); + System.out.println("Welcome to our Elevator Simulation:\n (Enter Ctrl+C to exit simulation) \n\n\n"); time2.run(); System.out.println("The doors are opening...\n"); time2.run(); - System.out.println("Please enter the elevator:"); - time2.run(); } public void goingUp() @@ -41,11 +47,6 @@ public void goingDown() time.run(); current--; } - - public void exit() - { - System.out.println("Exiting simulation..."); - } public void displayCurrentFloor() { From cff089620aee9ee46fb282e49f9f13ba2d4f3da3 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Tue, 30 Jul 2019 11:55:32 -0400 Subject: [PATCH 121/247] Update ElevSim.java --- src/ElevSim.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 28ce620..3c7061d 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -26,8 +26,9 @@ public static void main(String[] args) throws InterruptedException { { passengerManager.next(); control.next(); - - System.out.println(elev.getCurrentFloor()); + System.out.println("\nPassanger 1 is currently on " + p1.getStartFloor()); + System.out.println("Passanger 2 is currently on " + p2.getStartFloor()); + System.out.println("\nElevator is currently on " + elev.getCurrentFloor()); } } } From 751612b024ab80f4cdaca08dafae7db163516274 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Tue, 30 Jul 2019 11:56:41 -0400 Subject: [PATCH 122/247] Update Elevator.java --- src/Elevator.java | 46 ++++++++++------------------------------------ 1 file changed, 10 insertions(+), 36 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index dd06179..f11aa9e 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -4,12 +4,12 @@ public class Elevator { private int currentFloor; - private boolean[] destinationFloors; + private boolean[] destinationFloor; private int numberOfFloors; private boolean[] pushedUp; private boolean[] pushedDown; private boolean stopped; - + Timer time = new Timer(3000); /** * Author: Elijah Smith * Issue #61 new Constructor @@ -17,7 +17,7 @@ public class Elevator { public Elevator(int numberOfFloors) { this.currentFloor = 1; this.numberOfFloors = numberOfFloors; - destinationFloors = new boolean[numberOfFloors+1]; + destinationFloor = new boolean[numberOfFloors+1]; pushedUp = new boolean[numberOfFloors+1]; pushedDown = new boolean[numberOfFloors+1]; } @@ -27,9 +27,8 @@ public Elevator(int numberOfFloors) { */ public Elevator(int currentFloor, int numberOfFloors) { this.currentFloor = currentFloor; - this.numberOfFloors = numberOfFloors; - - destinationFloors = new boolean[numberOfFloors+1]; + this.destinationFloor = destinationFloor; + destinationFloor = new boolean[numberOfFloors+1]; pushedUp = new boolean[numberOfFloors + 1]; pushedDown = new boolean[numberOfFloors + 1]; } @@ -40,16 +39,9 @@ public Elevator(int currentFloor, int numberOfFloors) { * @throws Exception */ public void moveDown() { + time.run(); currentFloor--; stopped = false; - try { - Thread.sleep(3000); - System.out.println("Elevator going down..."); - } - - catch (InterruptedException e) { - e.printStackTrace(); - } } /** @@ -57,16 +49,9 @@ public void moveDown() { * Issue #57/51 moveUp */ public void moveUp() { + time.run(); currentFloor++; stopped = false; - try { - Thread.sleep(3000); - System.out.println("Elevator going up..."); - } - - catch (InterruptedException e) { - e.printStackTrace(); - } } /** @@ -90,17 +75,6 @@ public boolean pushTrue() } return false; } - - public boolean hasDestFloor() - { - for(int loop = 0; loop < destinationFloors.length; loop++) - { - if(destinationFloors[loop]) - return true; - } - - return false; - } /** * Author: Elijah Smith @@ -119,11 +93,11 @@ public int getCurrentFloor() { } public void addDestinationFloor(int currentFloor) { - destinationFloors[currentFloor] = true; + destinationFloor[currentFloor] = true; } public boolean[] getDestinationFloor() { - return this.destinationFloors; + return this.destinationFloor; } public int getNumberOfFloors() { @@ -147,7 +121,7 @@ public boolean[] getPushedDownArray() { } public void stop() { this.stopped = true; - destinationFloors[currentFloor] = false; + destinationFloor[currentFloor] = false; pushedUp[currentFloor] = false; pushedDown[currentFloor] = false; } From e5a387b93daf6707b5024f9baf704170eadd080d Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Tue, 30 Jul 2019 11:57:17 -0400 Subject: [PATCH 123/247] Update Elevator.java --- src/Elevator.java | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index f11aa9e..24baff7 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -1,6 +1,3 @@ -import java.util.ArrayList; -import java.util.concurrent.TimeUnit; - public class Elevator { private int currentFloor; From 5871b4a5c862bc364ccc7f1886be3815194ecdb9 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Tue, 30 Jul 2019 11:59:28 -0400 Subject: [PATCH 124/247] Update Elevator.java --- src/Elevator.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/Elevator.java b/src/Elevator.java index 24baff7..6069408 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -73,6 +73,19 @@ public boolean pushTrue() return false; } + + public boolean hasDestFloor() + { + for(int loop = 0; loop < destinationFloors.length; loop++) + { + if(destinationFloors[loop]) + return true; + } + + return false; + } + + /** * Author: Elijah Smith * Issue #22 getter method From 1db485b8d06d2f8acea1bd9d0fbf18afa3e1163d Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Tue, 30 Jul 2019 12:08:51 -0400 Subject: [PATCH 125/247] Update ElevSim.java --- src/ElevSim.java | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 3c7061d..d912acf 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -1,23 +1,15 @@ -import java.util.Scanner; - public class ElevSim { public static void main(String[] args) throws InterruptedException { - Scanner kb = new Scanner(System.in); - int elevCurrent = 1; - int passDestination = 1; - int passCurrent = 1; - char decision = 'u'; - int floorDecision = 1; - String stringDecision = ""; - int maxFloors = 100; + + int maxFloors = 10; Elevator elev = new Elevator(maxFloors); PassengerManager passengerManager= new PassengerManager(elev); Controller control = new DefaultController(elev); - System.out.println("Welcome to the Elevator Simulator."); + System.out.println("Welcome to the Elevator Simulator.\n\nElevator is currently on " + elev.getCurrentFloor()); Passenger p1 = passengerManager.newPassenger(); Passenger p2 = passengerManager.newPassenger(); @@ -26,10 +18,7 @@ public static void main(String[] args) throws InterruptedException { { passengerManager.next(); control.next(); - System.out.println("\nPassanger 1 is currently on " + p1.getStartFloor()); - System.out.println("Passanger 2 is currently on " + p2.getStartFloor()); System.out.println("\nElevator is currently on " + elev.getCurrentFloor()); } } } - From 6dbddcc872431f72011e0c08a193de4ccca72138 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Tue, 30 Jul 2019 12:09:19 -0400 Subject: [PATCH 126/247] Update ElevSim.java --- src/ElevSim.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index d912acf..5548d56 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -2,7 +2,6 @@ public class ElevSim { public static void main(String[] args) throws InterruptedException { - int maxFloors = 10; Elevator elev = new Elevator(maxFloors); @@ -20,5 +19,5 @@ public static void main(String[] args) throws InterruptedException { control.next(); System.out.println("\nElevator is currently on " + elev.getCurrentFloor()); } - } + } } From 98c471d30ad66baf29c2c37124683c57e169f531 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Tue, 30 Jul 2019 12:09:34 -0400 Subject: [PATCH 127/247] Update ElevSim.java --- src/ElevSim.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 5548d56..a4be2e5 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -1,6 +1,5 @@ public class ElevSim { - public static void main(String[] args) throws InterruptedException { int maxFloors = 10; From 85da94b13d6cb53dc9e5ca29b8e2a39bc768a97e Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Tue, 30 Jul 2019 12:14:50 -0400 Subject: [PATCH 128/247] Added beeps to goingUp() and goingDown() --- src/Display.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Display.java b/src/Display.java index 0df83f2..ad75df0 100644 --- a/src/Display.java +++ b/src/Display.java @@ -23,7 +23,6 @@ public void display() start(); goingUp(); goingDown(); - } public void start() @@ -38,6 +37,7 @@ public void goingUp() { System.out.println("\nGoing up to floor " + (current + 1) + "\n"); time.run(); + System.out.print("\007"); current++; } @@ -45,6 +45,7 @@ public void goingDown() { System.out.println("\nGoing down to floor " + (current - 1) + "\n"); time.run(); + System.out.print("\007"); current--; } From 41ed3247f2ed1c87d21dff194a69e78dcfa81e6e Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Tue, 30 Jul 2019 12:28:23 -0400 Subject: [PATCH 129/247] Update ElevSim.java --- src/ElevSim.java | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index a4be2e5..096da40 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -1,22 +1,32 @@ +package solution; +import java.util.Scanner; + public class ElevSim { + public static void main(String[] args) throws InterruptedException { + int maxFloors = 10; - + Scanner kb = new Scanner(System.in); Elevator elev = new Elevator(maxFloors); PassengerManager passengerManager= new PassengerManager(elev); Controller control = new DefaultController(elev); - System.out.println("Welcome to the Elevator Simulator.\n\nElevator is currently on " + elev.getCurrentFloor()); + System.out.println("Welcome to the Elevator Simulator.\n\nElevator is currently on: " + elev.getCurrentFloor()); Passenger p1 = passengerManager.newPassenger(); Passenger p2 = passengerManager.newPassenger(); + while(true) { passengerManager.next(); control.next(); - System.out.println("\nElevator is currently on " + elev.getCurrentFloor()); + System.out.println("\nPassenger 1 is on floor " + p1.getDestinationFloor()); + System.out.println("Passenger 2 is on floor " + p2.getDestinationFloor()); + + System.out.println("\nElevator is currently on: " + elev.getCurrentFloor()); + } - } + } } From cc6d9ee7a1a67765873d9d9f1e7875b3ba119ec0 Mon Sep 17 00:00:00 2001 From: Will Date: Tue, 30 Jul 2019 12:30:14 -0400 Subject: [PATCH 130/247] Made progress on bug. --- src/DefaultController.java | 20 ++++++-------------- src/Elevator.java | 18 ++++++++++++++---- src/Passenger.java | 30 ++++++++++++++++++++++++++++-- 3 files changed, 48 insertions(+), 20 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index 78eb11d..8307e5c 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -21,8 +21,9 @@ public void next() boolean[] destFloors = elevator.getDestinationFloor(); boolean pushUpFloors[] = elevator.getPushedUp(); boolean pushDownFloors[] = elevator.getPushedDown(); - boolean pushTrue = elevator.pushTrue(); + boolean pushTrue = elevator.pushTrue(); + boolean destTrue = elevator.hasDestFloor(); if(currentFloor == 1 || currentFloor == maxFloor) { @@ -30,29 +31,20 @@ public void next() movingDown = false; } - if(currentFloor == 1 && (destFloors.length > 0 || pushTrue)) + if(currentFloor == 1 && (destTrue || pushTrue)) { movingUp = true; } - else if (currentFloor == maxFloor && (destFloors.length > 0 || pushTrue)) + else if (currentFloor == maxFloor && (destTrue || pushTrue)) { movingDown = true; } - if(destFloors[currentFloor]) - { - elevator.stop(); - } - else if(movingUp && pushUpFloors[currentFloor]) + if(destFloors[currentFloor] || (movingUp && pushUpFloors[currentFloor]) || (movingDown && pushDownFloors[currentFloor])) { elevator.stop(); } - else if(movingDown && pushDownFloors[currentFloor]) - { - elevator.stop(); - } - - if(movingUp) + else if(movingUp) { elevator.moveUp(); } diff --git a/src/Elevator.java b/src/Elevator.java index dd06179..1815848 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -20,6 +20,8 @@ public Elevator(int numberOfFloors) { destinationFloors = new boolean[numberOfFloors+1]; pushedUp = new boolean[numberOfFloors+1]; pushedDown = new boolean[numberOfFloors+1]; + + this.stopped = true; } /** * Author: Elijah Smith @@ -32,6 +34,8 @@ public Elevator(int currentFloor, int numberOfFloors) { destinationFloors = new boolean[numberOfFloors+1]; pushedUp = new boolean[numberOfFloors + 1]; pushedDown = new boolean[numberOfFloors + 1]; + + this.stopped = true; } /** @@ -41,10 +45,11 @@ public Elevator(int currentFloor, int numberOfFloors) { */ public void moveDown() { currentFloor--; - stopped = false; + this.stopped = false; + try { Thread.sleep(3000); - System.out.println("Elevator going down..."); + System.out.println("Elevator going down... Floor: " + currentFloor); } catch (InterruptedException e) { @@ -58,10 +63,11 @@ public void moveDown() { */ public void moveUp() { currentFloor++; - stopped = false; + this.stopped = false; + try { Thread.sleep(3000); - System.out.println("Elevator going up..."); + System.out.println("Elevator going up... Floor: " + currentFloor); } catch (InterruptedException e) { @@ -147,12 +153,16 @@ public boolean[] getPushedDownArray() { } public void stop() { this.stopped = true; + + System.out.println("Elevator stopped."); + destinationFloors[currentFloor] = false; pushedUp[currentFloor] = false; pushedDown[currentFloor] = false; } public boolean getStopped() { + System.out.println("ELEV STOPPED: " + this.stopped); return this.stopped; } diff --git a/src/Passenger.java b/src/Passenger.java index 640c788..3b23714 100644 --- a/src/Passenger.java +++ b/src/Passenger.java @@ -1,23 +1,36 @@ public class Passenger { + private Elevator elev; + private int startFloor; private int destinationFloor; + private boolean waiting; - Elevator elev; + private boolean riding; + private boolean done; + public Passenger(Elevator elev, int startFloor, int destinationFloor) { this.elev = elev; + this.startFloor = startFloor; this.destinationFloor = destinationFloor; + this.waiting = false; + this.riding = false; + this.done = false; } public Passenger(Elevator elev, int destinationFloor) { this.elev = elev; - this.waiting = false; + this.startFloor = 1; this.destinationFloor = destinationFloor; + + this.waiting = false; + this.riding = false; + this.done = false; } public void next() @@ -26,14 +39,27 @@ public void next() { if(this.destinationFloor > elev.getCurrentFloor()) { + System.out.println("Passenger on floor " + startFloor + " pushed Up."); elev.pushUp(this.startFloor); } else { + System.out.println("Passenger on floor " + startFloor + " pushed Down."); elev.pushDown(this.startFloor); } this.waiting = true; } + else if(waiting && !riding && elev.getStopped() && elev.getCurrentFloor() == startFloor) + { + System.out.println("Passenger boarded elevator and pushed floor " + destinationFloor + "."); + elev.addDestinationFloor(destinationFloor); + this.riding = true; + } + else if(elev.getStopped() && elev.getCurrentFloor() == destinationFloor) + { + System.out.println("Passenger got off."); + this.done = true; + } } public boolean getWaiting() From f13900ab6048de18a6248b76a1d26524d59c0bc3 Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Tue, 30 Jul 2019 12:30:50 -0400 Subject: [PATCH 131/247] calling el.getCurrentFloor() instead of initializing a field for it --- src/Display.java | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/Display.java b/src/Display.java index ad75df0..212bc76 100644 --- a/src/Display.java +++ b/src/Display.java @@ -10,7 +10,6 @@ public class Display PassengerManager pm; Timer time = new Timer(3000); Timer time2 = new Timer(2000); - public static int current = el.getCurrentFloor(); public Display(PassengerManager pm, Elevator el) { @@ -35,7 +34,7 @@ public void start() public void goingUp() { - System.out.println("\nGoing up to floor " + (current + 1) + "\n"); + System.out.println("\nGoing up to floor " + (el.getCurrentFloor() + 1) + "\n"); time.run(); System.out.print("\007"); current++; @@ -43,14 +42,14 @@ public void goingUp() public void goingDown() { - System.out.println("\nGoing down to floor " + (current - 1) + "\n"); + System.out.println("\nGoing down to floor " + (el.getCurrentFloor() - 1) + "\n"); time.run(); System.out.print("\007"); current--; } - + public void displayCurrentFloor() { - System.out.println("Elevator is currently on floor " + el.getCurrentFloor()); + System.out.println("Elevator is currently on floor " + el.getCurrentFloor)(); } } From e66c668a9910ef76a8612800b2d1c878cb084b4e Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Tue, 30 Jul 2019 12:33:13 -0400 Subject: [PATCH 132/247] fixed typo --- src/Display.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Display.java b/src/Display.java index 212bc76..dfafacd 100644 --- a/src/Display.java +++ b/src/Display.java @@ -50,6 +50,6 @@ public void goingDown() public void displayCurrentFloor() { - System.out.println("Elevator is currently on floor " + el.getCurrentFloor)(); + System.out.println("Elevator is currently on floor " + el.getCurrentFloor(); } } From 3bc937a8b7630a7a1d92805a383724bbc632b014 Mon Sep 17 00:00:00 2001 From: jakewooten <42622871+jakewooten@users.noreply.github.com> Date: Tue, 30 Jul 2019 12:34:50 -0400 Subject: [PATCH 133/247] Update Display.java --- src/Display.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Display.java b/src/Display.java index dfafacd..d344f70 100644 --- a/src/Display.java +++ b/src/Display.java @@ -50,6 +50,6 @@ public void goingDown() public void displayCurrentFloor() { - System.out.println("Elevator is currently on floor " + el.getCurrentFloor(); + System.out.println("Elevator is currently on floor " + el.getCurrentFloor()); } } From 721b1d5f92cdde74ee7e19d1477429868644b304 Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Tue, 30 Jul 2019 12:37:49 -0400 Subject: [PATCH 134/247] I shouldnt have made these meaningless changes but I'm too far to go back --- src/Display.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Display.java b/src/Display.java index dfafacd..7da5c69 100644 --- a/src/Display.java +++ b/src/Display.java @@ -37,7 +37,7 @@ public void goingUp() System.out.println("\nGoing up to floor " + (el.getCurrentFloor() + 1) + "\n"); time.run(); System.out.print("\007"); - current++; + el.getCurrentFloor()++; } public void goingDown() @@ -45,7 +45,7 @@ public void goingDown() System.out.println("\nGoing down to floor " + (el.getCurrentFloor() - 1) + "\n"); time.run(); System.out.print("\007"); - current--; + el.getCurrentFloor()--; } public void displayCurrentFloor() From 8dc7954d98d2b093b095b3d506b2eebc460df8b5 Mon Sep 17 00:00:00 2001 From: jakewooten <42622871+jakewooten@users.noreply.github.com> Date: Tue, 30 Jul 2019 12:42:38 -0400 Subject: [PATCH 135/247] Update Display.java --- src/Display.java | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/Display.java b/src/Display.java index 2ef5fec..eb1eeef 100644 --- a/src/Display.java +++ b/src/Display.java @@ -10,6 +10,7 @@ public class Display PassengerManager pm; Timer time = new Timer(3000); Timer time2 = new Timer(2000); + public static int current = el.getCurrentFloor(); public Display(PassengerManager pm, Elevator el) { @@ -34,22 +35,22 @@ public void start() public void goingUp() { - System.out.println("\nGoing up to floor " + (el.getCurrentFloor() + 1) + "\n"); + System.out.println("\nGoing up to floor " + (current + 1) + "\n"); time.run(); System.out.print("\007"); - el.getCurrentFloor()++; + current++; } public void goingDown() { - System.out.println("\nGoing down to floor " + (el.getCurrentFloor() - 1) + "\n"); + System.out.println("\nGoing down to floor " + (current - 1) + "\n"); time.run(); System.out.print("\007"); - el.getCurrentFloor()--; + current--; } public void displayCurrentFloor() { - System.out.println("Elevator is currently on floor " + el.getCurrentFloor()); + System.out.println("Elevator is currently on floor " + current); } } From 8926737b1106363994bfc369dd154c89cb93d9fa Mon Sep 17 00:00:00 2001 From: Will Date: Wed, 31 Jul 2019 10:27:25 -0400 Subject: [PATCH 136/247] ElevSim changes. --- src/ElevSim.java | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 28ce620..4ea70f7 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -11,7 +11,7 @@ public static void main(String[] args) throws InterruptedException { char decision = 'u'; int floorDecision = 1; String stringDecision = ""; - int maxFloors = 100; + int maxFloors = 10; Elevator elev = new Elevator(maxFloors); PassengerManager passengerManager= new PassengerManager(elev); @@ -20,14 +20,12 @@ public static void main(String[] args) throws InterruptedException { System.out.println("Welcome to the Elevator Simulator."); Passenger p1 = passengerManager.newPassenger(); - Passenger p2 = passengerManager.newPassenger(); + //Passenger p2 = passengerManager.newPassenger(); while(true) { - passengerManager.next(); control.next(); - - System.out.println(elev.getCurrentFloor()); + passengerManager.next(); } } } From 4cfa726193328e33daf950650ad9ca2bc452f959 Mon Sep 17 00:00:00 2001 From: Will Date: Wed, 31 Jul 2019 10:43:36 -0400 Subject: [PATCH 137/247] Fixed Issues with the Elevator class. Elevator now works properly. --- src/ElevSim.java | 2 +- src/Elevator.java | 3 --- src/Passenger.java | 2 +- 3 files changed, 2 insertions(+), 5 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 4ea70f7..485a35e 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -20,7 +20,7 @@ public static void main(String[] args) throws InterruptedException { System.out.println("Welcome to the Elevator Simulator."); Passenger p1 = passengerManager.newPassenger(); - //Passenger p2 = passengerManager.newPassenger(); + Passenger p2 = passengerManager.newPassenger(); while(true) { diff --git a/src/Elevator.java b/src/Elevator.java index 1815848..6d90c0f 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -153,8 +153,6 @@ public boolean[] getPushedDownArray() { } public void stop() { this.stopped = true; - - System.out.println("Elevator stopped."); destinationFloors[currentFloor] = false; pushedUp[currentFloor] = false; @@ -162,7 +160,6 @@ public void stop() { } public boolean getStopped() { - System.out.println("ELEV STOPPED: " + this.stopped); return this.stopped; } diff --git a/src/Passenger.java b/src/Passenger.java index 3b23714..08b01bb 100644 --- a/src/Passenger.java +++ b/src/Passenger.java @@ -37,7 +37,7 @@ public void next() { if(!this.waiting) { - if(this.destinationFloor > elev.getCurrentFloor()) + if(this.destinationFloor > this.startFloor) { System.out.println("Passenger on floor " + startFloor + " pushed Up."); elev.pushUp(this.startFloor); From 95aaf74345a97266726ea468b2a6f7cab4fa6432 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Wed, 31 Jul 2019 10:45:37 -0400 Subject: [PATCH 138/247] Changed to make the constructor take an ArrayList --- src/Controller.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/Controller.java b/src/Controller.java index abdbd87..65f4c7a 100644 --- a/src/Controller.java +++ b/src/Controller.java @@ -1,10 +1,12 @@ +import java.util.ArrayList; + public abstract class Controller { - protected Elevator elevator; + protected ArrayList elevators; - protected Controller(Elevator elevator) + protected Controller(ArrayList elevators) { - this.elevator = elevator; + this.elevators = elevators; } public abstract void next(); From 830b2d32239dab99803f45507cdba7ff57e074bb Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 31 Jul 2019 10:50:44 -0400 Subject: [PATCH 139/247] made some rearrangements for issue108 --- src/Controller.java | 24 ++++++++++++++++++++++++ src/Elevator.java | 22 ++-------------------- 2 files changed, 26 insertions(+), 20 deletions(-) diff --git a/src/Controller.java b/src/Controller.java index abdbd87..43d989a 100644 --- a/src/Controller.java +++ b/src/Controller.java @@ -1,11 +1,35 @@ public abstract class Controller { protected Elevator elevator; + protected boolean[] pushedUp; + protected boolean[] pushedDown; + /** + * Editor: Elijah Smith + * initialized size of new pushed fields. + */ protected Controller(Elevator elevator) { this.elevator = elevator; + pushedUp = new boolean[elevator.getNumberOfFloors() + 1]; + pushedDown = new boolean[elevator.getNumberOfFloors() +1]; } public abstract void next(); + + /** + * Author: Elijah Smith + * Issue #108 moving this method from Elevator + */ + public void pushUp(int currentFloor) { + pushedUp[currentFloor] = true; + } + + /** + * Author: Elijah Smith + * Issue #108 moving this method from Elevator + */ + public void pushDown(int currentFloor) { + pushedDown[currentFloor] = true; + } } diff --git a/src/Elevator.java b/src/Elevator.java index dd06179..ab304b1 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -6,8 +6,6 @@ public class Elevator { private int currentFloor; private boolean[] destinationFloors; private int numberOfFloors; - private boolean[] pushedUp; - private boolean[] pushedDown; private boolean stopped; /** @@ -18,9 +16,7 @@ public Elevator(int numberOfFloors) { this.currentFloor = 1; this.numberOfFloors = numberOfFloors; destinationFloors = new boolean[numberOfFloors+1]; - pushedUp = new boolean[numberOfFloors+1]; - pushedDown = new boolean[numberOfFloors+1]; - } + } /** * Author: Elijah Smith * Issue #18 Constructor @@ -30,9 +26,7 @@ public Elevator(int currentFloor, int numberOfFloors) { this.numberOfFloors = numberOfFloors; destinationFloors = new boolean[numberOfFloors+1]; - pushedUp = new boolean[numberOfFloors + 1]; - pushedDown = new boolean[numberOfFloors + 1]; - } + } /** * Author: Elijah Smith @@ -69,18 +63,6 @@ public void moveUp() { } } - /** - * Author: Erik Burr - * Issue #17 pushUp/pushDown - */ - public void pushUp(int currentFloor){ - pushedUp[currentFloor] = true; - } - - public void pushDown(int currentFloor){ - pushedDown[currentFloor] = true; - } - public boolean pushTrue() { for(int loop = 0; loop < pushedUp.length; loop++) From 284abf08e1bf660364393b7e035737117fc7a566 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Wed, 31 Jul 2019 10:55:02 -0400 Subject: [PATCH 140/247] Changed constructor to take an ArrayList --- src/DefaultController.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index 78eb11d..552664f 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -5,9 +5,9 @@ public class DefaultController extends Controller private boolean movingUp; private boolean movingDown; - public DefaultController(Elevator elevator) + public DefaultController(ArrayList elevators) { - super(elevator); + super(elevators); this.movingUp = false; this.movingDown = false; From 084a3c485adc3ae4bb12ab916d4edef8a18bb51d Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 31 Jul 2019 10:56:18 -0400 Subject: [PATCH 141/247] Update ElevSim.java --- src/ElevSim.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 096da40..3158b6a 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -11,8 +11,13 @@ public static void main(String[] args) throws InterruptedException { Elevator elev = new Elevator(maxFloors); PassengerManager passengerManager= new PassengerManager(elev); Controller control = new DefaultController(elev); + Passenger pass = new Passenger(elev, 0); System.out.println("Welcome to the Elevator Simulator.\n\nElevator is currently on: " + elev.getCurrentFloor()); + System.out.println("\nPassenger 1, which floor would you like to go?"); + int destination = kb.nextInt(); + pass.setDestinationFloor(destination); + System.out.println("Passenger 1 is going to: " + destination); Passenger p1 = passengerManager.newPassenger(); Passenger p2 = passengerManager.newPassenger(); @@ -21,10 +26,7 @@ public static void main(String[] args) throws InterruptedException { while(true) { passengerManager.next(); - control.next(); - System.out.println("\nPassenger 1 is on floor " + p1.getDestinationFloor()); - System.out.println("Passenger 2 is on floor " + p2.getDestinationFloor()); - + control.next(); System.out.println("\nElevator is currently on: " + elev.getCurrentFloor()); } From a43d2e99b993527d2a3494541aa4cd8f4eee5ac6 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 31 Jul 2019 10:59:48 -0400 Subject: [PATCH 142/247] one more change, pushTrue() -> Controller --- src/Controller.java | 16 ++++++++++++++-- src/Elevator.java | 11 ----------- 2 files changed, 14 insertions(+), 13 deletions(-) diff --git a/src/Controller.java b/src/Controller.java index 43d989a..d34a39f 100644 --- a/src/Controller.java +++ b/src/Controller.java @@ -18,7 +18,7 @@ protected Controller(Elevator elevator) public abstract void next(); /** - * Author: Elijah Smith + * Editor: Elijah Smith * Issue #108 moving this method from Elevator */ public void pushUp(int currentFloor) { @@ -26,10 +26,22 @@ public void pushUp(int currentFloor) { } /** - * Author: Elijah Smith + * Editor: Elijah Smith * Issue #108 moving this method from Elevator */ public void pushDown(int currentFloor) { pushedDown[currentFloor] = true; } + + /** + * Editor: Elijah Smith + * Issue #108 moving this method from Elevator + */ + public boolean pushTrue() { + for(int loop = 0; loop < pushedUp.length; loop++) { + if(pushedUp[loop] || pushedDown[loop]) + return true; + } + return false; + } } diff --git a/src/Elevator.java b/src/Elevator.java index ab304b1..6550cb2 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -24,7 +24,6 @@ public Elevator(int numberOfFloors) { public Elevator(int currentFloor, int numberOfFloors) { this.currentFloor = currentFloor; this.numberOfFloors = numberOfFloors; - destinationFloors = new boolean[numberOfFloors+1]; } @@ -63,16 +62,6 @@ public void moveUp() { } } - public boolean pushTrue() - { - for(int loop = 0; loop < pushedUp.length; loop++) - { - if(pushedUp[loop] || pushedDown[loop]) - return true; - } - return false; - } - public boolean hasDestFloor() { for(int loop = 0; loop < destinationFloors.length; loop++) From 6724a9f0d19a8941155b15b923620a7d655b8cac Mon Sep 17 00:00:00 2001 From: Will Date: Wed, 31 Jul 2019 11:00:05 -0400 Subject: [PATCH 143/247] Changed hasDestFloor to return an int. --- src/DefaultController.java | 6 +++--- src/Elevator.java | 7 ++++--- tests/Tests.java | 4 ++-- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index 8307e5c..b992f86 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -23,7 +23,7 @@ public void next() boolean pushDownFloors[] = elevator.getPushedDown(); boolean pushTrue = elevator.pushTrue(); - boolean destTrue = elevator.hasDestFloor(); + int destFloorCount = elevator.hasDestFloors(); if(currentFloor == 1 || currentFloor == maxFloor) { @@ -31,11 +31,11 @@ public void next() movingDown = false; } - if(currentFloor == 1 && (destTrue || pushTrue)) + if(currentFloor == 1 && (destFloorCount == 0 || pushTrue)) { movingUp = true; } - else if (currentFloor == maxFloor && (destTrue || pushTrue)) + else if (currentFloor == maxFloor && (destFloorCount == 0 || pushTrue)) { movingDown = true; } diff --git a/src/Elevator.java b/src/Elevator.java index 6d90c0f..0906d53 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -97,15 +97,16 @@ public boolean pushTrue() return false; } - public boolean hasDestFloor() + public int hasDestFloors() { + int count = 0; for(int loop = 0; loop < destinationFloors.length; loop++) { if(destinationFloors[loop]) - return true; + count++; } - return false; + return count; } /** diff --git a/tests/Tests.java b/tests/Tests.java index 82921e7..4fe8b89 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -290,11 +290,11 @@ public void testHasDestFloor() { Elevator elev = new Elevator(1, 10); - assertEquals(false, elev.hasDestFloor()); + assertEquals(0, elev.hasDestFloors()); elev.addDestinationFloor(7); - assertEquals(true, elev.hasDestFloor()); + assertEquals(1, elev.hasDestFloors()); } @Test From 55d5c1f86324fe988bf2b788b6ac28d30fb41e23 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 31 Jul 2019 11:02:12 -0400 Subject: [PATCH 144/247] Update Elevator.java --- src/Elevator.java | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 1123626..28df4ed 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -17,7 +17,6 @@ public Elevator(int numberOfFloors) { destinationFloor = new boolean[numberOfFloors+1]; pushedUp = new boolean[numberOfFloors+1]; pushedDown = new boolean[numberOfFloors+1]; - this.stopped = true; } /** @@ -30,7 +29,6 @@ public Elevator(int currentFloor, int numberOfFloors) { destinationFloor = new boolean[numberOfFloors+1]; pushedUp = new boolean[numberOfFloors + 1]; pushedDown = new boolean[numberOfFloors + 1]; - this.stopped = true; } @@ -42,7 +40,7 @@ public Elevator(int currentFloor, int numberOfFloors) { public void moveDown() { time.run(); currentFloor--; - stopped = false; + this.stopped = false; } /** @@ -52,7 +50,7 @@ public void moveDown() { public void moveUp() { time.run(); currentFloor++; - stopped = false; + this.stopped = false; } /** From 8dca30412fed0d2d6e5963b44a2222d2e79b713a Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 31 Jul 2019 11:02:25 -0400 Subject: [PATCH 145/247] needed to remove accessor methods for methods that are no longer there --- src/Elevator.java | 27 --------------------------- 1 file changed, 27 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 6550cb2..92504f9 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -73,18 +73,6 @@ public boolean hasDestFloor() return false; } - /** - * Author: Elijah Smith - * Issue #22 getter method - */ - public boolean[] getPushedUp() { - return this.pushedUp; - } - - public boolean[] getPushedDown() { - return this.pushedDown; - } - public int getCurrentFloor() { return this.currentFloor; } @@ -101,21 +89,6 @@ public int getNumberOfFloors() { return this.numberOfFloors; } - /** - * Author: Elijah Smith - * Issue #67 pushedUp accessor - */ - public boolean[] getPushedUpArray() { - return this.pushedUp; - } - - /** - * Author: Elijah Smith - * Issue #67 pushedDown accessor - */ - public boolean[] getPushedDownArray() { - return this.pushedDown; - } public void stop() { this.stopped = true; destinationFloors[currentFloor] = false; From b65624fe4088e3000bf271ac695853cd9930283a Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Wed, 31 Jul 2019 11:05:20 -0400 Subject: [PATCH 146/247] Changed constructor to take an array --- src/Controller.java | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/Controller.java b/src/Controller.java index 65f4c7a..2f79d42 100644 --- a/src/Controller.java +++ b/src/Controller.java @@ -1,10 +1,8 @@ -import java.util.ArrayList; - public abstract class Controller { - protected ArrayList elevators; + protected Elevator[] elevators; - protected Controller(ArrayList elevators) + protected Controller(Elevator[] elevators) { this.elevators = elevators; } From af55d478a91501a254a1d3d3478fcb168655428c Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 31 Jul 2019 11:05:31 -0400 Subject: [PATCH 147/247] Update Elevator.java --- src/Elevator.java | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 28df4ed..52fd606 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -78,9 +78,9 @@ public boolean pushTrue() public boolean hasDestFloor() { - for(int loop = 0; loop < destinationFloors.length; loop++) + for(int loop = 0; loop < destinationFloor.length; loop++) { - if(destinationFloors[loop]) + if(destinationFloor[loop]) return true; } @@ -134,8 +134,6 @@ public boolean[] getPushedDownArray() { public void stop() { this.stopped = true; destinationFloor[currentFloor] = false; - - destinationFloors[currentFloor] = false; pushedUp[currentFloor] = false; pushedDown[currentFloor] = false; } From 08c7404629db5bd0e33596326b278a6047457cb5 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 31 Jul 2019 11:05:59 -0400 Subject: [PATCH 148/247] Update ElevSim.java --- src/ElevSim.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 19ff4ec..53dcca3 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -15,7 +15,6 @@ public static void main(String[] args) throws InterruptedException { char decision = 'u'; int floorDecision = 1; String stringDecision = ""; - int maxFloors = 10; Elevator elev = new Elevator(maxFloors); PassengerManager passengerManager= new PassengerManager(elev); From 4ec806265e3cfce7870f3744febb616e806dd4be Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Wed, 31 Jul 2019 11:06:07 -0400 Subject: [PATCH 149/247] Changed ArrayList to array --- src/DefaultController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index 552664f..c976b74 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -5,7 +5,7 @@ public class DefaultController extends Controller private boolean movingUp; private boolean movingDown; - public DefaultController(ArrayList elevators) + public DefaultController(Elevator[] elevators) { super(elevators); From bd717232fd909983fdac02a2b64942ced372686b Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 31 Jul 2019 11:09:16 -0400 Subject: [PATCH 150/247] still fixing a few changes --- src/DefaultController.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index 78eb11d..003d8a7 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -19,9 +19,9 @@ public void next() int currentFloor = elevator.getCurrentFloor(); boolean[] destFloors = elevator.getDestinationFloor(); - boolean pushUpFloors[] = elevator.getPushedUp(); - boolean pushDownFloors[] = elevator.getPushedDown(); - boolean pushTrue = elevator.pushTrue(); + // boolean pushUpFloors[] = elevator.getPushedUp(); + // boolean pushDownFloors[] = elevator.getPushedDown(); + // boolean pushTrue = elevator.pushTrue(); if(currentFloor == 1 || currentFloor == maxFloor) @@ -30,11 +30,11 @@ public void next() movingDown = false; } - if(currentFloor == 1 && (destFloors.length > 0 || pushTrue)) + if(currentFloor == 1 && (destFloors.length > 0 /*|| pushTrue*/)) { movingUp = true; } - else if (currentFloor == maxFloor && (destFloors.length > 0 || pushTrue)) + else if (currentFloor == maxFloor && (destFloors.length > 0 /*|| pushTrue*/)) { movingDown = true; } @@ -43,11 +43,11 @@ else if (currentFloor == maxFloor && (destFloors.length > 0 || pushTrue)) { elevator.stop(); } - else if(movingUp && pushUpFloors[currentFloor]) + else if(movingUp /*&& pushUpFloors[currentFloor]*/) { elevator.stop(); } - else if(movingDown && pushDownFloors[currentFloor]) + else if(movingDown /*&& pushDownFloors[currentFloor]*/) { elevator.stop(); } From 423116506aaea83cab1f0a6f23ef52ddd5e958a3 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 31 Jul 2019 11:09:33 -0400 Subject: [PATCH 151/247] Update Elevator.java --- src/Elevator.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 7e40100..159223f 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -78,9 +78,9 @@ public boolean pushTrue() public int hasDestFloors() { int count = 0; - for(int loop = 0; loop < destinationFloors.length; loop++) + for(int loop = 0; loop < destinationFloor.length; loop++) { - if(destinationFloors[loop]) + if(destinationFloor[loop]) count++; } return count; From dd3b57fa7fd793a59d8f6c9b6b6880a60f7ed630 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Wed, 31 Jul 2019 11:09:41 -0400 Subject: [PATCH 152/247] Added line 13 to make the program compile --- src/DefaultController.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/DefaultController.java b/src/DefaultController.java index c976b74..bb52105 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -4,10 +4,13 @@ public class DefaultController extends Controller { private boolean movingUp; private boolean movingDown; + private Elevator elevator; public DefaultController(Elevator[] elevators) { super(elevators); + + elevator = elevators[0]; this.movingUp = false; this.movingDown = false; From a2d89d05b5b6058ef50605d81687698ba765c20e Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 31 Jul 2019 11:11:37 -0400 Subject: [PATCH 153/247] typo --- src/Elevator.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 92504f9..a95aa8e 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -92,8 +92,6 @@ public int getNumberOfFloors() { public void stop() { this.stopped = true; destinationFloors[currentFloor] = false; - pushedUp[currentFloor] = false; - pushedDown[currentFloor] = false; } public boolean getStopped() { From bf8f2c38ee20865b51158bad1417a74af0d2031c Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 31 Jul 2019 11:12:37 -0400 Subject: [PATCH 154/247] Update Elevator.java --- src/Elevator.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/Elevator.java b/src/Elevator.java index 159223f..0e98d22 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -6,6 +6,10 @@ public class Elevator { private boolean[] pushedUp; private boolean[] pushedDown; private boolean stopped; + Elevator elev = new Elevator(10); + PassengerManager passengerManager= new PassengerManager(elev); + Controller control = new DefaultController(elev); + Passenger pass = new Passenger(elev, 0); Timer time = new Timer(3000); /** * Author: Elijah Smith From acc82a0c03b16ee3a0ea4db36ecd10dfe1f68354 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 31 Jul 2019 11:15:30 -0400 Subject: [PATCH 155/247] Passenger also needs pushUp/pushDown to be called by Controller now not Elevator. --- src/Passenger.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/Passenger.java b/src/Passenger.java index 640c788..99e900e 100644 --- a/src/Passenger.java +++ b/src/Passenger.java @@ -26,11 +26,13 @@ public void next() { if(this.destinationFloor > elev.getCurrentFloor()) { - elev.pushUp(this.startFloor); + //This will change when Passenger starts using Controller not Elevator + //elev.pushUp(this.startFloor); } else - { - elev.pushDown(this.startFloor); + { + //This will change when Passenger starts using Controller not Elevator + //elev.pushDown(this.startFloor); } this.waiting = true; } From 119f26cd1befff4d80e2964b64d365a6e35b82c2 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Wed, 31 Jul 2019 11:15:50 -0400 Subject: [PATCH 156/247] Added lines 16 and 17 to make the program compile --- src/ElevSim.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 28ce620..b7c6098 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -13,9 +13,11 @@ public static void main(String[] args) throws InterruptedException { String stringDecision = ""; int maxFloors = 100; - Elevator elev = new Elevator(maxFloors); + Elevator[] elevators = new Elevator[2]; + Elevator elevator = Elevators[0]; + PassengerManager passengerManager= new PassengerManager(elev); - Controller control = new DefaultController(elev); + Controller control = new DefaultController(elevators); System.out.println("Welcome to the Elevator Simulator."); From 742c87cf82c79d908d173f03c982aa9993697904 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 31 Jul 2019 11:16:34 -0400 Subject: [PATCH 157/247] Update ElevSim.java --- src/ElevSim.java | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 53dcca3..193317f 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -1,26 +1,23 @@ -package solution; import java.util.Scanner; public class ElevSim { - + public static void main(String[] args) throws InterruptedException { - - int maxFloors = 10; - Scanner kb = new Scanner(System.in); - int elevCurrent = 1; int passDestination = 1; int passCurrent = 1; char decision = 'u'; int floorDecision = 1; String stringDecision = ""; + int maxFloors = 10; + Scanner kb = new Scanner(System.in); Elevator elev = new Elevator(maxFloors); PassengerManager passengerManager= new PassengerManager(elev); Controller control = new DefaultController(elev); Passenger pass = new Passenger(elev, 0); - + System.out.println("Welcome to the Elevator Simulator.\n\nElevator is currently on: " + elev.getCurrentFloor()); System.out.println("\nPassenger 1, which floor would you like to go?"); int destination = kb.nextInt(); From ba3e697684bd551f49355449b0771939ea5949fd Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Wed, 31 Jul 2019 11:17:22 -0400 Subject: [PATCH 158/247] fixed minor syntax error --- src/ElevSim.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index b7c6098..e27731a 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -14,7 +14,7 @@ public static void main(String[] args) throws InterruptedException { int maxFloors = 100; Elevator[] elevators = new Elevator[2]; - Elevator elevator = Elevators[0]; + Elevator elevator = elevators[0]; PassengerManager passengerManager= new PassengerManager(elev); Controller control = new DefaultController(elevators); @@ -29,7 +29,7 @@ public static void main(String[] args) throws InterruptedException { passengerManager.next(); control.next(); - System.out.println(elev.getCurrentFloor()); + System.out.println(elevator.getCurrentFloor()); } } } From 43dad440b4ea358eb2a1169a088541da1fba7c4a Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 31 Jul 2019 11:19:29 -0400 Subject: [PATCH 159/247] removing tests --- tests/Tests.java | 63 +++--------------------------------------------- 1 file changed, 3 insertions(+), 60 deletions(-) diff --git a/tests/Tests.java b/tests/Tests.java index 82921e7..29f671b 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -32,30 +32,7 @@ public void testMoveUp() { assertEquals(2, newCurrent); } - /** - * Author: Erik Burr - * - */ - @Test - public void testPushUp() { - Elevator elev = new Elevator(1, 5); - int newCurrent = elev.getCurrentFloor(); - elev.pushUp(newCurrent); - assertEquals(1, newCurrent); - } - - /** - * Author: Erik Burr - * - */ - @Test - public void testPushDown() { - Elevator elev = new Elevator(1, 5); - int newCurrent = elev.getCurrentFloor(); - elev.pushDown(newCurrent); - assertEquals(1, newCurrent); - } - + //simple values needed for Timer double numSeconds = 4.5; double pollDelay = 0.25; @@ -209,27 +186,8 @@ public void testElevatorConstructor2() { assertEquals(2, elev.getCurrentFloor()); assertEquals(100, elev.getNumberOfFloors()); - } - /** - *this is a comment - */ - @Test - public void testPushTrue1() - { - Elevator elev = new Elevator(1, 10); - - assertEquals(false, elev.pushTrue()); - } - - @Test - public void testPushTrue2() - { - Elevator elev = new Elevator(1, 10); - elev.pushUp(4); - - assertEquals(true, elev.pushTrue()); - } + } @Test public void testPassengerNext1() @@ -241,22 +199,7 @@ public void testPassengerNext1() assertEquals(true, elev.pushTrue()); } - - public void testGetPushedUpArray() { - Elevator elev = new Elevator(100); - elev.pushUp(3); - elev.pushDown(4); - - boolean[] goingUp = elev.getPushedUpArray(); - boolean[] goingDown = elev.getPushedDownArray(); - - boolean up = goingUp[3]; - boolean down = goingDown[4]; - - assertEquals(true, up); - assertEquals(true, down); - } - + @Test public void testdisplay1() { From 3f8ef700da97cad38694b242ffcb3f0efd11f215 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 31 Jul 2019 11:23:18 -0400 Subject: [PATCH 160/247] removing more tests that need to be changed --- tests/Tests.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/tests/Tests.java b/tests/Tests.java index 29f671b..4282dc1 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -189,7 +189,8 @@ public void testElevatorConstructor2() { } - @Test +/* needs to change + @Test public void testPassengerNext1() { Elevator elev = new Elevator(1, 10); @@ -199,7 +200,7 @@ public void testPassengerNext1() assertEquals(true, elev.pushTrue()); } - +*/ @Test public void testdisplay1() { @@ -239,7 +240,9 @@ public void testHasDestFloor() assertEquals(true, elev.hasDestFloor()); } - + + +/* needs to change @Test public void testDefaultController1() { @@ -251,4 +254,5 @@ public void testDefaultController1() assertEquals(2, elev.getCurrentFloor()); } +*/ } From 95da157dfef796d167558289ed2bda476b33e377 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Wed, 31 Jul 2019 11:34:18 -0400 Subject: [PATCH 161/247] Added passengerManager initialization --- src/ElevSim.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 9683b00..7c8f193 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -12,9 +12,11 @@ public static void main(String[] args) throws InterruptedException { String stringDecision = ""; int maxFloors = 10; Scanner kb = new Scanner(System.in); - + Elevator[] elevators = new Elevator[2]; Elevator elev = elevators[0]; + + PassengerManager passengerManager = new PassengerManager(elevators); System.out.println("Welcome to the Elevator Simulator."); Controller control = new DefaultController(elev); @@ -27,7 +29,7 @@ public static void main(String[] args) throws InterruptedException { System.out.println("Passenger 1 is going to: " + destination); Passenger p1 = passengerManager.newPassenger(); - Passenger p2 = passengerManager.newPassenger(); + Passenger p2 = passengerManager.newPassenger(); while(true) From 2b958ef5eca225f777601b73c0b6a41a9bc7fc15 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Wed, 31 Jul 2019 11:37:23 -0400 Subject: [PATCH 162/247] Changed constructor to take an array --- src/PassengerManager.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/PassengerManager.java b/src/PassengerManager.java index 72a0e77..f2ae60e 100644 --- a/src/PassengerManager.java +++ b/src/PassengerManager.java @@ -6,9 +6,9 @@ public class PassengerManager private Elevator elevator; private ArrayList passengers; - public PassengerManager(Elevator elevator) + public PassengerManager(Elevator[] elevators) { - this.elevator = elevator; + this.elevator = elevator[0]; this.passengers = new ArrayList(); } From c9890e1422452dabfd3b4a609b974e018297602a Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Wed, 31 Jul 2019 11:40:04 -0400 Subject: [PATCH 163/247] Fixed syntax error --- src/PassengerManager.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/PassengerManager.java b/src/PassengerManager.java index f2ae60e..25f9d88 100644 --- a/src/PassengerManager.java +++ b/src/PassengerManager.java @@ -8,7 +8,7 @@ public class PassengerManager public PassengerManager(Elevator[] elevators) { - this.elevator = elevator[0]; + this.elevator = elevators[0]; this.passengers = new ArrayList(); } From b000ad6787ffba336cdc82df30e327778e79fbb9 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Wed, 31 Jul 2019 11:43:01 -0400 Subject: [PATCH 164/247] Removed PassengerManager variable --- src/Elevator.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Elevator.java b/src/Elevator.java index 0e98d22..915e948 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -7,7 +7,6 @@ public class Elevator { private boolean[] pushedDown; private boolean stopped; Elevator elev = new Elevator(10); - PassengerManager passengerManager= new PassengerManager(elev); Controller control = new DefaultController(elev); Passenger pass = new Passenger(elev, 0); Timer time = new Timer(3000); From 6f2f3972b2f0e7c445989eacfc80ef4e9fd7f717 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Wed, 31 Jul 2019 11:45:18 -0400 Subject: [PATCH 165/247] Removed Controller variable --- src/Elevator.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Elevator.java b/src/Elevator.java index 915e948..8d7aa8a 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -7,7 +7,6 @@ public class Elevator { private boolean[] pushedDown; private boolean stopped; Elevator elev = new Elevator(10); - Controller control = new DefaultController(elev); Passenger pass = new Passenger(elev, 0); Timer time = new Timer(3000); /** From 487e9eb25fcd2c0c88d51b67f807b6aa36eae7b1 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Wed, 31 Jul 2019 11:47:12 -0400 Subject: [PATCH 166/247] Made the Control variable take an array --- src/ElevSim.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 7c8f193..b89e99c 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -19,7 +19,7 @@ public static void main(String[] args) throws InterruptedException { PassengerManager passengerManager = new PassengerManager(elevators); System.out.println("Welcome to the Elevator Simulator."); - Controller control = new DefaultController(elev); + Controller control = new DefaultController(elevators); Passenger pass = new Passenger(elev, 0); System.out.println("Welcome to the Elevator Simulator.\n\nElevator is currently on: " + elev.getCurrentFloor()); From 66efa97aa74b2c72b6335f3540aa0fde0455eea1 Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Wed, 31 Jul 2019 11:47:14 -0400 Subject: [PATCH 167/247] took out variables at the beginning of the class that were unneeded --- src/ElevSim.java | 7 ------- 1 file changed, 7 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 193317f..07a48c2 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -4,13 +4,6 @@ public class ElevSim { public static void main(String[] args) throws InterruptedException { - int elevCurrent = 1; - int passDestination = 1; - int passCurrent = 1; - char decision = 'u'; - int floorDecision = 1; - String stringDecision = ""; - int maxFloors = 10; Scanner kb = new Scanner(System.in); Elevator elev = new Elevator(maxFloors); From 16b514d606becdab0ecd91e4ef9d5fb0d65d897f Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Wed, 31 Jul 2019 11:50:18 -0400 Subject: [PATCH 168/247] added maxFloors back in --- src/ElevSim.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 07a48c2..80a2c31 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -5,7 +5,7 @@ public class ElevSim { public static void main(String[] args) throws InterruptedException { Scanner kb = new Scanner(System.in); - + int maxFloors = 10; Elevator elev = new Elevator(maxFloors); PassengerManager passengerManager= new PassengerManager(elev); Controller control = new DefaultController(elev); From d6694cf845a93b52a1341bfaab7a89fed12fe023 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 31 Jul 2019 11:52:11 -0400 Subject: [PATCH 169/247] Update Passenger.java --- src/Passenger.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Passenger.java b/src/Passenger.java index 33e6309..6291f32 100644 --- a/src/Passenger.java +++ b/src/Passenger.java @@ -47,7 +47,7 @@ public void next() { //This will change when Passenger starts using Controller not Elevator //elev.pushDown(this.startFloor); - System.out.println("Passenger on floor " + startFloor + " pushed Down.") + System.out.println("Passenger on floor " + startFloor + " pushed Down."); } this.waiting = true; } From 51d518a8be94f39dfc89dac70771e00add3c7b14 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Wed, 31 Jul 2019 11:54:15 -0400 Subject: [PATCH 170/247] tweaked tests to fit new parameters --- tests/Tests.java | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/tests/Tests.java b/tests/Tests.java index 4fe8b89..7b41890 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -260,8 +260,9 @@ public void testGetPushedUpArray() { @Test public void testdisplay1() { - Elevator elev = new Elevator(1, 10); - PassengerManager passman = new PassengerManager(elev); + Elevator[] elevators = new Elevator[2]; + elevators[0] = new Elevator(1, 10); + PassengerManager passman = new PassengerManager(elevators); Display disp = new Display(passman, elev); disp.goingUp(); disp.goingDown(); @@ -273,9 +274,10 @@ public void testdisplay1() @Test public void testdisplay2() { - Elevator elev = new Elevator(1, 10); - PassengerManager passman = new PassengerManager(elev); - Display disp = new Display(passman, elev); + Elevator[] elevators = new Elevator[2]; + elevators[0] = new Elevator(1, 10); + PassengerManager passman = new PassengerManager(elevators); + Display disp = new Display(passman, elevator[0]); disp.goingUp(); disp.goingUp(); disp.goingUp(); @@ -300,8 +302,9 @@ public void testHasDestFloor() @Test public void testDefaultController1() { - Elevator elev = new Elevator(1, 10); - DefaultController control = new DefaultController(elev); + Elevator[] elevators = new Elevator[2]; + elevators[0] = new Elevator(1, 10); + DefaultController control = new DefaultController(elevators[0]); elev.pushUp(5); control.next(); From d6187a791f0ef867a501fddb267f8fb834f7f8a6 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 31 Jul 2019 11:54:58 -0400 Subject: [PATCH 171/247] typos --- src/Elevator.java | 24 +----------------------- 1 file changed, 1 insertion(+), 23 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index adbbc41..fd7cc66 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -50,29 +50,7 @@ public void moveUp() { currentFloor++; this.stopped = false; } - - /** - * Author: Erik Burr - * Issue #17 pushUp/pushDown - */ - public void pushUp(int currentFloor){ - pushedUp[currentFloor] = true; - } - - public void pushDown(int currentFloor){ - pushedDown[currentFloor] = true; - } - - public boolean pushTrue() - { - for(int loop = 0; loop < pushedUp.length; loop++) - { - if(pushedUp[loop] || pushedDown[loop]) - return true; - } - return false; - } - + public int hasDestFloors() { int count = 0; From e431117b297ba97c9072b8a398bad07cbc6035d0 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 31 Jul 2019 11:59:02 -0400 Subject: [PATCH 172/247] typo --- src/Elevator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Elevator.java b/src/Elevator.java index fd7cc66..cea7fd1 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -80,7 +80,7 @@ public int getNumberOfFloors() { public void stop() { this.stopped = true; - destinationFloors[currentFloor] = false; + destinationFloor[currentFloor] = false; } public boolean getStopped() { From 0dab28325ed1597e996910f0f87ad78be31e0713 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Wed, 31 Jul 2019 11:59:08 -0400 Subject: [PATCH 173/247] Removed duplicate code --- src/ElevSim.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 207a697..4b8a405 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -16,8 +16,6 @@ public static void main(String[] args) throws InterruptedException { System.out.println("Welcome to the Elevator Simulator."); Controller control = new DefaultController(elevators); - PassengerManager passengerManager= new PassengerManager(elevators); - Controller control = new DefaultController(elevators); Passenger pass = new Passenger(elev, 0); System.out.println("Welcome to the Elevator Simulator.\n\nElevator is currently on: " + elev.getCurrentFloor()); From 3804078fec580c0a6ec981487bcb52c8aa119ce9 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Wed, 31 Jul 2019 12:00:27 -0400 Subject: [PATCH 174/247] Fixed syntax error --- src/ElevSim.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 4b8a405..743fbb0 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -8,7 +8,7 @@ public static void main(String[] args) throws InterruptedException { Elevator[] elevators = new Elevator[2]; int maxFloors = 10; - Elevators[0] = new Elevator(maxFloors); + elevators[0] = new Elevator(maxFloors); Elevator elev = elevators[0]; PassengerManager passengerManager = new PassengerManager(elevators); From 1297018866d220f7502b1a25e4c3c2d7f9a0887a Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 31 Jul 2019 12:00:59 -0400 Subject: [PATCH 175/247] Update DefaultController.java --- src/DefaultController.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index b992f86..ffc95c7 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -22,7 +22,7 @@ public void next() boolean pushUpFloors[] = elevator.getPushedUp(); boolean pushDownFloors[] = elevator.getPushedDown(); - boolean pushTrue = elevator.pushTrue(); + int pushTrue = elevator.pushTrue(); int destFloorCount = elevator.hasDestFloors(); if(currentFloor == 1 || currentFloor == maxFloor) @@ -31,11 +31,11 @@ public void next() movingDown = false; } - if(currentFloor == 1 && (destFloorCount == 0 || pushTrue)) + if(currentFloor == 1 && (destFloorCount == 0 || pushTrue == 0)) { movingUp = true; } - else if (currentFloor == maxFloor && (destFloorCount == 0 || pushTrue)) + else if (currentFloor == maxFloor && (destFloorCount == 0 || pushTrue == 0)) { movingDown = true; } From ad69cd9731e355bc0ffc24439d85a7262f55e2e5 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Wed, 31 Jul 2019 12:05:26 -0400 Subject: [PATCH 176/247] Removed duplicate code --- src/Controller.java | 7 ------- 1 file changed, 7 deletions(-) diff --git a/src/Controller.java b/src/Controller.java index e5be5be..1bab989 100644 --- a/src/Controller.java +++ b/src/Controller.java @@ -2,13 +2,6 @@ public abstract class Controller { protected Elevator[] elevators; - protected Controller(Elevator[] elevators) - { - this.elevators = elevators; - protected Elevator elevator; - protected boolean[] pushedUp; - protected boolean[] pushedDown; - /** * Editor: Elijah Smith * initialized size of new pushed fields. From a4dc13191bb6d484a294db3127acfeb9719bc241 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Wed, 31 Jul 2019 12:08:26 -0400 Subject: [PATCH 177/247] Changed constructor to fit with array --- src/Controller.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Controller.java b/src/Controller.java index 1bab989..d31daaa 100644 --- a/src/Controller.java +++ b/src/Controller.java @@ -9,8 +9,8 @@ public abstract class Controller protected Controller(Elevator[] elevators) { this.elevators = elevators; - pushedUp = new boolean[elevator.getNumberOfFloors() + 1]; - pushedDown = new boolean[elevator.getNumberOfFloors() +1]; + pushedUp = new boolean[elevators[0].getNumberOfFloors() + 1]; + pushedDown = new boolean[elevators[0].getNumberOfFloors() +1]; } public abstract void next(); From dc38c7af817668ed5495ccdc244c11b1546d3a80 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 31 Jul 2019 12:09:01 -0400 Subject: [PATCH 178/247] Update Elevator.java --- src/Elevator.java | 68 ++++------------------------------------------- 1 file changed, 5 insertions(+), 63 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 0e98d22..cea7fd1 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -3,11 +3,8 @@ public class Elevator { private int currentFloor; private boolean[] destinationFloor; private int numberOfFloors; - private boolean[] pushedUp; - private boolean[] pushedDown; private boolean stopped; Elevator elev = new Elevator(10); - PassengerManager passengerManager= new PassengerManager(elev); Controller control = new DefaultController(elev); Passenger pass = new Passenger(elev, 0); Timer time = new Timer(3000); @@ -18,21 +15,18 @@ public class Elevator { public Elevator(int numberOfFloors) { this.currentFloor = 1; this.numberOfFloors = numberOfFloors; - destinationFloor = new boolean[numberOfFloors+1]; - pushedUp = new boolean[numberOfFloors+1]; - pushedDown = new boolean[numberOfFloors+1]; + this.destinationFloor = new boolean[numberOfFloors+1]; this.stopped = true; } + /** * Author: Elijah Smith * Issue #18 Constructor */ public Elevator(int currentFloor, int numberOfFloors) { this.currentFloor = currentFloor; - this.destinationFloor = destinationFloor; - destinationFloor = new boolean[numberOfFloors+1]; - pushedUp = new boolean[numberOfFloors + 1]; - pushedDown = new boolean[numberOfFloors + 1]; + this.numberOfFloors = numberOfFloors; + this.destinationFloor = new boolean[numberOfFloors+1]; this.stopped = true; } @@ -56,29 +50,7 @@ public void moveUp() { currentFloor++; this.stopped = false; } - - /** - * Author: Erik Burr - * Issue #17 pushUp/pushDown - */ - public void pushUp(int currentFloor){ - pushedUp[currentFloor] = true; - } - - public void pushDown(int currentFloor){ - pushedDown[currentFloor] = true; - } - - public boolean pushTrue() - { - for(int loop = 0; loop < pushedUp.length; loop++) - { - if(pushedUp[loop] || pushedDown[loop]) - return true; - } - return false; - } - + public int hasDestFloors() { int count = 0; @@ -89,20 +61,7 @@ public int hasDestFloors() } return count; } - - - /** - * Author: Elijah Smith - * Issue #22 getter method - */ - public boolean[] getPushedUp() { - return this.pushedUp; - } - public boolean[] getPushedDown() { - return this.pushedDown; - } - public int getCurrentFloor() { return this.currentFloor; } @@ -119,26 +78,9 @@ public int getNumberOfFloors() { return this.numberOfFloors; } - /** - * Author: Elijah Smith - * Issue #67 pushedUp accessor - */ - public boolean[] getPushedUpArray() { - return this.pushedUp; - } - - /** - * Author: Elijah Smith - * Issue #67 pushedDown accessor - */ - public boolean[] getPushedDownArray() { - return this.pushedDown; - } public void stop() { this.stopped = true; destinationFloor[currentFloor] = false; - pushedUp[currentFloor] = false; - pushedDown[currentFloor] = false; } public boolean getStopped() { From 84d87f770476117f8bdd2038008b1d54dd1185c5 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Wed, 31 Jul 2019 12:10:43 -0400 Subject: [PATCH 179/247] Added missing variables --- src/Controller.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Controller.java b/src/Controller.java index d31daaa..b01738e 100644 --- a/src/Controller.java +++ b/src/Controller.java @@ -1,7 +1,9 @@ public abstract class Controller { protected Elevator[] elevators; - + protected boolean[] pushedUp; + protected boolean[] pushedDown; + /** * Editor: Elijah Smith * initialized size of new pushed fields. From 77a2357e194d69840adca0db767b7a42318b48dd Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 31 Jul 2019 12:11:11 -0400 Subject: [PATCH 180/247] Update Elevator.java --- src/Elevator.java | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/src/Elevator.java b/src/Elevator.java index cea7fd1..c602ca2 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -51,6 +51,31 @@ public void moveUp() { this.stopped = false; } + /** + * Author: Erik Burr + * Issue #17 pushUp/pushDown + */ + public void pushUp(int currentFloor){ + pushedUp[currentFloor] = true; + } + + public void pushDown(int currentFloor){ + pushedDown[currentFloor] = true; + } + + + + public int pushTrue() + { + int counter = 0; + for(int loop = 0; loop < pushedUp.length; loop++) + { + if(pushedUp[loop] || pushedDown[loop]) + counter++; + } + return counter; + } + public int hasDestFloors() { int count = 0; From ad67efb1157f481c9a0b1d922c70312b6d721780 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 31 Jul 2019 12:12:07 -0400 Subject: [PATCH 181/247] Update Elevator.java --- src/Elevator.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/Elevator.java b/src/Elevator.java index c602ca2..3534b74 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -28,6 +28,8 @@ public Elevator(int currentFloor, int numberOfFloors) { this.numberOfFloors = numberOfFloors; this.destinationFloor = new boolean[numberOfFloors+1]; this.stopped = true; + pushedUp = new boolean[numberOfFloors + 1]; + pushedDown = new boolean[numberOfFloors + 1]; } /** From 13192e56d285f7b3f9e02dd3ccc2abeec8aa2467 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Wed, 31 Jul 2019 12:12:46 -0400 Subject: [PATCH 182/247] Removed unneeded call to Controller --- src/Elevator.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Elevator.java b/src/Elevator.java index cea7fd1..79d8c5f 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -5,7 +5,6 @@ public class Elevator { private int numberOfFloors; private boolean stopped; Elevator elev = new Elevator(10); - Controller control = new DefaultController(elev); Passenger pass = new Passenger(elev, 0); Timer time = new Timer(3000); /** From 3eb4f0427a6b004ef4064a93eee6fa9e3dcdacf9 Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Wed, 31 Jul 2019 12:14:51 -0400 Subject: [PATCH 183/247] Tweaked tests to fit array structure --- tests/Tests.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/Tests.java b/tests/Tests.java index f2b8cec..88afa56 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -207,7 +207,7 @@ public void testdisplay1() Elevator[] elevators = new Elevator[2]; elevators[0] = new Elevator(1, 10); PassengerManager passman = new PassengerManager(elevators); - Display disp = new Display(passman, elev); + Display disp = new Display(passman, elevators[0]); disp.goingUp(); disp.goingDown(); @@ -221,7 +221,7 @@ public void testdisplay2() Elevator[] elevators = new Elevator[2]; elevators[0] = new Elevator(1, 10); PassengerManager passman = new PassengerManager(elevators); - Display disp = new Display(passman, elevator[0]); + Display disp = new Display(passman, elevators[0]); disp.goingUp(); disp.goingUp(); disp.goingUp(); From 1b4feadc958506444dd3d19b7f06ab6ead987459 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 31 Jul 2019 12:22:16 -0400 Subject: [PATCH 184/247] Update Controller.java --- src/Controller.java | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/src/Controller.java b/src/Controller.java index abdbd87..dc1a513 100644 --- a/src/Controller.java +++ b/src/Controller.java @@ -1,11 +1,50 @@ public abstract class Controller { protected Elevator elevator; + protected boolean[] pushedUp; + protected boolean[] pushedDown; + /** + * Editor: Elijah Smith + * initialized size of new pushed fields. + */ protected Controller(Elevator elevator) { this.elevator = elevator; + pushedUp = new boolean[elevator.getNumberOfFloors() + 1]; + pushedDown = new boolean[elevator.getNumberOfFloors() +1]; } public abstract void next(); + + /** + * Editor: Elijah Smith + * Issue #108 moving this method from Elevator + */ + public void pushUp(int currentFloor) { + pushedUp[currentFloor] = true; + } + + /** + * Editor: Elijah Smith + * Issue #108 moving this method from Elevator + */ + public void pushDown(int currentFloor) { + pushedDown[currentFloor] = true; + } + + /** + * Editor: Elijah Smith + * Issue #108 moving this method from Elevator + */ + public int pushTrue() + { + int counter = 0; + for(int loop = 0; loop < pushedUp.length; loop++) + { + if(pushedUp[loop] || pushedDown[loop]) + counter++; + } + return counter; + } } From 079015484d3e9c43f6ba479640a23a10bc651a7f Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 31 Jul 2019 12:22:53 -0400 Subject: [PATCH 185/247] Update DefaultController.java --- src/DefaultController.java | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index ffc95c7..c8bff76 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -19,10 +19,11 @@ public void next() int currentFloor = elevator.getCurrentFloor(); boolean[] destFloors = elevator.getDestinationFloor(); - boolean pushUpFloors[] = elevator.getPushedUp(); - boolean pushDownFloors[] = elevator.getPushedDown(); - int pushTrue = elevator.pushTrue(); + // boolean pushUpFloors[] = elevator.getPushedUp(); + // boolean pushDownFloors[] = elevator.getPushedDown(); + // boolean pushTrue = elevator.pushTrue(); + int destFloorCount = elevator.hasDestFloors(); if(currentFloor == 1 || currentFloor == maxFloor) @@ -31,16 +32,17 @@ public void next() movingDown = false; } - if(currentFloor == 1 && (destFloorCount == 0 || pushTrue == 0)) + + if(currentFloor == 1 && (destFloorCount == 0 /*|| pushTrue*/)) { movingUp = true; } - else if (currentFloor == maxFloor && (destFloorCount == 0 || pushTrue == 0)) + else if (currentFloor == maxFloor && (destFloorCount == 0 /*|| pushTrue*/)) { movingDown = true; } - if(destFloors[currentFloor] || (movingUp && pushUpFloors[currentFloor]) || (movingDown && pushDownFloors[currentFloor])) + if(destFloors[currentFloor] || (movingUp /*&& pushUpFloors[currentFloor]*/) || (movingDown /*&& pushDownFloors[currentFloor]*/)) { elevator.stop(); } @@ -52,6 +54,5 @@ else if(movingDown) { elevator.moveDown(); } - } } From 769428852d2b7eafcfdc4a5542c8482e54cf641a Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 31 Jul 2019 12:23:12 -0400 Subject: [PATCH 186/247] Moved implemented methods Controller -> DefaultController since Controller is abstract we will implement the methods themselves within DefaultController --- src/DefaultController.java | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/src/DefaultController.java b/src/DefaultController.java index c8bff76..1eca9b0 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -55,4 +55,32 @@ else if(movingDown) elevator.moveDown(); } } + + /** + * Editor: Elijah Smith + * Issue #108 moving this method from Elevator + */ + public void pushUp(int currentFloor) { + pushedUp[currentFloor] = true; + } + + /** + * Editor: Elijah Smith + * Issue #108 moving this method from Elevator + */ + public void pushDown(int currentFloor) { + pushedDown[currentFloor] = true; + } + + /** + * Editor: Elijah Smith + * Issue #108 moving this method from Elevator + */ + public boolean pushTrue() { + for(int loop = 0; loop < pushedUp.length; loop++) { + if(pushedUp[loop] || pushedDown[loop]) + return true; + } + return false; + } } From 27fd82288d2d29c038601c04dcf531a2d544a158 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 31 Jul 2019 12:23:48 -0400 Subject: [PATCH 187/247] Update Elevator.java --- src/Elevator.java | 27 --------------------------- 1 file changed, 27 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 3534b74..cea7fd1 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -28,8 +28,6 @@ public Elevator(int currentFloor, int numberOfFloors) { this.numberOfFloors = numberOfFloors; this.destinationFloor = new boolean[numberOfFloors+1]; this.stopped = true; - pushedUp = new boolean[numberOfFloors + 1]; - pushedDown = new boolean[numberOfFloors + 1]; } /** @@ -53,31 +51,6 @@ public void moveUp() { this.stopped = false; } - /** - * Author: Erik Burr - * Issue #17 pushUp/pushDown - */ - public void pushUp(int currentFloor){ - pushedUp[currentFloor] = true; - } - - public void pushDown(int currentFloor){ - pushedDown[currentFloor] = true; - } - - - - public int pushTrue() - { - int counter = 0; - for(int loop = 0; loop < pushedUp.length; loop++) - { - if(pushedUp[loop] || pushedDown[loop]) - counter++; - } - return counter; - } - public int hasDestFloors() { int count = 0; From 394e1d58dc525de5a56ef5032423c00bab8cb3db Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 31 Jul 2019 12:24:55 -0400 Subject: [PATCH 188/247] removed implemented methods and put them in DefaultController --- src/Controller.java | 33 ++++----------------------------- 1 file changed, 4 insertions(+), 29 deletions(-) diff --git a/src/Controller.java b/src/Controller.java index d34a39f..ee6a137 100644 --- a/src/Controller.java +++ b/src/Controller.java @@ -12,36 +12,11 @@ protected Controller(Elevator elevator) { this.elevator = elevator; pushedUp = new boolean[elevator.getNumberOfFloors() + 1]; - pushedDown = new boolean[elevator.getNumberOfFloors() +1]; + pushedDown = new boolean[elevator.getNumberOfFloors() + 1]; } public abstract void next(); - - /** - * Editor: Elijah Smith - * Issue #108 moving this method from Elevator - */ - public void pushUp(int currentFloor) { - pushedUp[currentFloor] = true; - } - - /** - * Editor: Elijah Smith - * Issue #108 moving this method from Elevator - */ - public void pushDown(int currentFloor) { - pushedDown[currentFloor] = true; - } - - /** - * Editor: Elijah Smith - * Issue #108 moving this method from Elevator - */ - public boolean pushTrue() { - for(int loop = 0; loop < pushedUp.length; loop++) { - if(pushedUp[loop] || pushedDown[loop]) - return true; - } - return false; - } + public abstract void pushUp(int currentFloor); + public abstract void pushDown(int currentFloor); + public abstract boolean pushTrue(); } From 923aa2d5a242b3d7a1d3deb247ba72c95060f2ba Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 31 Jul 2019 12:25:33 -0400 Subject: [PATCH 189/247] Update Controller.java --- src/Controller.java | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) diff --git a/src/Controller.java b/src/Controller.java index dc1a513..cebacf7 100644 --- a/src/Controller.java +++ b/src/Controller.java @@ -33,18 +33,5 @@ public void pushDown(int currentFloor) { pushedDown[currentFloor] = true; } - /** - * Editor: Elijah Smith - * Issue #108 moving this method from Elevator - */ - public int pushTrue() - { - int counter = 0; - for(int loop = 0; loop < pushedUp.length; loop++) - { - if(pushedUp[loop] || pushedDown[loop]) - counter++; - } - return counter; - } +public abstract int pushTrue(); } From b50602b848ca0a4349c6096ce903ad12f599a9f7 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Wed, 31 Jul 2019 12:25:55 -0400 Subject: [PATCH 190/247] Update DefaultController.java --- src/DefaultController.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/DefaultController.java b/src/DefaultController.java index c8bff76..151d9b2 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -26,6 +26,19 @@ public void next() int destFloorCount = elevator.hasDestFloors(); + + public int pushTrue() + { + int counter = 0; + for(int loop = 0; loop < pushedUp.length; loop++) + { + if(pushedUp[loop] || pushedDown[loop]) + counter++; + } + return counter; + } + + if(currentFloor == 1 || currentFloor == maxFloor) { movingUp = false; From 92c158bd0aea98872d0e9989160da4f7e67b7c16 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Wed, 31 Jul 2019 15:21:59 -0400 Subject: [PATCH 191/247] Update Controller.java --- src/Controller.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Controller.java b/src/Controller.java index c104ed4..1f7c1e8 100644 --- a/src/Controller.java +++ b/src/Controller.java @@ -11,8 +11,8 @@ public abstract class Controller protected Controller(Elevator[] elevators) { this.elevators = elevators; - pushedUp = new boolean[elevator.getNumberOfFloors() + 1]; - pushedDown = new boolean[elevator.getNumberOfFloors() + 1]; + pushedUp = new boolean[elevators[1].getNumberOfFloors() + 1]; + pushedDown = new boolean[elevators[1].getNumberOfFloors() + 1]; } public abstract void next(); From 612c04101bd6fa6a16f90246820766c47429bce4 Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Wed, 31 Jul 2019 23:39:39 -0400 Subject: [PATCH 192/247] changed PassengerManager to take in controller object --- src/PassengerManager.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/PassengerManager.java b/src/PassengerManager.java index 25f9d88..868679a 100644 --- a/src/PassengerManager.java +++ b/src/PassengerManager.java @@ -5,10 +5,11 @@ public class PassengerManager { private Elevator elevator; private ArrayList passengers; + private Controller control; - public PassengerManager(Elevator[] elevators) + public PassengerManager(Controller control) { - this.elevator = elevators[0]; + this.control = new control; this.passengers = new ArrayList(); } From e11280ffedf531b4a0485c08db9eaf2c2e4ab514 Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Wed, 31 Jul 2019 23:46:40 -0400 Subject: [PATCH 193/247] changing the changes --- src/PassengerManager.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/PassengerManager.java b/src/PassengerManager.java index 868679a..25f9d88 100644 --- a/src/PassengerManager.java +++ b/src/PassengerManager.java @@ -5,11 +5,10 @@ public class PassengerManager { private Elevator elevator; private ArrayList passengers; - private Controller control; - public PassengerManager(Controller control) + public PassengerManager(Elevator[] elevators) { - this.control = new control; + this.elevator = elevators[0]; this.passengers = new ArrayList(); } From 4d73759e6c0c43b20cfd06aa7aa9f7c53bdd7e67 Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Wed, 31 Jul 2019 23:50:08 -0400 Subject: [PATCH 194/247] PassengerManager now takes controller object instead of elevator --- src/PassengerManager.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/PassengerManager.java b/src/PassengerManager.java index 25f9d88..868679a 100644 --- a/src/PassengerManager.java +++ b/src/PassengerManager.java @@ -5,10 +5,11 @@ public class PassengerManager { private Elevator elevator; private ArrayList passengers; + private Controller control; - public PassengerManager(Elevator[] elevators) + public PassengerManager(Controller control) { - this.elevator = elevators[0]; + this.control = new control; this.passengers = new ArrayList(); } From 020df50be00c2778a5c5a07295be0d0be434f46b Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Wed, 31 Jul 2019 23:55:33 -0400 Subject: [PATCH 195/247] fixed typo --- src/PassengerManager.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/PassengerManager.java b/src/PassengerManager.java index 868679a..94d56d1 100644 --- a/src/PassengerManager.java +++ b/src/PassengerManager.java @@ -9,7 +9,7 @@ public class PassengerManager public PassengerManager(Controller control) { - this.control = new control; + this.control = new Controller(); this.passengers = new ArrayList(); } From 04a153061c8c1677cdd55c0b6707a1f3be86153e Mon Sep 17 00:00:00 2001 From: Will Date: Thu, 1 Aug 2019 10:26:51 -0400 Subject: [PATCH 196/247] Removed random elevator. --- src/Elevator.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/Elevator.java b/src/Elevator.java index 79d8c5f..8aa4251 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -4,9 +4,7 @@ public class Elevator { private boolean[] destinationFloor; private int numberOfFloors; private boolean stopped; - Elevator elev = new Elevator(10); - Passenger pass = new Passenger(elev, 0); - Timer time = new Timer(3000); + private Timer time = new Timer(3000); /** * Author: Elijah Smith * Issue #61 new Constructor From a3bcc2a422b0d3f371ed6ccf5fea344302254d4d Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Thu, 1 Aug 2019 10:34:46 -0400 Subject: [PATCH 197/247] Update DefaultController.java --- src/DefaultController.java | 52 +++++++++++++++++++++++++++----------- 1 file changed, 37 insertions(+), 15 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index 151d9b2..28f25c8 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -1,13 +1,17 @@ + import java.util.ArrayList; public class DefaultController extends Controller { private boolean movingUp; private boolean movingDown; + private Elevator elevator; - public DefaultController(Elevator elevator) + public DefaultController(Elevator[] elevators) { - super(elevator); + super(elevators); + + elevator = elevators[0]; this.movingUp = false; this.movingDown = false; @@ -26,19 +30,6 @@ public void next() int destFloorCount = elevator.hasDestFloors(); - - public int pushTrue() - { - int counter = 0; - for(int loop = 0; loop < pushedUp.length; loop++) - { - if(pushedUp[loop] || pushedDown[loop]) - counter++; - } - return counter; - } - - if(currentFloor == 1 || currentFloor == maxFloor) { movingUp = false; @@ -68,4 +59,35 @@ else if(movingDown) elevator.moveDown(); } } + + /** + * Editor: Elijah Smith + * Issue #108 moving this method from Elevator + */ + public void pushUp(int currentFloor) { + pushedUp[currentFloor] = true; + } + + /** + * Editor: Elijah Smith + * Issue #108 moving this method from Elevator + */ + public void pushDown(int currentFloor) { + pushedDown[currentFloor] = true; + } + + /** + * Editor: Elijah Smith + * Issue #108 moving this method from Elevator + */ + public int pushTrue() + { + int counter = 0; + for(int loop = 0; loop < pushedUp.length; loop++) + { + if(pushedUp[loop] || pushedDown[loop]) + counter++; + } + return counter; + } } From 9c1750405d88aa474a45b0b3342f3a7cf7ebc8ca Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Thu, 1 Aug 2019 10:35:23 -0400 Subject: [PATCH 198/247] Update Controller.java --- src/Controller.java | 34 ++++++++++------------------------ 1 file changed, 10 insertions(+), 24 deletions(-) diff --git a/src/Controller.java b/src/Controller.java index cebacf7..68d7df5 100644 --- a/src/Controller.java +++ b/src/Controller.java @@ -1,37 +1,23 @@ public abstract class Controller { - protected Elevator elevator; + protected Elevator[] elevators; protected boolean[] pushedUp; protected boolean[] pushedDown; - + /** * Editor: Elijah Smith * initialized size of new pushed fields. */ - protected Controller(Elevator elevator) + protected Controller(Elevator[] elevators) { - this.elevator = elevator; - pushedUp = new boolean[elevator.getNumberOfFloors() + 1]; - pushedDown = new boolean[elevator.getNumberOfFloors() +1]; + this.elevators = elevators; + pushedUp = new boolean[elevators[1].getNumberOfFloors() + 1]; + pushedDown = new boolean[elevators[1].getNumberOfFloors() + 1]; } + public abstract void next(); - - /** - * Editor: Elijah Smith - * Issue #108 moving this method from Elevator - */ - public void pushUp(int currentFloor) { - pushedUp[currentFloor] = true; - } - - /** - * Editor: Elijah Smith - * Issue #108 moving this method from Elevator - */ - public void pushDown(int currentFloor) { - pushedDown[currentFloor] = true; - } - -public abstract int pushTrue(); + public abstract void pushUp(int currentFloor); + public abstract void pushDown(int currentFloor); + public abstract int pushTrue(); } From 8231224f5185cadfd418750d4ce71d2628fbec13 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Thu, 1 Aug 2019 10:35:59 -0400 Subject: [PATCH 199/247] Update Elevator.java --- src/Elevator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Elevator.java b/src/Elevator.java index cea7fd1..dc35b45 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -5,7 +5,6 @@ public class Elevator { private int numberOfFloors; private boolean stopped; Elevator elev = new Elevator(10); - Controller control = new DefaultController(elev); Passenger pass = new Passenger(elev, 0); Timer time = new Timer(3000); /** @@ -61,6 +60,7 @@ public int hasDestFloors() } return count; } + public int getCurrentFloor() { return this.currentFloor; From 0101401f2210c1f0fdeefab3f2d2a163a07aee5e Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Thu, 1 Aug 2019 10:37:37 -0400 Subject: [PATCH 200/247] now takes in dafaultController object --- src/PassengerManager.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/PassengerManager.java b/src/PassengerManager.java index 94d56d1..6ea76b7 100644 --- a/src/PassengerManager.java +++ b/src/PassengerManager.java @@ -5,11 +5,11 @@ public class PassengerManager { private Elevator elevator; private ArrayList passengers; - private Controller control; + private DefaultController control; - public PassengerManager(Controller control) + public PassengerManager(DefaultController control) { - this.control = new Controller(); + this.control = new DefaultController(); this.passengers = new ArrayList(); } From cfc0b8cc8357aa53873c4cb18fd7ca9b4b7dc63a Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Thu, 1 Aug 2019 10:39:44 -0400 Subject: [PATCH 201/247] Update DefaultController.java --- src/DefaultController.java | 28 ---------------------------- 1 file changed, 28 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index 76e5236..c25faaa 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -35,7 +35,6 @@ public void next() movingDown = false; } - if(currentFloor == 1 && (destFloorCount == 0 /*|| pushTrue*/)) { movingUp = true; @@ -59,31 +58,4 @@ else if(movingDown) } } - /** - * Editor: Elijah Smith - * Issue #108 moving this method from Elevator - */ - public void pushUp(int currentFloor) { - pushedUp[currentFloor] = true; - } - - /** - * Editor: Elijah Smith - * Issue #108 moving this method from Elevator - */ - public void pushDown(int currentFloor) { - pushedDown[currentFloor] = true; - } - - /** - * Editor: Elijah Smith - * Issue #108 moving this method from Elevator - */ - public boolean pushTrue() { - for(int loop = 0; loop < pushedUp.length; loop++) { - if(pushedUp[loop] || pushedDown[loop]) - return true; - } - return false; - } } From d6d2f00e5eae60aa1c798099f5838fdf6d2bfc8e Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Thu, 1 Aug 2019 10:40:54 -0400 Subject: [PATCH 202/247] Changed back to old implementation within Controller --- src/Controller.java | 30 +++++++++++++++++++++++++++--- 1 file changed, 27 insertions(+), 3 deletions(-) diff --git a/src/Controller.java b/src/Controller.java index 1f7c1e8..88ea4c7 100644 --- a/src/Controller.java +++ b/src/Controller.java @@ -16,7 +16,31 @@ protected Controller(Elevator[] elevators) } public abstract void next(); - public abstract void pushUp(int currentFloor); - public abstract void pushDown(int currentFloor); - public abstract boolean pushTrue(); + /** + * Editor: Elijah Smith + * Issue #108 moving this method from Elevator + */ + public void pushUp(int currentFloor) { + pushedUp[currentFloor] = true; + } + + /** + * Editor: Elijah Smith + * Issue #108 moving this method from Elevator + */ + public void pushDown(int currentFloor) { + pushedDown[currentFloor] = true; + } + + /** + * Editor: Elijah Smith + * Issue #108 moving this method from Elevator + */ + public boolean pushTrue() { + for(int loop = 0; loop < pushedUp.length; loop++) { + if(pushedUp[loop] || pushedDown[loop]) + return true; + } + return false; + } } From 5a64d7ed9082cb8aec4694842a6ee69e3002d79a Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Thu, 1 Aug 2019 10:41:20 -0400 Subject: [PATCH 203/247] I'm an expert on abstract types --- src/PassengerManager.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/PassengerManager.java b/src/PassengerManager.java index 6ea76b7..e87eb89 100644 --- a/src/PassengerManager.java +++ b/src/PassengerManager.java @@ -5,9 +5,9 @@ public class PassengerManager { private Elevator elevator; private ArrayList passengers; - private DefaultController control; + private Controller control; - public PassengerManager(DefaultController control) + public PassengerManager(Controller control) { this.control = new DefaultController(); this.passengers = new ArrayList(); From 6d838e8e34d95054099e547547e48f1c0eb8aea7 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Thu, 1 Aug 2019 10:44:25 -0400 Subject: [PATCH 204/247] Moving pushTrue back to Controller --- src/DefaultController.java | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index 28f25c8..bd0ee56 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -80,14 +80,6 @@ public void pushDown(int currentFloor) { * Editor: Elijah Smith * Issue #108 moving this method from Elevator */ - public int pushTrue() - { - int counter = 0; - for(int loop = 0; loop < pushedUp.length; loop++) - { - if(pushedUp[loop] || pushedDown[loop]) - counter++; - } - return counter; + } } From 0ccf43a38447172fb62beccdcdb19353d3ab77d5 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Thu, 1 Aug 2019 10:45:11 -0400 Subject: [PATCH 205/247] Update Controller.java --- src/Controller.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/Controller.java b/src/Controller.java index 68d7df5..0571d8c 100644 --- a/src/Controller.java +++ b/src/Controller.java @@ -19,5 +19,14 @@ protected Controller(Elevator[] elevators) public abstract void next(); public abstract void pushUp(int currentFloor); public abstract void pushDown(int currentFloor); - public abstract int pushTrue(); + public int pushTrue() + { + int counter = 0; + for(int loop = 0; loop < pushedUp.length; loop++) + { + if(pushedUp[loop] || pushedDown[loop]) + counter++; + } + return counter; + } } From f3a3e56f329d138762e6b51af586f75c6b4bd15a Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Thu, 1 Aug 2019 10:48:44 -0400 Subject: [PATCH 206/247] Update DefaultController.java --- src/DefaultController.java | 7 ------- 1 file changed, 7 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index bd0ee56..cfa8e4c 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -75,11 +75,4 @@ public void pushUp(int currentFloor) { public void pushDown(int currentFloor) { pushedDown[currentFloor] = true; } - - /** - * Editor: Elijah Smith - * Issue #108 moving this method from Elevator - */ - - } } From 38796c18e12319714e43caf6c01db6034a0611fd Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Thu, 1 Aug 2019 10:52:55 -0400 Subject: [PATCH 207/247] now only takes control --- src/PassengerManager.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/PassengerManager.java b/src/PassengerManager.java index e87eb89..49b583f 100644 --- a/src/PassengerManager.java +++ b/src/PassengerManager.java @@ -9,7 +9,7 @@ public class PassengerManager public PassengerManager(Controller control) { - this.control = new DefaultController(); + this.control = control; this.passengers = new ArrayList(); } From 63510a91b03a6788b10497982b2a0c7a0f30cd01 Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Thu, 1 Aug 2019 11:02:37 -0400 Subject: [PATCH 208/247] moved PassengerManager initialization below controller object --- src/ElevSim.java | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 743fbb0..8754600 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -4,18 +4,16 @@ public class ElevSim { public static void main(String[] args) throws InterruptedException { - Scanner kb = new Scanner(System.in); - + Scanner kb = new Scanner(System.in); Elevator[] elevators = new Elevator[2]; int maxFloors = 10; elevators[0] = new Elevator(maxFloors); Elevator elev = elevators[0]; - PassengerManager passengerManager = new PassengerManager(elevators); System.out.println("Welcome to the Elevator Simulator."); Controller control = new DefaultController(elevators); - + PassengerManager passengerManager = new PassengerManager(control); Passenger pass = new Passenger(elev, 0); System.out.println("Welcome to the Elevator Simulator.\n\nElevator is currently on: " + elev.getCurrentFloor()); From a18a00ab44469ef3be97cfd0b91429767e0d4377 Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Thu, 1 Aug 2019 11:07:58 -0400 Subject: [PATCH 209/247] updated PM to take controller object --- tests/Tests.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/tests/Tests.java b/tests/Tests.java index 88afa56..4dec3b0 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -206,7 +206,8 @@ public void testdisplay1() { Elevator[] elevators = new Elevator[2]; elevators[0] = new Elevator(1, 10); - PassengerManager passman = new PassengerManager(elevators); + Controller control = new DefaultController(); + PassengerManager passman = new PassengerManager(control); Display disp = new Display(passman, elevators[0]); disp.goingUp(); disp.goingDown(); @@ -220,7 +221,8 @@ public void testdisplay2() { Elevator[] elevators = new Elevator[2]; elevators[0] = new Elevator(1, 10); - PassengerManager passman = new PassengerManager(elevators); + Controller control = new DefaultController(); + PassengerManager passman = new PassengerManager(control); Display disp = new Display(passman, elevators[0]); disp.goingUp(); disp.goingUp(); From 82869be41c6c6f9cc3a357ef2675c1e0f695d95c Mon Sep 17 00:00:00 2001 From: frankelms <43014076+frankelms@users.noreply.github.com> Date: Thu, 1 Aug 2019 11:09:58 -0400 Subject: [PATCH 210/247] Added accessor for the array of Elevators --- src/Controller.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/Controller.java b/src/Controller.java index b45744a..3686a7b 100644 --- a/src/Controller.java +++ b/src/Controller.java @@ -43,4 +43,9 @@ public void pushUp(int currentFloor) { public void pushDown(int currentFloor) { pushedDown[currentFloor] = true; } + + public Elevator[] getElevators() + { + return elevators; + } } From afae645c2539fafdd7d30f17b9f14cc011fc759e Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Thu, 1 Aug 2019 11:10:35 -0400 Subject: [PATCH 211/247] fixed a simple error in the declaration of the controller object --- tests/Tests.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/Tests.java b/tests/Tests.java index 4dec3b0..f647cf3 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -206,7 +206,7 @@ public void testdisplay1() { Elevator[] elevators = new Elevator[2]; elevators[0] = new Elevator(1, 10); - Controller control = new DefaultController(); + Controller control = new Controller(); PassengerManager passman = new PassengerManager(control); Display disp = new Display(passman, elevators[0]); disp.goingUp(); @@ -221,7 +221,7 @@ public void testdisplay2() { Elevator[] elevators = new Elevator[2]; elevators[0] = new Elevator(1, 10); - Controller control = new DefaultController(); + Controller control = new Controller(); PassengerManager passman = new PassengerManager(control); Display disp = new Display(passman, elevators[0]); disp.goingUp(); From efaca8093c360e2105705f51754c1f3c081d9081 Mon Sep 17 00:00:00 2001 From: Will Date: Thu, 1 Aug 2019 11:13:00 -0400 Subject: [PATCH 212/247] Rewrote the display class to be more coherent. --- src/Controller.java | 5 +++ src/Display.java | 105 +++++++++++++++++++++++++++++--------------- 2 files changed, 74 insertions(+), 36 deletions(-) diff --git a/src/Controller.java b/src/Controller.java index 1f7c1e8..663f9c8 100644 --- a/src/Controller.java +++ b/src/Controller.java @@ -19,4 +19,9 @@ protected Controller(Elevator[] elevators) public abstract void pushUp(int currentFloor); public abstract void pushDown(int currentFloor); public abstract boolean pushTrue(); + + public Elevator[] getElevators() + { + return elevators; + } } diff --git a/src/Display.java b/src/Display.java index eb1eeef..04f52ed 100644 --- a/src/Display.java +++ b/src/Display.java @@ -1,56 +1,89 @@ -/* -* -* Author: Matthew Frankel -* Issue 56 -* */ +import java.util.ArrayList; public class Display { - static Elevator el = new Elevator(100); - PassengerManager pm; - Timer time = new Timer(3000); - Timer time2 = new Timer(2000); - public static int current = el.getCurrentFloor(); + private PassengerManager passengerManager; + private Controller control; - public Display(PassengerManager pm, Elevator el) + public Display(PassengerManager passengerManager, Controller control) { - this.pm = pm; - this.el = el; + this.passengerManager = passengerManager; + this.control = control; + + start(); } public void display() - { - start(); - goingUp(); - goingDown(); + { + System.out.println("============================================================="); + + ArrayList passengers = passengerManager.getPassengers(); + for(int loop = 0; loop < elevators.size(); loop++) + { + Passenger passenger = passengers.get(loop); + printPassenger(loop, passenger); + } + + System.out.println("============================================================="); + + Elevator[] elevators = control.getElevators(); + for(int loop = 0; loop < elevators.length; loop++) + { + printElevator(loop, elevators[loop]); + System.out.println("============================================================="); + } + + System.out.println("=============================================================\n\n"); } public void start() { System.out.println("Welcome to our Elevator Simulation:\n (Enter Ctrl+C to exit simulation) \n\n\n"); - time2.run(); - System.out.println("The doors are opening...\n"); - time2.run(); } - - public void goingUp() + + public void printPassenger(int number, Passenger passenger) { - System.out.println("\nGoing up to floor " + (current + 1) + "\n"); - time.run(); - System.out.print("\007"); - current++; - } - - public void goingDown() - { - System.out.println("\nGoing down to floor " + (current - 1) + "\n"); - time.run(); - System.out.print("\007"); - current--; + if(passenger.getWaiting() + { + System.out.print("Passenger " + loop + " is on Floor " + passenger.getStartFloor()); + + if(passenger.getStartFloor() > passenger.getDestinationFloor()) + { + System.out.println(" waiting to go down."); + } + else + { + System.out.println(" waiting to go up."); + } + } } - public void displayCurrentFloor() + public void printElevator(int number, Elevator elevator) { - System.out.println("Elevator is currently on floor " + current); + if(elevator.getStopped()) + { + System.out.println("Elevator " + number + " has stopped on Floor " + elevator.getCurrentFloor()); + System.out.println("Elevator doors have opened."); + + ArrayList passengers = passengerManager.getPassengers(); + for(int loop = 0; loop < passengerManager.size(); loop++) + { + Passenger passenger = passengers.get(loop); + + if(elevator.getCurrentFloor() == passenger.getStartFloor() && passenger.getRiding()) + { + System.out.println("Passenger " + loop + " has boarded the elevator."); + } + else if(elevator.getCurrentFloor() == passenger.getDestinationFloor() && passenger.getDone()) + { + System.out.println("Passenger " + loop + " has left the elevator."); + } + + } + } + else + { + System.out.println("Elevator " + number + " is on Floor " + elevator.getCurrentFloor()); + } } } From 3460db6ac5f55926bd6bc1bf5656bc6bced7c81c Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Thu, 1 Aug 2019 11:16:43 -0400 Subject: [PATCH 213/247] DC now takes the array of elevators --- tests/Tests.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/Tests.java b/tests/Tests.java index f647cf3..e4234cd 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -206,7 +206,7 @@ public void testdisplay1() { Elevator[] elevators = new Elevator[2]; elevators[0] = new Elevator(1, 10); - Controller control = new Controller(); + Controller control = new DefaultController(elevators); PassengerManager passman = new PassengerManager(control); Display disp = new Display(passman, elevators[0]); disp.goingUp(); @@ -221,7 +221,7 @@ public void testdisplay2() { Elevator[] elevators = new Elevator[2]; elevators[0] = new Elevator(1, 10); - Controller control = new Controller(); + Controller control = new DefaultController(elevators); PassengerManager passman = new PassengerManager(control); Display disp = new Display(passman, elevators[0]); disp.goingUp(); From b6dd292ed0e89f23aa12f499d7715448828c5488 Mon Sep 17 00:00:00 2001 From: Will Date: Thu, 1 Aug 2019 11:22:40 -0400 Subject: [PATCH 214/247] Fixed some minor issues. --- src/Display.java | 8 ++++---- tests/Tests.java | 31 +------------------------------ 2 files changed, 5 insertions(+), 34 deletions(-) diff --git a/src/Display.java b/src/Display.java index 04f52ed..c616b96 100644 --- a/src/Display.java +++ b/src/Display.java @@ -18,7 +18,7 @@ public void display() System.out.println("============================================================="); ArrayList passengers = passengerManager.getPassengers(); - for(int loop = 0; loop < elevators.size(); loop++) + for(int loop = 0; loop < passengers.size(); loop++) { Passenger passenger = passengers.get(loop); printPassenger(loop, passenger); @@ -43,9 +43,9 @@ public void start() public void printPassenger(int number, Passenger passenger) { - if(passenger.getWaiting() + if(passenger.getWaiting()) { - System.out.print("Passenger " + loop + " is on Floor " + passenger.getStartFloor()); + System.out.print("Passenger " + number + " is on Floor " + passenger.getStartFloor()); if(passenger.getStartFloor() > passenger.getDestinationFloor()) { @@ -66,7 +66,7 @@ public void printElevator(int number, Elevator elevator) System.out.println("Elevator doors have opened."); ArrayList passengers = passengerManager.getPassengers(); - for(int loop = 0; loop < passengerManager.size(); loop++) + for(int loop = 0; loop < passengers.size(); loop++) { Passenger passenger = passengers.get(loop); diff --git a/tests/Tests.java b/tests/Tests.java index 88afa56..8b8d418 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -201,36 +201,7 @@ public void testPassengerNext1() assertEquals(true, elev.pushTrue()); } */ - @Test - public void testdisplay1() - { - Elevator[] elevators = new Elevator[2]; - elevators[0] = new Elevator(1, 10); - PassengerManager passman = new PassengerManager(elevators); - Display disp = new Display(passman, elevators[0]); - disp.goingUp(); - disp.goingDown(); - - assertEquals(Display.current, 1); - } - - - @Test - public void testdisplay2() - { - Elevator[] elevators = new Elevator[2]; - elevators[0] = new Elevator(1, 10); - PassengerManager passman = new PassengerManager(elevators); - Display disp = new Display(passman, elevators[0]); - disp.goingUp(); - disp.goingUp(); - disp.goingUp(); - disp.goingUp(); - disp.goingUp(); - - assertEquals(Display.current, 6); - } - + @Test public void testHasDestFloor() { From ef807d3bc6d5074f1ae63293cd11946e81ed6409 Mon Sep 17 00:00:00 2001 From: Will Date: Thu, 1 Aug 2019 11:26:01 -0400 Subject: [PATCH 215/247] Added missing Passenger changes. --- src/Passenger.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/Passenger.java b/src/Passenger.java index 6291f32..0775907 100644 --- a/src/Passenger.java +++ b/src/Passenger.java @@ -69,6 +69,16 @@ public boolean getWaiting() return this.waiting; } + public boolean getRiding() + { + return this.riding; + } + + public boolean getDone() + { + return this.done; + } + public int getStartFloor() { return this.startFloor; From 66e3269c71514f71976d41e5d6372c88107d88ab Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Thu, 1 Aug 2019 11:30:36 -0400 Subject: [PATCH 216/247] writing test for getElevators() --- tests/Tests.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/tests/Tests.java b/tests/Tests.java index 88afa56..e70c1da 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -100,6 +100,23 @@ else if (numExpectedPolls-1 <= numPolls && numPolls <= numExpectedPolls+1) { assertTrue(state); } } + + /** + * Author: Elijah Smith + * test for getElevators() method + */ + @Test + public void testGetElevators() { + Elevator elev1 = new Elevator(10); + Elevator elev2 = new Elevator(10); + Elevator[] elevArray = new Elevator[10]; + Controller control = new DefaultController(elevArray); + + Elevator[] elevArray2 = control.getElevators(); + + assertEquals(elevArray, elevArray2); + } + /** * Author: Elijah Smith From cce2e8d280c785339d46886d2ea81db1b6a3f939 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Thu, 1 Aug 2019 11:41:04 -0400 Subject: [PATCH 217/247] adding tests for getElevators method --- tests/Tests.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/tests/Tests.java b/tests/Tests.java index e70c1da..a8619b5 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -110,11 +110,16 @@ public void testGetElevators() { Elevator elev1 = new Elevator(10); Elevator elev2 = new Elevator(10); Elevator[] elevArray = new Elevator[10]; + elevArray[0] = elev1; + elevArray[1] = elev2; Controller control = new DefaultController(elevArray); Elevator[] elevArray2 = control.getElevators(); + Elevator elev3 = elevArray2[0]; + Elevator elev4 = elevArray2[1]; - assertEquals(elevArray, elevArray2); + assertEquals(elev1, elev3); + assertEquals(elev2, elev4); } From 573849f258e364ead77ceb4bebb7d01be5b066f4 Mon Sep 17 00:00:00 2001 From: Will Date: Thu, 1 Aug 2019 11:45:10 -0400 Subject: [PATCH 218/247] Rewrote controller constructor --- src/Controller.java | 13 +++++++++---- src/ElevSim.java | 8 +------- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/src/Controller.java b/src/Controller.java index 6695ef0..54722b0 100644 --- a/src/Controller.java +++ b/src/Controller.java @@ -8,11 +8,16 @@ public abstract class Controller * Editor: Elijah Smith * initialized size of new pushed fields. */ - protected Controller(Elevator[] elevators) + protected Controller(int numberOfFloors, int numberOfElevators) { - this.elevators = elevators; - pushedUp = new boolean[elevators[1].getNumberOfFloors() + 1]; - pushedDown = new boolean[elevators[1].getNumberOfFloors() + 1]; + this.elevators = new Elevator[numberOfElevators]; + for(int loop = 0; loop < numberOfElevators; loop++) + { + this.elevators[loop] = new Elevator(numberOfFloors); + } + + pushedUp = new boolean[numberOfFloors + 1]; + pushedDown = new boolean[numberOfFloors + 1]; } public abstract void next(); diff --git a/src/ElevSim.java b/src/ElevSim.java index 8754600..952d441 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -4,15 +4,9 @@ public class ElevSim { public static void main(String[] args) throws InterruptedException { - Scanner kb = new Scanner(System.in); - Elevator[] elevators = new Elevator[2]; - int maxFloors = 10; - elevators[0] = new Elevator(maxFloors); - Elevator elev = elevators[0]; - System.out.println("Welcome to the Elevator Simulator."); - Controller control = new DefaultController(elevators); + Controller control = new DefaultController(10, 2); PassengerManager passengerManager = new PassengerManager(control); Passenger pass = new Passenger(elev, 0); From 624ca36b01774aac6e9113a9e3d83d6280f14104 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Thu, 1 Aug 2019 11:46:07 -0400 Subject: [PATCH 219/247] Update Tests.java --- tests/Tests.java | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/tests/Tests.java b/tests/Tests.java index 2ccda2e..050e66d 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -237,6 +237,26 @@ public void testHasDestFloor() } + @Test + public void testpushTrue1() + { + Elevator elev1 = new Elevator(10); + Elevator elev2 = new Elevator(10); + Elevator[] elevators = new Elevator[10]; + elevators[0] = elev1; + elevators[1] = elev2; + Controller control = new DefaultController(elevators); + + control.pushUp(1); + control.pushUp(3); + control.pushDown(8); + + int count = control.pushTrue(); + + assertEquals(3, count); + } + + /* needs to change @Test public void testDefaultController1() From 79c08deb7f0f72843d290a3e697e1d88fdd03be7 Mon Sep 17 00:00:00 2001 From: Will Date: Thu, 1 Aug 2019 11:46:34 -0400 Subject: [PATCH 220/247] Fixed controller test. --- tests/Tests.java | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/tests/Tests.java b/tests/Tests.java index b0e84dc..49153c6 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -107,10 +107,7 @@ else if (numExpectedPolls-1 <= numPolls && numPolls <= numExpectedPolls+1) { */ @Test public void testGetElevators() { - Elevator elev1 = new Elevator(10); - Elevator elev2 = new Elevator(10); - Elevator[] elevArray = new Elevator[10]; - Controller control = new DefaultController(elevArray); + Controller control = new DefaultController(10, 2); Elevator[] elevArray2 = control.getElevators(); From e5f5e1f0ebfc0aea6f4ba9f1b7f84f34c1e88195 Mon Sep 17 00:00:00 2001 From: Will Date: Thu, 1 Aug 2019 11:49:36 -0400 Subject: [PATCH 221/247] Fixed DefaultController. --- src/DefaultController.java | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index be6114d..ea6c652 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -7,12 +7,10 @@ public class DefaultController extends Controller private boolean movingDown; private Elevator elevator; - public DefaultController(Elevator[] elevators) + public DefaultController(int numberOfFloors, int numberOfElevators) { - super(elevators); + super(numberOfFloors, numberOfElevators); - elevator = elevators[0]; - this.movingUp = false; this.movingDown = false; } From 8d508c5606f655284db44d10a9fe79b3c0ac1141 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Thu, 1 Aug 2019 11:52:15 -0400 Subject: [PATCH 222/247] Update Tests.java --- tests/Tests.java | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/tests/Tests.java b/tests/Tests.java index 050e66d..9208939 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -237,16 +237,18 @@ public void testHasDestFloor() } + public void testpushTrue() + { + Elevator[] elevators = new Elevator[2]; + DefaultController control = new DefaultController(10, 0); + assertEquals(0, control.pushTrue()); + } + + @Test public void testpushTrue1() { - Elevator elev1 = new Elevator(10); - Elevator elev2 = new Elevator(10); - Elevator[] elevators = new Elevator[10]; - elevators[0] = elev1; - elevators[1] = elev2; - Controller control = new DefaultController(elevators); - + Controller control = new DefaultController(10,3); control.pushUp(1); control.pushUp(3); control.pushDown(8); @@ -256,7 +258,6 @@ public void testpushTrue1() assertEquals(3, count); } - /* needs to change @Test public void testDefaultController1() From 01637ac2f9b3b2f553538b298cd155c8ada6fb15 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Thu, 1 Aug 2019 11:58:32 -0400 Subject: [PATCH 223/247] Update Tests.java --- tests/Tests.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Tests.java b/tests/Tests.java index 9208939..dc7cc1d 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -236,7 +236,7 @@ public void testHasDestFloor() assertEquals(1, elev.hasDestFloors()); } - + @Test public void testpushTrue() { Elevator[] elevators = new Elevator[2]; From 69008b1ee128a71540c1eb168a0f37c2b248b5af Mon Sep 17 00:00:00 2001 From: Will Date: Thu, 1 Aug 2019 12:05:33 -0400 Subject: [PATCH 224/247] Fixed issue in Passenger --- src/Passenger.java | 44 ++++++++++++++++++++++++-------------------- 1 file changed, 24 insertions(+), 20 deletions(-) diff --git a/src/Passenger.java b/src/Passenger.java index 0775907..4a1dee6 100644 --- a/src/Passenger.java +++ b/src/Passenger.java @@ -1,6 +1,6 @@ public class Passenger { - private Elevator elev; + private Controller control; private int startFloor; private int destinationFloor; @@ -9,9 +9,9 @@ public class Passenger private boolean riding; private boolean done; - public Passenger(Elevator elev, int startFloor, int destinationFloor) + public Passenger(Controller control, int startFloor, int destinationFloor) { - this.elev = elev; + this.control = control; this.startFloor = startFloor; this.destinationFloor = destinationFloor; @@ -21,9 +21,9 @@ public Passenger(Elevator elev, int startFloor, int destinationFloor) this.done = false; } - public Passenger(Elevator elev, int destinationFloor) + public Passenger(Controller control, int destinationFloor) { - this.elev = elev; + this.control = control; this.startFloor = 1; this.destinationFloor = destinationFloor; @@ -39,28 +39,32 @@ public void next() { if(this.destinationFloor > this.startFloor) { - //This will change when Passenger starts using Controller not Elevator - //elev.pushUp(this.startFloor); - System.out.println("Passenger on floor " + startFloor + " pushed Up."); + control.pushUp(this.startFloor); } else { - //This will change when Passenger starts using Controller not Elevator - //elev.pushDown(this.startFloor); - System.out.println("Passenger on floor " + startFloor + " pushed Down."); + control.pushDown(this.startFloor); } this.waiting = true; } - else if(waiting && !riding && elev.getStopped() && elev.getCurrentFloor() == startFloor) + else { - System.out.println("Passenger boarded elevator and pushed floor " + destinationFloor + "."); - elev.addDestinationFloor(destinationFloor); - this.riding = true; - } - else if(elev.getStopped() && elev.getCurrentFloor() == destinationFloor) - { - System.out.println("Passenger got off."); - this.done = true; + Elevator[] elevators = control.getElevators(); + for(int loop = 0; loop < elevators.length; loop++) + { + Elevator elev = elevators[loop]; + if(waiting && !riding && elev.getStopped() && elev.getCurrentFloor() == startFloor) + { + elev.addDestinationFloor(destinationFloor); + this.riding = true; + break; + } + else if(elev.getStopped() && elev.getCurrentFloor() == destinationFloor) + { + this.done = true; + break; + } + } } } From 827789a0a5b339386e757531c741d6a380931e76 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Thu, 1 Aug 2019 12:05:57 -0400 Subject: [PATCH 225/247] writing tests for push() methods in Controller --- tests/Tests.java | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/tests/Tests.java b/tests/Tests.java index 2ccda2e..e2fc49c 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -122,6 +122,51 @@ public void testGetElevators() { assertEquals(elev2, elev4); } + + /** + * Author: Elijah Smith + * pushUp() method test now in Controller + */ + @Test + public void testPushUp() { + Controller control = new DefaultController(10, 2) + control.pushUp(0); + control.pushUp(2); + control.pushUp(3); + + boolean[] pushedUpArray = control.getPushedUpArray(); + boolean pushedUp1 = pushedUpArray[0]; + boolean pushedUp2 = pushedUpArray[2]; + boolean pushedUp3 = pushedUpArray[3]; + + assertEquals(true, pushedUp1); + assertEquals(true, pushedUp2); + assertEqausl(true, pushedUp3); + } + + /** + * Author: Elijah Smith + * pushDown() method test now in Controller + */ + @Test + public void testPushDown() { + Controller control = new DefaultController(10, 2) + control.pushDown(5); + control.pushDown(7); + control.pushDown(3); + + boolean[] pushedUpArray = control.getPushedUpArray(); + boolean pushedDown1 = pushedUpArray[5]; + boolean pushedDown2 = pushedUpArray[7]; + boolean pushedDown3 = pushedUpArray[3]; + + assertEquals(true, pushedDown1); + assertEquals(true, pushedDown2); + assertEqausl(true, pushedDown3); + } + + + /** * Author: Elijah Smith From 187a3cc37b93a7740b060ec75646f8c459d6c1f2 Mon Sep 17 00:00:00 2001 From: Will Date: Thu, 1 Aug 2019 12:10:18 -0400 Subject: [PATCH 226/247] Bug Fixes. --- src/ElevSim.java | 10 +--------- src/PassengerManager.java | 7 +++---- 2 files changed, 4 insertions(+), 13 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 952d441..fa764f4 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -5,16 +5,9 @@ public class ElevSim { public static void main(String[] args) throws InterruptedException { - System.out.println("Welcome to the Elevator Simulator."); Controller control = new DefaultController(10, 2); PassengerManager passengerManager = new PassengerManager(control); - Passenger pass = new Passenger(elev, 0); - - System.out.println("Welcome to the Elevator Simulator.\n\nElevator is currently on: " + elev.getCurrentFloor()); - System.out.println("\nPassenger 1, which floor would you like to go?"); - int destination = kb.nextInt(); - pass.setDestinationFloor(destination); - System.out.println("Passenger 1 is going to: " + destination); + Passenger pass = new Passenger(control, 0); Passenger p1 = passengerManager.newPassenger(); Passenger p2 = passengerManager.newPassenger(); @@ -24,7 +17,6 @@ public static void main(String[] args) throws InterruptedException { { passengerManager.next(); control.next(); - System.out.println("\nElevator is currently on: " + elev.getCurrentFloor()); } } } diff --git a/src/PassengerManager.java b/src/PassengerManager.java index 49b583f..b64205c 100644 --- a/src/PassengerManager.java +++ b/src/PassengerManager.java @@ -3,7 +3,6 @@ public class PassengerManager { - private Elevator elevator; private ArrayList passengers; private Controller control; @@ -16,15 +15,15 @@ public PassengerManager(Controller control) public Passenger newPassenger() { Random rand = new Random(); - int start = rand.nextInt(elevator.getNumberOfFloors()) + 1; - int dest = rand.nextInt(elevator.getNumberOfFloors()) + 1; + int start = rand.nextInt(control.getNumberOfFloors()) + 1; + int dest = rand.nextInt(control.getNumberOfFloors()) + 1; while (dest == start) { dest = rand.nextInt(elevator.getNumberOfFloors()) + 1; } - Passenger newPass = new Passenger(elevator, start, dest); + Passenger newPass = new Passenger(control, start, dest); passengers.add(newPass); return newPass; From 5f237df87ddbc6875a5df6c4a325131176a28ef1 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Thu, 1 Aug 2019 12:10:54 -0400 Subject: [PATCH 227/247] typo --- tests/Tests.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/Tests.java b/tests/Tests.java index e2fc49c..48017df 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -129,7 +129,7 @@ public void testGetElevators() { */ @Test public void testPushUp() { - Controller control = new DefaultController(10, 2) + Controller control = new DefaultController(10, 2); control.pushUp(0); control.pushUp(2); control.pushUp(3); @@ -150,7 +150,7 @@ public void testPushUp() { */ @Test public void testPushDown() { - Controller control = new DefaultController(10, 2) + Controller control = new DefaultController(10, 2); control.pushDown(5); control.pushDown(7); control.pushDown(3); From 2f49a6d8833240965bc1b0ea940313ae6dd92111 Mon Sep 17 00:00:00 2001 From: Will Date: Thu, 1 Aug 2019 12:12:47 -0400 Subject: [PATCH 228/247] More bug fixes. --- src/Controller.java | 8 ++++++++ src/PassengerManager.java | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/Controller.java b/src/Controller.java index 54722b0..f9cddad 100644 --- a/src/Controller.java +++ b/src/Controller.java @@ -1,5 +1,6 @@ public abstract class Controller { + protected int numberOfFloors; protected Elevator[] elevators; protected boolean[] pushedUp; protected boolean[] pushedDown; @@ -10,6 +11,8 @@ public abstract class Controller */ protected Controller(int numberOfFloors, int numberOfElevators) { + this.numberOfFloors = numberOfFloors; + this.elevators = new Elevator[numberOfElevators]; for(int loop = 0; loop < numberOfElevators; loop++) { @@ -47,6 +50,11 @@ public void pushUp(int currentFloor) { public void pushDown(int currentFloor) { pushedDown[currentFloor] = true; } + + public int getNumberOfFloors() + { + return numberOfFloors; + } public Elevator[] getElevators() { diff --git a/src/PassengerManager.java b/src/PassengerManager.java index b64205c..2e4b5a0 100644 --- a/src/PassengerManager.java +++ b/src/PassengerManager.java @@ -20,7 +20,7 @@ public Passenger newPassenger() while (dest == start) { - dest = rand.nextInt(elevator.getNumberOfFloors()) + 1; + dest = rand.nextInt(control.getNumberOfFloors()) + 1; } Passenger newPass = new Passenger(control, start, dest); From c4dcf3eef57b7fee0f0553e6b97b4408ccedb0b7 Mon Sep 17 00:00:00 2001 From: Will Date: Thu, 1 Aug 2019 12:15:43 -0400 Subject: [PATCH 229/247] Removed bad Test. --- tests/Tests.java | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/tests/Tests.java b/tests/Tests.java index 49153c6..acc56b5 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -101,20 +101,6 @@ else if (numExpectedPolls-1 <= numPolls && numPolls <= numExpectedPolls+1) { } } - /** - * Author: Elijah Smith - * test for getElevators() method - */ - @Test - public void testGetElevators() { - Controller control = new DefaultController(10, 2); - - Elevator[] elevArray2 = control.getElevators(); - - assertEquals(elevArray, elevArray2); - } - - /** * Author: Elijah Smith * test brought from TimerTest.java From 9e6395d5d8cd41c678a9415a46b0539e3edaae98 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Thu, 1 Aug 2019 12:26:47 -0400 Subject: [PATCH 230/247] odd commit --- src/Controller.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/Controller.java b/src/Controller.java index 6695ef0..1eddd29 100644 --- a/src/Controller.java +++ b/src/Controller.java @@ -47,4 +47,20 @@ public Elevator[] getElevators() { return elevators; } + + /** + * Author: Elijah Smith + * accessor for boolean array pushedUp[] + */ + public boolean[] getPushedUpArray() { + return this.pushedUp; + } + + /** + * Author: Elijah Smith + * accessor for boolean array pushedDown[] + */ + public boolean[] getPushedDownArray() { + return this.pushedDown; + } } From bc883c7d1cb38940ea13ada5ec241e116f513a4e Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Sun, 4 Aug 2019 20:31:27 -0400 Subject: [PATCH 231/247] getElevators() test needed to be updated In order for getElevators to test correctly it needed to be modified for the new constructor in Controller --- tests/Tests.java | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/tests/Tests.java b/tests/Tests.java index e59b2d4..254426b 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -107,19 +107,12 @@ else if (numExpectedPolls-1 <= numPolls && numPolls <= numExpectedPolls+1) { */ @Test public void testGetElevators() { - Elevator elev1 = new Elevator(10); - Elevator elev2 = new Elevator(10); - Elevator[] elevArray = new Elevator[10]; - elevArray[0] = elev1; - elevArray[1] = elev2; - Controller control = new DefaultController(elevArray); - - Elevator[] elevArray2 = control.getElevators(); - Elevator elev3 = elevArray2[0]; - Elevator elev4 = elevArray2[1]; - - assertEquals(elev1, elev3); - assertEquals(elev2, elev4); + Controller control = new DefaultController(10, 2); + Elevator[] elevArray = control.getElevators(); + Elevator elev1 = elevArray[0]; + Elevator elev2 = elevArray[1]; + + assertEquals(elev1, elev2); } From 7dc51af42cb00dc0fa0d3635c42673ac50ed7a72 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Mon, 5 Aug 2019 00:32:29 -0400 Subject: [PATCH 232/247] typo on Tests --- tests/Tests.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Tests.java b/tests/Tests.java index 254426b..0b35b9b 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -134,7 +134,7 @@ public void testPushUp() { assertEquals(true, pushedUp1); assertEquals(true, pushedUp2); - assertEqausl(true, pushedUp3); + assertEqauls(true, pushedUp3); } /** From 992ccf5777f9ce35a546013ac4bc2eec7dd4412b Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Mon, 5 Aug 2019 00:33:21 -0400 Subject: [PATCH 233/247] more typos in Tests --- tests/Tests.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/Tests.java b/tests/Tests.java index 0b35b9b..0facaca 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -134,7 +134,7 @@ public void testPushUp() { assertEquals(true, pushedUp1); assertEquals(true, pushedUp2); - assertEqauls(true, pushedUp3); + assertEquals(true, pushedUp3); } /** @@ -155,7 +155,7 @@ public void testPushDown() { assertEquals(true, pushedDown1); assertEquals(true, pushedDown2); - assertEqausl(true, pushedDown3); + assertEquals(true, pushedDown3); } From aa3e91e43ad70a411c66a01842cfa382d3381762 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Mon, 5 Aug 2019 10:39:15 -0400 Subject: [PATCH 234/247] new test for next() method within Passenger --- tests/Tests.java | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/tests/Tests.java b/tests/Tests.java index b4a00fd..8e14bd7 100644 --- a/tests/Tests.java +++ b/tests/Tests.java @@ -189,18 +189,24 @@ public void testElevatorConstructor2() { } -/* needs to change + +/** + * Author: Elijah Smith + * New test for next() within Passenger + */ @Test public void testPassengerNext1() { - Elevator elev = new Elevator(1, 10); - Passenger pass = new Passenger(elev, 7); + Controller control = new DefaultController(10, 2); + + Passenger pass = new Passenger(control, 7, 10); + Passenger pass2 = new Passenger(control, 2, 1); + pass.next(); pass.next(); - assertEquals(true, elev.pushTrue()); - } -*/ + assertEquals(2, control.pushTrue()); + } @Test public void testHasDestFloor() From bf9e22a5bc63d377d0b1ff49be34df277a1be51f Mon Sep 17 00:00:00 2001 From: Will Date: Mon, 5 Aug 2019 10:40:58 -0400 Subject: [PATCH 235/247] Fixed default controller. --- src/DefaultController.java | 10 ++++++---- src/ElevSim.java | 7 ++++--- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index ea6c652..43e78dd 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -5,7 +5,6 @@ public class DefaultController extends Controller { private boolean movingUp; private boolean movingDown; - private Elevator elevator; public DefaultController(int numberOfFloors, int numberOfElevators) { @@ -17,6 +16,7 @@ public DefaultController(int numberOfFloors, int numberOfElevators) public void next() { + /* int maxFloor = elevator.getNumberOfFloors(); int currentFloor = elevator.getCurrentFloor(); @@ -34,16 +34,16 @@ public void next() movingDown = false; } - if(currentFloor == 1 && (destFloorCount == 0 /*|| pushTrue*/)) + if(currentFloor == 1 && (destFloorCount == 0 /*|| pushTrue)) { movingUp = true; } - else if (currentFloor == maxFloor && (destFloorCount == 0 /*|| pushTrue*/)) + else if (currentFloor == maxFloor && (destFloorCount == 0 /*|| pushTrue)) { movingDown = true; } - if(destFloors[currentFloor] || (movingUp /*&& pushUpFloors[currentFloor]*/) || (movingDown /*&& pushDownFloors[currentFloor]*/)) + if(destFloors[currentFloor] || (movingUp /*&& pushUpFloors[currentFloor]) || (movingDown /*&& pushDownFloors[currentFloor])) { elevator.stop(); } @@ -55,6 +55,8 @@ else if(movingDown) { elevator.moveDown(); } + + */ } } diff --git a/src/ElevSim.java b/src/ElevSim.java index fa764f4..453f044 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -1,9 +1,10 @@ import java.util.Scanner; -public class ElevSim { +public class ElevSim +{ - - public static void main(String[] args) throws InterruptedException { + public static void main(String[] args) + { Controller control = new DefaultController(10, 2); PassengerManager passengerManager = new PassengerManager(control); From e8a27473589460aabb52da5682987ddf33559ba9 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Mon, 5 Aug 2019 10:59:10 -0400 Subject: [PATCH 236/247] adding displays in main --- src/ElevSim.java | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 453f044..171a256 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -9,13 +9,23 @@ public static void main(String[] args) Controller control = new DefaultController(10, 2); PassengerManager passengerManager = new PassengerManager(control); Passenger pass = new Passenger(control, 0); - + Display disp = new Display(passengerManager, control); + Passenger p1 = passengerManager.newPassenger(); Passenger p2 = passengerManager.newPassenger(); - + Elevator[] elevs = control.getElevators(); + + disp.start(); + while(true) { + disp.display(); + disp.printPassenger(1, p1); + disp.printElevator(1, elevs[0]); + disp.printPassenger(2, p2); + disp.printElevator(2, elevs[1]); + passengerManager.next(); control.next(); } From 3d4945d5a6a748541e3f2793a0fddf16d715b68a Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Mon, 5 Aug 2019 11:31:53 -0400 Subject: [PATCH 237/247] working on elevsim --- src/ElevSim.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index 171a256..a07f577 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -8,26 +8,26 @@ public static void main(String[] args) Controller control = new DefaultController(10, 2); PassengerManager passengerManager = new PassengerManager(control); - Passenger pass = new Passenger(control, 0); Display disp = new Display(passengerManager, control); + Passenger pass = new Passenger(control, 0); Passenger p1 = passengerManager.newPassenger(); Passenger p2 = passengerManager.newPassenger(); Elevator[] elevs = control.getElevators(); - disp.start(); - - while(true) + disp.display(); + + int i = 0; + while(i != 1) { - disp.display(); + disp.display(); disp.printPassenger(1, p1); disp.printElevator(1, elevs[0]); - disp.printPassenger(2, p2); - disp.printElevator(2, elevs[1]); passengerManager.next(); control.next(); + i = 1; } } } From 2abc56dbe356e6a746f3b0e68e1d58c6862f0d6b Mon Sep 17 00:00:00 2001 From: Will Date: Mon, 5 Aug 2019 11:33:57 -0400 Subject: [PATCH 238/247] Added 2 elevator control logic. --- src/DefaultController.java | 122 ++++++++++++++++++++++++++++--------- 1 file changed, 94 insertions(+), 28 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index 43e78dd..fd207f9 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -3,60 +3,126 @@ public class DefaultController extends Controller { - private boolean movingUp; - private boolean movingDown; + private boolean leftMovingUp; + private boolean leftMovingDown; + private boolean leftRest; + + private boolean rightMovingUp; + private boolean rightMovingDown; + private boolean rightRest; public DefaultController(int numberOfFloors, int numberOfElevators) { super(numberOfFloors, numberOfElevators); - this.movingUp = false; - this.movingDown = false; + leftMovingUp = false; + leftMovingDown = false; + leftRest = true; + + rightMovingUp = false; + rightMovingDown = false; + rightRest = true; } public void next() { - /* - int maxFloor = elevator.getNumberOfFloors(); - int currentFloor = elevator.getCurrentFloor(); + Elevator leftElev = super.elevators[0]; + int leftCurrentFloor = leftElev.getCurrentFloor(); + boolean[] leftDestFloors = leftElev.getDestinationFloor(); - boolean[] destFloors = elevator.getDestinationFloor(); + Elevator rightElev = super.elevators[1]; + int rightCurrentFloor = rightElev.getCurrentFloor(); + boolean[] rightDestFloors = rightElev.getDestinationFloor(); - // boolean pushUpFloors[] = elevator.getPushedUp(); - // boolean pushDownFloors[] = elevator.getPushedDown(); - // boolean pushTrue = elevator.pushTrue(); - - int destFloorCount = elevator.hasDestFloors(); + if(super.pushTrue() == 0) + { + if(leftElev.hasDestFloors() == 0) + { + if(leftCurrentFloor > 1) + { + leftMovingDown = true; + leftMovingUp = false; + } + else + { + leftMovingDown = false; + leftMovingUp = false; + leftRest = true; + } + } - if(currentFloor == 1 || currentFloor == maxFloor) + if(rightElev.hasDestFloors() == 0) + { + if(rightCurrentFloor < super.numberOfFloors) + { + rightMovingUp = true; + rightMovingDown = false; + } + else + { + rightMovingUp = false; + rightMovingDown = false; + rightRest = true; + } + } + } + else { - movingUp = false; - movingDown = false; + int pushedUp = 0; + int pushedDown = 0; + + for(int loop = 1; loop <= super.numberOfFloors; loop++) + { + if(super.pushedUp[loop]) + pushedUp++; + + if(super.pushedDown[loop]) + pushedDown++; + } + + if(pushedUp > 0 && !rightMovingUp && !leftMovingUp) + { + leftMovingUp = true; + leftMovingDown = false; + leftRest = false; + } + + if(pushedDown > 0 && !rightMovingDown && !leftMovingDown) + { + rightMovingDown = true; + rightMovingUp = false; + rightRest = false; + } + } + - if(currentFloor == 1 && (destFloorCount == 0 /*|| pushTrue)) + if((leftMovingUp && pushedUp[leftCurrentFloor]) || (leftMovingDown && pushedDown[leftCurrentFloor]) || leftDestFloors[leftCurrentFloor]) + { + leftElev.stop(); + } + else if(leftMovingUp) { - movingUp = true; + leftElev.moveUp(); } - else if (currentFloor == maxFloor && (destFloorCount == 0 /*|| pushTrue)) + else if(leftMovingDown) { - movingDown = true; + leftElev.moveDown(); } - if(destFloors[currentFloor] || (movingUp /*&& pushUpFloors[currentFloor]) || (movingDown /*&& pushDownFloors[currentFloor])) + if((rightMovingUp && pushedUp[rightCurrentFloor]) || (rightMovingDown && pushedDown[rightCurrentFloor]) || rightDestFloors[rightCurrentFloor]) { - elevator.stop(); + rightElev.stop(); } - else if(movingUp) + else if(rightMovingUp) { - elevator.moveUp(); + rightElev.moveUp(); } - else if(movingDown) + else if(rightMovingDown) { - elevator.moveDown(); + rightElev.moveDown(); } - - */ + } } From fe9f9d2b368a7e5de85c99daa392f16509bcbd5e Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Mon, 5 Aug 2019 11:48:08 -0400 Subject: [PATCH 239/247] adding to ElevSim --- src/ElevSim.java | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index a07f577..538d9f5 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -15,19 +15,16 @@ public static void main(String[] args) Passenger p2 = passengerManager.newPassenger(); Elevator[] elevs = control.getElevators(); - - disp.display(); - int i = 0; - while(i != 1) + while(true) { - disp.display(); + disp.display(); disp.printPassenger(1, p1); + disp.printPassenger(2, p2); disp.printElevator(1, elevs[0]); - + disp.printElevator(2, elevs[1]); passengerManager.next(); control.next(); - i = 1; } } } From 168a835af279666ca9a7c99c330657a2b1ff7db4 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Mon, 5 Aug 2019 11:49:13 -0400 Subject: [PATCH 240/247] adding the doors have closed --- src/Display.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Display.java b/src/Display.java index c616b96..e4eab78 100644 --- a/src/Display.java +++ b/src/Display.java @@ -80,6 +80,7 @@ else if(elevator.getCurrentFloor() == passenger.getDestinationFloor() && passeng } } + System.out.println("Elevator doors have closed."); } else { From 557b3bd3ef04d60c5842f1791e83fd446c4b953a Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Mon, 5 Aug 2019 11:50:54 -0400 Subject: [PATCH 241/247] added the beep back in --- src/Elevator.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/Elevator.java b/src/Elevator.java index 6f7559f..4282016 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -36,6 +36,7 @@ public Elevator(int currentFloor, int numberOfFloors) { public void moveDown() { time.run(); currentFloor--; + System.out.print("\007"); this.stopped = false; } @@ -46,6 +47,7 @@ public void moveDown() { public void moveUp() { time.run(); currentFloor++; + System.out.print("\007"); this.stopped = false; } From b9dc50e371c121c9c9b8538edf023ed26fbe41d0 Mon Sep 17 00:00:00 2001 From: Elijah Smith Date: Mon, 5 Aug 2019 11:58:03 -0400 Subject: [PATCH 242/247] no changes here on Elevator --- src/Elevator.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Elevator.java b/src/Elevator.java index 6f7559f..848eb0f 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -34,6 +34,7 @@ public Elevator(int currentFloor, int numberOfFloors) { * @throws Exception */ public void moveDown() { + time.run(); currentFloor--; this.stopped = false; From 0c9f106912fdf4fb910a83f7d06f2f8dd6ab8ee4 Mon Sep 17 00:00:00 2001 From: Will Date: Mon, 5 Aug 2019 11:58:03 -0400 Subject: [PATCH 243/247] Fixed out of bounds error. --- src/DefaultController.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/DefaultController.java b/src/DefaultController.java index fd207f9..d225352 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -15,6 +15,8 @@ public DefaultController(int numberOfFloors, int numberOfElevators) { super(numberOfFloors, numberOfElevators); + super.elevators[1] = new Elevator(super.numberOfFloors, super.numberOfFloors); + leftMovingUp = false; leftMovingDown = false; leftRest = true; From c73eca2b19ff611467e5f871a15fbed80d98421e Mon Sep 17 00:00:00 2001 From: Jake Wooten Date: Mon, 5 Aug 2019 12:06:25 -0400 Subject: [PATCH 244/247] timer changes were made --- src/DefaultController.java | 3 ++- src/Elevator.java | 7 ++----- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index fd207f9..e2926eb 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -3,6 +3,7 @@ public class DefaultController extends Controller { + private Timer time = new Timer(3000); private boolean leftMovingUp; private boolean leftMovingDown; private boolean leftRest; @@ -122,7 +123,7 @@ else if(rightMovingDown) { rightElev.moveDown(); } - + time.run(); } } diff --git a/src/Elevator.java b/src/Elevator.java index 6f7559f..842373a 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -4,9 +4,8 @@ public class Elevator { private boolean[] destinationFloor; private int numberOfFloors; private boolean stopped; - private Timer time = new Timer(3000); - - /** + + /* * Author: Elijah Smith * Issue #61 new Constructor */ @@ -34,7 +33,6 @@ public Elevator(int currentFloor, int numberOfFloors) { * @throws Exception */ public void moveDown() { - time.run(); currentFloor--; this.stopped = false; } @@ -44,7 +42,6 @@ public void moveDown() { * Issue #57/51 moveUp */ public void moveUp() { - time.run(); currentFloor++; this.stopped = false; } From 2ea300eb6a7a9e3d888835c844a77766a7899e85 Mon Sep 17 00:00:00 2001 From: Will Date: Mon, 5 Aug 2019 12:18:34 -0400 Subject: [PATCH 245/247] Fix main. --- src/ElevSim.java | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/src/ElevSim.java b/src/ElevSim.java index a07f577..f5aa5cb 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -14,20 +14,11 @@ public static void main(String[] args) Passenger p1 = passengerManager.newPassenger(); Passenger p2 = passengerManager.newPassenger(); - Elevator[] elevs = control.getElevators(); - - disp.display(); - - int i = 0; - while(i != 1) + while(true) { - disp.display(); - disp.printPassenger(1, p1); - disp.printElevator(1, elevs[0]); - passengerManager.next(); control.next(); - i = 1; + display.display(); } } } From e1995cad63998b19bcc8db6baaafb28424d4dc03 Mon Sep 17 00:00:00 2001 From: Will Date: Tue, 6 Aug 2019 11:30:08 -0400 Subject: [PATCH 246/247] Final working branch. --- src/DefaultController.java | 22 +++++++++++++++++++++- src/Display.java | 12 ++++++++---- src/ElevSim.java | 7 +++---- src/Elevator.java | 4 ++-- src/Passenger.java | 20 +++++++++++++++----- src/PassengerManager.java | 8 ++++++++ 6 files changed, 57 insertions(+), 16 deletions(-) diff --git a/src/DefaultController.java b/src/DefaultController.java index 484a8ac..5f34e67 100644 --- a/src/DefaultController.java +++ b/src/DefaultController.java @@ -16,7 +16,7 @@ public DefaultController(int numberOfFloors, int numberOfElevators) { super(numberOfFloors, numberOfElevators); - super.elevators[1] = new Elevator(super.numberOfFloors, super.numberOfFloors); + super.elevators[1] = new Elevator(super.numberOfFloors - 1, super.numberOfFloors); leftMovingUp = false; leftMovingDown = false; @@ -103,6 +103,15 @@ public void next() if((leftMovingUp && pushedUp[leftCurrentFloor]) || (leftMovingDown && pushedDown[leftCurrentFloor]) || leftDestFloors[leftCurrentFloor]) { leftElev.stop(); + + if(leftMovingUp) + { + pushedUp[leftCurrentFloor] = false; + } + else if(leftMovingDown) + { + pushedDown[leftCurrentFloor] = false; + } } else if(leftMovingUp) { @@ -116,6 +125,15 @@ else if(leftMovingDown) if((rightMovingUp && pushedUp[rightCurrentFloor]) || (rightMovingDown && pushedDown[rightCurrentFloor]) || rightDestFloors[rightCurrentFloor]) { rightElev.stop(); + + if(rightMovingUp) + { + pushedUp[rightCurrentFloor] = false; + } + else if(rightMovingDown) + { + pushedDown[rightCurrentFloor] = false; + } } else if(rightMovingUp) { @@ -125,7 +143,9 @@ else if(rightMovingDown) { rightElev.moveDown(); } + time.run(); + } } diff --git a/src/Display.java b/src/Display.java index e4eab78..690922c 100644 --- a/src/Display.java +++ b/src/Display.java @@ -49,11 +49,11 @@ public void printPassenger(int number, Passenger passenger) if(passenger.getStartFloor() > passenger.getDestinationFloor()) { - System.out.println(" waiting to go down."); + System.out.println(" waiting to go down to " + passenger.getDestinationFloor() + "."); } else { - System.out.println(" waiting to go up."); + System.out.println(" waiting to go up to " + passenger.getDestinationFloor() + "."); } } } @@ -70,11 +70,15 @@ public void printElevator(int number, Elevator elevator) { Passenger passenger = passengers.get(loop); - if(elevator.getCurrentFloor() == passenger.getStartFloor() && passenger.getRiding()) + if(elevator.getCurrentFloor() == passenger.getStartFloor()) { System.out.println("Passenger " + loop + " has boarded the elevator."); } - else if(elevator.getCurrentFloor() == passenger.getDestinationFloor() && passenger.getDone()) + else if(passenger.getRidingElev() == number) + { + System.out.println("Passenger " + loop + " has left the elevator."); + } + else if(passenger.getRiding() && passenger.getRidingElev() == number) { System.out.println("Passenger " + loop + " has left the elevator."); } diff --git a/src/ElevSim.java b/src/ElevSim.java index f5aa5cb..e4dfd11 100644 --- a/src/ElevSim.java +++ b/src/ElevSim.java @@ -10,15 +10,14 @@ public static void main(String[] args) PassengerManager passengerManager = new PassengerManager(control); Display disp = new Display(passengerManager, control); - Passenger pass = new Passenger(control, 0); - Passenger p1 = passengerManager.newPassenger(); - Passenger p2 = passengerManager.newPassenger(); + Passenger p1 = passengerManager.newPassenger(5, 8); + Passenger p2 = passengerManager.newPassenger(7, 2); while(true) { passengerManager.next(); control.next(); - display.display(); + disp.display(); } } } diff --git a/src/Elevator.java b/src/Elevator.java index 73f1cd5..1649e39 100644 --- a/src/Elevator.java +++ b/src/Elevator.java @@ -13,7 +13,7 @@ public Elevator(int numberOfFloors) { this.currentFloor = 1; this.numberOfFloors = numberOfFloors; this.destinationFloor = new boolean[numberOfFloors+1]; - this.stopped = true; + this.stopped = false; } /** @@ -24,7 +24,7 @@ public Elevator(int currentFloor, int numberOfFloors) { this.currentFloor = currentFloor; this.numberOfFloors = numberOfFloors; this.destinationFloor = new boolean[numberOfFloors+1]; - this.stopped = true; + this.stopped = false; } /** diff --git a/src/Passenger.java b/src/Passenger.java index 4a1dee6..89ab779 100644 --- a/src/Passenger.java +++ b/src/Passenger.java @@ -4,7 +4,8 @@ public class Passenger private int startFloor; private int destinationFloor; - + private int ridingElev; + private boolean waiting; private boolean riding; private boolean done; @@ -15,7 +16,8 @@ public Passenger(Controller control, int startFloor, int destinationFloor) this.startFloor = startFloor; this.destinationFloor = destinationFloor; - + this.ridingElev = -1; + this.waiting = false; this.riding = false; this.done = false; @@ -27,7 +29,8 @@ public Passenger(Controller control, int destinationFloor) this.startFloor = 1; this.destinationFloor = destinationFloor; - + this.ridingElev = -1; + this.waiting = false; this.riding = false; this.done = false; @@ -53,13 +56,15 @@ public void next() for(int loop = 0; loop < elevators.length; loop++) { Elevator elev = elevators[loop]; - if(waiting && !riding && elev.getStopped() && elev.getCurrentFloor() == startFloor) + if(!riding && elev.getStopped() && elev.getCurrentFloor() == startFloor) { elev.addDestinationFloor(destinationFloor); this.riding = true; + this.ridingElev = loop; + break; } - else if(elev.getStopped() && elev.getCurrentFloor() == destinationFloor) + else if(loop == ridingElev && elev.getStopped() && elev.getCurrentFloor() == destinationFloor) { this.done = true; break; @@ -78,6 +83,11 @@ public boolean getRiding() return this.riding; } + public int getRidingElev() + { + return this.ridingElev; + } + public boolean getDone() { return this.done; diff --git a/src/PassengerManager.java b/src/PassengerManager.java index 2e4b5a0..56b5116 100644 --- a/src/PassengerManager.java +++ b/src/PassengerManager.java @@ -28,6 +28,14 @@ public Passenger newPassenger() return newPass; } + + public Passenger newPassenger(int startFloor, int destFloor) + { + Passenger newPass = new Passenger(control, startFloor, destFloor); + passengers.add(newPass); + + return newPass; + } public void next() { From 883dc95f823c1916c04c4238ef8e89976626a085 Mon Sep 17 00:00:00 2001 From: Erik A Burr <42555634+Erikaburr@users.noreply.github.com> Date: Thu, 6 Feb 2020 14:58:39 -0500 Subject: [PATCH 247/247] Update PassengerManager.java --- src/PassengerManager.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/PassengerManager.java b/src/PassengerManager.java index 56b5116..a3f4b93 100644 --- a/src/PassengerManager.java +++ b/src/PassengerManager.java @@ -29,6 +29,7 @@ public Passenger newPassenger() return newPass; } + public Passenger newPassenger(int startFloor, int destFloor) { Passenger newPass = new Passenger(control, startFloor, destFloor);