import java.util.LinkedList;
/**
* Realisation de l'interface Stock sous forme d'une liste.
*
* un stock sait :
* - etre cree
* - ajouter/enlever un produit
* - indiquer s'il est plein
* - renvoyer une chaine de caracteres decrivant son contenu
*
* @author F. Dagnat P. Geffroy
*/
public class StockList implements Stock {
private LinkedList<Product> content;
/**
* Construit un stock dont la capacite est donne par s
* @param s la taille du stock
*/
public StockList() { content = new LinkedList<Product>(); }
/**
* ajoute un produit, et incremente le nombre d'elements
* @param p le produit ajoute
*/
public void add(Product p) {
content.add(p);
}
/**
* retire un produit, et decremente le nombre d'elements
* on voit ici que le choix du produit retire pourrait
* etre different...
*/
public Product remove() {
if (isEmpty())
return null;
return content.removeLast();
}
/**
* indique si je suis plein
*/
public boolean isFull() { return false; }
/**
* indique si le stock est vide
*/
public boolean isEmpty() {return content.size() == 0; }
/**
* donne le nombre de produits dans le stock
*/
public int getSize() {return content.size(); }
/**
* renvoie une chaine de caracteres representant le contenu du stock
*/
public String toString() {
return content.toString();
}
}