canguru
Class Canguru

java.lang.Object
  |
  +--canguru.Canguru
All Implemented Interfaces:
java.util.Collection, java.util.Set

public class Canguru
extends java.lang.Object
implements java.util.Set

Classe que representa uma fachada entre a aplicação cliente e o arcabouço Canguru Oferece uma interface de Collection, Persistência e Recuperação de dados.

Version:
$Id: Canguru.java,v 1.31 2003/12/06 16:56:09 galmeida Exp $
See Also:
Collection, Set

Nested Class Summary
private  class Canguru.CanguruSaver
          Classe responsável por salvar os dados do Canguru.
 
Field Summary
private  java.util.Set objects
          guarda os elementos
private  Canguru.CanguruSaver saver
          responsavel por percorrer os objetos p/ salvando-os.
private  java.lang.Class valueClass
          armazena a classe dos objetos que trataremos.
 
Constructor Summary
Canguru(java.lang.String resourceName, java.lang.Class valueClass)
          Construtor da classe Canguru.
 
Method Summary
 boolean add(java.lang.Object o)
          Adiciona um elemento especificado ao Canguru.
 boolean addAll(java.util.Collection c)
          Adiciona uma Collection de objetos ao Canguru.
 void addFilter(java.lang.String attributeName, java.lang.Object attributeValue)
          Adiciona um critério para filtrar a busca
 void clear()
          Remove todos os elementos do Canguru.
 boolean contains(java.lang.Object o)
          Verifica se esta Collection contém o elemento dado.
 boolean containsAll(java.util.Collection c)
          Verifica se esta Collection contém todos os elementos da coleção de objetos dada.
 boolean equals(java.lang.Object obj)
           
 java.util.Set getFilteredSubset()
          Retorna um Set somente com os objetos que satisfaçam as condições do filtro.
 boolean isEmpty()
          Verifica se não existem elementos nesta Collection
 java.util.Iterator iterator()
          Retorna um iterator para os elementos deste set
 boolean remove(java.lang.Object o)
          Remove, se presente, o elemento dado desta Collection
 boolean removeAll(java.util.Collection c)
          Remove desta Collection todos os elementos presentes na coleção dada
 void resetFilter()
          Remove todos os filtros.
 void restore()
          Recupera todos os dados do Canguru.
 boolean retainAll(java.util.Collection c)
          Mantém nesta Collection todos os elementos presentes na coleção dada
 void save()
          Persiste todos os objetos do Canguru.
 int size()
          Retorna o número de elementos na Collection
 java.lang.Object[] toArray()
          Retorna um array contendo todos os elementos nesta Collection.
 java.lang.Object[] toArray(java.lang.Object[] a)
           
 java.lang.String toString()
          Gera a representação em formato String do Canguru.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.Set
hashCode
 

Field Detail

valueClass

private java.lang.Class valueClass
armazena a classe dos objetos que trataremos.


objects

private java.util.Set objects
guarda os elementos


saver

private Canguru.CanguruSaver saver
responsavel por percorrer os objetos p/ salvando-os.

Constructor Detail

Canguru

public Canguru(java.lang.String resourceName,
               java.lang.Class valueClass)
        throws CanguruInitializationException
Construtor da classe Canguru.

Parameters:
valueClass - Classe do objetos objetos que serão persistidos no Canguru, esta classe deve implementar java.io.Serializable.
resourceName - Nome para identificar uma collection de maneira única, é através desse nome que os dados serão recuperados
Throws:
CanguruInitializationException - É lançada quando ocorre um erro vital na inicialização do Canguru
Method Detail

clear

public void clear()
Remove todos os elementos do Canguru.

Specified by:
clear in interface java.util.Set

add

public boolean add(java.lang.Object o)
Adiciona um elemento especificado ao Canguru.

Specified by:
add in interface java.util.Set
Parameters:
o - Elemento a ser adicionado, deve ser instâncias da classe valueClass (especificada no construtor)
Returns:
true se o Canguru foi modificado pela nova adição.

addAll

public boolean addAll(java.util.Collection c)
Adiciona uma Collection de objetos ao Canguru.

Specified by:
addAll in interface java.util.Set
Parameters:
c - Collection contendo instâncias da classe valueClass (especificada no construtor)
Returns:
true se o Canguru foi modificado pela nova adição.

save

public void save()
          throws java.lang.ClassNotFoundException,
                 java.sql.SQLException,
                 java.io.IOException,
                 IOException
Persiste todos os objetos do Canguru.

Throws:
java.io.IOException - É lançada quando ocorre algum problema de IO no processo de salvar os dados.
java.lang.ClassNotFoundException - É lançada quando a classe dos objetos que está sendo salva não pode ser encontrada
java.sql.SQLException - É lançada quando há um erro na execução de algum comando SQL durante o processo de salvar os dados
IOException

