repositorio
Interface IRepositorioProduto

All Known Implementing Classes:
RepositorioProdutoVector

public interface IRepositorioProduto

Interface que determina o que um repositório de produtos deve fazer.

Author:
Lucas Tenório, Rafael Marinheiro

Method Summary
 void add(Produto produto)
          Adiciona um novo produto ao repositório.
 boolean contem(Produto produto)
          Verifica se um determinado produto está no repositório.
 java.util.ArrayList<Produto> procurarMuitos(Filtro<Produto> f)
          Procura todos os produtos que satisfaçam uma certa condição.
 Produto procurarUm(Filtro<Produto> f)
          Procura um único produto que satisfaça uma certa condição.
 void remove(Produto produto)
          Remove um produto do repositório.
 void sort()
          Ordena o repositório.
 int tamanho()
          Verifica quantos produtos estão no repositório.
 

Method Detail

add

void add(Produto produto)
Adiciona um novo produto ao repositório.

Parameters:
produto - Produto a ser adicionado

remove

void remove(Produto produto)
            throws ProdutoNaoExisteException
Remove um produto do repositório.

Parameters:
produto - Produto a ser removido.
Throws:
ProdutoNaoExisteException - Quando o produto procurado não existe

contem

boolean contem(Produto produto)
Verifica se um determinado produto está no repositório.

Parameters:
produto - Produto que será procurado.
Returns:
True se o produto existe. Retorna falso caso contrário.

procurarMuitos

java.util.ArrayList<Produto> procurarMuitos(Filtro<Produto> f)
                                            throws ProdutoNaoExisteException
Procura todos os produtos que satisfaçam uma certa condição.

Parameters:
f - Filtro que determina a condição desejada.
Returns:
Um arraylist de produtos que contém todos os produtos que satisfazem a condição imposta.
Throws:
ProdutoNaoExisteException - Quando o produto procurado não existe

procurarUm

Produto procurarUm(Filtro<Produto> f)
                   throws ProdutoNaoExisteException
Procura um único produto que satisfaça uma certa condição.

Parameters:
f - Filtro que impõe a condição.
Returns:
O produto desejado.
Throws:
ProdutoNaoExisteException - Quando o produto procurado não existe

sort

void sort()
Ordena o repositório.


tamanho

int tamanho()
Verifica quantos produtos estão no repositório.

Returns:
O número de produtos.