Package tigase.db.comp
Class RepositoryItemAbstract
java.lang.Object
tigase.db.comp.RepositoryItemAbstract
- All Implemented Interfaces:
RepositoryItem
- Direct Known Subclasses:
CertificateItem
,ClusterRepoItem
,CompRepoItem
,ConfigItem
,ExtServiceDiscoItem
,TaskConfigItem
,VHostItemImpl
Created: Sep 23, 2010 6:53:14 PM
- Author:
- Artur Hefczyc
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addCommandFields
(Packet packet) The method is used for handling ad-hoc commands.String[]
Returns an array with the Item administrators, that is people IDs who can manage, configure and control less critical elements of the Item, like changing less critical configuration settings.abstract String
getOwner()
Returns the owner ID of the item.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.boolean
The method checks whether the given id is one of the administrators set for the Item.boolean
The method checks whether the person with given ID is the Item owner.void
Returns an array with the Item administrators, that is people IDs who can manage, configure and control less critical elements of the Item, like changing less critical configuration settings.protected abstract void
void
Set the Item owner.Item data can be stored in a more complex form than a simple property string.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface tigase.db.comp.RepositoryItem
getKey, initFromPropertyString, toPropertyString
-
Field Details
-
ADMINS_ATT
- See Also:
-
ADMINS_LABEL
- See Also:
-
OWNER_ATT
- See Also:
-
OWNER_LABEL
- See Also:
-
-
Constructor Details
-
RepositoryItemAbstract
public RepositoryItemAbstract()
-
-
Method Details
-
getElemName
-
setKey
-
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
- Parameters:
packet
- with empty ad-hoc command to fill with fields
-
getAdmins
Description copied from interface:RepositoryItem
Returns an array with the Item administrators, that is people IDs who can manage, configure and control less critical elements of the Item, like changing less critical configuration settings. Administrators cannot remove the Item or change the owner or add/remove administrators.- Specified by:
getAdmins
in interfaceRepositoryItem
- Returns:
- an array with the Item administrators IDs.
-
setAdmins
Description copied from interface:RepositoryItem
Returns an array with the Item administrators, that is people IDs who can manage, configure and control less critical elements of the Item, like changing less critical configuration settings. Administrators cannot remove the Item or change the owner or add/remove administrators.- Specified by:
setAdmins
in interfaceRepositoryItem
- Parameters:
admins
- is an array with the Item administrators IDs to set for the Item.
-
getOwner
Description copied from interface:RepositoryItem
Returns the owner ID of the item. This is used for a management to allow fine tuned service administration with roles assigned to specific elements and items. Normally only owner can perform some critical actions like removing the item, managing item administrators or changing owner.
There can be only one Item owner.- Specified by:
getOwner
in interfaceRepositoryItem
- Returns:
- an ID of the Item owner.
-
setOwner
Description copied from interface:RepositoryItem
Set the Item owner. This is used for a management to allow fine tuned service administration with roles assigned to specific elements and items. Normally only owner can perform some critical actions like removing the item, managing item administrators or changing owner.
There can be only one Item owner.- Specified by:
setOwner
in interfaceRepositoryItem
- Parameters:
owner
- is the Item owner ID.
-
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
- 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
- Parameters:
elem
- XML Element with all the item initialization data.
-
isAdmin
Description copied from interface:RepositoryItem
The method checks whether the given id is one of the administrators set for the Item.- Specified by:
isAdmin
in interfaceRepositoryItem
- Parameters:
id
- is an ID of a person for which we check access permissions.- Returns:
- true of the given ID is on a list of administrators and false otherwise.
-
isOwner
Description copied from interface:RepositoryItem
The method checks whether the person with given ID is the Item owner.- Specified by:
isOwner
in interfaceRepositoryItem
- Parameters:
id
- is an ID of a person for whom we check access permissions.- Returns:
- true of the given ID is on the Item owner and false otherwise.
-
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
- Returns:
- an XML Element with all the item initialization data.
-