Payload Package
The payload package can be used for clients as well as for servers. It contains three classes: Clientreport, Currentreport, and serializer.
Clientreport represents a number of client reports:
package Payload;
import java.io.*;
import java.util.*;
/**
*
* @author Brian Connolly Brian@ideajungle.com
*/
public class ClientReport implements Serializable {
public Date clientStartDateTime;
public Date serverStartDateTime;
public long clientElapsedMS;
public String type;
public String status;
public String transactionID;
public String clientID;
//Default public constructor for WSDL
public ClientReport() {
}
/*
. . . Get, set property methods are not shown
*/
In the preceding code, Clientstartdatetime records the time that the client initiated the transaction. Serverstartdatetime is not currently in use; its purpose is to save the server start time of the transaction so that the number of transactions can be associated with changes in the server resource usage over time.
CLIENTELAPSEDMS is the primary tool we record: the number of milliseconds to start recording a new transaction from the client until it receives the result of the last Web service call.
Type allows clients to use types-profiling transactions. In general, the system of things provides many kinds of transactions. We expect certain types to be relatively easy for servers, some of which are relatively difficult, so that we can identify them when we analyze the response times and measure server resources.