Package tigase.cluster.repo

# Class ClusterRepoItem

java.lang.Object
tigase.db.comp.RepositoryItemAbstract
tigase.cluster.repo.ClusterRepoItem

All Implemented Interfaces:
  `Cloneable`, `RepositoryItem`

public class ClusterRepoItem extends RepositoryItemAbstract implements Cloneable

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `CPU_USAGE_ATTR`
  `static final String`
  `CPU_USAGE_LABEL`
  `static final String`
  `HOSTNAME_ATTR`
  `static final String`
  `HOSTNAME_LABEL`
  `static final String`
  `LAST_UPDATE_ATTR`
  `static final String`
  `LAST_UPDATE_LABEL`
  `static final String`
  `MEM_USAGE_ATTR`
  `static final String`
  `MEM_USAGE_LABEL`
  `static final String`
  `PASSWORD_ATTR`
  `static final String`
  `PASSWORD_LABEL`
  `static final String`
  `PASSWORD_PROP_VAL`
  `static final String`
  `PORT_NO_ATTR`
  `static final String`
  `PORT_NO_LABEL`
  `static final int`
  `PORT_NO_PROP_VAL`
  `static final String`
  `REPO_ITEM_ELEM_NAME`
  `static final String`
  `SECONDARY_HOSTNAME_ATTR`
  `static final String`
  `SECONDARY_HOSTNAME_LABEL`

  ### Fields inherited from class tigase.db.comp.RepositoryItemAbstract

  `ADMINS_ATT, ADMINS_LABEL, OWNER_ATT, OWNER_LABEL`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ClusterRepoItem()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addCommandFields(Packet packet)`
  The method is used for handling ad-hoc commands.
  `protected Object`
  `clone()`
  `float`
  `getCpuUsage()`
  `String`
  `getElemName()`
  `String`
  `getHostname()`
  `String`
  `getKey()`
  Returns a unique key for the item in the repository.
  `long`
  `getLastUpdate()`
  `float`
  `getMemUsage()`
  `String`
  `getPassword()`
  `int`
  `getPortNo()`
  `String`
  `getSecondaryHostname()`
  `void`
  `initFromCommand(Packet packet)`
  The method used for handling ad-hoc commands.
  `void`
  `initFromElement(Element elem)`
  The item can be also initialized from a more complex repositories: XML repository or SQL database.
  `void`
  `initFromPropertyString(String propString)`
  The item can be initialized based on the data loaded from a configuration file.
  `protected void`
  `setCpuUsage(float cpuUsage)`
  `protected void`
  `setHostname(String hostname)`
  `protected void`
  `setKey(String key)`
  `protected void`
  `setLastUpdate(long update)`
  `protected void`
  `setMemUsage(float memUsage)`
  `protected void`
  `setPassword(String password)`
  `protected void`
  `setPort(int port)`
  `protected void`
  `setSecondaryHostname(String secondaryHostname)`
  `Element`
  `toElement()`
  Item data can be stored in a more complex form than a simple property string.
  `String`
  `toPropertyString()`
  The item can be initialized based on the data loaded from a configuration file.
  `String`
  `toString()`

  ### Methods inherited from class tigase.db.comp.RepositoryItemAbstract

  `getAdmins, getOwner, isAdmin, isOwner, setAdmins, setOwner`

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

  `equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Field Details

  - ### CPU_USAGE_ATTR

    public static final String CPU_USAGE_ATTR
    See Also:
      - Constant Field Values

  - ### CPU_USAGE_LABEL

    public static final String CPU_USAGE_LABEL
    See Also:
      - Constant Field Values

  - ### HOSTNAME_ATTR

    public static final String HOSTNAME_ATTR
    See Also:
      - Constant Field Values

  - ### SECONDARY_HOSTNAME_ATTR

    public static final String SECONDARY_HOSTNAME_ATTR
    See Also:
      - Constant Field Values

  - ### HOSTNAME_LABEL

    public static final String HOSTNAME_LABEL
    See Also:
      - Constant Field Values

  - ### SECONDARY_HOSTNAME_LABEL

    public static final String SECONDARY_HOSTNAME_LABEL
    See Also:
      - Constant Field Values

  - ### LAST_UPDATE_ATTR

    public static final String LAST_UPDATE_ATTR
    See Also:
      - Constant Field Values

  - ### LAST_UPDATE_LABEL

    public static final String LAST_UPDATE_LABEL
    See Also:
      - Constant Field Values

  - ### MEM_USAGE_ATTR

    public static final String MEM_USAGE_ATTR
    See Also:
      - Constant Field Values

  - ### MEM_USAGE_LABEL

    public static final String MEM_USAGE_LABEL
    See Also:
      - Constant Field Values

  - ### PASSWORD_ATTR

    public static final String PASSWORD_ATTR
    See Also:
      - Constant Field Values

  - ### PASSWORD_LABEL

    public static final String PASSWORD_LABEL
    See Also:
      - Constant Field Values

  - ### PASSWORD_PROP_VAL

    public static final String PASSWORD_PROP_VAL
    See Also:
      - Constant Field Values

  - ### PORT_NO_ATTR

    public static final String PORT_NO_ATTR
    See Also:
      - Constant Field Values

  - ### PORT_NO_LABEL

    public static final String PORT_NO_LABEL
    See Also:
      - Constant Field Values

  - ### PORT_NO_PROP_VAL

    public static final int PORT_NO_PROP_VAL
    See Also:
      - Constant Field Values

  - ### REPO_ITEM_ELEM_NAME

    public static final String REPO_ITEM_ELEM_NAME
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### ClusterRepoItem

    public ClusterRepoItem()

