tigase.db
Interface RepositoryItem

All Known Implementing Classes:
CompRepoItem, ConfigItem, VHostItem

public interface RepositoryItem

The interface defines a contract for a repository item handled by ComponentRepository implementation. Created: Oct 3, 2009 2:35:58 PM

Version:
$Rev: 1903 $
Author:
Artur Hefczyc

Method Summary
 void addCommandFields(Packet packet)
          The method is used for handling ad-hoc commands.
 String getKey()
          Returns a unique key for the item in the repository.
 void initFromCommand(Packet packet)
          The method used for handling ad-hoc commands.
 void initFromElement(tigase.xml.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.
 tigase.xml.Element toElement()
          Item data can be stored in a more comlex form than a simple property string.
 String toPropertyString()
          The item can be initialized based on the data loaded from a configuration file.
 

Method Detail

initFromPropertyString

void initFromPropertyString(String propString)
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.

Parameters:
propString - is a property string to initialize the RepositoryItem.

toPropertyString

String toPropertyString()
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.

Returns:
a property string representing the repository item in a simplified form.

initFromElement

void initFromElement(tigase.xml.Element elem)
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 infomration about the item. The method is called to initialize the item with a data parsed from an XML representation of the repository.

Parameters:
elem - XML Element with all the item initialization data.

toElement

tigase.xml.Element toElement()
Item data can be stored in a more comlex 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.

Returns:
an XML Element with all the item initialization data.

getKey

String getKey()
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.

Returns:
an Item key.

addCommandFields

void addCommandFields(Packet packet)
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.

Parameters:
packet - with empty ad-hoc command to fill with fields

initFromCommand

void initFromCommand(Packet packet)
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.

Parameters:
packet - with ad-hoc command filled by the user.


Copyright © 2001-2006 Tigase Developers Team. All rights Reserved.