tigase.vhosts
Class VHostJDBCRepository

java.lang.Object
  extended by tigase.db.comp.ConfigRepository<Item>
      extended by tigase.db.comp.UserRepoRepository<VHostItem>
          extended by tigase.vhosts.VHostJDBCRepository
All Implemented Interfaces:
Iterable<VHostItem>, ComponentRepository<VHostItem>

public class VHostJDBCRepository
extends UserRepoRepository<VHostItem>

This implementation stores virtual domains in the UserRepository database. It loads initial settings and virtual hosts from the configuration file and then loads more vhosts from the database. Virtual domains from the database can overwrite (disable) vhosts loaded from the configuration file. This implementation keeps all virtual hosts and their parameters in a single database field. This might not be very efficient if you want to manager big number of virtual domains. It is sufficient for hundreds of vhosts. If you need thousands of VHosts support I advice to implement this storage in more efficient way using separate database tables instead of UserRepository. Please note there is a limit of about 300 vhosts if you use Derby database. Created: Nov 29, 2008 2:32:48 PM

Version:
$Rev: 2996 $
Author:
Artur Hefczyc

Field Summary
static String DNS_DEF_IP_PROP_KEY
          Field description
static String DNS_DEF_IP_PROP_VAL
          Field description
static String DNS_SRV_DEF_ADDR_PROP_KEY
          Field description
static String DNS_SRV_DEF_ADDR_PROP_VAL
          Field description
static String DOMAINS_PER_USER_LIMIT_PROP_KEY
          Field description
static int DOMAINS_PER_USER_LIMIT_PROP_VAL
          Field description
 
Fields inherited from class tigase.db.comp.UserRepoRepository
REPO_CLASS_PROP_KEY, REPO_URI_PROP_KEY
 
Fields inherited from class tigase.db.comp.ConfigRepository
items
 
Fields inherited from interface tigase.db.comp.ComponentRepository
COMP_REPO_BIND
 
Constructor Summary
VHostJDBCRepository()
           
 
Method Summary
 String getConfigKey()
          Method description
 String[] getDefaultPropetyItems()
          Method description
 void getDefaults(Map<String,Object> defs, Map<String,Object> params)
          Method description
 VHostItem getItemInstance()
          Method description
 String getItemsListPKey()
          Method description
 String getPropertyKey()
          Method description
 tigase.xmpp.BareJID getRepoUser()
          Method description
 void setProperties(Map<String,Object> properties)
          Method description
 String validateItem(VHostItem item)
          Method description
 
Methods inherited from class tigase.db.comp.UserRepoRepository
reload, store
 
Methods inherited from class tigase.db.comp.ConfigRepository
addItem, addRepoChangeListener, allItems, contains, getItem, iterator, removeItem, removeRepoChangeListener, size, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

DOMAINS_PER_USER_LIMIT_PROP_KEY

public static final String DOMAINS_PER_USER_LIMIT_PROP_KEY
Field description

See Also:
Constant Field Values

DOMAINS_PER_USER_LIMIT_PROP_VAL

public static final int DOMAINS_PER_USER_LIMIT_PROP_VAL
Field description

See Also:
Constant Field Values

DNS_DEF_IP_PROP_KEY

public static final String DNS_DEF_IP_PROP_KEY
Field description

See Also:
Constant Field Values

DNS_DEF_IP_PROP_VAL

public static String DNS_DEF_IP_PROP_VAL
Field description


DNS_SRV_DEF_ADDR_PROP_KEY

public static final String DNS_SRV_DEF_ADDR_PROP_KEY
Field description

See Also:
Constant Field Values

DNS_SRV_DEF_ADDR_PROP_VAL

public static String DNS_SRV_DEF_ADDR_PROP_VAL
Field description

Constructor Detail

VHostJDBCRepository

public VHostJDBCRepository()
Method Detail

getConfigKey

public String getConfigKey()
Method description

Specified by:
getConfigKey in class ConfigRepository<VHostItem>
Returns:

getDefaultPropetyItems

public String[] getDefaultPropetyItems()
Method description

Specified by:
getDefaultPropetyItems in class ConfigRepository<VHostItem>
Returns:

getDefaults

public void getDefaults(Map<String,Object> defs,
                        Map<String,Object> params)
Method description

Specified by:
getDefaults in interface ComponentRepository<VHostItem>
Overrides:
getDefaults in class UserRepoRepository<VHostItem>
Parameters:
defs -
params -

getItemInstance

public VHostItem getItemInstance()
Method description

Returns:

getItemsListPKey

public String getItemsListPKey()
Method description

Overrides:
getItemsListPKey in class UserRepoRepository<VHostItem>
Returns:

getPropertyKey

public String getPropertyKey()
Method description

Specified by:
getPropertyKey in class ConfigRepository<VHostItem>
Returns:

getRepoUser

public tigase.xmpp.BareJID getRepoUser()
Method description

Specified by:
getRepoUser in class UserRepoRepository<VHostItem>
Returns:

setProperties

public void setProperties(Map<String,Object> properties)
Method description

Specified by:
setProperties in interface ComponentRepository<VHostItem>
Overrides:
setProperties in class UserRepoRepository<VHostItem>
Parameters:
properties -

validateItem

public String validateItem(VHostItem item)
Method description

Specified by:
validateItem in interface ComponentRepository<VHostItem>
Overrides:
validateItem in class ConfigRepository<VHostItem>
Parameters:
item -
Returns:


Copyright © 2012 Tigase. All Rights Reserved.