in flink-connector/flink-connector-gcp-pubsub/src/main/java/com/google/pubsub/flink/PubSubSink.java [63:92]
private Publisher createPublisher(TopicName topicName) throws IOException {
Publisher.Builder builder = Publisher.newBuilder(topicName.toString());
// Channel settings copied from com.google.cloud:google-cloud-pubsub:1.124.1.
builder.setChannelProvider(
TopicAdminSettings.defaultGrpcTransportProviderBuilder()
.setChannelsPerCpu(1)
.setHeaderProvider(
FixedHeaderProvider.create(
"x-goog-api-client", "PubSub-Flink-Connector/1.0.0-SNAPSHOT"))
.build());
if (credentials().isPresent()) {
builder.setCredentialsProvider(FixedCredentialsProvider.create(credentials().get()));
}
if (enableMessageOrdering().isPresent()) {
builder.setEnableMessageOrdering(enableMessageOrdering().get());
}
if (endpoint().isPresent()) {
builder.setEndpoint(endpoint().get());
}
String emulatorEndpoint = EmulatorEndpoint.getEmulatorEndpoint(endpoint());
if (emulatorEndpoint != null) {
builder.setCredentialsProvider(NoCredentialsProvider.create());
builder.setChannelProvider(
FixedTransportChannelProvider.create(
GrpcTransportChannel.create(
ManagedChannelBuilder.forTarget(emulatorEndpoint).usePlaintext().build())));
}
return builder.build();
}