Configurando o Armazenamento no Cache do Comando
Os comandos que podem ser armazenados em cache são armazenados em cache para reutilização em um mecanismo semelhante para servlets e arquivos JSP (JavaServer Pages).
Sobre Esta Tarefa
Um ID de cache exclusivo pode ser gerado a partir do nome do comando mais o valor do símbolo.
Para utilizar o armazenamento em cache do comando, você deve:
Procedimento

Exemplo
Os exemplos de código a seguir ilustram como usar o armazenamento em cache de comando para um comando simples de quota de ações.
Este exemplo de código ilustra um bean de comando de quota de ações. Aceita um ticker como um parâmetro de entrada e produz um preço como seu parâmetro de saída:
public class QuoteCommand extends CacheableCommandImpl
{
private String ticker;
private double price;
// chamado para validar que os parâmetros de entrada do comando foram definidos
public boolean isReadyToCallExecute() {
return (ticker!=null);
}
// chamado por uma acerto de cache para copiar propriedades de saída para este objeto
public void setOutputProperties(TargetableCommand fromCommand) {
QuoteCommand f = (QuoteCommand)fromCommand;
this.price = f.price;
}
// método de lógica de negócio chamado quando o preço da ação precisa ser retornado
public void performExecute()throws Exception {...}
//parâmetros de entrada para o comando
public void setTicker(String ticker) { this.ticker=ticker;}
public String getTicker() { return ticker;}
//parâmetros de saída para o comando
public double getPrice() { return price;};
}
Este exemplo de código ilustra como usar a política de cache para armazenar em cache o objeto de comando de quota de ações usando um ticker de ações como a chave de cache e um tempo para atividade de 60 segundos:
<cache>
<cache-entry>
<class>command</class>
<sharing-policy>not-shared</sharing-policy>
<name>QuoteCommand</name>
<cache-id>
<component type="method" id="getTicker">
<required>true</required>
</component>
<priority>3</priority>
<timeout>60</timeout>
</cache-id>
</cache-entry>
</cache>