Skip to content

Method: finished(State)

1: package de.fhdw.gaming.core.domain.util;
2:
3: import java.util.Optional;
4: import java.util.Set;
5:
6: import de.fhdw.gaming.core.domain.Game;
7: import de.fhdw.gaming.core.domain.Move;
8: import de.fhdw.gaming.core.domain.Observer;
9: import de.fhdw.gaming.core.domain.Player;
10: import de.fhdw.gaming.core.domain.State;
11:
12: /**
13: * Creates a list of events.
14: */
15: @SuppressWarnings("PMD.AvoidDuplicateLiterals")
16: public final class EventListCreator {
17:
18: /**
19: * The resulting string.
20: */
21: private final StringBuilder result = new StringBuilder();
22:
23: /**
24: * Returns the result.
25: */
26: public String getResult() {
27: return this.result.toString();
28: }
29:
30: /**
31: * See {@link Observer#started(Game, State)}.
32: *
33: * @param state See {@link Observer#started(Game, State)}.
34: * @return {@code this}
35: */
36: public EventListCreator started(final State<?, ?> state) {
37: this.result.append("started").append("\n");
38: return this;
39: }
40:
41: /**
42: * See {@link Observer#nextPlayersComputed(Game, Set)}.
43: *
44: * @param state See {@link Observer#nextPlayersComputed(Game, Set)}.
45: * @param players See {@link Observer#nextPlayersComputed(Game, Set)}.
46: * @return {@code this}
47: */
48: public EventListCreator nextPlayersComputed(final State<?, ?> state, final Set<? extends Player<?>> players) {
49: this.result.append("nextPlayersComputed: ").append("players=").append(players).append("\n");
50: return this;
51: }
52:
53: /**
54: * See {@link Observer#illegalPlayerRejected(Game, Player)}.
55: *
56: * @param state See {@link Observer#illegalPlayerRejected(Game, Player)}.
57: * @param player See {@link Observer#illegalPlayerRejected(Game, Player)}.
58: * @return {@code this}
59: */
60: public EventListCreator illegalPlayerRejected(final State<?, ?> state, final Player<?> player) {
61: this.result.append("illegalPlayerRejected: ").append("player=").append(player).append("\n");
62: return this;
63: }
64:
65: /**
66: * See {@link Observer#legalMoveApplied(Game, Player, Move)}.
67: *
68: * @param state See {@link Observer#legalMoveApplied(Game, Player, Move)}.
69: * @param player See {@link Observer#legalMoveApplied(Game, Player, Move)}.
70: * @param move See {@link Observer#legalMoveApplied(Game, Player, Move)}.
71: * @return {@code this}
72: */
73: public EventListCreator legalMoveApplied(final State<?, ?> state, final Player<?> player, final Move<?, ?> move) {
74: this.result.append("legalMoveApplied: ").append("player=").append(player).append(", move=").append(move)
75: .append("\n");
76: return this;
77: }
78:
79: /**
80: * See {@link Observer#illegalMoveRejected(Game, Player, Optional, String)}.
81: *
82: * @param state See {@link Observer#illegalMoveRejected(Game, Player, Optional, String)}.
83: * @param player See {@link Observer#illegalMoveRejected(Game, Player, Optional, String)}.
84: * @param move See {@link Observer#illegalMoveRejected(Game, Player, Optional, String)}.
85: * @param reason See {@link Observer#illegalMoveRejected(Game, Player, Optional, String)}.
86: * @return {@code this}
87: */
88: public EventListCreator illegalMoveRejected(final State<?, ?> state, final Player<?> player,
89: final Optional<Move<?, ?>> move, final String reason) {
90: this.result.append("illegalMoveRejected: ").append("player=").append(player).append(", move=").append(move)
91: .append(", reason=").append(reason).append("\n");
92: return this;
93: }
94:
95: /**
96: * See {@link Observer#overdueMoveRejected(Game, Player, Optional)}.
97: *
98: * @param state See {@link Observer#overdueMoveRejected(Game, Player, Optional)}.
99: * @param player See {@link Observer#overdueMoveRejected(Game, Player, Optional}}.
100: * @param chosenMove See {@link Observer#overdueMoveRejected(Game, Player, Optional}}.
101: * @return {@code this}
102: */
103: public EventListCreator overdueMoveRejected(final State<?, ?> state, final Player<?> player,
104: final Optional<Move<?, ?>> chosenMove) {
105: this.result.append("overdueMoveRejected: ").append("player=").append(player).append(", chosenMove=")
106: .append(chosenMove).append("\n");
107: return this;
108: }
109:
110: /**
111: * See {@link Observer#playerResigned(Game, State, Player)}.
112: *
113: * @param state See {@link Observer#playerResigned(Game, State, Player)}.
114: * @param player See {@link Observer#playerResigned(Game, State, Player)}.
115: * @return {@code this}
116: */
117: public EventListCreator playerResigned(final State<?, ?> state, final Player<?> player) {
118: this.result.append("playerResigned: ").append("player=").append(player).append("\n");
119: return this;
120: }
121:
122: /**
123: * See {@link Observer#playerOvertaken(Game, Player, Player)}.
124: *
125: * @param state See {@link Observer#playerOvertaken(Game, Player, Player)}.
126: * @param overtakenPlayer See {@link Observer#playerOvertaken(Game, Player, Player)}.
127: * @param overtakingPlayer See {@link Observer#playerOvertaken(Game, Player, Player)}.
128: * @return {@code this}
129: */
130: public EventListCreator playerOvertaken(final State<?, ?> state, final Player<?> overtakenPlayer,
131: final Player<?> overtakingPlayer) {
132: this.result.append("playerOvertaken: ").append("overtakenPlayer=").append(overtakenPlayer)
133: .append(", overtakingPlayer=").append(overtakingPlayer).append("\n");
134: return this;
135: }
136:
137: /**
138: * See {@link Observer#finished(Game)}.
139: *
140: * @param state See {@link Observer#finished(Game, State)}.
141: * @return {@code this}
142: */
143: public EventListCreator finished(final State<?, ?> state) {
144: this.result.append("finished").append("\n");
145: return this;
146: }
147: }