Package tigase.cluster.repo
Class ClConDirRepository
java.lang.Object
tigase.db.comp.ConfigRepository<ClusterRepoItem>
tigase.cluster.repo.ClConConfigRepository
tigase.cluster.repo.ClConDirRepository
- All Implemented Interfaces:
Iterable<ClusterRepoItem>
,ClusterRepoConstants
,ComponentRepository<ClusterRepoItem>
,Repository
,Initializable
,UnregisterAware
,ShutdownHook
- Author:
- kobit
-
Nested Class Summary
Nested classes/interfaces inherited from interface tigase.db.Repository
Repository.Meta, Repository.SchemaId
-
Field Summary
Fields inherited from class tigase.cluster.repo.ClConConfigRepository
auto_remove_obsolete_items, firstLoadDone, lastReloadTime, lastReloadTimeFactor
Fields inherited from class tigase.db.comp.ConfigRepository
autoReloadInterval, items, itemsHash
Fields inherited from interface tigase.cluster.repo.ClusterRepoConstants
CPU_USAGE_COLUMN, HOSTNAME_COLUMN, LASTUPDATE_COLUMN, MEM_USAGE_COLUMN, PASSWORD_COLUMN, PORT_COLUMN, REPO_URI_PROP_KEY, SECONDARY_HOSTNAME_COLUMN, TABLE_NAME
Fields inherited from interface tigase.db.comp.ComponentRepository
COMP_REPO_BIND
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
destroy()
Method destroys this instance of ComponentRepository releasing resources allocated for this instance of ComponentRepository if possiblevoid
The method is called to obtain default configuration settings if there are any for this repository implementation The configuration settings are implementation dependent and there are no defaults set by the server.void
initRepository
(String conn_str, Map<String, String> params) Deprecated.void
reload()
This method is called to reload items from the database or other permanent storage.void
setProperties
(Map<String, Object> properties) The method is called to set configuration for this repository implementation.void
storeItem
(ClusterRepoItem item) Methods inherited from class tigase.cluster.repo.ClConConfigRepository
beforeUnregister, getConfigKey, getDefaultPropetyItems, getItemInstance, getName, getPropertyKey, initialize, itemChanged, itemLoaded, removeObsoloteItems, shutdown
Methods inherited from class tigase.db.comp.ConfigRepository
addItem, addItemNoStore, addRepoChangeListener, allItems, contains, getDefaultItems, getItem, getItemsOld, initItemsMap, isInitialized, iterator, removeItem, removeItemNoStore, removeRepoChangeListener, setAutoloadTimer, setAutoReloadInterval, setItemsOld, size, store, toString, validateItem
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Field Details
-
REPO_FILE_EXTENSION
- See Also:
-
REPO_URI_DB_DEF_VAL
- See Also:
-
-
Constructor Details
-
ClConDirRepository
public ClConDirRepository()
-
-
Method Details
-
destroy
public void destroy()Description copied from interface:ComponentRepository
Method destroys this instance of ComponentRepository releasing resources allocated for this instance of ComponentRepository if possible- Specified by:
destroy
in interfaceComponentRepository<ClusterRepoItem>
- Overrides:
destroy
in classClConConfigRepository
-
getDefaults
Description copied from interface:ComponentRepository
The method is called to obtain default configuration settings if there are any for this repository implementation The configuration settings are implementation dependent and there are no defaults set by the server. Default settings returned by this method are then saved in the configuration file and presented to the admin for further adjustments.- Specified by:
getDefaults
in interfaceComponentRepository<ClusterRepoItem>
- Overrides:
getDefaults
in classConfigRepository<ClusterRepoItem>
- Parameters:
defs
- is aMap
collection where all repository configuration defaults must be put.params
- is aMap
collection with some preset properties for the server. These settings can be used to adjust repository defaults, for example they can contain database connection URL or initial list of virtual domains.
-
initRepository
@Deprecated public void initRepository(String conn_str, Map<String, String> params) throws DBInitExceptionDeprecated.Description copied from interface:Repository
Method is deprecated and should not be user any more.
The method is called to initialize the data repository. Depending on the implementation all the initialization parameters can be passed either viaresource_uri
parameter as the database connection string or viaparams
map if the required repository parameters are more complex or both.- Specified by:
initRepository
in interfaceRepository
- Overrides:
initRepository
in classClConConfigRepository
- Parameters:
conn_str
- value in most cases representing the database connection string.params
- is aMap
with repository properties necessary to initialize and perform all the functions. The initialization parameters are implementation dependent.- Throws:
DBInitException
- if there was an error during repository initialization. Some implementations, though, perform so called lazy initialization so even though there is a problem with the underlying repository it may not be signaled through this method call.
-
setProperties
Description copied from interface:ComponentRepository
The method is called to set configuration for this repository implementation. The configuration is repository implementation dependent. There are no default settings for the repository.- Specified by:
setProperties
in interfaceComponentRepository<ClusterRepoItem>
- Overrides:
setProperties
in classConfigRepository<ClusterRepoItem>
- Parameters:
properties
- aMap
with configuration settings. Content of thisMap
must not be modified. This read-only collection.
-
storeItem
- Overrides:
storeItem
in classClConConfigRepository
-
reload
public void reload()Description copied from interface:ComponentRepository
This method is called to reload items from the database or other permanent storage. It is possible that items list is modified externally by third-party system. When all modifications are done this method is called to refresh the class cache. Whether the implementation load whole list or just last modifications is implementation dependent.- Specified by:
reload
in interfaceComponentRepository<ClusterRepoItem>
- Overrides:
reload
in classClConConfigRepository
-