mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2026-02-19 08:21:37 +00:00
Add Itembehavior interface and default impl.
Again, separating the item behavior into a separate interface allows us to determine the item behavior by choosing a sellIn and a qualityBehavior implementation. The defaultItemBehavior uses the default quality and sellIn behavior
This commit is contained in:
parent
11c697d7c5
commit
a282a8455e
@ -0,0 +1,19 @@
|
|||||||
|
package com.gildedrose.behavior.item;
|
||||||
|
|
||||||
|
import com.gildedrose.Item;
|
||||||
|
import com.gildedrose.behavior.quality.DefaultQualityBehavior;
|
||||||
|
import com.gildedrose.behavior.sellin.DefaultSellInBehavior;
|
||||||
|
import com.gildedrose.behavior.quality.QualityBehavior;
|
||||||
|
import com.gildedrose.behavior.sellin.SellInBehavior;
|
||||||
|
|
||||||
|
public class DefaultItemBehavior implements ItemBehavior {
|
||||||
|
|
||||||
|
private final QualityBehavior qualityBehavior = new DefaultQualityBehavior();
|
||||||
|
private final SellInBehavior sellInBehavior = new DefaultSellInBehavior();
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void processUpdate(Item item) {
|
||||||
|
qualityBehavior.processQualityUpdate(item);
|
||||||
|
sellInBehavior.processSellInUpdate(item);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,8 @@
|
|||||||
|
package com.gildedrose.behavior.item;
|
||||||
|
|
||||||
|
import com.gildedrose.Item;
|
||||||
|
|
||||||
|
public interface ItemBehavior {
|
||||||
|
|
||||||
|
void processUpdate(Item item);
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue
Block a user