Package tigase.vhosts
Class VHostItem
- java.lang.Object
-
- tigase.db.comp.RepositoryItemAbstract
-
- tigase.vhosts.VHostItem
-
- All Implemented Interfaces:
Comparable<VHostItem>,RepositoryItem
public class VHostItem extends RepositoryItemAbstract implements Comparable<VHostItem>
Objects of this class represent virtual host with all hosts configuration settings. In most cases simple domain name string is not enough to deal with the virtual host. VHost can be enabled/disabled. Can be available to selected server components only and so on. Therefore every time there is a detailed information needed for a vhost this classed must be used.
This class has it's own XML representation which can be used for creating an instance of the class or can be exported to the XML form for permanent storage:
<vhost hostname="vhost.something.com" enabled="true" anon="true" register="true" max-users="99999999999L"> <comps/> <other/>
From the init.property file it is also possible to set additional parameters for the vhost. By default everything is enabled and max accounts set to unlimited. In the example below we configure 2 domains: devel.tigase.org and test.tigase.org. For the first domain there are no additional settings, hence the domain has everything on by default, whereas the second has everything switched off and max user accounts set to 100.
--virt-hosts = devel.tigase.org,test.tigase.org:-anon:-register:max-users=100
It also possible to set forwarding for the domain:
--virt-hosts = test.tigase.org:pres-forw=lpart@domain/res:mess-forw=lpart@domain/res
Please note, forwarding address set this way cannot contain any of characters: [,:=] The order features are set for domain is unimportant.
Created: 22 Nov 2008- Version:
- $Rev$
- Author:
- Artur Hefczyc
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classVHostItem.DataType
-
Field Summary
Fields Modifier and Type Field Description static StringANONYMOUS_ENABLED_ATTThis is an attribute name for storing information whether anonymous user can login for this domain.static StringANONYMOUS_ENABLED_LABELstatic StringC2S_PORTS_ALLOWED_ATTThis is an attribute name for storing information on which ports VHost should be enabled.static StringC2S_PORTS_ALLOWED_LABELstatic StringCOMPONENTS_ATTstatic StringCOMPONENTS_ELEMElement name for the VHostItem XML child keeping list of the server component which can handle packets for this domain.protected static Map<String,VHostItem.DataType>dataTypesstatic StringDOMAIN_FILTER_POLICY_ATTstatic StringDOMAIN_FILTER_POLICY_DOMAINS_ATTstatic StringDOMAIN_FILTER_POLICY_DOMAINS_LABELstatic StringDOMAIN_FILTER_POLICY_LABELprotected static DomainFilterPolicyDOMAIN_FILTER_POLICY_PROP_DEFprotected static StringDOMAIN_FILTER_POLICY_PROP_KEYstatic StringENABLED_ATTThis is an attribute name for storing information whether the VHost is enabled or disabled.static StringENABLED_LABELstatic StringHOSTNAME_ATTThis is an attribute name for storing the VHost name.static StringHOSTNAME_LABELstatic StringMAX_USERS_NUMBER_ATTThis is an attribute name for storing the maximum number of users for this virtual domain.static StringMAX_USERS_NUMBER_LABELstatic StringMESSAGE_FORWARD_ADDRESS_ATTstatic StringMESSAGE_FORWARD_ADDRESS_LABELstatic StringOTHER_PARAMS_ELEMElement name for the VHostItem XML child keeping all the extra parameters for the domain.static StringOTHER_PARAMS_LABELstatic StringPRESENCE_FORWARD_ADDRESS_ATTstatic StringPRESENCE_FORWARD_ADDRESS_LABELstatic StringREGISTER_ENABLED_ATTThis is an attribute name for storing information whether user registration is allowed for this domain.static StringREGISTER_ENABLED_LABELstatic StringS2S_SECRET_ATTstatic StringS2S_SECRET_LABELprotected static StringS2S_SECRET_PROP_DEFprotected static StringS2S_SECRET_PROP_KEYstatic StringSASL_MECHANISM_ATTList of SASL mechanisms allowed for domainstatic StringSASL_MECHANISM_LABELstatic StringTLS_REQUIRED_ATTstatic StringTLS_REQUIRED_LABELstatic StringTRUSTED_JIDS_ATTprotected static BooleanVHOST_ANONYMOUS_ENABLED_PROP_DEFprotected static StringVHOST_ANONYMOUS_ENABLED_PROP_KEYprotected static String[]VHOST_COMPONENTS_PATHstatic StringVHOST_ELEMElement name to for the VHostItem XML storage.protected static LongVHOST_MAX_USERS_PROP_DEFprotected static StringVHOST_MAX_USERS_PROP_KEYprotected static StringVHOST_MESSAGE_FORWARD_PROP_DEFprotected static StringVHOST_MESSAGE_FORWARD_PROP_KEYprotected static String[]VHOST_OTHER_PARAMS_PATHprotected static StringVHOST_PRESENCE_FORWARD_PROP_DEFprotected static StringVHOST_PRESENCE_FORWARD_PROP_KEYprotected static BooleanVHOST_REGISTER_ENABLED_PROP_DEFprotected static StringVHOST_REGISTER_ENABLED_PROP_KEYprotected static BooleanVHOST_TLS_REQUIRED_PROP_DEFprotected static StringVHOST_TLS_REQUIRED_PROP_KEY-
Fields inherited from class tigase.db.comp.RepositoryItemAbstract
ADMINS_ATT, ADMINS_LABEL, OWNER_ATT, OWNER_LABEL
-
-
Constructor Summary
Constructors Constructor Description VHostItem()VHostItem(String vhost)The constructor creates theVHostIteminstance for a given domain name with default values for all other parameters.VHostItem(Element elem)The constructor creates theVHostIteminstance from a given XML element.VHostItem(JID vhost)The constructor creates theVHostIteminstance for a given domain name with default values for all other parameters.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddCommandFields(Packet packet)The method is used for handling ad-hoc commands.intcompareTo(VHostItem o)booleanequals(Object v)int[]getC2SPortsAllowed()Returns an array with ports on which C2S connections for this VHosts are allowed.String[]getComps()Returns an array with the server components names which should process packets sent to this domain ornull(default) if there is no specific component assigned to this domain.<T> TgetData(String key)Return value for key for this VHostDomainFilterPolicygetDomainFilter()String[]getDomainFilterDomains()StringgetElemName()StringgetKey()Returns a unique key for the item in the repository.longgetMaxUsersNumber()This method returns the maximum number of user accounts allowed for this domain.JIDgetMessageForward()JIDgetMessageForwardAddress()StringgetOtherDomainParams()This method allows to access the virtual domain other configuration parameters.JIDgetPresenceForward()JIDgetPresenceForwardAddress()StringgetS2sSecret()String[]getSaslAllowedMechanisms()Set<String>getTrustedJIDs()VHostItemgetUnmodifiableVHostItem()JIDgetVhost()This method return a virtual host name as aStringvalue.inthashCode()voidinitFromCommand(Packet packet)The method used for handling ad-hoc commands.voidinitFromElement(Element elem)The item can be also initialized from a more complex repositories: XML repository or SQL database.voidinitFromPropertyString(String propString)The item can be initialized based on the data loaded from a configuration file.protected voidinitializeFromDefaults(VHostItemDefaults vhostDefaults)booleanisAnonymousEnabled()This method checks whether anonymous login is enabled for this domain.booleanisData(String key)Get boolean value contained by this VHost for keybooleanisEnabled()Checks whether this domain is set as enabled or not.booleanisRegisterEnabled()The method checks whether user registration is enabled for this domain or not.booleanisTlsRequired()The method returns TLS required settings for the vhost.booleanisTrustedJID(JID jid)voidparseDataValue(String key, String valueStr)static voidregisterData(List<VHostItem.DataType> types)voidsetAnonymousEnabled(boolean value)This method allows to enable or disable anonymous logins for this domain.voidsetC2SPortsAllowed(int[] ports)Sets an array of ports for which C2S connections for this VHost will be allowed.voidsetComps(String[] comps)Sets an array with the server component names by which packets to this domain can be processed.voidsetData(String key, Object value)Set value for specified key for this VHostvoidsetDomainFilter(DomainFilterPolicy domainFilter)This method allow configure DomainFilterPolicy to be applied during packet filtering.voidsetDomainFilterDomains(String[] domainFilterDomains)This method allow specify list of domains that will be used for packet filtering when DomainFilteringPolicy is set to either LIST or BLACKLIST.voidsetEnabled(boolean value)This method allows to enable or disable local domain.protected voidsetKey(String key)voidsetMaxUsersNumber(long maxUsersNumber)This method allows to set the maximum number of user accounts allowed for this domain.voidsetMessageForward(JID messageForward)voidsetOtherDomainParams(String otherParams)This method allows to set extra configuration parameters for the virtual domain.voidsetPresenceForward(JID presenceForward)voidsetRegisterEnabled(boolean value)This method allows to enable or disable user account registration for this domain.voidsetS2sSecret(String s2sSecret)voidsetSaslAllowedMechanisms(String[] saslAllowedMechanisms)voidsetTlsRequired(boolean value)The method sets TLS required property for the vhost.voidsetTrustedJIDs(JID[] trustedJids)voidsetVHost(String vhost)voidsetVHost(JID vhost)ElementtoElement()Item data can be stored in a more complex form than a simple property string.StringtoPropertyString()The item can be initialized based on the data loaded from a configuration file.StringtoString()
-
-
-
Field Detail
-
ANONYMOUS_ENABLED_ATT
public static final String ANONYMOUS_ENABLED_ATT
This is an attribute name for storing information whether anonymous user can login for this domain.- See Also:
- Constant Field Values
-
ANONYMOUS_ENABLED_LABEL
public static final String ANONYMOUS_ENABLED_LABEL
- See Also:
- Constant Field Values
-
SASL_MECHANISM_ATT
public static final String SASL_MECHANISM_ATT
List of SASL mechanisms allowed for domain- See Also:
- Constant Field Values
-
SASL_MECHANISM_LABEL
public static final String SASL_MECHANISM_LABEL
- See Also:
- Constant Field Values
-
COMPONENTS_ATT
public static final String COMPONENTS_ATT
- See Also:
- Constant Field Values
-
COMPONENTS_ELEM
public static final String COMPONENTS_ELEM
Element name for the VHostItem XML child keeping list of the server component which can handle packets for this domain. In most cases this element should be empty.- See Also:
- Constant Field Values
-
C2S_PORTS_ALLOWED_ATT
public static final String C2S_PORTS_ALLOWED_ATT
This is an attribute name for storing information on which ports VHost should be enabled.- See Also:
- Constant Field Values
-
C2S_PORTS_ALLOWED_LABEL
public static final String C2S_PORTS_ALLOWED_LABEL
- See Also:
- Constant Field Values
-
DOMAIN_FILTER_POLICY_ATT
public static final String DOMAIN_FILTER_POLICY_ATT
- See Also:
- Constant Field Values
-
DOMAIN_FILTER_POLICY_DOMAINS_ATT
public static final String DOMAIN_FILTER_POLICY_DOMAINS_ATT
- See Also:
- Constant Field Values
-
DOMAIN_FILTER_POLICY_LABEL
public static final String DOMAIN_FILTER_POLICY_LABEL
- See Also:
- Constant Field Values
-
DOMAIN_FILTER_POLICY_DOMAINS_LABEL
public static final String DOMAIN_FILTER_POLICY_DOMAINS_LABEL
- See Also:
- Constant Field Values
-
ENABLED_ATT
public static final String ENABLED_ATT
This is an attribute name for storing information whether the VHost is enabled or disabled.- See Also:
- Constant Field Values
-
ENABLED_LABEL
public static final String ENABLED_LABEL
- See Also:
- Constant Field Values
-
HOSTNAME_ATT
public static final String HOSTNAME_ATT
This is an attribute name for storing the VHost name.- See Also:
- Constant Field Values
-
HOSTNAME_LABEL
public static final String HOSTNAME_LABEL
- See Also:
- Constant Field Values
-
MAX_USERS_NUMBER_ATT
public static final String MAX_USERS_NUMBER_ATT
This is an attribute name for storing the maximum number of users for this virtual domain.- See Also:
- Constant Field Values
-
MAX_USERS_NUMBER_LABEL
public static final String MAX_USERS_NUMBER_LABEL
- See Also:
- Constant Field Values
-
MESSAGE_FORWARD_ADDRESS_ATT
public static final String MESSAGE_FORWARD_ADDRESS_ATT
- See Also:
- Constant Field Values
-
MESSAGE_FORWARD_ADDRESS_LABEL
public static final String MESSAGE_FORWARD_ADDRESS_LABEL
- See Also:
- Constant Field Values
-
OTHER_PARAMS_ELEM
public static final String OTHER_PARAMS_ELEM
Element name for the VHostItem XML child keeping all the extra parameters for the domain. This is a container for future extensions and parameters which are not defined yet.- See Also:
- Constant Field Values
-
OTHER_PARAMS_LABEL
public static final String OTHER_PARAMS_LABEL
- See Also:
- Constant Field Values
-
PRESENCE_FORWARD_ADDRESS_ATT
public static final String PRESENCE_FORWARD_ADDRESS_ATT
- See Also:
- Constant Field Values
-
PRESENCE_FORWARD_ADDRESS_LABEL
public static final String PRESENCE_FORWARD_ADDRESS_LABEL
- See Also:
- Constant Field Values
-
REGISTER_ENABLED_ATT
public static final String REGISTER_ENABLED_ATT
This is an attribute name for storing information whether user registration is allowed for this domain.- See Also:
- Constant Field Values
-
REGISTER_ENABLED_LABEL
public static final String REGISTER_ENABLED_LABEL
- See Also:
- Constant Field Values
-
S2S_SECRET_ATT
public static final String S2S_SECRET_ATT
- See Also:
- Constant Field Values
-
S2S_SECRET_LABEL
public static final String S2S_SECRET_LABEL
- See Also:
- Constant Field Values
-
TLS_REQUIRED_ATT
public static final String TLS_REQUIRED_ATT
- See Also:
- Constant Field Values
-
TLS_REQUIRED_LABEL
public static final String TLS_REQUIRED_LABEL
- See Also:
- Constant Field Values
-
TRUSTED_JIDS_ATT
public static final String TRUSTED_JIDS_ATT
- See Also:
- Constant Field Values
-
VHOST_ELEM
public static final String VHOST_ELEM
Element name to for the VHostItem XML storage.- See Also:
- Constant Field Values
-
DOMAIN_FILTER_POLICY_PROP_KEY
protected static final String DOMAIN_FILTER_POLICY_PROP_KEY
- See Also:
- Constant Field Values
-
S2S_SECRET_PROP_DEF
protected static final String S2S_SECRET_PROP_DEF
-
S2S_SECRET_PROP_KEY
protected static final String S2S_SECRET_PROP_KEY
- See Also:
- Constant Field Values
-
VHOST_ANONYMOUS_ENABLED_PROP_KEY
protected static final String VHOST_ANONYMOUS_ENABLED_PROP_KEY
- See Also:
- Constant Field Values
-
VHOST_ANONYMOUS_ENABLED_PROP_DEF
protected static final Boolean VHOST_ANONYMOUS_ENABLED_PROP_DEF
-
VHOST_MAX_USERS_PROP_KEY
protected static final String VHOST_MAX_USERS_PROP_KEY
- See Also:
- Constant Field Values
-
VHOST_MAX_USERS_PROP_DEF
protected static final Long VHOST_MAX_USERS_PROP_DEF
-
VHOST_MESSAGE_FORWARD_PROP_DEF
protected static final String VHOST_MESSAGE_FORWARD_PROP_DEF
-
VHOST_MESSAGE_FORWARD_PROP_KEY
protected static final String VHOST_MESSAGE_FORWARD_PROP_KEY
- See Also:
- Constant Field Values
-
VHOST_PRESENCE_FORWARD_PROP_DEF
protected static final String VHOST_PRESENCE_FORWARD_PROP_DEF
-
VHOST_PRESENCE_FORWARD_PROP_KEY
protected static final String VHOST_PRESENCE_FORWARD_PROP_KEY
- See Also:
- Constant Field Values
-
VHOST_REGISTER_ENABLED_PROP_KEY
protected static final String VHOST_REGISTER_ENABLED_PROP_KEY
- See Also:
- Constant Field Values
-
VHOST_REGISTER_ENABLED_PROP_DEF
protected static final Boolean VHOST_REGISTER_ENABLED_PROP_DEF
-
VHOST_TLS_REQUIRED_PROP_KEY
protected static final String VHOST_TLS_REQUIRED_PROP_KEY
- See Also:
- Constant Field Values
-
VHOST_TLS_REQUIRED_PROP_DEF
protected static final Boolean VHOST_TLS_REQUIRED_PROP_DEF
-
DOMAIN_FILTER_POLICY_PROP_DEF
protected static final DomainFilterPolicy DOMAIN_FILTER_POLICY_PROP_DEF
-
VHOST_OTHER_PARAMS_PATH
protected static final String[] VHOST_OTHER_PARAMS_PATH
-
VHOST_COMPONENTS_PATH
protected static final String[] VHOST_COMPONENTS_PATH
-
dataTypes
protected static final Map<String,VHostItem.DataType> dataTypes
-
-
Constructor Detail
-
VHostItem
public VHostItem()
-
VHostItem
public VHostItem(Element elem)
The constructor creates theVHostIteminstance from a given XML element. Please refer to the class documentation for more details of the XML element.- Parameters:
elem- is anElementobject with virtual domain settings.
-
VHostItem
public VHostItem(JID vhost)
The constructor creates theVHostIteminstance for a given domain name with default values for all other parameters. By the default all domain parameters are set to true.- Parameters:
vhost- is aStringvalue with a domain name.
-
VHostItem
public VHostItem(String vhost) throws TigaseStringprepException
The constructor creates theVHostIteminstance for a given domain name with default values for all other parameters. By the default all domain parameters are set to true.- Parameters:
vhost- is aStringvalue with a domain name.- Throws:
TigaseStringprepException- if the provided string causes stringprep processing errors.
-
-
Method Detail
-
registerData
public static void registerData(List<VHostItem.DataType> types)
-
addCommandFields
public void addCommandFields(Packet packet)
Description copied from interface:RepositoryItemThe 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:
addCommandFieldsin interfaceRepositoryItem- Overrides:
addCommandFieldsin classRepositoryItemAbstract- Parameters:
packet- with empty ad-hoc command to fill with fields
-
compareTo
public int compareTo(VHostItem o)
- Specified by:
compareToin interfaceComparable<VHostItem>
-
initFromCommand
public void initFromCommand(Packet packet)
Description copied from interface:RepositoryItemThe 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:
initFromCommandin interfaceRepositoryItem- Overrides:
initFromCommandin classRepositoryItemAbstract- Parameters:
packet- with ad-hoc command filled by the user.
-
initFromElement
public void initFromElement(Element elem)
Description copied from interface:RepositoryItemThe 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:
initFromElementin interfaceRepositoryItem- Overrides:
initFromElementin classRepositoryItemAbstract- Parameters:
elem- XML Element with all the item initialization data.
-
setKey
protected void setKey(String key)
- Specified by:
setKeyin classRepositoryItemAbstract
-
initFromPropertyString
public void initFromPropertyString(String propString)
Description copied from interface:RepositoryItemThe 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:
initFromPropertyStringin interfaceRepositoryItem- Parameters:
propString- is a property string to initialize the RepositoryItem.
-
toElement
public Element toElement()
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.
The method exports theVHostItemobject to XML representation.- Specified by:
toElementin interfaceRepositoryItem- Overrides:
toElementin classRepositoryItemAbstract- Returns:
- an
Elementobject with VHost information.
-
toPropertyString
public String toPropertyString()
Description copied from interface:RepositoryItemThe 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:
toPropertyStringin interfaceRepositoryItem- Returns:
- a property string representing the repository item in a simplified form.
-
getComps
public String[] getComps()
Returns an array with the server components names which should process packets sent to this domain ornull(default) if there is no specific component assigned to this domain.- Returns:
- a
String[]object with server component names.
-
setComps
public void setComps(String[] comps)
Sets an array with the server component names by which packets to this domain can be processed. Every local domain will be handled byVHostListenerwhich returnstrueforhandlesLocalDomains()method call and by all components set via this method.- Parameters:
comps- is anString[]array with server component names.
-
getC2SPortsAllowed
public int[] getC2SPortsAllowed()
Returns an array with ports on which C2S connections for this VHosts are allowed.- Returns:
- a
int[]object with allowed C2S ports.
-
setC2SPortsAllowed
public void setC2SPortsAllowed(int[] ports)
Sets an array of ports for which C2S connections for this VHost will be allowed.- Parameters:
ports- is anint[]array of allowed C2S ports.
-
getData
public <T> T getData(String key)
Return value for key for this VHost- Type Parameters:
T-- Parameters:
key-- Returns:
-
getDomainFilter
public DomainFilterPolicy getDomainFilter()
-
setDomainFilter
public void setDomainFilter(DomainFilterPolicy domainFilter)
This method allow configure DomainFilterPolicy to be applied during packet filtering.- Parameters:
domainFilter- name of the DomainFilterPolicy to be applied
-
getDomainFilterDomains
public String[] getDomainFilterDomains()
-
setDomainFilterDomains
public void setDomainFilterDomains(String[] domainFilterDomains)
This method allow specify list of domains that will be used for packet filtering when DomainFilteringPolicy is set to either LIST or BLACKLIST.- Parameters:
domainFilterDomains- array of domains to be applied during filtering
-
getElemName
public String getElemName()
- Specified by:
getElemNamein classRepositoryItemAbstract
-
getKey
public String getKey()
Description copied from interface:RepositoryItemReturns 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:
getKeyin interfaceRepositoryItem- Returns:
- an Item key.
-
getMaxUsersNumber
public long getMaxUsersNumber()
This method returns the maximum number of user accounts allowed for this domain. This parameter is to allow for limiting number of users on per domain basis.- Returns:
- a
longvalue indicating the maximum number of user accounts allowed for this domain.
-
setMaxUsersNumber
public void setMaxUsersNumber(long maxUsersNumber)
This method allows to set the maximum number of user accounts allowed for this domain. The default value of this parameter is:0L.- Parameters:
maxUsersNumber- is alongvalue specifying the maximum number of user accounts allowed for this domain.
-
getMessageForward
public JID getMessageForward()
-
setMessageForward
public void setMessageForward(JID messageForward)
-
getMessageForwardAddress
public JID getMessageForwardAddress()
-
getOtherDomainParams
public String getOtherDomainParams()
This method allows to access the virtual domain other configuration parameters. This is future feature API and it is not used right now. It allows to access configuration parameters which are not specified at the time of API definition.- Returns:
- a
Stringvalue with domain extra parameters.
-
setOtherDomainParams
public void setOtherDomainParams(String otherParams)
This method allows to set extra configuration parameters for the virtual domain. This is future feature API and it is not used right now. It allows to access configuration parameters which are not specified at the time of API definition.- Parameters:
otherParams- is aStringvalue with domain extra parameters.
-
getPresenceForward
public JID getPresenceForward()
-
setPresenceForward
public void setPresenceForward(JID presenceForward)
-
getPresenceForwardAddress
public JID getPresenceForwardAddress()
-
getS2sSecret
public String getS2sSecret()
-
setS2sSecret
public void setS2sSecret(String s2sSecret)
-
setTrustedJIDs
public void setTrustedJIDs(JID[] trustedJids)
-
getUnmodifiableVHostItem
public VHostItem getUnmodifiableVHostItem()
-
getVhost
public JID getVhost()
This method return a virtual host name as aStringvalue.- Returns:
- a
Stringvalue with the virtual domain name.
-
isAnonymousEnabled
public boolean isAnonymousEnabled()
This method checks whether anonymous login is enabled for this domain. This is the domain own configuration parameter which allows to disable anonymous logins on per domain basis.- Returns:
- a
booleanvalue indicating whether anonymous logins are allowed for this domain.
-
setAnonymousEnabled
public void setAnonymousEnabled(boolean value)
This method allows to enable or disable anonymous logins for this domain. By default anonymous logins are enabled.- Parameters:
value-
-
isData
public boolean isData(String key)
Get boolean value contained by this VHost for key- Parameters:
key-- Returns:
-
isEnabled
public boolean isEnabled()
Checks whether this domain is set as enabled or not. This is domain own configuration parameter which allows to temporarly disable domain so packets for this domain are not processed normally. Instead the server returns an error.- Returns:
- a
booleanvaluetrueif the domain is enabled andfalseif the domain is disabled.
-
setEnabled
public void setEnabled(boolean value)
This method allows to enable or disable local domain. If the domain is disabled packets sent for this domain are not processed normally, instead the server returns an error to the sender. Domain is enabled by default.- Parameters:
value-
-
isRegisterEnabled
public boolean isRegisterEnabled()
The method checks whether user registration is enabled for this domain or not. This is the domain own configuration parameter which allows to disable user accounts registration via XMPP per domain basis.- Returns:
- a
booleanvalue indicating whether user account registration is allowed for this domain.
-
setRegisterEnabled
public void setRegisterEnabled(boolean value)
This method allows to enable or disable user account registration for this domain. By default user account registration is enabled.- Parameters:
value-
-
isTlsRequired
public boolean isTlsRequired()
The method returns TLS required settings for the vhost.- Returns:
- a
booleanvalue whether TLS is required for the vhost or not.
-
setTlsRequired
public void setTlsRequired(boolean value)
The method sets TLS required property for the vhost. By default TLS is not required.- Parameters:
value- is abooleanparameter specifying whether TLS is required for the virtual domain.
-
isTrustedJID
public boolean isTrustedJID(JID jid)
-
setData
public void setData(String key, Object value)
Set value for specified key for this VHost- Parameters:
key-value-
-
setVHost
public void setVHost(String vhost) throws TigaseStringprepException
- Throws:
TigaseStringprepException
-
setVHost
public void setVHost(JID vhost)
-
getSaslAllowedMechanisms
public String[] getSaslAllowedMechanisms()
-
setSaslAllowedMechanisms
public void setSaslAllowedMechanisms(String[] saslAllowedMechanisms)
-
initializeFromDefaults
protected void initializeFromDefaults(VHostItemDefaults vhostDefaults)
-
-