Package tigase.monitor
Class TaskConfigItem
- java.lang.Object
-
- tigase.db.comp.RepositoryItemAbstract
-
- tigase.monitor.TaskConfigItem
-
- All Implemented Interfaces:
java.lang.Comparable<TaskConfigItem>
,RepositoryItem
public class TaskConfigItem extends RepositoryItemAbstract implements java.lang.Comparable<TaskConfigItem>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
TaskConfigItem.Type
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
CLASS_ELEM
static java.lang.String
ELEM_NAME
static java.lang.String
SCRIPT_ELEM
static java.lang.String
SCRIPT_EXT_ATT
static java.lang.String
TASK_CLASS_ATT
protected static java.lang.String[]
TASK_CLASS_PATH
static java.lang.String
TASK_NAME_ATT
protected static java.lang.String[]
TASK_SCRIPT_PATH
static java.lang.String
TASK_TYPE_ATT
-
Fields inherited from class tigase.db.comp.RepositoryItemAbstract
ADMINS_ATT, ADMINS_LABEL, OWNER_ATT, OWNER_LABEL
-
-
Constructor Summary
Constructors Constructor Description TaskConfigItem()
TaskConfigItem(java.lang.String taskName, java.lang.Class<? extends MonitorTask> taskClass)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
compareTo(TaskConfigItem o)
Form
getConfiguration()
java.lang.String
getElemName()
java.lang.String
getKey()
Returns a unique key for the item in the repository.java.lang.String
getScriptExtension()
java.lang.Class<? extends MonitorTask>
getTaskClass()
java.lang.String
getTaskName()
java.lang.String
getTaskScript()
TaskConfigItem.Type
getType()
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.void
setConfiguration(Form configuration)
protected void
setKey(java.lang.String key)
void
setScriptExtension(java.lang.String scriptExtension)
void
setTaskClass(java.lang.Class<? extends MonitorTask> taskClass)
void
setTaskName(java.lang.String taskName)
void
setTaskScript(java.lang.String taskScript)
void
setType(TaskConfigItem.Type type)
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()
-
Methods inherited from class tigase.db.comp.RepositoryItemAbstract
addCommandFields, getAdmins, getOwner, initFromCommand, isAdmin, isOwner, setAdmins, setOwner
-
-
-
-
Field Detail
-
CLASS_ELEM
public static final java.lang.String CLASS_ELEM
- See Also:
- Constant Field Values
-
ELEM_NAME
public static final java.lang.String ELEM_NAME
- See Also:
- Constant Field Values
-
SCRIPT_ELEM
public static final java.lang.String SCRIPT_ELEM
- See Also:
- Constant Field Values
-
SCRIPT_EXT_ATT
public static final java.lang.String SCRIPT_EXT_ATT
- See Also:
- Constant Field Values
-
TASK_CLASS_ATT
public static final java.lang.String TASK_CLASS_ATT
- See Also:
- Constant Field Values
-
TASK_NAME_ATT
public static final java.lang.String TASK_NAME_ATT
- See Also:
- Constant Field Values
-
TASK_TYPE_ATT
public static final java.lang.String TASK_TYPE_ATT
- See Also:
- Constant Field Values
-
TASK_CLASS_PATH
protected static final java.lang.String[] TASK_CLASS_PATH
-
TASK_SCRIPT_PATH
protected static final java.lang.String[] TASK_SCRIPT_PATH
-
-
Constructor Detail
-
TaskConfigItem
public TaskConfigItem()
-
TaskConfigItem
public TaskConfigItem(java.lang.String taskName, java.lang.Class<? extends MonitorTask> taskClass)
-
-
Method Detail
-
compareTo
public int compareTo(TaskConfigItem o)
- Specified by:
compareTo
in interfacejava.lang.Comparable<TaskConfigItem>
-
getConfiguration
public Form getConfiguration()
-
setConfiguration
public void setConfiguration(Form configuration)
-
getElemName
public java.lang.String getElemName()
- Specified by:
getElemName
in classRepositoryItemAbstract
-
getKey
public java.lang.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 interfaceRepositoryItem
- Returns:
- an Item key.
-
setKey
protected void setKey(java.lang.String key)
- Specified by:
setKey
in classRepositoryItemAbstract
-
getScriptExtension
public java.lang.String getScriptExtension()
-
setScriptExtension
public void setScriptExtension(java.lang.String scriptExtension)
-
getTaskClass
public java.lang.Class<? extends MonitorTask> getTaskClass()
-
getTaskName
public java.lang.String getTaskName()
-
setTaskName
public void setTaskName(java.lang.String taskName)
-
getTaskScript
public java.lang.String getTaskScript()
-
setTaskScript
public void setTaskScript(java.lang.String taskScript)
-
getType
public TaskConfigItem.Type getType()
-
setType
public void setType(TaskConfigItem.Type type)
-
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.- Specified by:
initFromPropertyString
in interfaceRepositoryItem
- Parameters:
propString
- is a property string to initialize the RepositoryItem.
-
setTaskClass
public void setTaskClass(java.lang.Class<? extends MonitorTask> taskClass)
-
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.- Specified by:
toPropertyString
in interfaceRepositoryItem
- Returns:
- a property string representing the repository item in a simplified form.
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-