FluentHelperT
- The fluent helper type.EntityT
- The type of the result entity.SelectableT
- The type of the class that represents fields of the entity
.public abstract class FluentHelperRead<FluentHelperT,EntityT extends VdmEntity<?>,SelectableT> extends FluentHelperBasic<FluentHelperT,EntityT,List<EntityT>>
executing
it.Constructor and Description |
---|
FluentHelperRead(String servicePath)
Instantiates this fluent helper using the given service path to send the requests.
|
Modifier and Type | Method and Description |
---|---|
FluentHelperCount |
count()
Query modifier to return only the number of tuples that match the criteria specified in the query.
|
List<EntityT> |
execute(ErpConfigContext configContext)
Executes the underlying query using the stored values, plus any query modifiers that were previously called.
|
FluentHelperT |
filter(FilterExpressionHelper<EntityT> expression)
Query modifier to restrict the set of returned entities based on the values of one or more fields.
|
protected com.sap.cloud.sdk.odatav2.connectivity.ODataQueryBuilder |
getQueryBuilder()
Creates an instance of the
ODataQueryBuilder based on the Entity class. |
FluentHelperT |
orderBy(EntityField<EntityT,?> field,
Order order)
Query modifier to sort the set of returned entities by one or more fields.
|
FluentHelperT |
select(SelectableT... fields)
Query modifier to limit which field values of the entity get fetched and populated, and to specify which
navigation properties to expand.
|
FluentHelperT |
skip(Number skip)
Query modifier to not return the first N entities of the result set.
|
FluentHelperT |
top(Number top)
Query modifier to limit the number of entities returned.
|
com.sap.cloud.sdk.odatav2.connectivity.ODataQuery |
toQuery()
Provides access to the underlying Query object for inspection and logging purposes.
|
FluentHelperT |
withCustomQueryParameter(String key,
String value)
Gives the option to specify custom query parameters for the request.
|
FluentHelperT |
withErrorHandler(com.sap.cloud.sdk.odatav2.connectivity.ErrorResultHandler<?> errorResultHandler)
An error handling class that implements the
ErrorResultHandler interface can be
attached to this fluent helper. |
asResilientCommand, asResilientCommand, cachingMetadata, execute, getEntityClass, getHeadersForRequestAndImplicitRequests, getHeadersForRequestOnly, getParametersForRequestOnly, getServicePath, getThis, getVersionIdentifier, isCachingMetadata, withCustomHttpHeader, withCustomHttpHeaders, withoutCachingMetadata
@Nonnull protected com.sap.cloud.sdk.odatav2.connectivity.ODataQueryBuilder getQueryBuilder()
ODataQueryBuilder
based on the Entity class.
The following settings are used to build the ODataQueryBuilder
:
ODataQueryBuilder
.@Nonnull public FluentHelperT withCustomQueryParameter(@Nonnull String key, @Nullable String value)
Note: It is recommended to only use this function for query parameters which are not supported by the VDM by default. Using this function to bypass fluent helper method calls can lead to unsupported response handling. There is no contract on the order or priority of parameters added to the query.
Example: Use the query option $search
to reduce the result set, leaving only
entities which match the specified search expression. This feature is supported in protocol OData v4.
new DefaultBusinessPartnerService() .getAllBusinessPartner() .withCustomQueryParameter("$search", "Köln OR Cologne")
withCustomQueryParameter
in class FluentHelperBasic<FluentHelperT,EntityT extends VdmEntity<?>,List<EntityT extends VdmEntity<?>>>
key
- Name of the query parameter.value
- Value of the query parameter.@Nonnull public FluentHelperT select(@Nonnull SelectableT... fields)
fields
- Fields to select and/or navigation properties to expand.@Nonnull public FluentHelperT orderBy(@Nonnull EntityField<EntityT,?> field, @Nonnull Order order)
field
- Field to sort by.order
- Sorting direction to use (ascending or descending).@Nonnull public FluentHelperT top(@Nonnull Number top)
top
- Number of entities to limit the result set to.@Nonnull public FluentHelperT skip(@Nonnull Number skip)
skip
- Number of entities to skip by.@Nonnull public FluentHelperT withErrorHandler(@Nonnull com.sap.cloud.sdk.odatav2.connectivity.ErrorResultHandler<?> errorResultHandler)
ErrorResultHandler
interface can be
attached to this fluent helper. This allows custom logic to be called when an error occurs in the execute
method. If this method is not called, then an instance of
ODataVdmErrorResultHandler
is
used. Only one handler can be attached at a time per fluent helper object, so calling this multiple times will
replace the handler.errorResultHandler
- Instance of an error handler class that implements the ErrorResultHandler
interface.@Nonnull public com.sap.cloud.sdk.odatav2.connectivity.ODataQuery toQuery()
@Nonnull public List<EntityT> execute(@Nonnull ErpConfigContext configContext) throws com.sap.cloud.sdk.odatav2.connectivity.ODataException
execute
in class FluentHelperBasic<FluentHelperT,EntityT extends VdmEntity<?>,List<EntityT extends VdmEntity<?>>>
configContext
- Supply the ERP system context for executing the underlying OData query.com.sap.cloud.sdk.odatav2.connectivity.ODataException
ErpConfigContext.ErpConfigContext()
@Nonnull public FluentHelperT filter(@Nonnull FilterExpressionHelper<EntityT> expression)
expression
- Fluent helper that represents a field value expression. To create this, start with an
EntityField
constant in your
respective entity type for the desired entity field. Then call one of the comparison operators and
provide a comparison value. Optionally the resulting fluent helper can be chained with other
expression fluent helpers.@Nonnull public FluentHelperCount count()
Copyright © 2019 SAP SE. All rights reserved.