Package tigase.db.converter
Interface Convertible<T extends RowEntity>
-
- All Known Implementing Classes:
UserCredentialsConverter
public interface Convertible<T extends RowEntity>
Interface for all converters of data from other servers. In principle it makes a query to database, process each row creating an object ofRowEntity
and then insets it to Tigase repository
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default java.util.Optional<java.lang.Class<? extends Convertible>>
dependsOn()
default java.util.Map<java.lang.String,java.lang.String>
getAdditionalQueriesToInitialise()
Method allows providing additional queries that needs to be initialised inDataRepository
for future usejava.util.Optional<java.lang.String>
getMainQuery()
Principal query used to retrieve data from source repository.default java.util.Optional<java.lang.Class>
getParentBean()
void
initialise(Converter.ConverterProperties properties)
Method is responsible for initialising converter based on ConverterProperties.java.util.Optional<T>
processResultSet(java.sql.ResultSet rs)
ProcessResultSet
to produce object extendingRowEntity
boolean
storeEntity(T entity)
Method storesRowEntity
in the destination repositories.
-
-
-
Method Detail
-
getMainQuery
java.util.Optional<java.lang.String> getMainQuery()
Principal query used to retrieve data from source repository. It's used to determine if implementation offers support for particular combination of source XMPP Server and database type (empty Optional indicates lack of support resulting in skipping implementation).
-
initialise
void initialise(Converter.ConverterProperties properties)
Method is responsible for initialising converter based on ConverterProperties.- Parameters:
properties
- various properties allowing determine appropriate set of queries and applied processing.
-
processResultSet
java.util.Optional<T> processResultSet(java.sql.ResultSet rs) throws java.lang.Exception
ProcessResultSet
to produce object extendingRowEntity
- Parameters:
rs
- result set to be processed- Returns:
RowEntity
with all data from single Row- Throws:
java.lang.Exception
- indicates any problem with processing of the data
-
storeEntity
boolean storeEntity(T entity) throws java.lang.Exception
Method storesRowEntity
in the destination repositories.
-
getAdditionalQueriesToInitialise
default java.util.Map<java.lang.String,java.lang.String> getAdditionalQueriesToInitialise()
Method allows providing additional queries that needs to be initialised inDataRepository
for future use- Returns:
Map
with key-value pair of query ID and actual query to be initialised
-
getParentBean
default java.util.Optional<java.lang.Class> getParentBean()
-
dependsOn
default java.util.Optional<java.lang.Class<? extends Convertible>> dependsOn()
-
-