From a0d2f6fc7077d80d91588b394b5b188411faf5d2 Mon Sep 17 00:00:00 2001 From: brianblessou Date: Sun, 12 May 2019 22:22:25 +0200 Subject: [PATCH] Add missing javadoc --- Java/pom.xml | 1 - .../main/java/com/gildedrose/BaseItem.java | 30 +++++++++++++++++-- .../java/com/gildedrose/GildedRoseItem.java | 5 ++-- .../main/java/com/gildedrose/ItemFactory.java | 9 ++++++ .../java/com/gildedrose/ItemInterface.java | 3 ++ .../java/com/gildedrose/items/AgedBrie.java | 2 +- .../com/gildedrose/items/BackStageItem.java | 4 +-- .../com/gildedrose/items/ConjuredItem.java | 3 +- .../com/gildedrose/items/SulfuraItem.java | 3 ++ 9 files changed, 49 insertions(+), 11 deletions(-) diff --git a/Java/pom.xml b/Java/pom.xml index 6add3690..333c0817 100644 --- a/Java/pom.xml +++ b/Java/pom.xml @@ -33,5 +33,4 @@ - \ No newline at end of file diff --git a/Java/src/main/java/com/gildedrose/BaseItem.java b/Java/src/main/java/com/gildedrose/BaseItem.java index ca367c8f..d3e624b6 100644 --- a/Java/src/main/java/com/gildedrose/BaseItem.java +++ b/Java/src/main/java/com/gildedrose/BaseItem.java @@ -1,8 +1,10 @@ package com.gildedrose; -import com.sun.xml.internal.rngom.parse.host.Base; -public abstract class BaseItem implements ItemInterface { +/** + * Common functions used by all items (inside the package com.gildedrose.items) + */ +public abstract class BaseItem { public Item item; public static final int MAX_QUAILITY_FOR_AN_ITEM = 50; @@ -12,6 +14,11 @@ public abstract class BaseItem implements ItemInterface { this.item=item; } + /** + * Check if item is expired + * + * @return true, false + */ protected boolean itemHasExpired() { boolean condition; if (item.sellIn < 0) { @@ -22,26 +29,43 @@ public abstract class BaseItem implements ItemInterface { return condition; } + /** + * Increase quality for each item + * + * @param factor, number to increase quality + */ protected void increaseQualityBy(int factor) { item.quality += factor; qualityOfAnItemIsNotMoreThan(MAX_QUAILITY_FOR_AN_ITEM); } + /** + * Decrease quality for each item + * + * @param factor, number to decrease quality + */ protected void decreaseQualityBy(int factor) { item.quality -= factor; qualityOfAnItemIsNeverNegative(); } + /** + * Quality can never be increased above a limit + * + * @param limit, max item quality + */ private void qualityOfAnItemIsNotMoreThan(int limit) { if (item.quality > limit) { item.quality = limit; } } + /** + * Quality can never be negative + */ private void qualityOfAnItemIsNeverNegative() { if (item.quality < 0) { item.quality = 0; } } - } diff --git a/Java/src/main/java/com/gildedrose/GildedRoseItem.java b/Java/src/main/java/com/gildedrose/GildedRoseItem.java index 0afdbc6c..ac93181c 100644 --- a/Java/src/main/java/com/gildedrose/GildedRoseItem.java +++ b/Java/src/main/java/com/gildedrose/GildedRoseItem.java @@ -1,7 +1,5 @@ package com.gildedrose; -import com.sun.xml.internal.rngom.parse.host.Base; - /** * Class which update quality for all items */ @@ -14,6 +12,9 @@ class GildedRoseItem { itemFactory = new ItemFactory(); } + /** + * Update quality and number of days left to sell + */ public void updateQuality() { for (Item item : items) { ItemInterface typeItem = itemFactory.createItemType(item); diff --git a/Java/src/main/java/com/gildedrose/ItemFactory.java b/Java/src/main/java/com/gildedrose/ItemFactory.java index 28fdf805..11fd7cd5 100644 --- a/Java/src/main/java/com/gildedrose/ItemFactory.java +++ b/Java/src/main/java/com/gildedrose/ItemFactory.java @@ -2,6 +2,9 @@ package com.gildedrose; import com.gildedrose.items.*; +/** + * Factory pattern to create a generic item + */ public class ItemFactory { public static final String SULFURA = "Sulfuras, Hand of Ragnaros"; public static final String AGED_BRIE = "Aged Brie"; @@ -9,6 +12,12 @@ public class ItemFactory { public static final String CONJURED = "Conjured Mana Cake"; + /** + * Method to create a generic item + * + * @param item + * @return ItemInterface using item functions + */ public ItemInterface createItemType(Item item) { if (item.name.equals(AGED_BRIE)) { return new AgedBrie(item); diff --git a/Java/src/main/java/com/gildedrose/ItemInterface.java b/Java/src/main/java/com/gildedrose/ItemInterface.java index e644adf6..4d3c20a8 100644 --- a/Java/src/main/java/com/gildedrose/ItemInterface.java +++ b/Java/src/main/java/com/gildedrose/ItemInterface.java @@ -1,5 +1,8 @@ package com.gildedrose; +/** + * Common interface for all item types for updating the quality. + */ public interface ItemInterface { void updateQuality(); diff --git a/Java/src/main/java/com/gildedrose/items/AgedBrie.java b/Java/src/main/java/com/gildedrose/items/AgedBrie.java index 35b16779..08da7014 100644 --- a/Java/src/main/java/com/gildedrose/items/AgedBrie.java +++ b/Java/src/main/java/com/gildedrose/items/AgedBrie.java @@ -5,7 +5,7 @@ import com.gildedrose.Item; import com.gildedrose.ItemInterface; /** - * Class for Aged Brie item inherited from NormalItem + * Class for Aged Brie item inherited from BaseItem */ public class AgedBrie extends BaseItem implements ItemInterface { diff --git a/Java/src/main/java/com/gildedrose/items/BackStageItem.java b/Java/src/main/java/com/gildedrose/items/BackStageItem.java index 615cffb1..4bd095c0 100644 --- a/Java/src/main/java/com/gildedrose/items/BackStageItem.java +++ b/Java/src/main/java/com/gildedrose/items/BackStageItem.java @@ -5,9 +5,9 @@ import com.gildedrose.Item; import com.gildedrose.ItemInterface; /** - * Class Back Stage item inherited form NormalItem + * Class Back Stage item inherited form BaseItem * - * Business rules are inherited from NormalItem with more conditions: + * Business rules are inherited from BaseItem with more conditions: * Quality increases by 2 when there are 10 days or less and by 3 when there are 5 days or less */ public class BackStageItem extends BaseItem implements ItemInterface { diff --git a/Java/src/main/java/com/gildedrose/items/ConjuredItem.java b/Java/src/main/java/com/gildedrose/items/ConjuredItem.java index 7c006aaf..436d88f6 100644 --- a/Java/src/main/java/com/gildedrose/items/ConjuredItem.java +++ b/Java/src/main/java/com/gildedrose/items/ConjuredItem.java @@ -3,10 +3,9 @@ package com.gildedrose.items; import com.gildedrose.BaseItem; import com.gildedrose.Item; import com.gildedrose.ItemInterface; -import com.sun.xml.internal.rngom.parse.host.Base; /** - * Class for the item ConjuredItem inherited from NormalItem + * Class for the item ConjuredItem inherited from BaseItem */ public class ConjuredItem extends BaseItem implements ItemInterface { public ConjuredItem(Item item) { diff --git a/Java/src/main/java/com/gildedrose/items/SulfuraItem.java b/Java/src/main/java/com/gildedrose/items/SulfuraItem.java index cb3d12f1..be4e73e8 100644 --- a/Java/src/main/java/com/gildedrose/items/SulfuraItem.java +++ b/Java/src/main/java/com/gildedrose/items/SulfuraItem.java @@ -4,6 +4,9 @@ import com.gildedrose.Item; import com.gildedrose.BaseItem; import com.gildedrose.ItemInterface; +/** + * Class inherited by BaseItem + */ public class SulfuraItem extends BaseItem implements ItemInterface { public SulfuraItem(Item item) { this.item=item;