restore

public void restore()
             throws java.io.IOException,
                    java.lang.ClassNotFoundException,
                    java.sql.SQLException,
                    BeanManipulationException
Recupera todos os dados do Canguru.

Throws:
java.io.IOException - É lançada quando ocorre algum problema de IO no processo de recuperação de dados.
java.lang.ClassNotFoundException - É lançada quando a classe dos objetos que estamos recuperando não pode ser encontrada.
java.sql.SQLException - É lançada quando há um erro na execução de algum comando SQL durante o processo de recuperação dos dados
BeanManipulationException - É lançada quando há um erro na introspecção durante o processo de recuperação dos dados

toString

public java.lang.String toString()
Gera a representação em formato String do Canguru.

Overrides:
toString in class java.lang.Object
Returns:
representação textual do Canguru.

contains

public boolean contains(java.lang.Object o)
Verifica se esta Collection contém o elemento dado.

Specified by:
contains in interface java.util.Set
Parameters:
o - Elemento cuja presença na Collection será testada
Returns:
true se a Collection contiver o elemento dado.

containsAll

public boolean containsAll(java.util.Collection c)
Verifica se esta Collection contém todos os elementos da coleção de objetos dada.

Specified by:
containsAll in interface java.util.Set
Parameters:
c - Coleção de objetos que será testada se está contida nesta Collection
Returns:
true se esta Collection contiver todos os elementos da coleção dada

equals

public boolean equals(java.lang.Object obj)
Specified by:
equals in interface java.util.Set
Overrides:
equals in class java.lang.Object

isEmpty

public boolean isEmpty()
Verifica se não existem elementos nesta Collection

Specified by:
isEmpty in interface java.util.Set
Returns:
true se não houverem elementos nesta Collection

iterator

public java.util.Iterator iterator()
Retorna um iterator para os elementos deste set

Specified by:
iterator in interface java.util.Set
Returns:
um iterator para os elementos deste set

remove

public boolean remove(java.lang.Object o)
Remove, se presente, o elemento dado desta Collection

Specified by:
remove in interface java.util.Set
Parameters:
o - Elemento que será removido da Collection
Returns:
true se o elemento puder ser removido da Collection

removeAll

public boolean removeAll(java.util.Collection c)
Remove desta Collection todos os elementos presentes na coleção dada

Specified by:
removeAll in interface java.util.Set
Parameters:
c - Coleção de objetos que define quais elementos serão removidos desta Collection
Returns:
true se esta Collection for alterada como resultado da chamada deste método

retainAll

public boolean retainAll(java.util.Collection c)
Mantém nesta Collection todos os elementos presentes na coleção dada

Specified by:
retainAll in interface java.util.Set
Parameters:
c - Coleção de objetos que define quais elementos serão mantidos nesta Collection
Returns:
true se esta Collection for alterada como resultado da chamada deste método

size

public int size()
Retorna o número de elementos na Collection

Specified by:
size in interface java.util.Set
Returns:
número de elementos na Collection

toArray

public java.lang.Object[] toArray()
Retorna um array contendo todos os elementos nesta Collection.

Specified by:
toArray in interface java.util.Set
Returns:
array contendo todos os elementos nesta Collection.

toArray

public java.lang.Object[] toArray(java.lang.Object[] a)
Specified by:
toArray in interface java.util.Set

addFilter

public void addFilter(java.lang.String attributeName,
                      java.lang.Object attributeValue)
               throws AttributeDefinitionNotFoundException,
                      InvalidNameException,
                      InvalidAttributeException,
                      FilterException
Adiciona um critério para filtrar a busca

Parameters:
attributeName - Nome do atributo que será verificado no filtro
attributeValue - Valor pelo qual o atributo será filtrado
Throws:
AttributeDefinitionNotFoundException - É lançada quando a definição do atributo não pode ser encontrada.
InvalidNameException - É lançada quando tenta adicionar um filtro com nome de atributo inválido
InvalidAttributeException - É lançada quando o elemento não tem valor para ser filtrado.
FilterException - É lançada quando não existe propriedade com nome attributeName dado

getFilteredSubset

public java.util.Set getFilteredSubset()
                                throws java.sql.SQLException,
                                       FilterException
Retorna um Set somente com os objetos que satisfaçam as condições do filtro.

Returns:
subconjunto deste Set, contendo somente com os objetos que satisfaçam as condições do filtro.
Throws:
java.sql.SQLException - É lançada quando há erro na execução dos comandos SQL de busca dos objetos
FilterException - É lançada quando há uma falha na busca pelos elementos que satisfaçam as condições do filtro.

resetFilter

public void resetFilter()
Remove todos os filtros.