public abstract class BaseDataWeaveBasedRestPollingSourceStrategy<S extends Serializable,A> extends Object implements RestPollingSourceStrategy<S,A>
| Modifier and Type | Field and Description |
|---|---|
protected String |
identityExpression |
protected String |
itemBinding |
protected String |
itemsExpression |
protected String |
watermarkExpression |
| Constructor and Description |
|---|
BaseDataWeaveBasedRestPollingSourceStrategy(String itemsExpression,
String identityExpression,
String watermarkExpression,
String itemBinding,
org.mule.runtime.api.el.ExpressionLanguage expressionLanguage,
Class<S> watermarkDataType) |
| Modifier and Type | Method and Description |
|---|---|
List<org.mule.runtime.api.metadata.TypedValue<String>> |
extractItems(Optional<S> lastWatermark,
org.mule.runtime.api.metadata.TypedValue<String> fullResponse,
int statusCode,
String reasonPhrase,
org.mule.runtime.api.util.MultiMap<String,String> headers)
This method gets the list of items from the SaaS response.
|
String |
getItemIdentity(Optional<S> lastWatermark,
org.mule.runtime.api.metadata.TypedValue<String> payload,
org.mule.runtime.api.metadata.TypedValue<String> item)
This method gets the item identity from the SaaS response having the full response, the individual item and the last
watermark available.
|
S |
getItemWatermark(Optional<S> lastWatermark,
org.mule.runtime.api.metadata.TypedValue<String> payload,
org.mule.runtime.api.metadata.TypedValue<String> item)
This method gets the item watermark from the SaaS response having the full response, the individual item and the last
watermark available.
|
Function<org.mule.runtime.extension.api.runtime.source.PollContext<InputStream,A>,Optional<S>> |
getLastWatermark()
This method gets the latest watermark from the poll context to be used as starting point for new responses.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetItemAttributesprotected final String watermarkExpression
protected final String identityExpression
protected final String itemsExpression
protected final String itemBinding
public BaseDataWeaveBasedRestPollingSourceStrategy(String itemsExpression, String identityExpression, String watermarkExpression, String itemBinding, org.mule.runtime.api.el.ExpressionLanguage expressionLanguage, Class<S> watermarkDataType) throws SourceStartingException
SourceStartingExceptionpublic S getItemWatermark(Optional<S> lastWatermark, org.mule.runtime.api.metadata.TypedValue<String> payload, org.mule.runtime.api.metadata.TypedValue<String> item)
RestPollingSourceStrategygetItemWatermark in interface RestPollingSourceStrategy<S extends Serializable,A>lastWatermark - latest watermark obtainedpayload - current payload obtained by SaaS responseitem - current itemS watermark defined as generic typepublic String getItemIdentity(Optional<S> lastWatermark, org.mule.runtime.api.metadata.TypedValue<String> payload, org.mule.runtime.api.metadata.TypedValue<String> item)
RestPollingSourceStrategygetItemIdentity in interface RestPollingSourceStrategy<S extends Serializable,A>lastWatermark - latest watermark obtainedpayload - current payload obtained by SaaS responseitem - current itemString identity as string typepublic List<org.mule.runtime.api.metadata.TypedValue<String>> extractItems(Optional<S> lastWatermark, org.mule.runtime.api.metadata.TypedValue<String> fullResponse, int statusCode, String reasonPhrase, org.mule.runtime.api.util.MultiMap<String,String> headers)
RestPollingSourceStrategyextractItems in interface RestPollingSourceStrategy<S extends Serializable,A>lastWatermark - latest watermark obtainedfullResponse - current payload obtained by SaaS responsestatusCode - http status code from SaaS responsereasonPhrase - http reason phrase from SaaS responseheaders - http headers from SaaS responseList> list of itemspublic Function<org.mule.runtime.extension.api.runtime.source.PollContext<InputStream,A>,Optional<S>> getLastWatermark()
RestPollingSourceStrategygetLastWatermark in interface RestPollingSourceStrategy<S extends Serializable,A>PollContext , Optional> identity as string typeCopyright © 2023. All rights reserved.