Network Deployment (Distributed operating systems), v8.0 > Reference > Developer examples


Example: Caching a command object

Cacheable commands are stored in the cache for reuse with a similar mechanism for servlets and JSP files.

This example of command caching is a simple stock quote command.


Example

The following is a stock quote command bean. It accepts a ticker as an input parameter and produces a price as its output parameter.
public class QuoteCommand extends CacheableCommandImpl
{
    private String ticker;
    private double price;
    // called to validate that command input parameters have been set
    public boolean isReadyToCallExecute() {
      return (ticker!=null);
    }
    // called by a cache-hit to copy output properties to this object
    public void setOutputProperties(TargetableCommand fromCommand) {
        QuoteCommand f = (QuoteCommand)fromCommand;
        this.price = f.price;
    }

   // business logic method called when the stock price must be retrieved
    public void performExecute()throws Exception {...}

    //input parameters for the command
    public void setTicker(String ticker) { this.ticker=ticker;}
    public String getTicker() { return ticker;}

    //output parameters for the command
    public double getPrice()  { return price;};
}


Example

To cache the above command object using the stock ticker as the cache key and using a 60 second time-to-live, use the following cache policy:
<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> 

Configure command caching

+

Search Tips   |   Advanced Search