public class DefaultSubscriberFactory extends Object implements SubscriberFactory
SubscriberFactory
implementation.Constructor and Description |
---|
DefaultSubscriberFactory(GcpProjectIdProvider projectIdProvider)
Default
DefaultSubscriberFactory constructor. |
Modifier and Type | Method and Description |
---|---|
com.google.pubsub.v1.PullRequest |
createPullRequest(String subscriptionName,
Integer maxMessages,
Boolean returnImmediately)
Create a
PullRequest for synchronously pulling a number of messages from
a Google Cloud Pub/Sub subscription. |
com.google.cloud.pubsub.v1.Subscriber |
createSubscriber(String subscriptionName,
com.google.cloud.pubsub.v1.MessageReceiver receiver)
Create a
Subscriber for the specified subscription name and wired it up to asynchronously
deliver messages to the provided MessageReceiver . |
com.google.cloud.pubsub.v1.stub.SubscriberStub |
createSubscriberStub(com.google.api.gax.retrying.RetrySettings retrySettings)
Create a
SubscriberStub that is needed to execute PullRequest s. |
void |
setApiClock(com.google.api.core.ApiClock apiClock)
Sets the clock to use for the retry logic in synchronous pulling.
|
void |
setChannelProvider(com.google.api.gax.rpc.TransportChannelProvider channelProvider)
Set the provider for the subscribers' transport channel.
|
void |
setCredentialsProvider(com.google.api.gax.core.CredentialsProvider credentialsProvider)
Set the provider for the GCP credentials to be used by the subscribers' API calls.
|
void |
setExecutorProvider(com.google.api.gax.core.ExecutorProvider executorProvider)
Set the provider for the subscribers' executor.
|
void |
setFlowControlSettings(com.google.api.gax.batching.FlowControlSettings flowControlSettings)
Set the flow control for the subscribers, including the behaviour for when the flow limits are hit.
|
void |
setHeaderProvider(com.google.api.gax.rpc.HeaderProvider headerProvider)
Set the provider for the HTTP headers to be added to the subscribers' REST API calls.
|
void |
setMaxAckDurationPeriod(org.threeten.bp.Duration maxAckDurationPeriod)
Set the maximum period the ack timeout is extended by.
|
void |
setParallelPullCount(Integer parallelPullCount)
Set the number of pull workers.
|
void |
setPullEndpoint(String pullEndpoint)
Sets the endpoint for synchronous pulling messages.
|
void |
setSystemExecutorProvider(com.google.api.gax.core.ExecutorProvider systemExecutorProvider)
Set the provider for the system executor, to poll and manage lease extensions.
|
public DefaultSubscriberFactory(GcpProjectIdProvider projectIdProvider)
DefaultSubscriberFactory
constructor.projectIdProvider
- provides the GCP project IDpublic void setExecutorProvider(com.google.api.gax.core.ExecutorProvider executorProvider)
public void setChannelProvider(com.google.api.gax.rpc.TransportChannelProvider channelProvider)
public void setCredentialsProvider(com.google.api.gax.core.CredentialsProvider credentialsProvider)
public void setHeaderProvider(com.google.api.gax.rpc.HeaderProvider headerProvider)
public void setSystemExecutorProvider(com.google.api.gax.core.ExecutorProvider systemExecutorProvider)
public void setFlowControlSettings(com.google.api.gax.batching.FlowControlSettings flowControlSettings)
public void setMaxAckDurationPeriod(org.threeten.bp.Duration maxAckDurationPeriod)
public void setParallelPullCount(Integer parallelPullCount)
public void setPullEndpoint(String pullEndpoint)
public void setApiClock(com.google.api.core.ApiClock apiClock)
public com.google.cloud.pubsub.v1.Subscriber createSubscriber(String subscriptionName, com.google.cloud.pubsub.v1.MessageReceiver receiver)
SubscriberFactory
Subscriber
for the specified subscription name and wired it up to asynchronously
deliver messages to the provided MessageReceiver
.createSubscriber
in interface SubscriberFactory
subscriptionName
- the name of the subscriptionreceiver
- the callback for receiving messages asynchronouslySubscriber
that was created to bind the receiver to the subscriptionpublic com.google.pubsub.v1.PullRequest createPullRequest(String subscriptionName, Integer maxMessages, Boolean returnImmediately)
SubscriberFactory
PullRequest
for synchronously pulling a number of messages from
a Google Cloud Pub/Sub subscription.createPullRequest
in interface SubscriberFactory
subscriptionName
- the name of the subscriptionmaxMessages
- the maximum number of pulled messagesreturnImmediately
- causes the pull request to return immediately even
if subscription doesn't contain enough messages to satisfy maxMessages
SubscriberStub
public com.google.cloud.pubsub.v1.stub.SubscriberStub createSubscriberStub(com.google.api.gax.retrying.RetrySettings retrySettings)
SubscriberFactory
SubscriberStub
that is needed to execute PullRequest
s.createSubscriberStub
in interface SubscriberFactory
retrySettings
- parameters for retrying pull requests when they fail, including
jitter logic, timeout, and exponential backoffSubscriberStub
used for executing PullRequest
sCopyright © 2018 Pivotal Software, Inc.. All rights reserved.