Package de.desy.tine.server

Source Code of de.desy.tine.server.TServerStatistics

/*
* Created on Feb 22, 2005
*
* TODO To change the template for this generated file go to
* Window - Preferences - Java - Code Style - Code Templates
*/
package de.desy.tine.server;

import java.io.ByteArrayOutputStream;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;

import de.desy.tine.definitions.TErrorList;
import de.desy.tine.definitions.TFormat;
import de.desy.tine.io.TDataOutputStream;
import de.desy.tine.server.equipment.TEquipmentModuleFactory;
import de.desy.tine.server.logger.MsgLog;
import de.desy.tine.stringUtils.StringToBytes;
import de.desy.tine.structUtils.TStructDescription;
import de.desy.tine.structUtils.TStructIfc;
import de.desy.tine.structUtils.TStructRegistry;

// TODO Class documentation
/**
* \internal
*
* @author jwlg TODO Get information from server.
*/
public class TServerStatistics implements TStructIfc
{
  TEquipmentModuleFactory myServer;
  // private String fecName = ""; /* exported as 16-byte char */
  private byte[] reserved = new byte[4]; /* TODO What is this? */
  private int localtime;
  private int starttime;
  private int systemPollingRate;
  private short numBkgTsks;
  private short numTotalContracts;
  private short numTotalClients;
  private short numTargetContracts;
  private short numTargetClients;
  private short numConnections;
  private int numConnectionTimeouts;
  private int numConnectionArrivals;
  private int numUdpPkts;
  private int numTcpPkts;
  private int numIpxPkts;
  private int numSpxPkts;
  private static TStructDescription myStructDsc;
  static
  {
    createTaggedStructure();
  }
  public TServerStatistics(TEquipmentModuleFactory server)
  {
    myServer = server;
  }
  /**
   * Constructs and registers the tagged structure description.
   */
  private static void createTaggedStructure()
  {
    myStructDsc = new TStructDescription("AQS");
    myStructDsc.beginDefinition();
    myStructDsc.addField("fecName",TFormat.CF_TEXT, 16); // was 32!
    myStructDsc.addField("reserved",TFormat.CF_BYTE, 4);
    myStructDsc.addField("localtime", TFormat.CF_LONG, 1);
    myStructDsc.addField("starttime", TFormat.CF_LONG, 1);
    myStructDsc.addField("sysPollRate", TFormat.CF_LONG, 1);
    myStructDsc.addField("numBkgTasks", TFormat.CF_SHORT, 1);
    myStructDsc.addField("numContracts", TFormat.CF_SHORT, 1);
    myStructDsc.addField("numClients", TFormat.CF_SHORT, 1);
    myStructDsc.addField("numTgtCont", TFormat.CF_SHORT, 1);
    myStructDsc.addField("numTgtCln", TFormat.CF_SHORT, 1);
    myStructDsc.addField("numConnections", TFormat.CF_SHORT, 1);
    myStructDsc.addField("numTimeouts", TFormat.CF_LONG, 1);
    myStructDsc.addField("numArrivals", TFormat.CF_LONG, 1);
    myStructDsc.addField("numUDPPkts", TFormat.CF_LONG, 1);
    myStructDsc.addField("numTCPPkts", TFormat.CF_LONG, 1);
    myStructDsc.addField("numIPXPkts", TFormat.CF_LONG, 1);
    myStructDsc.addField("numSPSPkts", TFormat.CF_LONG, 1);
    myStructDsc.setArraySize(1);
    myStructDsc.endDefinition();
    TStructRegistry.add(myStructDsc);
  }
  /**
   * @return Returns the tagged structure description.
   */
  public static TStructDescription getStructDescription()
  {
    return myStructDsc;
  }
  /**
   * Convert structure to byte array.
   *
   * @return Returns a byte array.
   */
  public byte[] toByteArray()
  {
    ByteArrayOutputStream bfout = new ByteArrayOutputStream();
    TDataOutputStream dsout = new TDataOutputStream(bfout);
    try
    {
      writeData(dsout);
      dsout.close();
    }
    catch (Exception e)
    {
      e.printStackTrace();
      MsgLog.log("TServerStatistics.toByteArray",e.toString(),TErrorList.code_failure,e,0);       
    }
    return bfout.toByteArray();
  }
  /**
   * Writes attrinutes sequentially to a DataOutput.
   *
   * @param dout
   * @throws IOException
   */
  public void writeData(DataOutput dout) throws IOException
  {
    // NOTE No swapping here. Use TDataOutputStream!
    dout.write(StringToBytes.stringToFixedBytes(myServer.getFecName(), 16));
    dout.write(reserved);
    localtime = (int)(System.currentTimeMillis()/1000);
    dout.writeInt(localtime);
    dout.writeInt(starttime);
    dout.writeInt(systemPollingRate);
    dout.writeShort(numBkgTsks);
    dout.writeShort(numTotalContracts);
    dout.writeShort(numTotalClients);
    dout.writeShort(numTargetContracts);
    dout.writeShort(numTargetClients);
    dout.writeShort(numConnections);
    dout.writeInt(numConnectionTimeouts);
    dout.writeInt(numConnectionArrivals);
    dout.writeInt(numUdpPkts);
    dout.writeInt(numTcpPkts);
    dout.writeInt(numIpxPkts);
    dout.writeInt(numSpxPkts);
  }
  /*
   * (non-Javadoc) NOT IMPLEMENTED. Statistics cannot be read from a stream.
   *
   * @see de.desy.tine.client.TStructIfc#readData(java.io.DataInput)
   */
  public void readData(DataInput din) throws IOException
  {
    // TODO Auto-generated method stub
    // NOTE No swapping here. Use TDataOutputStream!
  }
  /**
   * @return Returns the local time.
   */
  public int getLocaltime()
  {
    localtime = (int)(System.currentTimeMillis()/1000);
    return localtime;
  }
  /**
   * @param localtime
   *          The local time to set.
   */
  public void setLocaltime(int localtime)
  {
    this.localtime = localtime;
  }
  /**
   * @return Returns the number of background tasks.
   */
  public short getNumBkgTsks()
  {
    return numBkgTsks;
  }
  /**
   * @param numBkgTsks
   *          The number of background tasks.
   */
  public void setNumBkgTsks(short numBkgTsks)
  {
    this.numBkgTsks = numBkgTsks;
  }
  /**
   * @return Returns the numConnectionArrivals.
   */
  public int getNumConnectionArrivals()
  {
    return numConnectionArrivals;
  }
  /**
   * @param numConnectionArrivals
   *          The numConnectionArrivals to set.
   */
  public void setNumConnectionArrivals(int numConnectionArrivals)
  {
    this.numConnectionArrivals = numConnectionArrivals;
  }
  /**
   * @return Returns the numConnections.
   */
  public short getNumConnections()
  {
    return numConnections;
  }
  /**
   * @param numConnections
   *          The numConnections to set.
   */
  public void setNumConnections(short numConnections)
  {
    this.numConnections = numConnections;
  }
  public void addNumConnections(short numConnections)
  {
    this.numConnections += numConnections;
  }
  public void incNumConnections()
  {
    this.numConnections++;
  }
  /**
   * @return Returns the numConnectionTimeouts.
   */
  public int getNumConnectionTimeouts()
  {
    return numConnectionTimeouts;
  }
  /**
   * @param numConnectionTimeouts
   *          The numConnectionTimeouts to set.
   */
  public void setNumConnectionTimeouts(int numConnectionTimeouts)
  {
    this.numConnectionTimeouts = numConnectionTimeouts;
  }
  /**
   * @param numConnectionTimeouts
   *          The numConnectionTimeouts to set.
   */
  public void incNumConnectionTimeouts()
  {
    this.numConnectionTimeouts++;
  }
  /**
   * @return Returns the numIpxPkts.
   */
  public int getNumIpxPkts()
  {
    return numIpxPkts;
  }
  /**
   * @param numIpxPkts
   *          The numIpxPkts to set.
   */
  public void setNumIpxPkts(int numIPXpkts)
  {
    this.numIpxPkts = numIPXpkts;
  }
  /**
   * @param numIpxPkts
   *          The numIpxPkts to set.
   */
  public void incNumIpxPkts()
  {
    this.numIpxPkts++;
  }
  /**
   * @return Returns the numSpxPkts.
   */
  public int getNumSpxPkts()
  {
    return numSpxPkts;
  }
  /**
   * @param numSpxPkts
   *          The numSpxPkts to set.
   */
  public void setNumSpxPkts(int numSPXpkts)
  {
    this.numSpxPkts = numSPXpkts;
  }
  /**
   * @param numSpxPkts
   *          The numSpxPkts to set.
   */
  public void incNumSpxPkts()
  {
    this.numSpxPkts++;
  }
  /**
   * @return Returns the numTargetClients.
   */
  public short getNumTargetClients()
  {
    return numTargetClients;
  }
  /**
   * @param numTargetClients
   *          The numTargetClients to set.
   */
  public void setNumTargetClients(short numTargetClients)
  {
    this.numTargetClients = numTargetClients;
  }
  /**
   * @return Returns the numTargetContracts.
   */
  public short getNumTargetContracts()
  {
    return numTargetContracts;
  }
  /**
   * @param numTargetContracts
   *          The numTargetContracts to set.
   */
  public void setNumTargetContracts(short numTargetContracts)
  {
    this.numTargetContracts = numTargetContracts;
  }
  /**
   * @return Returns the numTcpPkts.
   */
  public int getNumTcpPkts()
  {
    return numTcpPkts;
  }
  /**
   * @param numTcpPkts
   *          The numTcpPkts to set.
   */
  public void incNumTcpPkts()
  {
    this.numTcpPkts++;
  }
  /**
   * @return Returns the numTotalClients.
   */
  public short getNumTotalClients()
  {
    return numTotalClients;
  }
  /**
   * @param numTotalClients
   *          The numTotalClients to set.
   */
  public void setNumTotalClients(short numTotalClients)
  {
    this.numTotalClients = numTotalClients;
  }
  /**
   * @return Returns the numTotalContracts.
   */
  public short getNumTotalContracts()
  {
    return numTotalContracts;
  }
  /**
   * @param numTotalContracts
   *          The numTotalContracts to set.
   */
  public void setNumTotalContracts(short numTotalContracts)
  {
    this.numTotalContracts = numTotalContracts;
  }
  /**
   * @return Returns the numUdpPkts.
   */
  public int getNumUdpPkts()
  {
    return numUdpPkts;
  }
  /**
   * @param numUdpPkts
   *          The numUdpPkts to set.
   */
  public void incNumUdpPkts()
  {
    this.numUdpPkts++;
  }
  /**
   * @return Returns the reserved.
   */
  public byte[] getReserved()
  {
    return reserved;
  }
  /**
   * @param reserved
   *          The reserved to set.
   */
  public void setReserved(byte[] reserved)
  {
    this.reserved = reserved;
  }
  /**
   * @return Returns the starttime.
   */
  public int getStarttime()
  {
    return starttime;
  }
  /**
   * @param starttime
   *          The starttime to set.
   */
  public void setStarttime(int starttime)
  {
    this.starttime = starttime;
  }
  /**
   * @return Returns the systemPollingRate.
   */
  public int getSystemPollingRate()
  {
    return systemPollingRate;
  }
  /**
   * @param systemPollingRate
   *          The systemPollingRate to set.
   */
  public void setSystemPollingRate(int systemPollingRate)
  {
    this.systemPollingRate = systemPollingRate;
  }
  public void setNumTcpPkts(int numTcpPkts)
  {
    this.numTcpPkts = numTcpPkts;
  }
  public void setNumUdpPkts(int numUdpPkts)
  {
    this.numUdpPkts = numUdpPkts;
  }
}
TOP

Related Classes of de.desy.tine.server.TServerStatistics

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.