public interface DataSource extends Repository
Repository.Meta, Repository.SchemaId
Modifier and Type | Method and Description |
---|---|
default boolean |
automaticSchemaManagement() |
default void |
checkConnectivity(Duration watchdogTime)
This method is called by data source bean watchdog mechanism to ensure that there is proper connectivity to
underlying data storage.
|
default boolean |
checkSchemaVersion(DataSourceAware<? extends DataSource> datasource,
boolean shutdownServer)
Method checks version of the particular DataSource stored in the defined source.
|
String |
getResourceUri()
Returns a DB connection string or DB connection URI.
|
Optional<Version> |
getSchemaVersion(String component)
Method obtains version of the schema for particular component stored in the database.
|
void |
initialize(String resource_uri)
The method is called to initialize the data repository.
|
initRepository
static final Logger log
default void checkConnectivity(Duration watchdogTime)
watchdogTime
- time which should pass between checksdefault boolean checkSchemaVersion(DataSourceAware<? extends DataSource> datasource, boolean shutdownServer)
datasource
- implementation of DataSourceAware
interfaceshutdownServer
- specifies whether server should be shutdown automatically if the version in the database
doesn't match required version.false
when the version doesn't match or there is no version information in the repository. if
shutdownServer
is set to true
and the component version is final it would force shutting down of
the server, otherwise (for non-final version) only a warning would be printed.default boolean automaticSchemaManagement()
Optional<Version> getSchemaVersion(String component)
component
- name of the component for which we want to get the schema versionString getResourceUri()
String
value representing database connection string.void initialize(String resource_uri) throws RepositoryException
resource_uri
- value in most cases representing the database connection string.RepositoryException
- if there was an error during initialization of data source. Some implementations,
though, perform so called lazy initialization so even though there is a problem with the underlying data source
it may not be signaled through this method call.Copyright © 2004–2021 "Tigase, Inc.". All rights reserved.