-
Notifications
You must be signed in to change notification settings - Fork 275
Expand file tree
/
Copy pathInitialSetting.java
More file actions
89 lines (78 loc) · 4.05 KB
/
Copy pathInitialSetting.java
File metadata and controls
89 lines (78 loc) · 4.05 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
package subway;
import subway.domain.Line;
import subway.domain.RequiredResources;
import subway.domain.Section;
import subway.domain.Station;
import subway.repository.LineRepository;
import subway.repository.SectionRepository;
import subway.repository.StationRepository;
public class InitialSetting {
private static final String GYODAE = "교대역";
private static final String GANGNAM = "강남역";
private static final String YUCKSAM = "역삼역";
private static final String NAMBUTERMINAL = "남부터미널역";
private static final String YANGGAE = "양재역";
private static final String YANGGAEFORREST = "양재시민의숲역";
private static final String MAEBONG = "매봉역";
private static final String LINE_TWO = "2호선";
private static final String LINE_THREE = "3호선";
private static final String LINE_SINBUNDANG = "신분당선";
private static final String[] LINE_TWO_STATIONS = {"교대역", "강남역", "역삼역"};
private static final String[] LINE_THREE_STATIONS = {"교대역", "남부터미널역", "양재역", "매봉역"};
private static final String[] LINE_SINBUNDANG_STATIONS = {"강남역", "양재역", "양재시민의숲역"};
public static void settingInitialSubways() {
deleteAllRepository();
settingInitialStations();
settingInitialLines(LINE_TWO, LINE_TWO_STATIONS);
settingInitialLines(LINE_THREE, LINE_THREE_STATIONS);
settingInitialLines(LINE_SINBUNDANG, LINE_SINBUNDANG_STATIONS);
settingInitialSection();
}
private static void deleteAllRepository() {
StationRepository.deleteAll();
LineRepository.deleteAll();
SectionRepository.deleteAll();
}
private static void settingInitialStations() {
StationRepository.addStation(new Station(GYODAE));
StationRepository.addStation(new Station(GANGNAM));
StationRepository.addStation(new Station(YUCKSAM));
StationRepository.addStation(new Station(NAMBUTERMINAL));
StationRepository.addStation(new Station(YANGGAE));
StationRepository.addStation(new Station(YANGGAEFORREST));
StationRepository.addStation(new Station(MAEBONG));
}
private static void settingInitialLines(String lineName, String[] stationNames) {
Line line = new Line(lineName);
addStationInLine(line, stationNames);
LineRepository.addLine(line);
}
private static void addStationInLine(Line line, String[] stationNames) {
for (String stationName : stationNames) {
line.addLineStation(new Station(stationName));
}
}
private static void settingInitialSection() {
Section section = new Section(new Station(GYODAE), new Station(GANGNAM));
RequiredResources requiredResources = new RequiredResources(2, 3);
SectionRepository.addSection(section, requiredResources);
section = new Section(new Station(GANGNAM), new Station(YUCKSAM));
requiredResources = new RequiredResources(2, 3);
SectionRepository.addSection(section, requiredResources);
section = new Section(new Station(GYODAE), new Station(NAMBUTERMINAL));
requiredResources = new RequiredResources(3, 2);
SectionRepository.addSection(section, requiredResources);
section = new Section(new Station(NAMBUTERMINAL), new Station(YANGGAE));
requiredResources = new RequiredResources(6, 5);
SectionRepository.addSection(section, requiredResources);
section = new Section(new Station(YANGGAE), new Station(MAEBONG));
requiredResources = new RequiredResources(1, 1);
SectionRepository.addSection(section, requiredResources);
section = new Section(new Station(GANGNAM), new Station(YANGGAE));
requiredResources = new RequiredResources(2, 8);
SectionRepository.addSection(section, requiredResources);
section = new Section(new Station(YANGGAE), new Station(YANGGAEFORREST));
requiredResources = new RequiredResources(10, 3);
SectionRepository.addSection(section, requiredResources);
}
}