ServerLoad (Apache Geode 2.0.2)
Description: declaration: package: org.apache.geode.cache.server, class: ServerLoad

Package org.apache.geode.cache.server

# Class ServerLoad

java.lang.Object
org.apache.geode.cache.server.ServerLoad

All Implemented Interfaces:
  `Serializable`, `DataSerializable`

public final class ServerLoad extends Object implements DataSerializable
A data object containing the load information for a cache server. This object is returned from `ServerLoadProbe.getLoad(ServerMetrics)` and indicates how heavily loaded the server is. The values returned by `getConnectionLoad()` and `getSubscriptionConnectionLoad()` can be any number greater than 0. A larger load value means that the server has more load. The values returned by getLoadPerConnection() and getLoadPerSubscriptionConnection are used to estimate the effect of new connections before the connects are actually made to this server. The load is estimated as `load + loadPerConnection*numAdditionalConnections.`

Since:
  GemFire 5.7
See Also:
  - Serialized Form

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from interface org.apache.geode.DataSerializable

  `DataSerializable.Replaceable`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ServerLoad()`
  `ServerLoad(float connectionLoad, float loadPerConnection, float subscriptionConnectionLoad, float loadPerSubscriptionConnection)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `equals(Object obj)`
  `void`
  `fromData(DataInput in)`
  Reads the state of this object as primitive data from the given `DataInput`.
  `float`
  `getConnectionLoad()`
  Get the load on the server due to client to server connections.
  `float`
  `getLoadPerConnection()`
  Get an estimate of the how much load each new connection will add to this server.
  `float`
  `getLoadPerSubscriptionConnection()`
  Get an estimate of the how much load each new subscriber will add to this server.
  `float`
  `getSubscriptionConnectionLoad()`
  Get the load on the server due to subscription connections.
  `int`
  `hashCode()`
  `void`
  `setConnectionLoad(float connectionLoad)`
  Set the load due to client to server connections.
  `void`
  `setLoadPerConnection(float loadPerConnection)`
  Set the estimated load per connection.
  `void`
  `setLoadPerSubscriptionConnection(float loadPerSubscriber)`
  Set the estimated load per subscription connection.
  `void`
  `setSubscriptionConnectionLoad(float subscriberLoad)`
  Set the load due to client subscriptions.
  `void`
  `toData(DataOutput out)`
  Writes the state of this object as primitive data to the given `DataOutput`.
  `String`
  `toString()`

  ### Methods inherited from class java.lang.Object

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### ServerLoad

    public ServerLoad(float connectionLoad, float loadPerConnection, float subscriptionConnectionLoad, float loadPerSubscriptionConnection)

  - ### ServerLoad

    public ServerLoad()

- ## Method Details

  - ### getConnectionLoad

    public float getConnectionLoad()
    Get the load on the server due to client to server connections.
    Returns:
      a float greater than or equals to 0

  - ### getLoadPerConnection

    public float getLoadPerConnection()
    Get an estimate of the how much load each new connection will add to this server. The locator uses this information to estimate the load on the server before it receives a new load snapshot.
    Returns:
      a float greater than or equals to 0

  - ### getSubscriptionConnectionLoad

    public float getSubscriptionConnectionLoad()
    Get the load on the server due to subscription connections.
    Returns:
      a float greater than or equals to 0

  - ### getLoadPerSubscriptionConnection

    public float getLoadPerSubscriptionConnection()
    Get an estimate of the how much load each new subscriber will add to this server. The locator uses this information to estimate the load on the server before it receives a new load snapshot.
    Returns:
      a float greater than or equals to 0

  - ### setConnectionLoad

    public void setConnectionLoad(float connectionLoad)
    Set the load due to client to server connections.
    Parameters:
      `connectionLoad` - the load due to client to server connections

  - ### setSubscriptionConnectionLoad

    public void setSubscriptionConnectionLoad(float subscriberLoad)
    Set the load due to client subscriptions.
    Parameters:
      `subscriberLoad` - he load due to client subscriptions

  - ### setLoadPerConnection

    public void setLoadPerConnection(float loadPerConnection)
    Set the estimated load per connection.
    Parameters:
      `loadPerConnection` - the estimated load per connection

  - ### setLoadPerSubscriptionConnection

    public void setLoadPerSubscriptionConnection(float loadPerSubscriber)
    Set the estimated load per subscription connection.
    Parameters:
      `loadPerSubscriber` - the estimated load per subscription connection

  - ### toData

    public void toData(DataOutput out) throws IOException
    Description copied from interface: `DataSerializable`
    Writes the state of this object as primitive data to the given `DataOutput`.

    Since 5.7 it is possible for any method call to the specified `DataOutput` to throw `GemFireRethrowable`. It should not be caught by user code. If it is it must be rethrown.

    Specified by:
      `toData` in interface `DataSerializable`
    Parameters:
      `out` - the `DataOutput` to write to
    Throws:
      `IOException` - A problem occurs while writing to `out`

  - ### fromData

    public void fromData(DataInput in) throws IOException, ClassNotFoundException
    Description copied from interface: `DataSerializable`
    Reads the state of this object as primitive data from the given `DataInput`.
    Specified by:
      `fromData` in interface `DataSerializable`
    Parameters:
      `in` - the `DataInput` to read from
    Throws:
      `IOException` - A problem occurs while reading from `in`
      `ClassNotFoundException` - A class could not be loaded while reading from `in`

  - ### hashCode

    public int hashCode()
    Overrides:
      `hashCode` in class `Object`

  - ### equals

    public boolean equals(Object obj)
    Overrides:
      `equals` in class `Object`

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Object`