R - The response type which will be matched against and converted topublic class MultipleInstancesResponseType<R> extends AbstractResponseType<List<R>>
ResponseType implementation that will match with query
handlers which return a multiple instances of the expected response type. If matching succeeds, the
ResponseType.convert(Object) function will be called, which will cast the query handler it's response to a
List with generic type R.expectedResponseType| Constructor and Description |
|---|
MultipleInstancesResponseType(Class<R> expectedCollectionGenericType)
Instantiate a
MultipleInstancesResponseType with the given
expectedCollectionGenericType as the type to be matched against and which the convert function will use
as the generic for the List return value. |
| Modifier and Type | Method and Description |
|---|---|
List<R> |
convert(Object response)
Converts the given
response of type Object into the type List with
generic type R from this ResponseType instance. |
boolean |
matches(Type responseType)
Match the query handler its response
Type with this implementation its responseType
R. |
isArray, isArrayOfExpectedType, isAssignableFrom, isGenericArrayOfExpectedType, isGenericArrayType, isGenericAssignableFrom, isIterableOfExpectedType, isParameterizedType, isParameterizedTypeOfExpectedType, isStreamOfExpectedType, isTypeVariable, isWildcardType, isWildcardTypeWithMatchingUpperBoundpublic MultipleInstancesResponseType(Class<R> expectedCollectionGenericType)
MultipleInstancesResponseType with the given
expectedCollectionGenericType as the type to be matched against and which the convert function will use
as the generic for the List return value.expectedCollectionGenericType - the response type which is expected to be matched against and returnedpublic boolean matches(Type responseType)
Type with this implementation its responseType
R.
Will return true in the following scenarios:
ExpectedType[]GenericArrayType of the expected type.
For example a <E extends ExpectedType> E[]ParameterizedType containing a single
TypeVariable which is assignable to the response type, taking generic types into
account. For example a List<ExpectedType> or <E extends ExpectedType> List<E>.ParameterizedType containing a single
WildcardType which is assignable to the response type, taking generic types into
account. For example a <E extends ExpectedType> List<? extends E>.responseType - the response Type of the query handler which is matched againstParameterizedTypes (like a
Iterable) for which the contained type is assignable to the expected typepublic List<R> convert(Object response)
response of type Object into the type List with
generic type R from this ResponseType instance.
Will ensure that if the given response is of another collections format (e.g. an array, or a
Stream) that it will be converted to a List.
Should only be called if ResponseType.matches(Type) returns true. Will throw an
IllegalArgumentException if the given response is not convertible to a List of the expected
response type.Copyright © 2010–2018. All rights reserved.