◆ ShareUsageBuilderBase() [1/2]
fiftyone.pipeline.engines.fiftyone.flowelements.ShareUsageBuilderBase< T extends ShareUsageBase >.ShareUsageBuilderBase | ( | ILoggerFactory | loggerFactory | ) |
Constructor.
- Parameters
-
- loggerFactory - the ILoggerFactory to use when creating loggers for a ShareUsageBuilderBase
◆ ShareUsageBuilderBase() [2/2]
fiftyone.pipeline.engines.fiftyone.flowelements.ShareUsageBuilderBase< T extends ShareUsageBase >.ShareUsageBuilderBase ( ILoggerFactory loggerFactory, Logger logger ) Constructor.
- Parameters
-
- loggerFactory - the ILoggerFactory to use when creating loggers for a ShareUsageBuilderBase
- logger - the Logger to use for ShareUsageElement
Member Function Documentation
◆ build()
abstract T fiftyone.pipeline.engines.fiftyone.flowelements.ShareUsageBuilderBase< T extends ShareUsageBase >.build ( ) throws IOException abstractCreate the ShareUsageElement.
- Returns
- the newly created target instance
- Exceptions
-
- IOException - if there was an exception creating the element
◆ getMaximumQueueSize()
int fiftyone.pipeline.engines.fiftyone.flowelements.ShareUsageBuilderBase< T extends ShareUsageBase >.getMaximumQueueSize ( ) Get the maximum number of entries to be stored in the queue to be sent.
- Returns
- the maximum queue size
◆ setAddTimeout()
ShareUsageBuilderBase<T> fiftyone.pipeline.engines.fiftyone.flowelements.ShareUsageBuilderBase< T extends ShareUsageBase >.setAddTimeout ( int milliseconds ) Set the timeout in milliseconds to allow when attempting to add an item to the queue.
If this timeout is exceeded then usage sharing will be disabled.
- Parameters
-
- milliseconds - timeout to set
- Returns
- this builder
◆ setBlockedHttpHeader()
ShareUsageBuilderBase<T> fiftyone.pipeline.engines.fiftyone.flowelements.ShareUsageBuilderBase< T extends ShareUsageBase >.setBlockedHttpHeader ( String blockedHeader ) By default, all HTTP headers (excluding a few such as 'cookies') are shared.
Individual headers can be excluded from sharing by adding them to this list.
- Parameters
-
- blockedHeader - the (case insensitive) name of the header to block
- Returns
- this builder
◆ setBlockedHttpHeaders()
ShareUsageBuilderBase<T> fiftyone.pipeline.engines.fiftyone.flowelements.ShareUsageBuilderBase< T extends ShareUsageBase >.setBlockedHttpHeaders ( List< String > blockedHeaders ) By default, all HTTP headers (excluding a few such as 'cookies') are shared.
Individual headers can be excluded from sharing by adding them to this list.
- Parameters
-
- blockedHeaders - the (case insensitive) names of the headers to block
- Returns
- this builder
◆ setIgnoreFlowDataEvidenceFilter()
ShareUsageBuilderBase<T> fiftyone.pipeline.engines.fiftyone.flowelements.ShareUsageBuilderBase< T extends ShareUsageBase >.setIgnoreFlowDataEvidenceFilter ( String evidenceFilter ) This setting can be used to stop the usage sharing element from sharing anything about specific requests.
For example, if you wanted to stop sharing any details from requests where the user-agent header was 'ABC', you would set this to "header.user-agent:ABC"
- Parameters
-
- evidenceFilter - Comma separated string containing entries in the format [evidenceKey]:[evidenceValue]. Any requests with evidence matching these entries will not be shared.
- Returns
- this builder
◆ setIncludedQueryStringParameter()
ShareUsageBuilderBase<T> fiftyone.pipeline.engines.fiftyone.flowelements.ShareUsageBuilderBase< T extends ShareUsageBase >.setIncludedQueryStringParameter ( String queryStringParameterName ) By default query string and HTTP form parameters are not shared unless prefixed with '51D_'.
This setting allows you to share these parameters with 51Degrees if needed.
- Parameters
-
- queryStringParameterName - the (case insensitive) name of the query string parameter to include
- Returns
- this builder
◆ setIncludedQueryStringParameters() [1/2]
ShareUsageBuilderBase<T> fiftyone.pipeline.engines.fiftyone.flowelements.ShareUsageBuilderBase< T extends ShareUsageBase >.setIncludedQueryStringParameters ( List< String > queryStringParameterNames ) By default query string and HTTP form parameters are not shared unless prefixed with '51D_'.
This setting allows you to share these parameters with 51Degrees if needed.
- Parameters
-
- queryStringParameterNames - the (case insensitive) names of the query string parameters to include
- Returns
- this builder
◆ setIncludedQueryStringParameters() [2/2]
ShareUsageBuilderBase<T> fiftyone.pipeline.engines.fiftyone.flowelements.ShareUsageBuilderBase< T extends ShareUsageBase >.setIncludedQueryStringParameters ( String queryStringParameterNames ) By default query string and HTTP form parameters are not shared unless prefixed with '51D_'.
This setting allows you to share these parameters with 51Degrees if needed.
- Parameters
-
- queryStringParameterNames - a comma separated list of (case insensitive) names of the query string parameters to include
- Returns
- this builder
◆ setMaximumQueueSize()
ShareUsageBuilderBase<T> fiftyone.pipeline.engines.fiftyone.flowelements.ShareUsageBuilderBase< T extends ShareUsageBase >.setMaximumQueueSize ( int size ) Set the maximum number of entries to be stored in the queue to be sent.
This must be more than the minimum entries per message.
By default, the value is calculated automatically based on the MinimumEntriesPerMessage setting.
- Parameters
-
- size - the size to set
- Returns
- this builder
◆ setMinimumEntriesPerMessage()
ShareUsageBuilderBase<T> fiftyone.pipeline.engines.fiftyone.flowelements.ShareUsageBuilderBase< T extends ShareUsageBase >.setMinimumEntriesPerMessage ( int minimumEntriesPerMessage ) The usage element will group data into single requests before sending it.
This setting controls the minimum number of entries before data is sent. If you are sharing large amounts of data, increasing this value is recommended in order to reduce the overhead of sending HTTP messages. For example, the 51Degrees cloud service uses a value of 2500.
- Parameters
-
- minimumEntriesPerMessage - the minimum number of entries to be aggregated by the ShareUsageElement before they are sent to the remote service
- Returns
- this builder
◆ setRepeatEvidenceIntervalMinutes()
ShareUsageBuilderBase<T> fiftyone.pipeline.engines.fiftyone.flowelements.ShareUsageBuilderBase< T extends ShareUsageBase >.setRepeatEvidenceIntervalMinutes ( int interval ) If exactly the same evidence values are seen multiple times within this time limit then they will only be shared once.
- Parameters
-
- interval - the interval in minutes
- Returns
- this builder
◆ setSessionCookieName()
ShareUsageBuilderBase<T> fiftyone.pipeline.engines.fiftyone.flowelements.ShareUsageBuilderBase< T extends ShareUsageBase >.setSessionCookieName ( String cookieName ) Set the name of the cookie that contains the session id.
This setting has no effect if TrackSession is false.
- Parameters
-
- cookieName - the name of the cookie that contains the session id
- Returns
- this builder
◆ setSharePercentage()
ShareUsageBuilderBase<T> fiftyone.pipeline.engines.fiftyone.flowelements.ShareUsageBuilderBase< T extends ShareUsageBase >.setSharePercentage ( double sharePercentage ) Set the percentage of data that the ShareUsageElement should be sharing.
- Parameters
-
- sharePercentage - the proportion of events sent to the pipeline that should be shared to 51Degrees. 1 = 100%, 0.5 = 50%, etc.
- Returns
- this builder
◆ setShareUsageUrl()
ShareUsageBuilderBase<T> fiftyone.pipeline.engines.fiftyone.flowelements.ShareUsageBuilderBase< T extends ShareUsageBase >.setShareUsageUrl ( String shareUsageUrl ) Set the URL to use when sharing usage data.
- Parameters
-
- shareUsageUrl - the URL to use when sharing usage data
- Returns
- this builder
◆ setTakeTimeout()
ShareUsageBuilderBase<T> fiftyone.pipeline.engines.fiftyone.flowelements.ShareUsageBuilderBase< T extends ShareUsageBase >.setTakeTimeout ( int milliseconds ) Set the timeout in milliseconds to allow when attempting to take an item from the queue in order to send to the remote service.
- Parameters
-
- milliseconds - timeout to set
- Returns
- this builder
◆ setTrackSession()
ShareUsageBuilderBase<T> fiftyone.pipeline.engines.fiftyone.flowelements.ShareUsageBuilderBase< T extends ShareUsageBase >.setTrackSession ( boolean track ) If set to true, the configured session cookie will be used to identify user sessions.
This will help to differentiate duplicate values that should not be shared.
- Parameters
-
- track - boolean value sets whether the usage element should track sessions
- Returns
- this builder