diff --git a/src/main/java/com/gildedrose/item_helpers/ItemHandler.java b/src/main/java/com/gildedrose/item_helpers/ItemHandler.java deleted file mode 100644 index 286c9640..00000000 --- a/src/main/java/com/gildedrose/item_helpers/ItemHandler.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.gildedrose.item_helpers; - -import com.gildedrose.main.Item; - -import static java.lang.Math.max; - -public class ItemHandler { - - private final Item item; - - public ItemHandler(Item item) { - this.item = item; - } - - public void decrementSellInDate() { - item.sellIn--; - } - - public boolean beforeSellInDate() { - return item.sellIn >= 0; - } - - public void decrementQuality() { - item.quality = max(item.quality - 1, 0); - } - - public void decrementQualityBy2() { - item.quality = max(item.quality - 2, 0); - } - - public void decrementQualityBy4() { - item.quality = max(item.quality - 4, 0); - } - -} diff --git a/src/main/java/com/gildedrose/items/LegendaryItem.java b/src/main/java/com/gildedrose/items/LegendaryItem.java index 58948bcb..6daf0967 100644 --- a/src/main/java/com/gildedrose/items/LegendaryItem.java +++ b/src/main/java/com/gildedrose/items/LegendaryItem.java @@ -27,7 +27,7 @@ public class LegendaryItem implements ItemType { public void decrementSellInDate() { item.sellIn--; } - + public static boolean isLegendary(Item item) { return item.name.equals(LEGENDARY); } diff --git a/src/main/java/com/gildedrose/items/NormalItem.java b/src/main/java/com/gildedrose/items/NormalItem.java index 048010b0..f877d085 100644 --- a/src/main/java/com/gildedrose/items/NormalItem.java +++ b/src/main/java/com/gildedrose/items/NormalItem.java @@ -1,28 +1,45 @@ package com.gildedrose.items; -import com.gildedrose.item_helpers.ItemHandler; import com.gildedrose.item_helpers.ItemType; import com.gildedrose.main.Item; +import static java.lang.Math.max; + public class NormalItem implements ItemType { public static final String NORMAL = "Normal"; - private final ItemHandler item; + private final Item item; public NormalItem(Item item) { - this.item = new ItemHandler(item); + this.item = item; } @Override public void updateQuality() { - item.decrementSellInDate(); - if (item.beforeSellInDate()) { - item.decrementQuality(); + decrementSellInDate(); + if (beforeSellInDate()) { + decrementQuality(); } else { - item.decrementQualityBy2(); + decrementQualityBy2(); } } + public void decrementSellInDate() { + item.sellIn--; + } + + public boolean beforeSellInDate() { + return item.sellIn >= 0; + } + + public void decrementQuality() { + item.quality = max(item.quality - 1, 0); + } + + public void decrementQualityBy2() { + item.quality = max(item.quality - 2, 0); + } + @Override public String getName() { return NORMAL;