From 7422960de81d47ee4e5cf3823bd9502993c29de5 Mon Sep 17 00:00:00 2001 From: Trobax Date: Wed, 23 Nov 2022 16:52:22 +0100 Subject: [PATCH] breaking down more scopes breaking down the Gilded Rose class to several methods for a better approach --- .../main/java/com/gildedrose/GildedRose.java | 52 +++++++++++-------- 1 file changed, 31 insertions(+), 21 deletions(-) diff --git a/Java/src/main/java/com/gildedrose/GildedRose.java b/Java/src/main/java/com/gildedrose/GildedRose.java index 9cf4c11a..f4c06aae 100644 --- a/Java/src/main/java/com/gildedrose/GildedRose.java +++ b/Java/src/main/java/com/gildedrose/GildedRose.java @@ -15,27 +15,9 @@ class GildedRose { private static void updateItem(Item item) { updateQuality(item); - - if (!item.name.equals("Sulfuras, Hand of Ragnaros")) { - item.sellIn--; - } - - if (item.sellIn < 0) { - if (!item.name.equals("Aged Brie")) { - if (!item.name.equals("Backstage passes to a TAFKAL80ETC concert")) { - if (item.quality > 0) { - if (!item.name.equals("Sulfuras, Hand of Ragnaros")) { - item.quality--; - } - } - } else { - item.quality = 0; - } - } else { - if (item.quality < 50) { - item.quality++; - } - } + updateSelling(item); + if (isExpired(item)) { + updateExpired(item); } } @@ -67,4 +49,32 @@ class GildedRose { } } } + + private static void updateSelling(Item item) { + if (!item.name.equals("Sulfuras, Hand of Ragnaros")) { + item.sellIn--; + } + } + + private static boolean isExpired(Item item) { + return item.sellIn < 0; + } + + private static void updateExpired(Item item) { + if (!item.name.equals("Aged Brie")) { + if (!item.name.equals("Backstage passes to a TAFKAL80ETC concert")) { + if (item.quality > 0) { + if (!item.name.equals("Sulfuras, Hand of Ragnaros")) { + item.quality--; + } + } + } else { + item.quality = 0; + } + } else { + if (item.quality < 50) { + item.quality++; + } + } + } }