public class SpannerTemplate extends Object implements SpannerOperations
SpannerOperations.| Constructor and Description |
|---|
SpannerTemplate(com.google.cloud.spanner.DatabaseClient databaseClient,
SpannerMappingContext mappingContext,
SpannerEntityProcessor spannerEntityProcessor,
SpannerMutationFactory spannerMutationFactory,
SpannerSchemaUtils spannerSchemaUtils) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
applyMutations(Collection<com.google.cloud.spanner.Mutation> mutations) |
long |
count(Class entityClass)
Count how many objects are stored of the given type.
|
void |
delete(Class entityClass,
com.google.cloud.spanner.Key key)
Deletes an object based on a key.
|
void |
delete(Class entityClass,
com.google.cloud.spanner.KeySet keys)
Deletes objects given a set of keys.
|
void |
delete(Object entity)
Deletes an object from storage.
|
void |
deleteAll(Iterable objects)
Deletes objects from storage in a batch.
|
long |
executeDmlStatement(com.google.cloud.spanner.Statement statement)
Execute a DML statement on Cloud Spanner.
|
com.google.cloud.spanner.ResultSet |
executeQuery(com.google.cloud.spanner.Statement statement,
SpannerQueryOptions options) |
SpannerMappingContext |
getMappingContext() |
protected com.google.cloud.spanner.ReadContext |
getReadContext() |
protected com.google.cloud.spanner.ReadContext |
getReadContext(com.google.cloud.Timestamp timestamp) |
SpannerEntityProcessor |
getSpannerEntityProcessor() |
void |
insert(Object object)
Insert an object into storage.
|
void |
insertAll(Iterable objects)
Insert objects into storage in batch.
|
<T> T |
performReadOnlyTransaction(Function<SpannerTemplate,T> operations,
SpannerReadOptions readOptions)
Performs multiple read-only operations in a single transaction.
|
<T> T |
performReadWriteTransaction(Function<SpannerTemplate,T> operations)
Performs multiple read and write operations in a single transaction.
|
<T> List<T> |
query(Class<T> entityClass,
com.google.cloud.spanner.Statement statement,
SpannerQueryOptions options)
Finds objects by using an SQL statement.
|
<A> List<A> |
query(Function<com.google.cloud.spanner.Struct,A> rowFunc,
com.google.cloud.spanner.Statement statement,
SpannerQueryOptions options)
Executes a given query string with tags and parameters and applies a given function to
each row of the result.
|
<T> List<T> |
queryAll(Class<T> entityClass,
SpannerPageableQueryOptions options)
Finds all objects of the given type.
|
<T> T |
read(Class<T> entityClass,
com.google.cloud.spanner.Key key)
Finds a single stored object using a key.
|
<T> List<T> |
read(Class<T> entityClass,
com.google.cloud.spanner.KeySet keys)
Finds objects stored from their keys.
|
<T> List<T> |
read(Class<T> entityClass,
com.google.cloud.spanner.KeySet keys,
SpannerReadOptions options)
Finds objects stored from their keys.
|
<T> T |
read(Class<T> entityClass,
com.google.cloud.spanner.Key key,
SpannerReadOptions options)
Finds a single stored object using a key.
|
<T> List<T> |
readAll(Class<T> entityClass)
Finds all objects of the given type.
|
<T> List<T> |
readAll(Class<T> entityClass,
SpannerReadOptions options)
Finds all objects of the given type.
|
void |
update(Object object)
Update an object already in storage.
|
void |
update(Object object,
Set<String> includeProperties)
Update an object in storage.
|
void |
update(Object object,
String... includeProperties)
Update an object in storage.
|
void |
updateAll(Iterable objects)
Update objects in batch.
|
void |
upsert(Object object)
Update or insert an object into storage.
|
void |
upsert(Object object,
Set<String> includeProperties)
Update or insert an object into storage.
|
void |
upsert(Object object,
String... includeProperties)
Update or insert an object into storage.
|
void |
upsertAll(Iterable objects)
Update or insert objects into storage in batch.
|
public SpannerTemplate(com.google.cloud.spanner.DatabaseClient databaseClient,
SpannerMappingContext mappingContext,
SpannerEntityProcessor spannerEntityProcessor,
SpannerMutationFactory spannerMutationFactory,
SpannerSchemaUtils spannerSchemaUtils)
protected com.google.cloud.spanner.ReadContext getReadContext()
protected com.google.cloud.spanner.ReadContext getReadContext(com.google.cloud.Timestamp timestamp)
public SpannerMappingContext getMappingContext()
public SpannerEntityProcessor getSpannerEntityProcessor()
public long executeDmlStatement(com.google.cloud.spanner.Statement statement)
SpannerOperationsexecuteDmlStatement in interface SpannerOperationsstatement - the DML statement to execute.public <T> T read(Class<T> entityClass, com.google.cloud.spanner.Key key)
SpannerOperationsread in interface SpannerOperationsT - the type of the object to retrieve.entityClass - the type of the object to retrieve.key - the key of the object.public <T> T read(Class<T> entityClass, com.google.cloud.spanner.Key key, SpannerReadOptions options)
SpannerOperationsread in interface SpannerOperationsT - the type of the object to retrieve.entityClass - the type of the object to retrieve.key - the key of the object.options - the Cloud Spanner read options with which to conduct the read operation.public <T> List<T> read(Class<T> entityClass, com.google.cloud.spanner.KeySet keys)
SpannerOperationsread in interface SpannerOperationsT - the type of the object to retrieve.entityClass - the type of the object to retrieve.keys - the keys of the objects to retrieve.public <T> List<T> read(Class<T> entityClass, com.google.cloud.spanner.KeySet keys, SpannerReadOptions options)
SpannerOperationsread in interface SpannerOperationsT - the type of the object to retrieve.entityClass - the type of the object to retrieve.keys - the keys of the objects to retrieve.options - the Cloud Spanner read options with which to conduct the read operation.public <A> List<A> query(Function<com.google.cloud.spanner.Struct,A> rowFunc, com.google.cloud.spanner.Statement statement, SpannerQueryOptions options)
SpannerOperationsquery in interface SpannerOperationsA - the type to convert each row Struct into.rowFunc - the function to apply to each row of the result.statement - the SQL statement used to select the objects.options - the options with which to run this query.public <T> List<T> query(Class<T> entityClass, com.google.cloud.spanner.Statement statement, SpannerQueryOptions options)
SpannerOperationsquery in interface SpannerOperationsT - the type of object to retrieve.entityClass - the type of object to retrieve.statement - the SQL statement used to select the objects.options - the Cloud Spanner read options with which to conduct the read operation.public <T> List<T> readAll(Class<T> entityClass, SpannerReadOptions options)
SpannerOperationsreadAll in interface SpannerOperationsT - the type of the object to retrieve.entityClass - the type of the object to retrieve.options - the Cloud Spanner read options with which to conduct the read operation.public <T> List<T> readAll(Class<T> entityClass)
SpannerOperationsreadAll in interface SpannerOperationsT - the type of the object to retrieve.entityClass - the type of the object to retrieve.public <T> List<T> queryAll(Class<T> entityClass, SpannerPageableQueryOptions options)
SpannerOperationsqueryAll in interface SpannerOperationsT - the type of the object to retrieve.entityClass - the type of the object to retrieve.options - the Cloud Spanner query options with which to conduct the query operation.public void insert(Object object)
SpannerOperationsinsert in interface SpannerOperationsobject - the object to insert.public void insertAll(Iterable objects)
SpannerOperationsinsertAll in interface SpannerOperationsobjects - the objects to insert.public void update(Object object)
SpannerOperationsupdate in interface SpannerOperationsobject - the object to update.public void updateAll(Iterable objects)
SpannerOperationsupdateAll in interface SpannerOperationsobjects - the objects to update.public void update(Object object, String... includeProperties)
SpannerOperationsupdate in interface SpannerOperationsobject - the object to update.includeProperties - the properties to upsert. if none are given then all
properties are usedpublic void update(Object object, Set<String> includeProperties)
SpannerOperationsupdate in interface SpannerOperationsobject - the object to update.includeProperties - the properties to update. If null is given, then all
properties are used. Note that an empty Set means that no properties will
be used.public void upsert(Object object)
SpannerOperationsupsert in interface SpannerOperationsobject - the object to update or insert.public void upsertAll(Iterable objects)
SpannerOperationsupsertAll in interface SpannerOperationsobjects - the objects to update or insert.public void upsert(Object object, String... includeProperties)
SpannerOperationsupsert in interface SpannerOperationsobject - the object to update or insert.includeProperties - the properties to upsert. if none are given then all
properties are upserted.public void upsert(Object object, Set<String> includeProperties)
SpannerOperationsupsert in interface SpannerOperationsobject - the object to update or insert.includeProperties - the properties to update. If null is given, then all
properties are used. Note that an empty Set means that no properties will
be used.public void delete(Object entity)
SpannerOperationsdelete in interface SpannerOperationsentity - the object to delete from storage.public void deleteAll(Iterable objects)
SpannerOperationsdeleteAll in interface SpannerOperationsobjects - the objects to delete from storage.public void delete(Class entityClass, com.google.cloud.spanner.Key key)
SpannerOperationsdelete in interface SpannerOperationsentityClass - the type of the object to delete.key - the key of the object to delete from storage.public void delete(Class entityClass, com.google.cloud.spanner.KeySet keys)
SpannerOperationsdelete in interface SpannerOperationsentityClass - the type of object to delete.keys - the keys of the objects to delete.public long count(Class entityClass)
SpannerOperationscount in interface SpannerOperationsentityClass - the type of object to count.public <T> T performReadWriteTransaction(Function<SpannerTemplate,T> operations)
SpannerOperationsperformReadWriteTransaction in interface SpannerOperationsT - the final return type of the operations.operations - the function representing the operations to perform using a
SpannerOperations based on a single transaction.public <T> T performReadOnlyTransaction(Function<SpannerTemplate,T> operations, SpannerReadOptions readOptions)
SpannerOperationsperformReadOnlyTransaction in interface SpannerOperationsT - the final return type of the operations.operations - the function representing the operations to perform using a
SpannerOperations based on a single transaction.readOptions - allows the user to specify staleness for the read transactionpublic com.google.cloud.spanner.ResultSet executeQuery(com.google.cloud.spanner.Statement statement,
SpannerQueryOptions options)
protected void applyMutations(Collection<com.google.cloud.spanner.Mutation> mutations)
Copyright © 2019 Pivotal Software, Inc.. All rights reserved.