Package org.symphonyoss.s2.fugue.pubsub
Interface ISubscriberManagerBuilder<T extends ISubscriberManagerBuilder<T,P,B>,P,B extends ISubscriberManager<B>>
-
- Type Parameters:
T- Type of concrete builder, needed for fluent methods.P- Type of the payloads processed.B- Type of concrete manager (built object), needed for fluent methods.
- All Superinterfaces:
org.symphonyoss.s2.common.fluent.IBuilder<T,B>,org.symphonyoss.s2.common.fluent.IFluent<T>
- All Known Subinterfaces:
IPullSubscriberManagerBuilder<T,P,B>
- All Known Implementing Classes:
AbstractPullSubscriberManager.Builder,AbstractSubscriberManager.Builder
public interface ISubscriberManagerBuilder<T extends ISubscriberManagerBuilder<T,P,B>,P,B extends ISubscriberManager<B>> extends org.symphonyoss.s2.common.fluent.IBuilder<T,B>A builder for a subscriber manager of payload type P.- Author:
- Bruce Skingle
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description TwithConfig(org.symphonyoss.s2.fugue.config.IConfiguration config)Set the configuration to be used.TwithCounter(org.symphonyoss.s2.fugue.counter.ICounter counter)Set the metric counter to be used.TwithNameFactory(org.symphonyoss.s2.fugue.naming.INameFactory nameFactory)Set the name factory to be used.TwithSubscription(ISubscription<P> subscription)TwithTraceContextTransactionFactory(org.symphonyoss.s2.fugue.core.trace.ITraceContextTransactionFactory traceFactory)Set the trace context transaction factory to be used.TwithUnprocessableMessageConsumer(org.symphonyoss.s2.fugue.pipeline.IThreadSafeErrorConsumer<P> unprocessableMessageConsumer)Set the consumer for unprocessable messages.
-
-
-
Method Detail
-
withNameFactory
T withNameFactory(org.symphonyoss.s2.fugue.naming.INameFactory nameFactory)
Set the name factory to be used.- Parameters:
nameFactory- The name factory to be used.- Returns:
- this (fluent method)
-
withConfig
T withConfig(org.symphonyoss.s2.fugue.config.IConfiguration config)
Set the configuration to be used.- Parameters:
config- The configuration to be used.- Returns:
- this (fluent method)
-
withCounter
T withCounter(org.symphonyoss.s2.fugue.counter.ICounter counter)
Set the metric counter to be used.- Parameters:
counter- The metric counter to be used.- Returns:
- this (fluent method)
-
withTraceContextTransactionFactory
T withTraceContextTransactionFactory(org.symphonyoss.s2.fugue.core.trace.ITraceContextTransactionFactory traceFactory)
Set the trace context transaction factory to be used.- Parameters:
traceFactory- The trace context transaction factory to be used.- Returns:
- this (fluent method)
-
withUnprocessableMessageConsumer
T withUnprocessableMessageConsumer(org.symphonyoss.s2.fugue.pipeline.IThreadSafeErrorConsumer<P> unprocessableMessageConsumer)
Set the consumer for unprocessable messages. Messages will be sent to this consumer immediately of the handler throws a fatal exception and possibly after some number of retries in the case of a retryable exception.- Parameters:
unprocessableMessageConsumer- The consumer for unprocessable messages.- Returns:
- this (fluent method)
-
withSubscription
T withSubscription(ISubscription<P> subscription)
- Parameters:
subscription-- Returns:
- this (fluent method)
-
-