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