Prevayler recuperando dados

5 respostas
Hempx

no prevayler tutorial 15 minutos para recuperar um dado ele faz um Transação...
pq isso?? apenas para fazer o log??? eu podia simplesmente chamar o metado public java.lang.Object prevalentSystem() e pegar o dado que eu quero???
tem alguma justificativa de fazer uma transação para recuperar um dado? já q ele está na memoria?
vlws

:arrow: olha o codigo ae do tutorial

import java.io.Serializable;
import java.util.HashMap;
import org.prevayler.Command;
import org.prevayler.PrevalentSystem;

public class RecuperaContatos implements Command {

    private HashMap contatos;
    
    public HashMap getContatos() {
        return contatos;
    }

    public Serializable execute(PrevalentSystem system) {
        SistemaContato contatos = (SistemaContato) system;
        HashMap map = contatos.getContatos();
        return map;
    }
}

5 Respostas

cv1

O tutorial de 15 mins aqui do GUJ usa Prevayler 1. Nessa versao, qualquer query “sensivel”, ou seja, que necessariamente precisa ter a ultima versao dos dados, eh executada como um Command.

No Prevayler 2, vc tem a interface Query (e tambem TransactionWithQuery) pra fazer justamente isso.

Em ambos os casos, voce pode normalmente acessar o seu prevalentSystem() e sair mexendo. O lance todo eh saber que, quando vc usa uma Query (ou Command, na versao 1.x) eh que o seu sistema vai estar em um estado absolutamente consistente entre todas as threads.

Hempx

“cv”:
O tutorial de 15 mins aqui do GUJ usa Prevayler 1. Nessa versao, qualquer query “sensivel”, ou seja, que necessariamente precisa ter a ultima versao dos dados, eh executada como um Command.

No Prevayler 2, vc tem a interface Query (e tambem TransactionWithQuery) pra fazer justamente isso.

Em ambos os casos, voce pode normalmente acessar o seu prevalentSystem() e sair mexendo. O lance todo eh saber que, quando vc usa uma Query (ou Command, na versao 1.x) eh que o seu sistema vai estar em um estado absolutamente consistente entre todas as threads.

vlws pra variar cv… esse cara é iluminado hehhehe…
outra coisa… to com dificuldade para achar textos explicando como os logs do prevayler funciona…
coisas tipo… cada transação gera um log??? logs antigos podem ser pagados?? se sim… como sei se ele pode ser apagado??..
alguem sabe sobre isso ow conhece algum link ae?

cv1

“Hempx”:
outra coisa… to com dificuldade para achar textos explicando como os logs do prevayler funciona…
coisas tipo… cada transação gera um log??? logs antigos podem ser pagados?? se sim… como sei se ele pode ser apagado??..
alguem sabe sobre isso ow conhece algum link ae?

Hmmm… bem lembrado, preciso escrever sobre isso la no site. O jeito que o Prevayler usa pra gerenciar os logs mudou varias vezes durante o desenvolvimento, e eu ja me perdi… nao sei mais como funciona :smiley:

Pra esse tipo de questao mais especifica vale a pena dar uma olhada no codigo, eh bem pequeno e facil de entender. Mas, mesmo assim, foi mal pela preguica… :smiley:

Ironlynx

hehehe…foi bom o Hempx ter perguntado…eu jah ia te pentelhar sobre o mesmo assunto… :smiley:

cv1

Tá lá: http://docs.codehaus.org/display/PREVAYLER/File+Management

Por favor, comentem! Eu tenho certeza de que eu preciso escrever mais aqui, so nao sei o que :smiley:

Criado 16 de março de 2004
Ultima resposta 17 de mar. de 2004
Respostas 5
Participantes 3