25
25
26
26
import java .time .LocalDate ;
27
27
28
+ /**
29
+ * Class representing an "override" for the dynamic hiring hall system. Normally, hiring halls are
30
+ * generated dynamically based on planetary system factors like tech level and HPG quality, but some
31
+ * canonical systems should have hiring halls of certain qualities despite what the dynamic formula
32
+ * says.
33
+ * Overrides are stored as child elements of planetary systems in systems.xml, with a start date,
34
+ * optional end date, and quality.
35
+ */
28
36
@ XmlRootElement (name = "hiringHall" )
29
37
@ XmlAccessorType (value = XmlAccessType .FIELD )
30
38
public class HiringHallOverride {
@@ -35,14 +43,31 @@ public class HiringHallOverride {
35
43
@ XmlElement
36
44
private HiringHallLevel level = HiringHallLevel .NONE ;
37
45
46
+ /**
47
+ * Gets the level of the hiring hall for this override
48
+ *
49
+ * @return The hiring hall level as an enum
50
+ */
38
51
public HiringHallLevel getLevel () {
39
52
return level ;
40
53
}
41
54
55
+ /**
56
+ * Sets the hiring hall level for this override
57
+ *
58
+ * @param level The level of hiring hall
59
+ */
42
60
public void setLevel (HiringHallLevel level ) {
43
61
this .level = level ;
44
62
}
45
63
64
+ /**
65
+ * Checks whether the hiring hall is active on a certain date. Returns true if no end date is
66
+ * specified in the override.
67
+ *
68
+ * @param date The date to check whether the hiring hall is active
69
+ * @return boolean representing whether the hiring hall is active
70
+ */
46
71
public boolean isActive (LocalDate date ) {
47
72
// Hall has no start date, so it's always inactive
48
73
if (start == null ) {
0 commit comments