Class DynamoDBTemplate
- java.lang.Object
-
- org.socialsignin.spring.data.dynamodb.core.DynamoDBTemplate
-
- All Implemented Interfaces:
DynamoDBOperations,org.springframework.beans.factory.Aware,org.springframework.context.ApplicationContextAware
public class DynamoDBTemplate extends java.lang.Object implements DynamoDBOperations, org.springframework.context.ApplicationContextAware
-
-
Constructor Summary
Constructors Constructor Description DynamoDBTemplate(com.amazonaws.services.dynamodbv2.AmazonDynamoDB amazonDynamoDB, com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper dynamoDBMapper, com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapperConfig dynamoDBMapperConfig)Initializes a newDynamoDBTemplate.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.List<com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper.FailedBatch>batchDelete(java.lang.Iterable<?> entities)<T> java.util.List<T>batchLoad(java.util.Map<java.lang.Class<?>,java.util.List<com.amazonaws.services.dynamodbv2.datamodeling.KeyPair>> itemsToGet)java.util.List<com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper.FailedBatch>batchSave(java.lang.Iterable<?> entities)<T> intcount(java.lang.Class<T> domainClass, com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBQueryExpression<T> queryExpression)<T> intcount(java.lang.Class<T> domainClass, com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBScanExpression scanExpression)<T> intcount(java.lang.Class<T> clazz, com.amazonaws.services.dynamodbv2.model.QueryRequest mutableQueryRequest)<T> Tdelete(T entity)<T> java.lang.StringgetOverriddenTableName(java.lang.Class<T> domainClass, java.lang.String tableName)<T> com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapperTableModel<T>getTableModel(java.lang.Class<T> domainClass)Provides access to the DynamoDB mapper table model of the underlying domain type.<T> Tload(java.lang.Class<T> domainClass, java.lang.Object hashKey)<T> Tload(java.lang.Class<T> domainClass, java.lang.Object hashKey, java.lang.Object rangeKey)protected <T> voidmaybeEmitEvent(T source, java.util.function.Function<T,DynamoDBMappingEvent<T>> factory)<T> com.amazonaws.services.dynamodbv2.datamodeling.PaginatedQueryList<T>query(java.lang.Class<T> domainClass, com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBQueryExpression<T> queryExpression)<T> com.amazonaws.services.dynamodbv2.datamodeling.PaginatedQueryList<T>query(java.lang.Class<T> clazz, com.amazonaws.services.dynamodbv2.model.QueryRequest queryRequest)<T> Tsave(T entity)<T> com.amazonaws.services.dynamodbv2.datamodeling.PaginatedScanList<T>scan(java.lang.Class<T> domainClass, com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBScanExpression scanExpression)voidsetApplicationContext(org.springframework.context.ApplicationContext applicationContext)
-
-
-
Constructor Detail
-
DynamoDBTemplate
@Autowired public DynamoDBTemplate(com.amazonaws.services.dynamodbv2.AmazonDynamoDB amazonDynamoDB, com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper dynamoDBMapper, com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapperConfig dynamoDBMapperConfig)Initializes a newDynamoDBTemplate. The following combinations are valid:- Parameters:
amazonDynamoDB- must not benulldynamoDBMapperConfig- can benull-DynamoDBMapperConfig.DEFAULTis used ifnullis passed indynamoDBMapper- can benull-DynamoDBMapper(AmazonDynamoDB, DynamoDBMapperConfig)is used ifnullis passed indynamoDBMapperConfig-
-
-
Method Detail
-
setApplicationContext
public void setApplicationContext(org.springframework.context.ApplicationContext applicationContext) throws org.springframework.beans.BeansException- Specified by:
setApplicationContextin interfaceorg.springframework.context.ApplicationContextAware- Throws:
org.springframework.beans.BeansException
-
count
public <T> int count(java.lang.Class<T> domainClass, com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBQueryExpression<T> queryExpression)- Specified by:
countin interfaceDynamoDBOperations
-
query
public <T> com.amazonaws.services.dynamodbv2.datamodeling.PaginatedQueryList<T> query(java.lang.Class<T> domainClass, com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBQueryExpression<T> queryExpression)- Specified by:
queryin interfaceDynamoDBOperations
-
count
public <T> int count(java.lang.Class<T> domainClass, com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBScanExpression scanExpression)- Specified by:
countin interfaceDynamoDBOperations
-
load
public <T> T load(java.lang.Class<T> domainClass, java.lang.Object hashKey, java.lang.Object rangeKey)- Specified by:
loadin interfaceDynamoDBOperations
-
load
public <T> T load(java.lang.Class<T> domainClass, java.lang.Object hashKey)- Specified by:
loadin interfaceDynamoDBOperations
-
scan
public <T> com.amazonaws.services.dynamodbv2.datamodeling.PaginatedScanList<T> scan(java.lang.Class<T> domainClass, com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBScanExpression scanExpression)- Specified by:
scanin interfaceDynamoDBOperations
-
batchLoad
public <T> java.util.List<T> batchLoad(java.util.Map<java.lang.Class<?>,java.util.List<com.amazonaws.services.dynamodbv2.datamodeling.KeyPair>> itemsToGet)
- Specified by:
batchLoadin interfaceDynamoDBOperations
-
save
public <T> T save(T entity)
- Specified by:
savein interfaceDynamoDBOperations
-
batchSave
public java.util.List<com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper.FailedBatch> batchSave(java.lang.Iterable<?> entities)
- Specified by:
batchSavein interfaceDynamoDBOperations
-
delete
public <T> T delete(T entity)
- Specified by:
deletein interfaceDynamoDBOperations
-
batchDelete
public java.util.List<com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper.FailedBatch> batchDelete(java.lang.Iterable<?> entities)
- Specified by:
batchDeletein interfaceDynamoDBOperations
-
query
public <T> com.amazonaws.services.dynamodbv2.datamodeling.PaginatedQueryList<T> query(java.lang.Class<T> clazz, com.amazonaws.services.dynamodbv2.model.QueryRequest queryRequest)- Specified by:
queryin interfaceDynamoDBOperations
-
count
public <T> int count(java.lang.Class<T> clazz, com.amazonaws.services.dynamodbv2.model.QueryRequest mutableQueryRequest)- Specified by:
countin interfaceDynamoDBOperations
-
getOverriddenTableName
public <T> java.lang.String getOverriddenTableName(java.lang.Class<T> domainClass, java.lang.String tableName)- Specified by:
getOverriddenTableNamein interfaceDynamoDBOperations
-
getTableModel
public <T> com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapperTableModel<T> getTableModel(java.lang.Class<T> domainClass)
Provides access to the DynamoDB mapper table model of the underlying domain type.- Specified by:
getTableModelin interfaceDynamoDBOperations- Type Parameters:
T- The type of the domain type itself- Parameters:
domainClass- A domain type- Returns:
- Corresponding DynamoDB table model
-
maybeEmitEvent
protected <T> void maybeEmitEvent(@Nullable T source, java.util.function.Function<T,DynamoDBMappingEvent<T>> factory)
-
-