design patterns : mediator
This commit is contained in:
11
design-pattern/gof/src/mediator/after/CleaningService.java
Normal file
11
design-pattern/gof/src/mediator/after/CleaningService.java
Normal file
@@ -0,0 +1,11 @@
|
||||
package mediator.after;
|
||||
|
||||
public class CleaningService {
|
||||
|
||||
private FrontDesk frontDesk = new FrontDesk();
|
||||
|
||||
public void getTowers(Integer id, int numberOfTowers) {
|
||||
String roomNumber = this.frontDesk.getRoomNumberFor(id);
|
||||
System.out.println("provide " + numberOfTowers + " to " + roomNumber);
|
||||
}
|
||||
}
|
||||
22
design-pattern/gof/src/mediator/after/FrontDesk.java
Normal file
22
design-pattern/gof/src/mediator/after/FrontDesk.java
Normal file
@@ -0,0 +1,22 @@
|
||||
package mediator.after;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
public class FrontDesk {
|
||||
|
||||
private CleaningService cleaningService = new CleaningService();
|
||||
|
||||
private Restaurant restaurant = new Restaurant();
|
||||
|
||||
public void getTowers(Guest guest, int numberOfTowers) {
|
||||
cleaningService.getTowers(guest.getId(), numberOfTowers);
|
||||
}
|
||||
|
||||
public String getRoomNumberFor(Integer guestId) {
|
||||
return "1111";
|
||||
}
|
||||
|
||||
public void dinner(Guest guest, LocalDateTime dateTime) {
|
||||
restaurant.dinner(guest.getId(), dateTime);
|
||||
}
|
||||
}
|
||||
26
design-pattern/gof/src/mediator/after/Guest.java
Normal file
26
design-pattern/gof/src/mediator/after/Guest.java
Normal file
@@ -0,0 +1,26 @@
|
||||
package mediator.after;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
public class Guest {
|
||||
|
||||
private Integer id;
|
||||
|
||||
private FrontDesk frontDesk = new FrontDesk();
|
||||
|
||||
public void getTowers(int numberOfTowers) {
|
||||
this.frontDesk.getTowers(this, numberOfTowers);
|
||||
}
|
||||
|
||||
public void dinner(LocalDateTime dateTime) {
|
||||
this.frontDesk.dinner(this, dateTime);
|
||||
}
|
||||
|
||||
public Integer getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(Integer id) {
|
||||
this.id = id;
|
||||
}
|
||||
}
|
||||
9
design-pattern/gof/src/mediator/after/Restaurant.java
Normal file
9
design-pattern/gof/src/mediator/after/Restaurant.java
Normal file
@@ -0,0 +1,9 @@
|
||||
package mediator.after;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
public class Restaurant {
|
||||
public void dinner(Integer id, LocalDateTime dateTime) {
|
||||
|
||||
}
|
||||
}
|
||||
15
design-pattern/gof/src/mediator/before/CleaningService.java
Normal file
15
design-pattern/gof/src/mediator/before/CleaningService.java
Normal file
@@ -0,0 +1,15 @@
|
||||
package mediator.before;
|
||||
|
||||
public class CleaningService {
|
||||
public void clean(Gym gym) {
|
||||
System.out.println("clean " + gym);
|
||||
}
|
||||
|
||||
public void getTower(Guest guest, int numberOfTower) {
|
||||
System.out.println(numberOfTower + " towers to " + guest);
|
||||
}
|
||||
|
||||
public void clean(Restaurant restaurant) {
|
||||
System.out.println("clean " + restaurant);
|
||||
}
|
||||
}
|
||||
17
design-pattern/gof/src/mediator/before/Guest.java
Normal file
17
design-pattern/gof/src/mediator/before/Guest.java
Normal file
@@ -0,0 +1,17 @@
|
||||
package mediator.before;
|
||||
|
||||
public class Guest {
|
||||
|
||||
private Restaurant restaurant = new Restaurant();
|
||||
|
||||
private CleaningService cleaningService = new CleaningService();
|
||||
|
||||
public void dinner() {
|
||||
restaurant.dinner(this);
|
||||
}
|
||||
|
||||
public void getTower(int numberOfTower) {
|
||||
cleaningService.getTower(this, numberOfTower);
|
||||
}
|
||||
|
||||
}
|
||||
10
design-pattern/gof/src/mediator/before/Gym.java
Normal file
10
design-pattern/gof/src/mediator/before/Gym.java
Normal file
@@ -0,0 +1,10 @@
|
||||
package mediator.before;
|
||||
|
||||
public class Gym {
|
||||
|
||||
private CleaningService cleaningService;
|
||||
|
||||
public void clean() {
|
||||
cleaningService.clean(this);
|
||||
}
|
||||
}
|
||||
13
design-pattern/gof/src/mediator/before/Hotel.java
Normal file
13
design-pattern/gof/src/mediator/before/Hotel.java
Normal file
@@ -0,0 +1,13 @@
|
||||
package mediator.before;
|
||||
|
||||
public class Hotel {
|
||||
|
||||
public static void main(String[] args) {
|
||||
Guest guest = new Guest();
|
||||
guest.getTower(3);
|
||||
guest.dinner();
|
||||
|
||||
Restaurant restaurant = new Restaurant();
|
||||
restaurant.clean();
|
||||
}
|
||||
}
|
||||
13
design-pattern/gof/src/mediator/before/Restaurant.java
Normal file
13
design-pattern/gof/src/mediator/before/Restaurant.java
Normal file
@@ -0,0 +1,13 @@
|
||||
package mediator.before;
|
||||
|
||||
public class Restaurant {
|
||||
|
||||
private CleaningService cleaningService = new CleaningService();
|
||||
public void dinner(Guest guest) {
|
||||
System.out.println("dinner " + guest);
|
||||
}
|
||||
|
||||
public void clean() {
|
||||
cleaningService.clean(this);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user