Package com.loop54
Class Loop54Client
java.lang.Object
com.loop54.Loop54Client
- All Implemented Interfaces:
ILoop54Client,Closeable,AutoCloseable
Default implementation of the ILoop54Client interface.
When issuing a request the user data will be used in this order of priority:
1. The UserMetaData provided in RequestContainer in the method call.
2. The IRemoteClientInfo gotten from the IRemoteClientInfoProvider
-
Constructor Summary
ConstructorsConstructorDescriptionLoop54Client(IRequestManager requestManager, IRemoteClientInfoProvider remoteClientInfoProvider) -
Method Summary
Modifier and TypeMethodDescriptionautoComplete(AutoCompleteRequest request) autoComplete(RequestContainer<AutoCompleteRequest> request) autoCompleteAsync(AutoCompleteRequest request) voidclose()Closes the underlying request manager and releases any system resources associated with it.createEvents(CreateEventsRequest request) createEvents(RequestContainer<CreateEventsRequest> request) createEventsAsync(CreateEventsRequest request) customCall(String name, Request request) customCall(String name, RequestContainer<Request> request) customCallAsync(String name, Request request) customCallAsync(String name, RequestContainer<Request> request) getEntities(GetEntitiesRequest request) getEntities(RequestContainer<GetEntitiesRequest> request) getEntitiesAsync(GetEntitiesRequest request) static <T extends Request>
RequestContainer<T>getRequestContainer(T requestData) static <T extends Request>
RequestContainer<T>getRequestContainer(T requestData, UserMetaData metaDataOverrides) Will wrap the request in a requestContainer to provide overriding options for the API call.search(SearchRequest request) search(RequestContainer<SearchRequest> request) searchAsync(SearchRequest request) searchAsync(RequestContainer<SearchRequest> request) sync()sync(RequestContainer<Request> request) syncAsync(RequestContainer<Request> request)
-
Constructor Details
-
Loop54Client
public Loop54Client(IRequestManager requestManager, IRemoteClientInfoProvider remoteClientInfoProvider) - Parameters:
requestManager- TheIRequestManagerto use when making calls to the api. Must not be null.remoteClientInfoProvider- TheIRemoteClientInfoProvider.
-
-
Method Details
-
getRequestManager
- Returns:
- IRequestManager used by this client.
-
search
- Specified by:
searchin interfaceILoop54Client- Throws:
Loop54Exception
-
search
- Specified by:
searchin interfaceILoop54Client- Throws:
Loop54Exception
-
searchAsync
- Specified by:
searchAsyncin interfaceILoop54Client
-
searchAsync
- Specified by:
searchAsyncin interfaceILoop54Client
-
getEntities
- Specified by:
getEntitiesin interfaceILoop54Client- Throws:
Loop54Exception
-
getEntities
public GetEntitiesResponse getEntities(RequestContainer<GetEntitiesRequest> request) throws Loop54Exception - Specified by:
getEntitiesin interfaceILoop54Client- Throws:
Loop54Exception
-
getEntitiesAsync
- Specified by:
getEntitiesAsyncin interfaceILoop54Client
-
getEntitiesAsync
public CompletableFuture<GetEntitiesResponse> getEntitiesAsync(RequestContainer<GetEntitiesRequest> request) - Specified by:
getEntitiesAsyncin interfaceILoop54Client
-
getEntitiesByAttribute
public GetEntitiesByAttributeResponse getEntitiesByAttribute(GetEntitiesByAttributeRequest request) throws Loop54Exception - Specified by:
getEntitiesByAttributein interfaceILoop54Client- Throws:
Loop54Exception
-
getEntitiesByAttribute
public GetEntitiesByAttributeResponse getEntitiesByAttribute(RequestContainer<GetEntitiesByAttributeRequest> request) throws Loop54Exception - Specified by:
getEntitiesByAttributein interfaceILoop54Client- Throws:
Loop54Exception
-
getEntitiesByAttributeAsync
public CompletableFuture<GetEntitiesByAttributeResponse> getEntitiesByAttributeAsync(GetEntitiesByAttributeRequest request) - Specified by:
getEntitiesByAttributeAsyncin interfaceILoop54Client
-
getEntitiesByAttributeAsync
public CompletableFuture<GetEntitiesByAttributeResponse> getEntitiesByAttributeAsync(RequestContainer<GetEntitiesByAttributeRequest> request) - Specified by:
getEntitiesByAttributeAsyncin interfaceILoop54Client
-
autoComplete
- Specified by:
autoCompletein interfaceILoop54Client- Throws:
Loop54Exception
-
autoComplete
public AutoCompleteResponse autoComplete(RequestContainer<AutoCompleteRequest> request) throws Loop54Exception - Specified by:
autoCompletein interfaceILoop54Client- Throws:
Loop54Exception
-
autoCompleteAsync
- Specified by:
autoCompleteAsyncin interfaceILoop54Client
-
autoCompleteAsync
public CompletableFuture<AutoCompleteResponse> autoCompleteAsync(RequestContainer<AutoCompleteRequest> request) - Specified by:
autoCompleteAsyncin interfaceILoop54Client
-
getRelatedEntities
public GetRelatedEntitiesResponse getRelatedEntities(GetRelatedEntitiesRequest request) throws Loop54Exception - Specified by:
getRelatedEntitiesin interfaceILoop54Client- Throws:
Loop54Exception
-
getRelatedEntities
public GetRelatedEntitiesResponse getRelatedEntities(RequestContainer<GetRelatedEntitiesRequest> request) throws Loop54Exception - Specified by:
getRelatedEntitiesin interfaceILoop54Client- Throws:
Loop54Exception
-
getRelatedEntitiesAsync
public CompletableFuture<GetRelatedEntitiesResponse> getRelatedEntitiesAsync(GetRelatedEntitiesRequest request) - Specified by:
getRelatedEntitiesAsyncin interfaceILoop54Client
-
getRelatedEntitiesAsync
public CompletableFuture<GetRelatedEntitiesResponse> getRelatedEntitiesAsync(RequestContainer<GetRelatedEntitiesRequest> request) - Specified by:
getRelatedEntitiesAsyncin interfaceILoop54Client
-
getComplementaryEntities
public GetComplementaryEntitiesResponse getComplementaryEntities(GetComplementaryEntitiesRequest request) throws Loop54Exception - Specified by:
getComplementaryEntitiesin interfaceILoop54Client- Throws:
Loop54Exception
-
getComplementaryEntities
public GetComplementaryEntitiesResponse getComplementaryEntities(RequestContainer<GetComplementaryEntitiesRequest> request) throws Loop54Exception - Specified by:
getComplementaryEntitiesin interfaceILoop54Client- Throws:
Loop54Exception
-
getComplementaryEntitiesAsync
public CompletableFuture<GetComplementaryEntitiesResponse> getComplementaryEntitiesAsync(GetComplementaryEntitiesRequest request) - Specified by:
getComplementaryEntitiesAsyncin interfaceILoop54Client
-
getComplementaryEntitiesAsync
public CompletableFuture<GetComplementaryEntitiesResponse> getComplementaryEntitiesAsync(RequestContainer<GetComplementaryEntitiesRequest> request) - Specified by:
getComplementaryEntitiesAsyncin interfaceILoop54Client
-
getBasketRecommendations
public GetBasketRecommendationsResponse getBasketRecommendations(GetBasketRecommendationsRequest request) throws Loop54Exception - Specified by:
getBasketRecommendationsin interfaceILoop54Client- Throws:
Loop54Exception
-
getBasketRecommendations
public GetBasketRecommendationsResponse getBasketRecommendations(RequestContainer<GetBasketRecommendationsRequest> request) throws Loop54Exception - Specified by:
getBasketRecommendationsin interfaceILoop54Client- Throws:
Loop54Exception
-
getBasketRecommendationsAsync
public CompletableFuture<GetBasketRecommendationsResponse> getBasketRecommendationsAsync(GetBasketRecommendationsRequest request) - Specified by:
getBasketRecommendationsAsyncin interfaceILoop54Client
-
getBasketRecommendationsAsync
public CompletableFuture<GetBasketRecommendationsResponse> getBasketRecommendationsAsync(RequestContainer<GetBasketRecommendationsRequest> request) - Specified by:
getBasketRecommendationsAsyncin interfaceILoop54Client
-
getRecommendedEntities
public GetRecommendedEntitiesResponse getRecommendedEntities(GetRecommendedEntitiesRequest request) throws Loop54Exception - Specified by:
getRecommendedEntitiesin interfaceILoop54Client- Throws:
Loop54Exception
-
getRecommendedEntities
public GetRecommendedEntitiesResponse getRecommendedEntities(RequestContainer<GetRecommendedEntitiesRequest> request) throws Loop54Exception - Specified by:
getRecommendedEntitiesin interfaceILoop54Client- Throws:
Loop54Exception
-
getRecommendedEntitiesAsync
public CompletableFuture<GetRecommendedEntitiesResponse> getRecommendedEntitiesAsync(GetRecommendedEntitiesRequest request) - Specified by:
getRecommendedEntitiesAsyncin interfaceILoop54Client
-
getRecommendedEntitiesAsync
public CompletableFuture<GetRecommendedEntitiesResponse> getRecommendedEntitiesAsync(RequestContainer<GetRecommendedEntitiesRequest> request) - Specified by:
getRecommendedEntitiesAsyncin interfaceILoop54Client
-
getPopularEntities
public GetPopularEntitiesResponse getPopularEntities(GetPopularEntitiesRequest request) throws Loop54Exception - Specified by:
getPopularEntitiesin interfaceILoop54Client- Throws:
Loop54Exception
-
getPopularEntities
public GetPopularEntitiesResponse getPopularEntities(RequestContainer<GetPopularEntitiesRequest> request) throws Loop54Exception - Specified by:
getPopularEntitiesin interfaceILoop54Client- Throws:
Loop54Exception
-
getPopularEntitiesAsync
public CompletableFuture<GetPopularEntitiesResponse> getPopularEntitiesAsync(GetPopularEntitiesRequest request) - Specified by:
getPopularEntitiesAsyncin interfaceILoop54Client
-
getPopularEntitiesAsync
public CompletableFuture<GetPopularEntitiesResponse> getPopularEntitiesAsync(RequestContainer<GetPopularEntitiesRequest> request) - Specified by:
getPopularEntitiesAsyncin interfaceILoop54Client
-
getRecentEntities
public GetRecentEntitiesResponse getRecentEntities(GetRecentEntitiesRequest request) throws Loop54Exception - Specified by:
getRecentEntitiesin interfaceILoop54Client- Throws:
Loop54Exception
-
getRecentEntities
public GetRecentEntitiesResponse getRecentEntities(RequestContainer<GetRecentEntitiesRequest> request) throws Loop54Exception - Specified by:
getRecentEntitiesin interfaceILoop54Client- Throws:
Loop54Exception
-
getRecentEntitiesAsync
public CompletableFuture<GetRecentEntitiesResponse> getRecentEntitiesAsync(GetRecentEntitiesRequest request) - Specified by:
getRecentEntitiesAsyncin interfaceILoop54Client
-
getRecentEntitiesAsync
public CompletableFuture<GetRecentEntitiesResponse> getRecentEntitiesAsync(RequestContainer<GetRecentEntitiesRequest> request) - Specified by:
getRecentEntitiesAsyncin interfaceILoop54Client
-
sync
- Specified by:
syncin interfaceILoop54Client- Throws:
Loop54Exception
-
sync
- Specified by:
syncin interfaceILoop54Client- Throws:
Loop54Exception
-
sync
- Specified by:
syncin interfaceILoop54Client- Throws:
Loop54Exception
-
syncAsync
- Specified by:
syncAsyncin interfaceILoop54Client
-
syncAsync
- Specified by:
syncAsyncin interfaceILoop54Client
-
syncAsync
- Specified by:
syncAsyncin interfaceILoop54Client
-
createEvents
- Specified by:
createEventsin interfaceILoop54Client- Throws:
Loop54Exception
-
createEvents
- Specified by:
createEventsin interfaceILoop54Client- Throws:
Loop54Exception
-
createEventsAsync
- Specified by:
createEventsAsyncin interfaceILoop54Client
-
createEventsAsync
- Specified by:
createEventsAsyncin interfaceILoop54Client
-
customCall
- Specified by:
customCallin interfaceILoop54Client- Throws:
Loop54Exception
-
customCall
- Specified by:
customCallin interfaceILoop54Client- Throws:
Loop54Exception
-
customCallAsync
- Specified by:
customCallAsyncin interfaceILoop54Client
-
customCallAsync
- Specified by:
customCallAsyncin interfaceILoop54Client
-
getRequestContainer
public static <T extends Request> RequestContainer<T> getRequestContainer(T requestData, UserMetaData metaDataOverrides) Will wrap the request in a requestContainer to provide overriding options for the API call.- Type Parameters:
T- The type of the request data to add overrides to.- Parameters:
requestData- The request data to wrap in a container. For instance aSearchRequest.metaDataOverrides- Use these overrides to force certain values to take effect in the api call. For instance if you set theUserMetaData.userIdit will trump any data from aIRemoteClientInfo! This could be useful if you want to use an internal customer id of a logged in user.- Returns:
- A
RequestContainerwrapping theRequest.
-
getRequestContainer
-
close
Closes the underlying request manager and releases any system resources associated with it. After calling this method, the client should no longer be used.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Throws:
IOException- if an I/O error occurs while closing the request manager
-