T - type of the query resultC - type of the class implementing this classQ - type of the query modelE - type of the expansion modelpublic abstract class MetaModelQueryDslImpl<T,C extends MetaModelQueryDsl<T,C,Q,E>,Q,E> extends Base implements MetaModelQueryDsl<T,C,Q,E>
MAX_OFFSET, MIN_OFFSET| Constructor and Description |
|---|
MetaModelQueryDslImpl(List<QueryPredicate<T>> predicate,
List<QuerySort<T>> sort,
Boolean fetchTotal,
Long limit,
Long offset,
String endpoint,
Function<HttpResponse,PagedQueryResult<T>> resultMapper,
List<ExpansionPath<T>> expansionPaths,
List<NameValuePair> additionalHttpQueryParameters,
Q queryModel,
E expansionModel,
Function<MetaModelQueryDslBuilder<T,C,Q,E>,C> queryDslBuilderFunction) |
MetaModelQueryDslImpl(MetaModelQueryDslBuilder<T,C,Q,E> builder) |
MetaModelQueryDslImpl(String endpoint,
com.fasterxml.jackson.databind.JavaType singleElementJavatype,
Q queryModel,
E expansionModel,
Function<MetaModelQueryDslBuilder<T,C,Q,E>,C> queryDslBuilderFunction) |
MetaModelQueryDslImpl(String endpoint,
com.fasterxml.jackson.databind.JavaType singleElementJavatype,
Q queryModel,
E expansionModel,
Function<MetaModelQueryDslBuilder<T,C,Q,E>,C> queryDslBuilderFunction,
List<NameValuePair> additionalNameValuePairs) |
MetaModelQueryDslImpl(String endpoint,
com.fasterxml.jackson.core.type.TypeReference<PagedQueryResult<T>> pagedQueryResultTypeReference,
Q queryModel,
E expansionModel,
Function<MetaModelQueryDslBuilder<T,C,Q,E>,C> queryDslBuilderFunction) |
MetaModelQueryDslImpl(String endpoint,
com.fasterxml.jackson.core.type.TypeReference<PagedQueryResult<T>> pagedQueryResultTypeReference,
Q queryModel,
E expansionModel,
Function<MetaModelQueryDslBuilder<T,C,Q,E>,C> queryDslBuilderFunction,
List<NameValuePair> additionalHttpQueryParameters) |
| Modifier and Type | Method and Description |
|---|---|
protected List<NameValuePair> |
additionalHttpQueryParameters() |
protected MetaModelQueryDslBuilder<T,C,Q,E> |
copyBuilder() |
PagedQueryResult<T> |
deserialize(HttpResponse httpResponse)
Takes an http response and maps it into a Java object of type T.
|
String |
endpoint() |
boolean |
equals(Object o) |
List<ExpansionPath<T>> |
expansionPaths() |
Boolean |
fetchTotal() |
int |
hashCode() |
HttpRequestIntent |
httpRequestIntent()
Provides an http request intent, this does not include the execution of it.
|
Long |
limit() |
Long |
offset() |
C |
plusExpansionPaths(ExpansionPath<T> expansionPath)
Creates a new object with the properties of the old object but adds
expansionPath to the expansion paths. |
C |
plusExpansionPaths(Function<E,ExpansionPathContainer<T>> m)
Creates a new object with the properties of the old object but adds a new expansion path to it by using meta models.
|
C |
plusExpansionPaths(List<ExpansionPath<T>> expansionPaths)
Creates a new object with the properties of the old object but adds
expansionPaths to the expansion paths. |
C |
plusExpansionPaths(String expansionPath)
Creates a new object with the properties of the old object but adds
expansionPath to the expansion paths. |
C |
plusPredicates(Function<Q,QueryPredicate<T>> m)
Returns a new instance with the new predicate appended (AND semantics).
|
C |
plusPredicates(List<QueryPredicate<T>> predicates)
Returns a new instance with the new predicate list appended to the existing predicates (AND semantic).
|
C |
plusPredicates(QueryPredicate<T> queryPredicate)
Returns a new instance with the new predicate appended to the existing predicates (AND semantic).
|
C |
plusPredicates(String queryPredicate)
Returns a new instance with the new predicate appended to the existing predicates (AND semantic).
|
C |
plusSort(Function<Q,QuerySort<T>> m)
Returns a query with the sort expression appended to the existing ones.
|
C |
plusSort(List<QuerySort<T>> sort)
Returns a query with the sort expressions appended to the existing ones.
|
C |
plusSort(QuerySort<T> sort)
Returns a query with the sort expression appended to the existing ones.
|
C |
plusSort(String sort)
Returns a query with the sort expression appended to the existing ones.
|
List<QueryPredicate<T>> |
predicates() |
List<QuerySort<T>> |
sort() |
String |
toString() |
protected C |
withAdditionalHttpQueryParameters(List<NameValuePair> pairs) |
C |
withExpansionPaths(ExpansionPath<T> expansionPath)
Creates a new object with the properties of the old object but replaces all expansion paths with a single
expansionPath. |
C |
withExpansionPaths(Function<E,ExpansionPathContainer<T>> m)
Creates a new object with the properties of the old object but replaces all expansion paths with a single
expansionPath by using meta models. |
C |
withExpansionPaths(List<ExpansionPath<T>> expansionPaths)
Creates a new object with the properties of the old object but replaces all expansion paths with
expansionPaths. |
C |
withExpansionPaths(String expansionPath)
Creates a new object with the properties of the old object but replaces all expansion paths with a single
expansionPath. |
C |
withFetchTotal(boolean fetchTotal)
Enables/disables a flag it the total amount of items should be counted.
|
C |
withLimit(Long limit)
Creates a new instance which a limited amount of results.
|
C |
withOffset(Long offset)
Returns a new query with the new offset as offset.
|
C |
withPredicates(Function<Q,QueryPredicate<T>> predicateFunction)
Returns a new instance with the new predicate as only predicate.
|
C |
withPredicates(List<QueryPredicate<T>> queryPredicates)
Returns a new instance with the new predicate list as predicates.
|
C |
withPredicates(QueryPredicate<T> queryPredicate)
Returns a new instance with the new predicate as only predicate.
|
C |
withPredicates(String queryPredicate)
Returns a new instance with the new predicate as only predicate.
|
C |
withQueryParam(NameValuePair param) |
C |
withSort(Function<Q,QuerySort<T>> m)
Returns a query with the new sort as only sort parameter.
|
C |
withSort(List<QuerySort<T>> sort)
Returns a query with the new sort list as only sort parameters.
|
C |
withSort(QuerySort<T> sort)
Returns a query with the new sort as only sort parameter.
|
C |
withSort(String sort)
Returns a query with the new sort as only sort parameter.
|
C |
withSortMulti(Function<Q,List<QuerySort<T>>> m)
Returns a query with the new sort list as only sort parameters.
|
clone, finalize, getClass, notify, notifyAll, wait, wait, waitwithLimit, withOffsetcanDeserializeplusExpansionPaths, withExpansionPathspublic MetaModelQueryDslImpl(List<QueryPredicate<T>> predicate, List<QuerySort<T>> sort, @Nullable Boolean fetchTotal, @Nullable Long limit, @Nullable Long offset, String endpoint, Function<HttpResponse,PagedQueryResult<T>> resultMapper, List<ExpansionPath<T>> expansionPaths, List<NameValuePair> additionalHttpQueryParameters, Q queryModel, E expansionModel, Function<MetaModelQueryDslBuilder<T,C,Q,E>,C> queryDslBuilderFunction)
public MetaModelQueryDslImpl(String endpoint, com.fasterxml.jackson.core.type.TypeReference<PagedQueryResult<T>> pagedQueryResultTypeReference, Q queryModel, E expansionModel, Function<MetaModelQueryDslBuilder<T,C,Q,E>,C> queryDslBuilderFunction, List<NameValuePair> additionalHttpQueryParameters)
public MetaModelQueryDslImpl(String endpoint, com.fasterxml.jackson.databind.JavaType singleElementJavatype, Q queryModel, E expansionModel, Function<MetaModelQueryDslBuilder<T,C,Q,E>,C> queryDslBuilderFunction, List<NameValuePair> additionalNameValuePairs)
public MetaModelQueryDslImpl(String endpoint, com.fasterxml.jackson.databind.JavaType singleElementJavatype, Q queryModel, E expansionModel, Function<MetaModelQueryDslBuilder<T,C,Q,E>,C> queryDslBuilderFunction)
public MetaModelQueryDslImpl(String endpoint, com.fasterxml.jackson.core.type.TypeReference<PagedQueryResult<T>> pagedQueryResultTypeReference, Q queryModel, E expansionModel, Function<MetaModelQueryDslBuilder<T,C,Q,E>,C> queryDslBuilderFunction)
public MetaModelQueryDslImpl(MetaModelQueryDslBuilder<T,C,Q,E> builder)
public C withPredicates(List<QueryPredicate<T>> queryPredicates)
QueryDslwithPredicates in interface MetaModelQueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>,Q,E>withPredicates in interface QueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>>queryPredicates - the new predicate listQueryDsl.plusPredicates(List)public C withPredicates(QueryPredicate<T> queryPredicate)
QueryDslwithPredicates in interface MetaModelQueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>,Q,E>withPredicates in interface QueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>>queryPredicate - the new predicateQueryDsl.plusPredicates(QueryPredicate)public C withPredicates(Function<Q,QueryPredicate<T>> predicateFunction)
MetaModelQueryDslwithPredicates in interface MetaModelQueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>,Q,E>predicateFunction - function given a meta model description of the model return a QueryPredicateMetaModelQueryDsl.plusPredicates(Function)public C plusPredicates(List<QueryPredicate<T>> predicates)
QueryDslplusPredicates in interface MetaModelQueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>,Q,E>plusPredicates in interface QueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>>predicates - the new predicate listQueryDsl.withPredicates(List)public C withPredicates(String queryPredicate)
QueryDslwithPredicates in interface MetaModelQueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>,Q,E>withPredicates in interface QueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>>queryPredicate - the new predicateQueryDsl.plusPredicates(QueryPredicate)public C plusPredicates(String queryPredicate)
QueryDslplusPredicates in interface MetaModelQueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>,Q,E>plusPredicates in interface QueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>>queryPredicate - the new predicateQueryDsl.withPredicates(QueryPredicate)public C plusPredicates(QueryPredicate<T> queryPredicate)
QueryDslplusPredicates in interface MetaModelQueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>,Q,E>plusPredicates in interface QueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>>queryPredicate - the new predicateQueryDsl.withPredicates(QueryPredicate)public C plusPredicates(Function<Q,QueryPredicate<T>> m)
MetaModelQueryDslplusPredicates in interface MetaModelQueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>,Q,E>m - function given a meta model description of the model return a QueryPredicateMetaModelQueryDsl.withPredicates(Function)public C withSort(List<QuerySort<T>> sort)
QueryDslwithSort in interface MetaModelQueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>,Q,E>withSort in interface QueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>>sort - list of sorts how the results of the query should be sortedQueryDsl.plusSort(List)public C withSort(QuerySort<T> sort)
QueryDslwithSort in interface MetaModelQueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>,Q,E>withSort in interface QueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>>sort - sort expression how the results of the query should be sortedQueryDsl.plusSort(QuerySort)public C withSort(String sort)
QueryDslwithSort in interface MetaModelQueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>,Q,E>withSort in interface QueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>>sort - sort expression how the results of the query should be sortedQueryDsl.plusSort(QuerySort)public C withSort(Function<Q,QuerySort<T>> m)
MetaModelQueryDslwithSort in interface MetaModelQueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>,Q,E>m - function given a meta model description of the model returns a QuerySortMetaModelQueryDsl.plusSort(Function)public C withSortMulti(Function<Q,List<QuerySort<T>>> m)
MetaModelQueryDslwithSortMulti in interface MetaModelQueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>,Q,E>m - function given a meta model description of the model returns a list of QuerySortMetaModelQueryDsl.plusSort(List),
MetaModelQueryDsl.withSort(Function)public C plusSort(Function<Q,QuerySort<T>> m)
MetaModelQueryDslplusSort in interface MetaModelQueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>,Q,E>m - function given a meta model description of the model returns a list of QuerySortMetaModelQueryDsl.withSort(Function)public C plusSort(List<QuerySort<T>> sort)
QueryDslplusSort in interface MetaModelQueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>,Q,E>plusSort in interface QueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>>sort - sort expressions how the results of the query should be sortedQueryDsl.withSort(List)public C plusSort(QuerySort<T> sort)
QueryDslplusSort in interface MetaModelQueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>,Q,E>plusSort in interface QueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>>sort - sort expression how the results of the query should be sortedQueryDsl.withSort(QuerySort)public C plusSort(String sort)
QueryDslplusSort in interface MetaModelQueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>,Q,E>plusSort in interface QueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>>sort - sort expression how the results of the query should be sortedQueryDsl.withSort(QuerySort)public C withFetchTotal(boolean fetchTotal)
QueryDslIf fetchTotal is true then PagedQueryResult.getTotal() is null.
withFetchTotal in interface QueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>>fetchTotal - enable the total count if true (default on the construction of the QueryDsl).QueryDsl as this instance but with the updated flagpublic C withLimit(Long limit)
QueryDslwithLimit in interface QueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>>limit - the maximum amount of items of T which should be included in the PagedQueryResult.PagedQueryResult.getResults()public C withOffset(Long offset)
QueryDslwithOffset in interface QueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>>offset - the number of items which should be omitted in the query result.public C withExpansionPaths(List<ExpansionPath<T>> expansionPaths)
ReferenceExpansionDslexpansionPaths.withExpansionPaths in interface ReferenceExpansionDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>>expansionPaths - the new expansion pathspublic C withExpansionPaths(ExpansionPath<T> expansionPath)
ReferenceExpansionDslexpansionPath.
An example in the product projection context:
final ProductProjectionByIdGet fetch = ProductProjectionByIdGet.of("id", ProductProjectionType.CURRENT) .withExpansionPaths(ProductProjectionExpansionModel.of().categories()); assertThat(fetch.expansionPaths()) .isEqualTo(asList(ExpansionPath.of("categories[*]"))); final ProductProjectionByIdGet fetch2 = fetch.withExpansionPaths(ProductProjectionExpansionModel.of().productType()); assertThat(fetch.expansionPaths()).overridingErrorMessage("old object is unchanged") .isEqualTo(asList(ExpansionPath.of("categories[*]"))); assertThat(fetch2.expansionPaths()).isEqualTo(asList(ExpansionPath.of("productType"))); assertThat(fetch2).isNotSameAs(fetch);See the test code.
This method also can be used to use the same expansions as in another request:
final ProductProjectionQuery query = ProductProjectionQuery.ofCurrent().withExpansionPaths(m -> m.categories()); final ProductProjectionSearch search = ProductProjectionSearch.ofCurrent().withExpansionPaths(query); assertThat(query.expansionPaths()) .hasSize(1) .as("reuse expansion spec from other request") .isEqualTo(search.expansionPaths());See the test code.
withExpansionPaths in interface ReferenceExpansionDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>>expansionPath - the new expansion pathspublic C withExpansionPaths(String expansionPath)
ReferenceExpansionDslexpansionPath.
An example in the product projection context:
final ProductProjectionByIdGet fetch = ProductProjectionByIdGet.of("id", ProductProjectionType.CURRENT) .withExpansionPaths(ProductProjectionExpansionModel.of().categories()); assertThat(fetch.expansionPaths()) .isEqualTo(asList(ExpansionPath.of("categories[*]"))); final ProductProjectionByIdGet fetch2 = fetch.withExpansionPaths(ProductProjectionExpansionModel.of().productType()); assertThat(fetch.expansionPaths()).overridingErrorMessage("old object is unchanged") .isEqualTo(asList(ExpansionPath.of("categories[*]"))); assertThat(fetch2.expansionPaths()).isEqualTo(asList(ExpansionPath.of("productType"))); assertThat(fetch2).isNotSameAs(fetch);See the test code.
This method also can be used to use the same expansions as in another request:
final ProductProjectionQuery query = ProductProjectionQuery.ofCurrent().withExpansionPaths(m -> m.categories()); final ProductProjectionSearch search = ProductProjectionSearch.ofCurrent().withExpansionPaths(query); assertThat(query.expansionPaths()) .hasSize(1) .as("reuse expansion spec from other request") .isEqualTo(search.expansionPaths());See the test code.
withExpansionPaths in interface ReferenceExpansionDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>>expansionPath - the new expansion pathspublic C withExpansionPaths(Function<E,ExpansionPathContainer<T>> m)
MetaModelReferenceExpansionDslexpansionPath by using meta models.
An example in the product projection context:
final ProductProjectionByIdGet fetch = ProductProjectionByIdGet.of("id", ProductProjectionType.CURRENT) .plusExpansionPaths(ProductProjectionExpansionModel.of().categories()); assertThat(fetch.expansionPaths()) .isEqualTo(asList(ExpansionPath.of("categories[*]"))); final ProductProjectionByIdGet fetch2 = fetch.withExpansionPaths(m -> m.productType()); assertThat(fetch.expansionPaths()).overridingErrorMessage("old object is unchanged") .isEqualTo(asList(ExpansionPath.of("categories[*]"))); assertThat(fetch2.expansionPaths()).isEqualTo(asList(ExpansionPath.of("productType"))); assertThat(fetch2).isNotSameAs(fetch);See the test code.
withExpansionPaths in interface MetaModelReferenceExpansionDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>,E>m - function to use the meta model for expansions to create an expansion pathpublic C plusExpansionPaths(List<ExpansionPath<T>> expansionPaths)
ReferenceExpansionDslexpansionPaths to the expansion paths.plusExpansionPaths in interface ReferenceExpansionDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>>expansionPaths - the new expansion paths to add to the existing onespublic C plusExpansionPaths(ExpansionPath<T> expansionPath)
ReferenceExpansionDslexpansionPath to the expansion paths.
An example in the product projection context:
final ProductProjectionByIdGet fetch = ProductProjectionByIdGet.of("id", ProductProjectionType.CURRENT); assertThat(fetch.expansionPaths()).isEmpty(); final ProductProjectionByIdGet fetch2 = fetch.plusExpansionPaths(ProductProjectionExpansionModel.of().categories()); assertThat(fetch.expansionPaths()).overridingErrorMessage("old object is unchanged").isEmpty(); assertThat(fetch2.expansionPaths()).isEqualTo(asList(ExpansionPath.of("categories[*]"))); assertThat(fetch2).isNotSameAs(fetch);See the test code.
plusExpansionPaths in interface ReferenceExpansionDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>>expansionPath - the new expansion path to add to the existing onespublic C plusExpansionPaths(String expansionPath)
ReferenceExpansionDslexpansionPath to the expansion paths.
An example in the product projection context:
final ProductProjectionByIdGet fetch = ProductProjectionByIdGet.of("id", ProductProjectionType.CURRENT); assertThat(fetch.expansionPaths()).isEmpty(); final ProductProjectionByIdGet fetch2 = fetch.plusExpansionPaths(ProductProjectionExpansionModel.of().categories()); assertThat(fetch.expansionPaths()).overridingErrorMessage("old object is unchanged").isEmpty(); assertThat(fetch2.expansionPaths()).isEqualTo(asList(ExpansionPath.of("categories[*]"))); assertThat(fetch2).isNotSameAs(fetch);See the test code.
plusExpansionPaths in interface ReferenceExpansionDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>>expansionPath - the new expansion path to add to the existing onespublic C plusExpansionPaths(Function<E,ExpansionPathContainer<T>> m)
MetaModelReferenceExpansionDslAn example in the product projection context:
final ProductProjectionByIdGet fetch1 = ProductProjectionByIdGet.of("id", ProductProjectionType.CURRENT) .plusExpansionPaths(m -> m.categories()); assertThat(fetch1.expansionPaths()) .isEqualTo(asList(ExpansionPath.of("categories[*]"))); final ProductProjectionByIdGet fetch2 = fetch1.plusExpansionPaths(m -> m.productType()); assertThat(fetch2.expansionPaths()) .isEqualTo(asList(ExpansionPath.of("categories[*]"), ExpansionPath.of("productType"))) .isEqualTo(listOf(fetch1.expansionPaths(), ExpansionPath.of("productType"))); //this is equivalent to final ExpansionPath<ProductProjection> categoryExpand = ProductProjectionExpansionModel.of().categories().expansionPaths().get(0); final ExpansionPath<ProductProjection> productTypeExpand = ProductProjectionExpansionModel.of().productType().expansionPaths().get(0); final ProductProjectionByIdGet fetchB = ProductProjectionByIdGet.of("id", ProductProjectionType.CURRENT) .withExpansionPaths(asList(categoryExpand, productTypeExpand)); assertThat(fetchB.expansionPaths()) .isEqualTo(asList(ExpansionPath.of("categories[*]"), ExpansionPath.of("productType")));See the test code.
plusExpansionPaths in interface MetaModelReferenceExpansionDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>,E>m - function to use the meta model for expansions to create an expansion pathpublic C withQueryParam(NameValuePair param)
withQueryParam in interface MetaModelQueryDsl<T,C extends MetaModelQueryDsl<T,C,Q,E>,Q,E>public List<QueryPredicate<T>> predicates()
predicates in interface ResourceQuery<T>public List<QuerySort<T>> sort()
sort in interface ResourceQuery<T>@Nullable public Boolean fetchTotal()
fetchTotal in interface ResourceQuery<T>@Nullable public Long limit()
limit in interface ResourceQuery<T>@Nullable public Long offset()
offset in interface ResourceQuery<T>public String endpoint()
endpoint in interface ResourceQuery<T>public List<ExpansionPath<T>> expansionPaths()
expansionPaths in interface ExpansionPathContainer<T>expansionPaths in interface ReferenceExpansionSupport<T>expansionPaths in interface ResourceQuery<T>protected List<NameValuePair> additionalHttpQueryParameters()
protected MetaModelQueryDslBuilder<T,C,Q,E> copyBuilder()
public final HttpRequestIntent httpRequestIntent()
SphereRequesthttpRequestIntent in interface SphereRequest<PagedQueryResult<T>>public PagedQueryResult<T> deserialize(HttpResponse httpResponse)
SphereRequestSphereRequest.canDeserialize(HttpResponse) if the response can be consumed.deserialize in interface SphereRequest<PagedQueryResult<T>>deserialize in interface Query<T>httpResponse - the http response of the APIprotected C withAdditionalHttpQueryParameters(List<NameValuePair> pairs)