public class CompSQLRepository extends Object implements ComponentRepository<CompRepoItem>
Repository.Meta| Modifier and Type | Field and Description |
|---|---|
static String |
REPO_URI_PROP_KEY
Field description
|
static String |
TABLE_NAME
Field description
|
COMP_REPO_BIND| Constructor and Description |
|---|
CompSQLRepository() |
| Modifier and Type | Method and Description |
|---|---|
void |
addItem(CompRepoItem item)
The method adds a new or updates existing Item in the repository.
|
void |
addItemNoStore(CompRepoItem item)
The method adds a new or updates existing Item.
|
void |
addRepoChangeListener(RepositoryChangeListenerIfc<CompRepoItem> repoChangeListener)
Adds a listener for repository Item change.
|
Collection<CompRepoItem> |
allItems()
Returns a collection with all items stored in the repository.
|
boolean |
contains(String key)
The method checks whether the item is stored in the repository.
|
void |
destroy()
Method destroys this instance of ComponentRepository releasing resources
allocated for this instance of ComponentRepository if possible
|
void |
getDefaults(Map<String,Object> defs,
Map<String,Object> params)
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.
|
CompRepoItem |
getItem(String key)
The method returns all item configuration parameters for a key or
null if the item does not exist in the repository. |
CompRepoItem |
getItemInstance()
Creates a new, uninitialized instance of the repository Item.
|
void |
initRepository(String conn_str,
Map<String,String> params)
The method is called to initialize the data repository.
|
Iterator<CompRepoItem> |
iterator() |
void |
reload()
This method is called to reload items from the database or other permanent
storage.
|
void |
removeItem(String key)
The method is called to remove given Item from the memory cache and
permanent storage.
|
void |
removeRepoChangeListener(RepositoryChangeListenerIfc<CompRepoItem> repoChangeListener)
Removes a listener for repository Item change.
|
void |
setAutoloadTimer(long delay)
Sets autoload task to periodically reload data from database.
|
void |
setProperties(Map<String,Object> properties)
The method is called to set configuration for this repository
implementation.
|
int |
size()
The method returns number of items in the repository.
|
void |
store()
The method is called to store all data in the database.
|
String |
validateItem(CompRepoItem item)
Performs Item validation to check whether it meets the repository policy.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitforEach, spliteratorpublic static final String REPO_URI_PROP_KEY
public static final String TABLE_NAME
public void addRepoChangeListener(RepositoryChangeListenerIfc<CompRepoItem> repoChangeListener)
ComponentRepositoryaddRepoChangeListener in interface ComponentRepository<CompRepoItem>public void removeRepoChangeListener(RepositoryChangeListenerIfc<CompRepoItem> repoChangeListener)
ComponentRepositoryremoveRepoChangeListener in interface ComponentRepository<CompRepoItem>public void addItemNoStore(CompRepoItem item)
ComponentRepositoryaddItemNoStore in interface ComponentRepository<CompRepoItem>item - a Item with all it's configuration parameters.public void addItem(CompRepoItem item)
ComponentRepositoryaddItem in interface ComponentRepository<CompRepoItem>item - a Item with all it's configuration parameters.public Collection<CompRepoItem> allItems()
ComponentRepositoryallItems in interface ComponentRepository<CompRepoItem>public boolean contains(String key)
ComponentRepositorycontains in interface ComponentRepository<CompRepoItem>key - a String with key to search for.boolean value true if the item exists
in the repository or false of it does not.public void destroy()
ComponentRepositorydestroy in interface ComponentRepository<CompRepoItem>public void getDefaults(Map<String,Object> defs, Map<String,Object> params)
ComponentRepositorygetDefaults in interface ComponentRepository<CompRepoItem>defs - is a Map collection where all repository
configuration defaults must be put.params - is a Map 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.public CompRepoItem getItem(String key)
ComponentRepositorynull if the item does not exist in the repository.getItem in interface ComponentRepository<CompRepoItem>key - a String with item identifier to search for.Item for a given key or null if the
item is not in the repository.public CompRepoItem getItemInstance()
ComponentRepositorygetItemInstance in interface ComponentRepository<CompRepoItem>public void initRepository(String conn_str, Map<String,String> params) throws DBInitException
Repositoryresource_uri
parameter as the database connection string or via params map if
the required repository parameters are more complex or both.initRepository in interface Repositoryconn_str - value in most cases representing the database connection string.params - is a Map with repository properties necessary to initialize
and perform all the functions. The initialization parameters are implementation dependent.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.public Iterator<CompRepoItem> iterator()
iterator in interface Iterable<CompRepoItem>public void reload()
ComponentRepositoryreload in interface ComponentRepository<CompRepoItem>public void removeItem(String key)
ComponentRepositoryremoveItem in interface ComponentRepository<CompRepoItem>key - a String with domain name to remove.public void setProperties(Map<String,Object> properties)
ComponentRepositorysetProperties in interface ComponentRepository<CompRepoItem>properties - a Map with configuration settings. Content of this
Map must not be modified. This read-only collection.public int size()
ComponentRepositorysize in interface ComponentRepository<CompRepoItem>int value with number of items in the repository.public void store()
ComponentRepositorystore in interface ComponentRepository<CompRepoItem>public String validateItem(CompRepoItem item)
ComponentRepositorynull, otherwise
it returns an error description.validateItem in interface ComponentRepository<CompRepoItem>item - is an Item object to perform validation checking
upon.null on success and an error message otherwise.public void setAutoloadTimer(long delay)
ComponentRepositorysetAutoloadTimer in interface ComponentRepository<CompRepoItem>delay - in seconds between each database reload.Copyright © 2016 "Tigase, Inc.". All rights reserved.