Package tigase.conf
Class ConfigItem
java.lang.Object
tigase.db.comp.RepositoryItemAbstract
tigase.conf.ConfigItem
- All Implemented Interfaces:
RepositoryItem
Created: Dec 10, 2009 2:40:26 PM
- Author:
- Artur Hefczyc
-
Nested Class Summary
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
Fields inherited from class tigase.db.comp.RepositoryItemAbstract
ADMINS_ATT, ADMINS_LABEL, OWNER_ATT, OWNER_LABEL
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addCommandFields
(Packet packet) The method is used for handling ad-hoc commands.boolean
Returns a configuration property key which is constructed in a following way:nodeName + "/" + keyName
Returns a configuration property value.getFlag()
getKey()
Returns a unique key for the item in the repository.Returns a property key which is constructed in a following way:keyName
int
hashCode()
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.boolean
isCompNodeKey
(String comp, String node, String key) boolean
isComponent
(String comp) Checks if the given component name is equal to this item compName.boolean
Checks if the given key is equal to this item keyName.boolean
Checks if the given node is equal to this item nodeNameboolean
Checks if the given node and key are equal to this item nodeName and keyName.void
void
set
(String compName_m, String nodeName_m, String key_m, String value_str_m, char val_type_m, String flag_str_m) void
void
set
(String clusterNode_m, String compName_m, String nodeName_m, String key_m, Object value_m, ConfigItem.FLAGS flag_m) void
set
(String clusterNode_m, String compName_m, String nodeName_m, String key_m, String value_str_m, char val_type_m, String flag_str_m) protected void
void
setNodeKey
(String clusterNode, String compName, String nodeKey, Object value) Item data can be stored in a more complex form than a simple property string.The item can be initialized based on the data loaded from a configuration file.toString()
-
Field Details
-
CLUSTER_NODE_ATTR
- See Also:
-
COMPONENT_NAME_ATTR
- See Also:
-
COMPONENT_NAME_LABEL
- See Also:
-
FLAG_ATTR
- See Also:
-
KEY_NAME_ATTR
- See Also:
-
KEY_NAME_LABEL
- See Also:
-
NODE_NAME_ATTR
- See Also:
-
NODE_NAME_LABEL
- See Also:
-
REPO_ITEM_ELEM_NAME
- See Also:
-
VALUE_ATTR
- See Also:
-
VALUE_LABEL
- See Also:
-
VALUE_TYPE_ATTR
- See Also:
-
-
Constructor Details
-
ConfigItem
public ConfigItem()
-
-
Method Details
-
addCommandFields
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 interfaceRepositoryItem
- Overrides:
addCommandFields
in classRepositoryItemAbstract
- Parameters:
packet
- with empty ad-hoc command to fill with fields
-
getClusterNode
-
getCompName
-
getConfigKey
Returns a configuration property key which is constructed in a following way:nodeName + "/" + keyName
-
getConfigVal
Returns a configuration property value. -
getConfigValToString
-
getElemName
- Specified by:
getElemName
in classRepositoryItemAbstract
-
getFlag
-
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 ConfigItem key which is constructed in a following way:compName + "/" + nodeName + "/" + keyName
- Returns:
- an Item key.
-
setKey
- Specified by:
setKey
in classRepositoryItemAbstract
-
getKeyName
Returns a property key which is constructed in a following way:keyName
-
getNodeName
-
initFromCommand
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 interfaceRepositoryItem
- Overrides:
initFromCommand
in classRepositoryItemAbstract
- Parameters:
packet
- with ad-hoc command filled by the user.
-
initFromElement
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 interfaceRepositoryItem
- Overrides:
initFromElement
in classRepositoryItemAbstract
- Parameters:
elem
- XML Element with all the item initialization data.
-
initFromPropertyString
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.- Parameters:
propString
- is a property string to initialize the RepositoryItem.
-
isCompNodeKey
-
equals
-
hashCode
public int hashCode() -
isComponent
Checks if the given component name is equal to this item compName. -
isKey
Checks if the given key is equal to this item keyName. -
isNode
Checks if the given node is equal to this item nodeName -
isNodeKey
Checks if the given node and key are equal to this item nodeName and keyName. This method call works the same way as following statement:isNode(node) && isKey(key)
-
set
-
set
-
set
-
set
-
set
-
setNodeKey
-
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 interfaceRepositoryItem
- Overrides:
toElement
in classRepositoryItemAbstract
- Returns:
- an XML Element with all the item initialization data.
-
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.- Returns:
- a property string representing the repository item in a simplified form.
-
toString
-