public interface Stock
Toto rozhrani reprezentuje sklad vyrobku. Do skladu lze vyrobky pridavat a zase je z nej odebirat.
Sklad ma omezenou kapacitu. Pro kazdou ze tri moznych velikosti vyrobku (SMALL, MEDIUM, LARGE) existuje ve skladu prostor, kam se ukladaji pouze vyrobky teto velikosti. Kapacita kazde z techto tri prostor oblasti je dana maximalnim poctem vyrobku, ktere sem lze ulozit. V pripade, ze se naplni prostor pro male vyrobky, nelze uz tedy dalsi maly vyrobek do skladu ulozit, prestoze by v prostoru pro velke vyrobky jeste bylo misto.
| Method Summary | |
|---|---|
void |
addProduct(Product product)
Vlozi do skladu jeden kus vyrobku. |
void |
addProduct(Product product,
int count)
Vlozi do skladu count kusu vyrobku. |
int |
getProductCount(Product product)
Vrati informaci o poctu daneho typu vyrobku na sklade. |
int |
getSpaceLeft(Product.Size size)
Vrati informaci o volnem miste ve skladu. |
void |
removeProduct(Product product)
Odstrani ze skladu jeden kus vyrobku. |
void |
removeProduct(Product product,
int count)
Odstrani ze skladu count kusu vyrobku. |
| Method Detail |
|---|
void addProduct(Product product)
product - vyrobek, ktery se ma uskladnit
cz.muni.fi.pb162.school.StockFullException - pokud ve skladu jiz neni misto pro vyrobek dane velikosti
NullPointerException - pokud ma parametr
product hodnotu null
void addProduct(Product product,
int count)
count kusu vyrobku.
product - typ vyrobku, ktery se ma uskladnitcount - pocet kusu vyrobku, ktere se maji uskladnit
cz.muni.fi.pb162.school.StockFullException - pokud ve skladu jiz neni misto pro dany pocet vyrobku
dane velikosti
NullPointerException - pokud ma parametr
product hodnotu null
IllegalArgumentException - pokud parametr
count neobsahuje kladnou hodnotuint getProductCount(Product product)
product - vyrobek, jehoz stav na sklade se zjistuje
NullPointerException - pokud ma parametr
product hodnotu nullint getSpaceLeft(Product.Size size)
size - velikost vyrobku urcujici oblast skladu, jejiz
kapacita se zjistuje
NullPointerException - pokud ma parametr
size hodnotu nullvoid removeProduct(Product product)
product - vyrobek, ktery se ma odstranit ze skladu
cz.muni.fi.pb162.school.NotEnoughProductsException - pokud na sklade dany vyrobek neni k dispozici
NullPointerException - pokud ma parametr
product hodnotu null
void removeProduct(Product product,
int count)
count kusu vyrobku.
product - typ vyrobku, ktery se ma odstranit ze skladucount - pocet kusu vyrobku, ktere se maji odstranit ze skladu
cz.muni.fi.pb162.school.NotEnoughProductsException - pokud na sklade neni k dispozici dany pocet daneho vyrobku
NullPointerException - pokud ma parametr
product hodnotu null
IllegalArgumentException - pokud parametr
count neobsahuje kladnou hodnotu