From 6f59f251540d45c6f87b398bdeba2108e5e30210 Mon Sep 17 00:00:00 2001 From: ruslanpa Date: Fri, 6 Feb 2015 12:48:28 +0200 Subject: [PATCH 1/6] [refactor] Makes enums more readable. --- command/src/main/java/com/iluwatar/Size.java | 30 +++++++------------ .../main/java/com/iluwatar/Visibility.java | 26 ++++++---------- 2 files changed, 19 insertions(+), 37 deletions(-) diff --git a/command/src/main/java/com/iluwatar/Size.java b/command/src/main/java/com/iluwatar/Size.java index bdf9c5dca..d06210aad 100644 --- a/command/src/main/java/com/iluwatar/Size.java +++ b/command/src/main/java/com/iluwatar/Size.java @@ -1,32 +1,22 @@ package com.iluwatar; /** - * + * * Enumeration for target size. * */ public enum Size { - SMALL, NORMAL, LARGE; + SMALL("small"), NORMAL("normal"), LARGE("large"), UNDEFINED(""); + + private String title; - @Override + Size(String title) { + this.title = title; + } + + @Override public String toString() { - - String s = ""; - - switch (this) { - case LARGE: - s = "large"; - break; - case NORMAL: - s = "normal"; - break; - case SMALL: - s = "small"; - break; - default: - break; - } - return s; + return title; } } diff --git a/command/src/main/java/com/iluwatar/Visibility.java b/command/src/main/java/com/iluwatar/Visibility.java index 27f380c09..7fbdc4e44 100644 --- a/command/src/main/java/com/iluwatar/Visibility.java +++ b/command/src/main/java/com/iluwatar/Visibility.java @@ -7,24 +7,16 @@ package com.iluwatar; */ public enum Visibility { - VISIBLE, INVISIBLE; + VISIBLE("visible"), INVISIBLE("invisible"), UNDEFINED(""); - @Override + private String title; + + Visibility(String title) { + this.title = title; + } + + @Override public String toString() { - - String s = ""; - - switch (this) { - case INVISIBLE: - s = "invisible"; - break; - case VISIBLE: - s = "visible"; - break; - default: - break; - - } - return s; + return title; } } From bd4cecd30512ffe33144aef60bd8812e9a4faad4 Mon Sep 17 00:00:00 2001 From: ruslanpa Date: Mon, 9 Feb 2015 21:47:50 +0200 Subject: [PATCH 2/6] [refactor] Update Armor enum in builder pattern. --- builder/src/main/java/com/iluwatar/Armor.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/builder/src/main/java/com/iluwatar/Armor.java b/builder/src/main/java/com/iluwatar/Armor.java index a24f32dbc..22ab4d59f 100644 --- a/builder/src/main/java/com/iluwatar/Armor.java +++ b/builder/src/main/java/com/iluwatar/Armor.java @@ -2,11 +2,16 @@ package com.iluwatar; public enum Armor { - CLOTHES, LEATHER, CHAIN_MAIL, PLATE_MAIL; + CLOTHES("clothes"), LEATHER("leather"), CHAIN_MAIL("chain mail"), PLATE_MAIL("plate mail"); - @Override + private String title; + + Armor(String title) { + this.title = title; + } + + @Override public String toString() { - return name().toLowerCase().replaceAll("_", " "); + return title; } - } From eb9b5fdd1b0e510d5acf7fbc0154032af7184966 Mon Sep 17 00:00:00 2001 From: ruslanpa Date: Mon, 9 Feb 2015 21:52:39 +0200 Subject: [PATCH 3/6] [refactor] Update WeaponType enum in factory-method pattern. --- .../main/java/com/iluwatar/WeaponType.java | 25 +++++++------------ 1 file changed, 9 insertions(+), 16 deletions(-) diff --git a/factory-method/src/main/java/com/iluwatar/WeaponType.java b/factory-method/src/main/java/com/iluwatar/WeaponType.java index 4097fd3c7..8d5ab54cc 100644 --- a/factory-method/src/main/java/com/iluwatar/WeaponType.java +++ b/factory-method/src/main/java/com/iluwatar/WeaponType.java @@ -2,23 +2,16 @@ package com.iluwatar; public enum WeaponType { - SHORT_SWORD, SPEAR, AXE; + SHORT_SWORD("short sword"), SPEAR("spear"), AXE("axe"), UNDEFINED(""); - @Override + private String title; + + WeaponType(String title) { + this.title = title; + } + + @Override public String toString() { - String s = ""; - switch (this) { - case SHORT_SWORD: - s = "short sword"; - break; - case SPEAR: - s = "spear"; - break; - case AXE: - s = "axe"; - break; - } - return s; + return title; } - } From c23f58e86febe8d14994998f5f96639e269bff9f Mon Sep 17 00:00:00 2001 From: ruslanpa Date: Mon, 9 Feb 2015 21:54:54 +0200 Subject: [PATCH 4/6] [refactor] Update flyweight pattern. --- flyweight/src/main/java/com/iluwatar/Potion.java | 3 +-- flyweight/src/main/java/com/iluwatar/PotionFactory.java | 3 ++- flyweight/src/main/java/com/iluwatar/PotionType.java | 3 +-- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/flyweight/src/main/java/com/iluwatar/Potion.java b/flyweight/src/main/java/com/iluwatar/Potion.java index 257ce0aa5..126ce8b32 100644 --- a/flyweight/src/main/java/com/iluwatar/Potion.java +++ b/flyweight/src/main/java/com/iluwatar/Potion.java @@ -7,6 +7,5 @@ package com.iluwatar; */ public interface Potion { - public void drink(); - + void drink(); } diff --git a/flyweight/src/main/java/com/iluwatar/PotionFactory.java b/flyweight/src/main/java/com/iluwatar/PotionFactory.java index 078d99163..71586dced 100644 --- a/flyweight/src/main/java/com/iluwatar/PotionFactory.java +++ b/flyweight/src/main/java/com/iluwatar/PotionFactory.java @@ -1,6 +1,7 @@ package com.iluwatar; import java.util.EnumMap; +import java.util.Map; /** * @@ -12,7 +13,7 @@ import java.util.EnumMap; */ public class PotionFactory { - private EnumMap potions; + private final Map potions; public PotionFactory() { potions = new EnumMap<>(PotionType.class); diff --git a/flyweight/src/main/java/com/iluwatar/PotionType.java b/flyweight/src/main/java/com/iluwatar/PotionType.java index c283fd916..9d63ee9f1 100644 --- a/flyweight/src/main/java/com/iluwatar/PotionType.java +++ b/flyweight/src/main/java/com/iluwatar/PotionType.java @@ -7,6 +7,5 @@ package com.iluwatar; */ public enum PotionType { - HEALING, INVISIBILITY, STRENGTH, HOLY_WATER, POISON; - + HEALING, INVISIBILITY, STRENGTH, HOLY_WATER, POISON } From 5b81a88d848666e6da00eb8ec236fb4b1353fe67 Mon Sep 17 00:00:00 2001 From: ruslanpa Date: Mon, 9 Feb 2015 21:59:12 +0200 Subject: [PATCH 5/6] [refactor] Update Action enum in mediator pattern. --- .../src/main/java/com/iluwatar/Action.java | 21 +++++++------------ 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/mediator/src/main/java/com/iluwatar/Action.java b/mediator/src/main/java/com/iluwatar/Action.java index 554466b42..7e6fc30f7 100644 --- a/mediator/src/main/java/com/iluwatar/Action.java +++ b/mediator/src/main/java/com/iluwatar/Action.java @@ -7,20 +7,15 @@ package com.iluwatar; */ public enum Action { - HUNT, TALE, GOLD, ENEMY; + HUNT("hunted a rabbit"), TALE("tells a tale"), GOLD("found gold"), ENEMY("spotted enemies"), NONE(""); - public String toString() { + private String title; - switch (this) { - case ENEMY: - return "spotted enemies"; - case GOLD: - return "found gold"; - case HUNT: - return "hunted a rabbit"; - case TALE: - return "tells a tale"; - } - return ""; + Action(String title) { + this.title = title; + } + + public String toString() { + return title; } } From 6da9686a50c52ed579e7a1243f7ef0aa1b1ae125 Mon Sep 17 00:00:00 2001 From: ruslanpa Date: Mon, 9 Feb 2015 22:19:38 +0200 Subject: [PATCH 6/6] [refactor] Update StarType enum in memento pattern. --- .../src/main/java/com/iluwatar/StarType.java | 33 +++++-------------- 1 file changed, 9 insertions(+), 24 deletions(-) diff --git a/memento/src/main/java/com/iluwatar/StarType.java b/memento/src/main/java/com/iluwatar/StarType.java index 85f599b1c..5914e8528 100644 --- a/memento/src/main/java/com/iluwatar/StarType.java +++ b/memento/src/main/java/com/iluwatar/StarType.java @@ -2,31 +2,16 @@ package com.iluwatar; public enum StarType { - SUN, RED_GIANT, WHITE_DWARF, SUPERNOVA, DEAD; + SUN("sun"), RED_GIANT("red giant"), WHITE_DWARF("white dwarf"), SUPERNOVA("supernova"), DEAD("dead star"), UNDEFINED(""); - @Override + private String title; + + StarType(String title) { + this.title = title; + } + + @Override public String toString() { - String s = ""; - switch (this) { - case RED_GIANT: - s = "red giant"; - break; - case SUN: - s = "sun"; - break; - case SUPERNOVA: - s = "supernova"; - break; - case WHITE_DWARF: - s = "white dwarf"; - break; - case DEAD: - s = "dead star"; - break; - default: - break; - } - return s; + return title; } - }