Skip to content
Snippets Groups Projects
Verified Commit 814e49aa authored by Mirio Eggmann's avatar Mirio Eggmann :zap:
Browse files

refactor

parent 0d1e3eb0
Branches
No related tags found
No related merge requests found
......@@ -3,60 +3,65 @@ package com.gildedrose;
class GildedRose {
Item[] items;
private static final String BACKSTAGE_PASSES = "Backstage passes to a TAFKAL80ETC concert";
private static final String SULFURAS = "Sulfuras, Hand of Ragnaros";
private static final String AGED_BRIE = "Aged Brie";
public GildedRose(Item[] items) {
this.items = items;
}
public void updateQuality() {
for (int i = 0; i < items.length; i++) {
if (!items[i].name.equals("Aged Brie")
&& !items[i].name.equals("Backstage passes to a TAFKAL80ETC concert")) {
if (items[i].quality > 0) {
if (!items[i].name.equals("Sulfuras, Hand of Ragnaros")) {
items[i].quality = items[i].quality - 1;
}
}
} else {
if (items[i].quality < 50) {
items[i].quality = items[i].quality + 1;
if (items[i].name.equals("Backstage passes to a TAFKAL80ETC concert")) {
if (items[i].sellIn < 11) {
if (items[i].quality < 50) {
items[i].quality = items[i].quality + 1;
}
}
if (items[i].sellIn < 6) {
if (items[i].quality < 50) {
items[i].quality = items[i].quality + 1;
}
}
}
}
for (Item item : items) {
if (item.name.equals(AGED_BRIE)) {
updateQualityAgedBrie(item);
} else if (item.name.equals(BACKSTAGE_PASSES)) {
updateQualityBackstagePasses(item);
} else if (!item.name.equals(SULFURAS)) {
updateQualityOtherItems(item);
}
}
}
if (!items[i].name.equals("Sulfuras, Hand of Ragnaros")) {
items[i].sellIn = items[i].sellIn - 1;
}
private void updateQualityAgedBrie(Item item) {
if (item.quality < 50) {
item.quality++;
}
if (item.sellIn < 0 && item.quality < 50) {
item.quality++;
}
updateSellIn(item);
}
if (items[i].sellIn < 0) {
if (!items[i].name.equals("Aged Brie")) {
if (!items[i].name.equals("Backstage passes to a TAFKAL80ETC concert")) {
if (items[i].quality > 0) {
if (!items[i].name.equals("Sulfuras, Hand of Ragnaros")) {
items[i].quality = items[i].quality - 1;
}
}
} else {
items[i].quality = items[i].quality - items[i].quality;
}
} else {
if (items[i].quality < 50) {
items[i].quality = items[i].quality + 1;
}
}
private void updateQualityBackstagePasses(Item item) {
if (item.quality < 50) {
item.quality++;
if (item.sellIn < 11 && item.quality < 50) {
item.quality++;
}
if (item.sellIn < 6 && item.quality < 50) {
item.quality++;
}
}
updateSellIn(item);
if (item.sellIn < 0) {
item.quality = 0;
}
}
private void updateQualityOtherItems(Item item) {
if (item.quality > 0) {
item.quality--;
}
updateSellIn(item);
if (item.sellIn < 0 && item.quality > 0) {
item.quality--;
}
}
private void updateSellIn(Item item) {
if (!item.name.equals(SULFURAS)) {
item.sellIn--;
}
}
}
\ No newline at end of file
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment