diff --git a/Java-Approvals/src/main/java/com/gildedrose/GildedRose.java b/Java-Approvals/src/main/java/com/gildedrose/GildedRose.java index 844f8d91..74f1b0a7 100644 --- a/Java-Approvals/src/main/java/com/gildedrose/GildedRose.java +++ b/Java-Approvals/src/main/java/com/gildedrose/GildedRose.java @@ -11,31 +11,7 @@ class GildedRose { public void updateQuality() { for (Item item : items) { - if (item.isAgedBrie()) { - item.increaseQualityByOne(); - - item.decreaseSellInEachDay(); - - if (item.sellIn < 0) { - item.increaseQualityByOne(); - } - } else if (item.isBackstagePasses()) { - item.increaseQualityBackstage(); - - item.decreaseSellInEachDay(); - - if (item.sellIn < 0) { - item.quality = 0; - } - } else { - item.decreaseQualityByOne(); - - item.decreaseSellInEachDay(); - - if (item.sellIn < 0) { - item.decreaseQualityByOne(); - } - } + item.updateQuality(); } } diff --git a/Java-Approvals/src/main/java/com/gildedrose/Item.java b/Java-Approvals/src/main/java/com/gildedrose/Item.java index 525efbcd..aaa47d1b 100644 --- a/Java-Approvals/src/main/java/com/gildedrose/Item.java +++ b/Java-Approvals/src/main/java/com/gildedrose/Item.java @@ -17,6 +17,34 @@ public class Item { this.quality = quality; } + public void updateQuality() { + if (isAgedBrie()) { + increaseQualityByOne(); + + decreaseSellInEachDay(); + + if (sellIn < 0) { + increaseQualityByOne(); + } + } else if (isBackstagePasses()) { + increaseQualityBackstage(); + + decreaseSellInEachDay(); + + if (sellIn < 0) { + quality = 0; + } + } else { + decreaseQualityByOne(); + + decreaseSellInEachDay(); + + if (sellIn < 0) { + decreaseQualityByOne(); + } + } + } + public boolean isBackstagePasses() { return name.equals(BACKSTAGE_PASSES); }