- ## Method Details

  - ### addCommandFields

    public void addCommandFields(Packet packet)
    Description copied from interface: `RepositoryItem`
    The method is used for handling ad-hoc commands. The 'empty' ad-hoc command packet is provided and the Item should fill it with fields for the user.
    Specified by:
      `addCommandFields` in interface `RepositoryItem`
    Overrides:
      `addCommandFields` in class `RepositoryItemAbstract`
    Parameters:
      `packet` - with empty ad-hoc command to fill with fields

  - ### initFromCommand

    public void initFromCommand(Packet packet)
    Description copied from interface: `RepositoryItem`
    The method used for handling ad-hoc commands. After a user fills all given field the ad-hoc command packet is passed back to the item to initialize it with data. Similar method to initFromElement(), but the data source is different.
    Specified by:
      `initFromCommand` in interface `RepositoryItem`
    Overrides:
      `initFromCommand` in class `RepositoryItemAbstract`
    Parameters:
      `packet` - with ad-hoc command filled by the user.

  - ### initFromElement

    public void initFromElement(Element elem)
    Description copied from interface: `RepositoryItem`
    The item can be also initialized from a more complex repositories: XML repository or SQL database. In such a case more complex representation is prefered, possibly carrying more information about the item. The method is called to initialize the item with a data parsed from an XML representation of the repository.
    Specified by:
      `initFromElement` in interface `RepositoryItem`
    Overrides:
      `initFromElement` in class `RepositoryItemAbstract`
    Parameters:
      `elem` - XML Element with all the item initialization data.

  - ### initFromPropertyString

    public void initFromPropertyString(String propString)
    Description copied from interface: `RepositoryItem`
    The item can be initialized based on the data loaded from a configuration file. In such a case the item representation is usually very simplified as a list of parameters separated by a marker. Please note, usually each item is separated from another with a comma, therefore do not use a comma in the item property string. Double collon is commonly used alternative.
    Specified by:
      `initFromPropertyString` in interface `RepositoryItem`
    Parameters:
      `propString` - is a property string to initialize the RepositoryItem.

  - ### toElement

    public Element toElement()
    Description copied from interface: `RepositoryItem`
    Item data can be stored in a more complex form than a simple property string. The XML Element can contain much more detailed information about the element than the simplified form and is used to store the repository item in more advanced repositories then just property file. XML repository or SQL database can keep many records for repository item with as much detailed information as needed.
    Specified by:
      `toElement` in interface `RepositoryItem`
    Overrides:
      `toElement` in class `RepositoryItemAbstract`
    Returns:
      an XML Element with all the item initialization data.

  - ### toPropertyString

    public String toPropertyString()
    Description copied from interface: `RepositoryItem`
    The item can be initialized based on the data loaded from a configuration file. In such a case the item representation is usually very simplified as a list of parameters separated by a marker. Please note, usually each item is separated from another with a comma, therefore do not use a comma in the item property string. Double collon is commonly used alternative.
    Specified by:
      `toPropertyString` in interface `RepositoryItem`
    Returns:
      a property string representing the repository item in a simplified form.

  - ### toString

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

  - ### getCpuUsage

    public float getCpuUsage()

  - ### setCpuUsage

    protected void setCpuUsage(float cpuUsage)

  - ### getElemName

    public String getElemName()
    Specified by:
      `getElemName` in class `RepositoryItemAbstract`

  - ### getHostname

    public String getHostname()

  - ### setHostname

    protected void setHostname(String hostname)

  - ### getKey

    public String getKey()
    Description copied from interface: `RepositoryItem`
    Returns a unique key for the item in the repository. All items are stored in a memory cache which is a Map. And the key returned by this method is the item identifier in the Map.
    Specified by:
      `getKey` in interface `RepositoryItem`
    Returns:
      an Item key.

  - ### setKey

    protected void setKey(String key)
    Specified by:
      `setKey` in class `RepositoryItemAbstract`

  - ### getLastUpdate

    public long getLastUpdate()

  - ### setLastUpdate

    protected void setLastUpdate(long update)

  - ### getMemUsage

    public float getMemUsage()

  - ### setMemUsage

    protected void setMemUsage(float memUsage)

  - ### getPassword

    public String getPassword()

  - ### setPassword

    protected void setPassword(String password)

  - ### getSecondaryHostname

    public String getSecondaryHostname()

  - ### setSecondaryHostname

    protected void setSecondaryHostname(String secondaryHostname)

  - ### getPortNo

    public int getPortNo()

  - ### clone

    protected Object clone() throws CloneNotSupportedException
    Overrides:
      `clone` in class `Object`
    Throws:
      `CloneNotSupportedException`

  - ### setPort

    protected void setPort(int port)