public abstract class DataAccessUtils extends Object
Constructor and Description |
---|
DataAccessUtils() |
Modifier and Type | Method and Description |
---|---|
static int |
intResult(Collection results)
Return a unique int result from the given Collection.
|
static long |
longResult(Collection results)
Return a unique long result from the given Collection.
|
static <T> T |
objectResult(Collection<?> results,
Class<T> requiredType)
Return a unique result object from the given Collection.
|
static <T> T |
requiredSingleResult(Collection<T> results)
Return a single result object from the given Collection.
|
static <T> T |
requiredUniqueResult(Collection<T> results)
Return a unique result object from the given Collection.
|
static <T> T |
singleResult(Collection<T> results)
Return a single result object from the given Collection.
|
static RuntimeException |
translateIfNecessary(RuntimeException rawException,
PersistenceExceptionTranslator pet)
Return a translated exception if this is appropriate,
otherwise return the input exception.
|
static <T> T |
uniqueResult(Collection<T> results)
Return a unique result object from the given Collection.
|
public static <T> T singleResult(Collection<T> results) throws IncorrectResultSizeDataAccessException
Returns null
if 0 result objects found;
throws an exception if more than 1 element found.
results
- the result Collection (can be null
)null
if noneIncorrectResultSizeDataAccessException
- if more than one
element has been found in the given Collectionpublic static <T> T requiredSingleResult(Collection<T> results) throws IncorrectResultSizeDataAccessException
Throws an exception if 0 or more than 1 element found.
results
- the result Collection (can be null
)IncorrectResultSizeDataAccessException
- if more than one
element has been found in the given CollectionEmptyResultDataAccessException
- if no element at all
has been found in the given Collectionpublic static <T> T uniqueResult(Collection<T> results) throws IncorrectResultSizeDataAccessException
Returns null
if 0 result objects found;
throws an exception if more than 1 instance found.
results
- the result Collection (can be null
)null
if noneIncorrectResultSizeDataAccessException
- if more than one
result object has been found in the given CollectionCollectionUtils.hasUniqueObject(java.util.Collection)
public static <T> T requiredUniqueResult(Collection<T> results) throws IncorrectResultSizeDataAccessException
Throws an exception if 0 or more than 1 instance found.
results
- the result Collection (can be null
)IncorrectResultSizeDataAccessException
- if more than one
result object has been found in the given CollectionEmptyResultDataAccessException
- if no result object at all
has been found in the given CollectionCollectionUtils.hasUniqueObject(java.util.Collection)
public static <T> T objectResult(Collection<?> results, Class<T> requiredType) throws IncorrectResultSizeDataAccessException, TypeMismatchDataAccessException
results
- the result Collection (can be null
)IncorrectResultSizeDataAccessException
- if more than one
result object has been found in the given CollectionEmptyResultDataAccessException
- if no result object
at all has been found in the given CollectionTypeMismatchDataAccessException
- if the unique object does
not match the specified required typepublic static int intResult(Collection results) throws IncorrectResultSizeDataAccessException, TypeMismatchDataAccessException
results
- the result Collection (can be null
)IncorrectResultSizeDataAccessException
- if more than one
result object has been found in the given CollectionEmptyResultDataAccessException
- if no result object
at all has been found in the given CollectionTypeMismatchDataAccessException
- if the unique object
in the collection is not convertible to an intpublic static long longResult(Collection results) throws IncorrectResultSizeDataAccessException, TypeMismatchDataAccessException
results
- the result Collection (can be null
)IncorrectResultSizeDataAccessException
- if more than one
result object has been found in the given CollectionEmptyResultDataAccessException
- if no result object
at all has been found in the given CollectionTypeMismatchDataAccessException
- if the unique object
in the collection is not convertible to a longpublic static RuntimeException translateIfNecessary(RuntimeException rawException, PersistenceExceptionTranslator pet)
rawException
- exception we may wish to translatepet
- PersistenceExceptionTranslator to use to perform the translation