diff --git a/mediator/src/main/java/com/iluwatar/Action.java b/mediator/src/main/java/com/iluwatar/Action.java index 7e6fc30f7..eb237269f 100644 --- a/mediator/src/main/java/com/iluwatar/Action.java +++ b/mediator/src/main/java/com/iluwatar/Action.java @@ -7,12 +7,22 @@ package com.iluwatar; */ public enum Action { - HUNT("hunted a rabbit"), TALE("tells a tale"), GOLD("found gold"), ENEMY("spotted enemies"), NONE(""); + HUNT("hunted a rabbit", "arrives for dinner"), + TALE("tells a tale", "comes to listen"), + GOLD("found gold", "takes his share of the gold"), + ENEMY("spotted enemies", "runs for cover"), + NONE("", ""); private String title; + private String description; - Action(String title) { + Action(String title, String description) { this.title = title; + this.description = description; + } + + public String getDescription() { + return description; } public String toString() { diff --git a/mediator/src/main/java/com/iluwatar/PartyImpl.java b/mediator/src/main/java/com/iluwatar/PartyImpl.java index 70fe24d71..634c3444b 100644 --- a/mediator/src/main/java/com/iluwatar/PartyImpl.java +++ b/mediator/src/main/java/com/iluwatar/PartyImpl.java @@ -10,7 +10,7 @@ import java.util.List; */ public class PartyImpl implements Party { - private List members; + private final List members; public PartyImpl() { members = new ArrayList<>(); diff --git a/mediator/src/main/java/com/iluwatar/PartyMemberBase.java b/mediator/src/main/java/com/iluwatar/PartyMemberBase.java index 133792db6..d352b7b33 100644 --- a/mediator/src/main/java/com/iluwatar/PartyMemberBase.java +++ b/mediator/src/main/java/com/iluwatar/PartyMemberBase.java @@ -17,24 +17,7 @@ public abstract class PartyMemberBase implements PartyMember { @Override public void partyAction(Action action) { - String s = this + " "; - switch (action) { - case ENEMY: - s = s + "runs for cover"; - break; - case GOLD: - s = s + "takes his share of the gold"; - break; - case HUNT: - s = s + "arrives for dinner"; - break; - case TALE: - s = s + "comes to listen"; - break; - default: - break; - } - System.out.println(s); + System.out.println(this + " " + action.getDescription()); } @Override