Class: Google::Cloud::PubSub::V1::Publisher::Client::Configuration

Inherits:
Object
  • Object
show all
Extended by:
Gapic::Config
Defined in:
lib/google/cloud/pubsub/v1/publisher/client.rb

Overview

Configuration class for the Publisher API.

This class represents the configuration for Publisher, providing control over timeouts, retry behavior, logging, transport parameters, and other low-level controls. Certain parameters can also be applied individually to specific RPCs. See Rpcs for a list of RPCs that can be configured independently.

Configuration can be applied globally to all clients, or to a single client on construction.

Examples:


# Modify the global config, setting the timeout for
# create_topic to 20 seconds,
# and all remaining timeouts to 10 seconds.
::Google::Cloud::PubSub::V1::Publisher::Client.configure do |config|
  config.timeout = 10.0
  config.rpcs.create_topic.timeout = 20.0
end

# Apply the above configuration only to a new client.
client = ::Google::Cloud::PubSub::V1::Publisher::Client.new do |config|
  config.timeout = 10.0
  config.rpcs.create_topic.timeout = 20.0
end

Defined Under Namespace

Classes: Rpcs

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#channel_args::Hash

Extra parameters passed to the gRPC channel. Note: this is ignored if a GRPC::Core::Channel object is provided as the credential.

Returns:

  • (::Hash)


1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
# File 'lib/google/cloud/pubsub/v1/publisher/client.rb', line 1122

class Configuration
  extend ::Gapic::Config

  config_attr :endpoint,      "pubsub.googleapis.com", ::String
  config_attr :credentials,   nil do |value|
    allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
    allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
    allowed.any? { |klass| klass === value }
  end
  config_attr :scope,         nil, ::String, ::Array, nil
  config_attr :lib_name,      nil, ::String, nil
  config_attr :lib_version,   nil, ::String, nil
  config_attr(:channel_args,  { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
  config_attr :interceptors,  nil, ::Array, nil
  config_attr :timeout,       nil, ::Numeric, nil
  config_attr :metadata,      nil, ::Hash, nil
  config_attr :retry_policy,  nil, ::Hash, ::Proc, nil
  config_attr :quota_project, nil, ::String, nil

  # @private
  def initialize parent_config = nil
    @parent_config = parent_config unless parent_config.nil?

    yield self if block_given?
  end

  ##
  # Configurations for individual RPCs
  # @return [Rpcs]
  #
  def rpcs
    @rpcs ||= begin
      parent_rpcs = nil
      parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
      Rpcs.new parent_rpcs
    end
  end

  ##
  # Configuration RPC class for the Publisher API.
  #
  # Includes fields providing the configuration for each RPC in this service.
  # Each configuration object is of type `Gapic::Config::Method` and includes
  # the following configuration fields:
  #
  #  *  `timeout` (*type:* `Numeric`) - The call timeout in seconds
  #  *  `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
  #  *  `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
  #     include the following keys:
  #      *  `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
  #      *  `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
  #      *  `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
  #      *  `:retry_codes` (*type:* `Array<String>`) - The error codes that should
  #         trigger a retry.
  #
  class Rpcs
    ##
    # RPC-specific configuration for `create_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :create_topic
    ##
    # RPC-specific configuration for `update_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :update_topic
    ##
    # RPC-specific configuration for `publish`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :publish
    ##
    # RPC-specific configuration for `get_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :get_topic
    ##
    # RPC-specific configuration for `list_topics`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topics
    ##
    # RPC-specific configuration for `list_topic_subscriptions`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topic_subscriptions
    ##
    # RPC-specific configuration for `list_topic_snapshots`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topic_snapshots
    ##
    # RPC-specific configuration for `delete_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :delete_topic
    ##
    # RPC-specific configuration for `detach_subscription`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :detach_subscription

    # @private
    def initialize parent_rpcs = nil
      create_topic_config = parent_rpcs.create_topic if parent_rpcs.respond_to? :create_topic
      @create_topic = ::Gapic::Config::Method.new create_topic_config
      update_topic_config = parent_rpcs.update_topic if parent_rpcs.respond_to? :update_topic
      @update_topic = ::Gapic::Config::Method.new update_topic_config
      publish_config = parent_rpcs.publish if parent_rpcs.respond_to? :publish
      @publish = ::Gapic::Config::Method.new publish_config
      get_topic_config = parent_rpcs.get_topic if parent_rpcs.respond_to? :get_topic
      @get_topic = ::Gapic::Config::Method.new get_topic_config
      list_topics_config = parent_rpcs.list_topics if parent_rpcs.respond_to? :list_topics
      @list_topics = ::Gapic::Config::Method.new list_topics_config
      list_topic_subscriptions_config = parent_rpcs.list_topic_subscriptions if parent_rpcs.respond_to? :list_topic_subscriptions
      @list_topic_subscriptions = ::Gapic::Config::Method.new list_topic_subscriptions_config
      list_topic_snapshots_config = parent_rpcs.list_topic_snapshots if parent_rpcs.respond_to? :list_topic_snapshots
      @list_topic_snapshots = ::Gapic::Config::Method.new list_topic_snapshots_config
      delete_topic_config = parent_rpcs.delete_topic if parent_rpcs.respond_to? :delete_topic
      @delete_topic = ::Gapic::Config::Method.new delete_topic_config
      detach_subscription_config = parent_rpcs.detach_subscription if parent_rpcs.respond_to? :detach_subscription
      @detach_subscription = ::Gapic::Config::Method.new detach_subscription_config

      yield self if block_given?
    end
  end
end

#credentials::Object

Credentials to send with calls. You may provide any of the following types:

  • (String) The path to a service account key file in JSON format
  • (Hash) A service account key as a Hash
  • (Google::Auth::Credentials) A googleauth credentials object (see the googleauth docs)
  • (Signet::OAuth2::Client) A signet oauth2 client object (see the signet docs)
  • (GRPC::Core::Channel) a gRPC channel with included credentials
  • (GRPC::Core::ChannelCredentials) a gRPC credentails object
  • (nil) indicating no credentials

Returns:

  • (::Object)


1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
# File 'lib/google/cloud/pubsub/v1/publisher/client.rb', line 1122

class Configuration
  extend ::Gapic::Config

  config_attr :endpoint,      "pubsub.googleapis.com", ::String
  config_attr :credentials,   nil do |value|
    allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
    allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
    allowed.any? { |klass| klass === value }
  end
  config_attr :scope,         nil, ::String, ::Array, nil
  config_attr :lib_name,      nil, ::String, nil
  config_attr :lib_version,   nil, ::String, nil
  config_attr(:channel_args,  { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
  config_attr :interceptors,  nil, ::Array, nil
  config_attr :timeout,       nil, ::Numeric, nil
  config_attr :metadata,      nil, ::Hash, nil
  config_attr :retry_policy,  nil, ::Hash, ::Proc, nil
  config_attr :quota_project, nil, ::String, nil

  # @private
  def initialize parent_config = nil
    @parent_config = parent_config unless parent_config.nil?

    yield self if block_given?
  end

  ##
  # Configurations for individual RPCs
  # @return [Rpcs]
  #
  def rpcs
    @rpcs ||= begin
      parent_rpcs = nil
      parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
      Rpcs.new parent_rpcs
    end
  end

  ##
  # Configuration RPC class for the Publisher API.
  #
  # Includes fields providing the configuration for each RPC in this service.
  # Each configuration object is of type `Gapic::Config::Method` and includes
  # the following configuration fields:
  #
  #  *  `timeout` (*type:* `Numeric`) - The call timeout in seconds
  #  *  `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
  #  *  `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
  #     include the following keys:
  #      *  `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
  #      *  `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
  #      *  `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
  #      *  `:retry_codes` (*type:* `Array<String>`) - The error codes that should
  #         trigger a retry.
  #
  class Rpcs
    ##
    # RPC-specific configuration for `create_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :create_topic
    ##
    # RPC-specific configuration for `update_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :update_topic
    ##
    # RPC-specific configuration for `publish`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :publish
    ##
    # RPC-specific configuration for `get_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :get_topic
    ##
    # RPC-specific configuration for `list_topics`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topics
    ##
    # RPC-specific configuration for `list_topic_subscriptions`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topic_subscriptions
    ##
    # RPC-specific configuration for `list_topic_snapshots`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topic_snapshots
    ##
    # RPC-specific configuration for `delete_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :delete_topic
    ##
    # RPC-specific configuration for `detach_subscription`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :detach_subscription

    # @private
    def initialize parent_rpcs = nil
      create_topic_config = parent_rpcs.create_topic if parent_rpcs.respond_to? :create_topic
      @create_topic = ::Gapic::Config::Method.new create_topic_config
      update_topic_config = parent_rpcs.update_topic if parent_rpcs.respond_to? :update_topic
      @update_topic = ::Gapic::Config::Method.new update_topic_config
      publish_config = parent_rpcs.publish if parent_rpcs.respond_to? :publish
      @publish = ::Gapic::Config::Method.new publish_config
      get_topic_config = parent_rpcs.get_topic if parent_rpcs.respond_to? :get_topic
      @get_topic = ::Gapic::Config::Method.new get_topic_config
      list_topics_config = parent_rpcs.list_topics if parent_rpcs.respond_to? :list_topics
      @list_topics = ::Gapic::Config::Method.new list_topics_config
      list_topic_subscriptions_config = parent_rpcs.list_topic_subscriptions if parent_rpcs.respond_to? :list_topic_subscriptions
      @list_topic_subscriptions = ::Gapic::Config::Method.new list_topic_subscriptions_config
      list_topic_snapshots_config = parent_rpcs.list_topic_snapshots if parent_rpcs.respond_to? :list_topic_snapshots
      @list_topic_snapshots = ::Gapic::Config::Method.new list_topic_snapshots_config
      delete_topic_config = parent_rpcs.delete_topic if parent_rpcs.respond_to? :delete_topic
      @delete_topic = ::Gapic::Config::Method.new delete_topic_config
      detach_subscription_config = parent_rpcs.detach_subscription if parent_rpcs.respond_to? :detach_subscription
      @detach_subscription = ::Gapic::Config::Method.new detach_subscription_config

      yield self if block_given?
    end
  end
end

#endpoint::String

The hostname or hostname:port of the service endpoint. Defaults to "pubsub.googleapis.com".

Returns:

  • (::String)


1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
# File 'lib/google/cloud/pubsub/v1/publisher/client.rb', line 1122

class Configuration
  extend ::Gapic::Config

  config_attr :endpoint,      "pubsub.googleapis.com", ::String
  config_attr :credentials,   nil do |value|
    allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
    allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
    allowed.any? { |klass| klass === value }
  end
  config_attr :scope,         nil, ::String, ::Array, nil
  config_attr :lib_name,      nil, ::String, nil
  config_attr :lib_version,   nil, ::String, nil
  config_attr(:channel_args,  { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
  config_attr :interceptors,  nil, ::Array, nil
  config_attr :timeout,       nil, ::Numeric, nil
  config_attr :metadata,      nil, ::Hash, nil
  config_attr :retry_policy,  nil, ::Hash, ::Proc, nil
  config_attr :quota_project, nil, ::String, nil

  # @private
  def initialize parent_config = nil
    @parent_config = parent_config unless parent_config.nil?

    yield self if block_given?
  end

  ##
  # Configurations for individual RPCs
  # @return [Rpcs]
  #
  def rpcs
    @rpcs ||= begin
      parent_rpcs = nil
      parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
      Rpcs.new parent_rpcs
    end
  end

  ##
  # Configuration RPC class for the Publisher API.
  #
  # Includes fields providing the configuration for each RPC in this service.
  # Each configuration object is of type `Gapic::Config::Method` and includes
  # the following configuration fields:
  #
  #  *  `timeout` (*type:* `Numeric`) - The call timeout in seconds
  #  *  `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
  #  *  `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
  #     include the following keys:
  #      *  `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
  #      *  `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
  #      *  `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
  #      *  `:retry_codes` (*type:* `Array<String>`) - The error codes that should
  #         trigger a retry.
  #
  class Rpcs
    ##
    # RPC-specific configuration for `create_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :create_topic
    ##
    # RPC-specific configuration for `update_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :update_topic
    ##
    # RPC-specific configuration for `publish`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :publish
    ##
    # RPC-specific configuration for `get_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :get_topic
    ##
    # RPC-specific configuration for `list_topics`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topics
    ##
    # RPC-specific configuration for `list_topic_subscriptions`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topic_subscriptions
    ##
    # RPC-specific configuration for `list_topic_snapshots`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topic_snapshots
    ##
    # RPC-specific configuration for `delete_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :delete_topic
    ##
    # RPC-specific configuration for `detach_subscription`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :detach_subscription

    # @private
    def initialize parent_rpcs = nil
      create_topic_config = parent_rpcs.create_topic if parent_rpcs.respond_to? :create_topic
      @create_topic = ::Gapic::Config::Method.new create_topic_config
      update_topic_config = parent_rpcs.update_topic if parent_rpcs.respond_to? :update_topic
      @update_topic = ::Gapic::Config::Method.new update_topic_config
      publish_config = parent_rpcs.publish if parent_rpcs.respond_to? :publish
      @publish = ::Gapic::Config::Method.new publish_config
      get_topic_config = parent_rpcs.get_topic if parent_rpcs.respond_to? :get_topic
      @get_topic = ::Gapic::Config::Method.new get_topic_config
      list_topics_config = parent_rpcs.list_topics if parent_rpcs.respond_to? :list_topics
      @list_topics = ::Gapic::Config::Method.new list_topics_config
      list_topic_subscriptions_config = parent_rpcs.list_topic_subscriptions if parent_rpcs.respond_to? :list_topic_subscriptions
      @list_topic_subscriptions = ::Gapic::Config::Method.new list_topic_subscriptions_config
      list_topic_snapshots_config = parent_rpcs.list_topic_snapshots if parent_rpcs.respond_to? :list_topic_snapshots
      @list_topic_snapshots = ::Gapic::Config::Method.new list_topic_snapshots_config
      delete_topic_config = parent_rpcs.delete_topic if parent_rpcs.respond_to? :delete_topic
      @delete_topic = ::Gapic::Config::Method.new delete_topic_config
      detach_subscription_config = parent_rpcs.detach_subscription if parent_rpcs.respond_to? :detach_subscription
      @detach_subscription = ::Gapic::Config::Method.new detach_subscription_config

      yield self if block_given?
    end
  end
end

#interceptors::Array<::GRPC::ClientInterceptor>

An array of interceptors that are run before calls are executed.

Returns:

  • (::Array<::GRPC::ClientInterceptor>)


1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
# File 'lib/google/cloud/pubsub/v1/publisher/client.rb', line 1122

class Configuration
  extend ::Gapic::Config

  config_attr :endpoint,      "pubsub.googleapis.com", ::String
  config_attr :credentials,   nil do |value|
    allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
    allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
    allowed.any? { |klass| klass === value }
  end
  config_attr :scope,         nil, ::String, ::Array, nil
  config_attr :lib_name,      nil, ::String, nil
  config_attr :lib_version,   nil, ::String, nil
  config_attr(:channel_args,  { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
  config_attr :interceptors,  nil, ::Array, nil
  config_attr :timeout,       nil, ::Numeric, nil
  config_attr :metadata,      nil, ::Hash, nil
  config_attr :retry_policy,  nil, ::Hash, ::Proc, nil
  config_attr :quota_project, nil, ::String, nil

  # @private
  def initialize parent_config = nil
    @parent_config = parent_config unless parent_config.nil?

    yield self if block_given?
  end

  ##
  # Configurations for individual RPCs
  # @return [Rpcs]
  #
  def rpcs
    @rpcs ||= begin
      parent_rpcs = nil
      parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
      Rpcs.new parent_rpcs
    end
  end

  ##
  # Configuration RPC class for the Publisher API.
  #
  # Includes fields providing the configuration for each RPC in this service.
  # Each configuration object is of type `Gapic::Config::Method` and includes
  # the following configuration fields:
  #
  #  *  `timeout` (*type:* `Numeric`) - The call timeout in seconds
  #  *  `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
  #  *  `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
  #     include the following keys:
  #      *  `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
  #      *  `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
  #      *  `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
  #      *  `:retry_codes` (*type:* `Array<String>`) - The error codes that should
  #         trigger a retry.
  #
  class Rpcs
    ##
    # RPC-specific configuration for `create_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :create_topic
    ##
    # RPC-specific configuration for `update_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :update_topic
    ##
    # RPC-specific configuration for `publish`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :publish
    ##
    # RPC-specific configuration for `get_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :get_topic
    ##
    # RPC-specific configuration for `list_topics`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topics
    ##
    # RPC-specific configuration for `list_topic_subscriptions`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topic_subscriptions
    ##
    # RPC-specific configuration for `list_topic_snapshots`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topic_snapshots
    ##
    # RPC-specific configuration for `delete_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :delete_topic
    ##
    # RPC-specific configuration for `detach_subscription`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :detach_subscription

    # @private
    def initialize parent_rpcs = nil
      create_topic_config = parent_rpcs.create_topic if parent_rpcs.respond_to? :create_topic
      @create_topic = ::Gapic::Config::Method.new create_topic_config
      update_topic_config = parent_rpcs.update_topic if parent_rpcs.respond_to? :update_topic
      @update_topic = ::Gapic::Config::Method.new update_topic_config
      publish_config = parent_rpcs.publish if parent_rpcs.respond_to? :publish
      @publish = ::Gapic::Config::Method.new publish_config
      get_topic_config = parent_rpcs.get_topic if parent_rpcs.respond_to? :get_topic
      @get_topic = ::Gapic::Config::Method.new get_topic_config
      list_topics_config = parent_rpcs.list_topics if parent_rpcs.respond_to? :list_topics
      @list_topics = ::Gapic::Config::Method.new list_topics_config
      list_topic_subscriptions_config = parent_rpcs.list_topic_subscriptions if parent_rpcs.respond_to? :list_topic_subscriptions
      @list_topic_subscriptions = ::Gapic::Config::Method.new list_topic_subscriptions_config
      list_topic_snapshots_config = parent_rpcs.list_topic_snapshots if parent_rpcs.respond_to? :list_topic_snapshots
      @list_topic_snapshots = ::Gapic::Config::Method.new list_topic_snapshots_config
      delete_topic_config = parent_rpcs.delete_topic if parent_rpcs.respond_to? :delete_topic
      @delete_topic = ::Gapic::Config::Method.new delete_topic_config
      detach_subscription_config = parent_rpcs.detach_subscription if parent_rpcs.respond_to? :detach_subscription
      @detach_subscription = ::Gapic::Config::Method.new detach_subscription_config

      yield self if block_given?
    end
  end
end

#lib_name::String

The library name as recorded in instrumentation and logging

Returns:

  • (::String)


1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
# File 'lib/google/cloud/pubsub/v1/publisher/client.rb', line 1122

class Configuration
  extend ::Gapic::Config

  config_attr :endpoint,      "pubsub.googleapis.com", ::String
  config_attr :credentials,   nil do |value|
    allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
    allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
    allowed.any? { |klass| klass === value }
  end
  config_attr :scope,         nil, ::String, ::Array, nil
  config_attr :lib_name,      nil, ::String, nil
  config_attr :lib_version,   nil, ::String, nil
  config_attr(:channel_args,  { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
  config_attr :interceptors,  nil, ::Array, nil
  config_attr :timeout,       nil, ::Numeric, nil
  config_attr :metadata,      nil, ::Hash, nil
  config_attr :retry_policy,  nil, ::Hash, ::Proc, nil
  config_attr :quota_project, nil, ::String, nil

  # @private
  def initialize parent_config = nil
    @parent_config = parent_config unless parent_config.nil?

    yield self if block_given?
  end

  ##
  # Configurations for individual RPCs
  # @return [Rpcs]
  #
  def rpcs
    @rpcs ||= begin
      parent_rpcs = nil
      parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
      Rpcs.new parent_rpcs
    end
  end

  ##
  # Configuration RPC class for the Publisher API.
  #
  # Includes fields providing the configuration for each RPC in this service.
  # Each configuration object is of type `Gapic::Config::Method` and includes
  # the following configuration fields:
  #
  #  *  `timeout` (*type:* `Numeric`) - The call timeout in seconds
  #  *  `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
  #  *  `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
  #     include the following keys:
  #      *  `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
  #      *  `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
  #      *  `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
  #      *  `:retry_codes` (*type:* `Array<String>`) - The error codes that should
  #         trigger a retry.
  #
  class Rpcs
    ##
    # RPC-specific configuration for `create_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :create_topic
    ##
    # RPC-specific configuration for `update_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :update_topic
    ##
    # RPC-specific configuration for `publish`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :publish
    ##
    # RPC-specific configuration for `get_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :get_topic
    ##
    # RPC-specific configuration for `list_topics`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topics
    ##
    # RPC-specific configuration for `list_topic_subscriptions`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topic_subscriptions
    ##
    # RPC-specific configuration for `list_topic_snapshots`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topic_snapshots
    ##
    # RPC-specific configuration for `delete_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :delete_topic
    ##
    # RPC-specific configuration for `detach_subscription`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :detach_subscription

    # @private
    def initialize parent_rpcs = nil
      create_topic_config = parent_rpcs.create_topic if parent_rpcs.respond_to? :create_topic
      @create_topic = ::Gapic::Config::Method.new create_topic_config
      update_topic_config = parent_rpcs.update_topic if parent_rpcs.respond_to? :update_topic
      @update_topic = ::Gapic::Config::Method.new update_topic_config
      publish_config = parent_rpcs.publish if parent_rpcs.respond_to? :publish
      @publish = ::Gapic::Config::Method.new publish_config
      get_topic_config = parent_rpcs.get_topic if parent_rpcs.respond_to? :get_topic
      @get_topic = ::Gapic::Config::Method.new get_topic_config
      list_topics_config = parent_rpcs.list_topics if parent_rpcs.respond_to? :list_topics
      @list_topics = ::Gapic::Config::Method.new list_topics_config
      list_topic_subscriptions_config = parent_rpcs.list_topic_subscriptions if parent_rpcs.respond_to? :list_topic_subscriptions
      @list_topic_subscriptions = ::Gapic::Config::Method.new list_topic_subscriptions_config
      list_topic_snapshots_config = parent_rpcs.list_topic_snapshots if parent_rpcs.respond_to? :list_topic_snapshots
      @list_topic_snapshots = ::Gapic::Config::Method.new list_topic_snapshots_config
      delete_topic_config = parent_rpcs.delete_topic if parent_rpcs.respond_to? :delete_topic
      @delete_topic = ::Gapic::Config::Method.new delete_topic_config
      detach_subscription_config = parent_rpcs.detach_subscription if parent_rpcs.respond_to? :detach_subscription
      @detach_subscription = ::Gapic::Config::Method.new detach_subscription_config

      yield self if block_given?
    end
  end
end

#lib_version::String

The library version as recorded in instrumentation and logging

Returns:

  • (::String)


1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
# File 'lib/google/cloud/pubsub/v1/publisher/client.rb', line 1122

class Configuration
  extend ::Gapic::Config

  config_attr :endpoint,      "pubsub.googleapis.com", ::String
  config_attr :credentials,   nil do |value|
    allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
    allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
    allowed.any? { |klass| klass === value }
  end
  config_attr :scope,         nil, ::String, ::Array, nil
  config_attr :lib_name,      nil, ::String, nil
  config_attr :lib_version,   nil, ::String, nil
  config_attr(:channel_args,  { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
  config_attr :interceptors,  nil, ::Array, nil
  config_attr :timeout,       nil, ::Numeric, nil
  config_attr :metadata,      nil, ::Hash, nil
  config_attr :retry_policy,  nil, ::Hash, ::Proc, nil
  config_attr :quota_project, nil, ::String, nil

  # @private
  def initialize parent_config = nil
    @parent_config = parent_config unless parent_config.nil?

    yield self if block_given?
  end

  ##
  # Configurations for individual RPCs
  # @return [Rpcs]
  #
  def rpcs
    @rpcs ||= begin
      parent_rpcs = nil
      parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
      Rpcs.new parent_rpcs
    end
  end

  ##
  # Configuration RPC class for the Publisher API.
  #
  # Includes fields providing the configuration for each RPC in this service.
  # Each configuration object is of type `Gapic::Config::Method` and includes
  # the following configuration fields:
  #
  #  *  `timeout` (*type:* `Numeric`) - The call timeout in seconds
  #  *  `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
  #  *  `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
  #     include the following keys:
  #      *  `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
  #      *  `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
  #      *  `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
  #      *  `:retry_codes` (*type:* `Array<String>`) - The error codes that should
  #         trigger a retry.
  #
  class Rpcs
    ##
    # RPC-specific configuration for `create_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :create_topic
    ##
    # RPC-specific configuration for `update_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :update_topic
    ##
    # RPC-specific configuration for `publish`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :publish
    ##
    # RPC-specific configuration for `get_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :get_topic
    ##
    # RPC-specific configuration for `list_topics`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topics
    ##
    # RPC-specific configuration for `list_topic_subscriptions`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topic_subscriptions
    ##
    # RPC-specific configuration for `list_topic_snapshots`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topic_snapshots
    ##
    # RPC-specific configuration for `delete_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :delete_topic
    ##
    # RPC-specific configuration for `detach_subscription`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :detach_subscription

    # @private
    def initialize parent_rpcs = nil
      create_topic_config = parent_rpcs.create_topic if parent_rpcs.respond_to? :create_topic
      @create_topic = ::Gapic::Config::Method.new create_topic_config
      update_topic_config = parent_rpcs.update_topic if parent_rpcs.respond_to? :update_topic
      @update_topic = ::Gapic::Config::Method.new update_topic_config
      publish_config = parent_rpcs.publish if parent_rpcs.respond_to? :publish
      @publish = ::Gapic::Config::Method.new publish_config
      get_topic_config = parent_rpcs.get_topic if parent_rpcs.respond_to? :get_topic
      @get_topic = ::Gapic::Config::Method.new get_topic_config
      list_topics_config = parent_rpcs.list_topics if parent_rpcs.respond_to? :list_topics
      @list_topics = ::Gapic::Config::Method.new list_topics_config
      list_topic_subscriptions_config = parent_rpcs.list_topic_subscriptions if parent_rpcs.respond_to? :list_topic_subscriptions
      @list_topic_subscriptions = ::Gapic::Config::Method.new list_topic_subscriptions_config
      list_topic_snapshots_config = parent_rpcs.list_topic_snapshots if parent_rpcs.respond_to? :list_topic_snapshots
      @list_topic_snapshots = ::Gapic::Config::Method.new list_topic_snapshots_config
      delete_topic_config = parent_rpcs.delete_topic if parent_rpcs.respond_to? :delete_topic
      @delete_topic = ::Gapic::Config::Method.new delete_topic_config
      detach_subscription_config = parent_rpcs.detach_subscription if parent_rpcs.respond_to? :detach_subscription
      @detach_subscription = ::Gapic::Config::Method.new detach_subscription_config

      yield self if block_given?
    end
  end
end

#metadata::Hash{::Symbol=>::String}

Additional gRPC headers to be sent with the call.

Returns:

  • (::Hash{::Symbol=>::String})


1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
# File 'lib/google/cloud/pubsub/v1/publisher/client.rb', line 1122

class Configuration
  extend ::Gapic::Config

  config_attr :endpoint,      "pubsub.googleapis.com", ::String
  config_attr :credentials,   nil do |value|
    allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
    allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
    allowed.any? { |klass| klass === value }
  end
  config_attr :scope,         nil, ::String, ::Array, nil
  config_attr :lib_name,      nil, ::String, nil
  config_attr :lib_version,   nil, ::String, nil
  config_attr(:channel_args,  { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
  config_attr :interceptors,  nil, ::Array, nil
  config_attr :timeout,       nil, ::Numeric, nil
  config_attr :metadata,      nil, ::Hash, nil
  config_attr :retry_policy,  nil, ::Hash, ::Proc, nil
  config_attr :quota_project, nil, ::String, nil

  # @private
  def initialize parent_config = nil
    @parent_config = parent_config unless parent_config.nil?

    yield self if block_given?
  end

  ##
  # Configurations for individual RPCs
  # @return [Rpcs]
  #
  def rpcs
    @rpcs ||= begin
      parent_rpcs = nil
      parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
      Rpcs.new parent_rpcs
    end
  end

  ##
  # Configuration RPC class for the Publisher API.
  #
  # Includes fields providing the configuration for each RPC in this service.
  # Each configuration object is of type `Gapic::Config::Method` and includes
  # the following configuration fields:
  #
  #  *  `timeout` (*type:* `Numeric`) - The call timeout in seconds
  #  *  `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
  #  *  `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
  #     include the following keys:
  #      *  `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
  #      *  `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
  #      *  `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
  #      *  `:retry_codes` (*type:* `Array<String>`) - The error codes that should
  #         trigger a retry.
  #
  class Rpcs
    ##
    # RPC-specific configuration for `create_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :create_topic
    ##
    # RPC-specific configuration for `update_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :update_topic
    ##
    # RPC-specific configuration for `publish`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :publish
    ##
    # RPC-specific configuration for `get_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :get_topic
    ##
    # RPC-specific configuration for `list_topics`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topics
    ##
    # RPC-specific configuration for `list_topic_subscriptions`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topic_subscriptions
    ##
    # RPC-specific configuration for `list_topic_snapshots`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topic_snapshots
    ##
    # RPC-specific configuration for `delete_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :delete_topic
    ##
    # RPC-specific configuration for `detach_subscription`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :detach_subscription

    # @private
    def initialize parent_rpcs = nil
      create_topic_config = parent_rpcs.create_topic if parent_rpcs.respond_to? :create_topic
      @create_topic = ::Gapic::Config::Method.new create_topic_config
      update_topic_config = parent_rpcs.update_topic if parent_rpcs.respond_to? :update_topic
      @update_topic = ::Gapic::Config::Method.new update_topic_config
      publish_config = parent_rpcs.publish if parent_rpcs.respond_to? :publish
      @publish = ::Gapic::Config::Method.new publish_config
      get_topic_config = parent_rpcs.get_topic if parent_rpcs.respond_to? :get_topic
      @get_topic = ::Gapic::Config::Method.new get_topic_config
      list_topics_config = parent_rpcs.list_topics if parent_rpcs.respond_to? :list_topics
      @list_topics = ::Gapic::Config::Method.new list_topics_config
      list_topic_subscriptions_config = parent_rpcs.list_topic_subscriptions if parent_rpcs.respond_to? :list_topic_subscriptions
      @list_topic_subscriptions = ::Gapic::Config::Method.new list_topic_subscriptions_config
      list_topic_snapshots_config = parent_rpcs.list_topic_snapshots if parent_rpcs.respond_to? :list_topic_snapshots
      @list_topic_snapshots = ::Gapic::Config::Method.new list_topic_snapshots_config
      delete_topic_config = parent_rpcs.delete_topic if parent_rpcs.respond_to? :delete_topic
      @delete_topic = ::Gapic::Config::Method.new delete_topic_config
      detach_subscription_config = parent_rpcs.detach_subscription if parent_rpcs.respond_to? :detach_subscription
      @detach_subscription = ::Gapic::Config::Method.new detach_subscription_config

      yield self if block_given?
    end
  end
end

#quota_project::String

A separate project against which to charge quota.

Returns:

  • (::String)


1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
# File 'lib/google/cloud/pubsub/v1/publisher/client.rb', line 1122

class Configuration
  extend ::Gapic::Config

  config_attr :endpoint,      "pubsub.googleapis.com", ::String
  config_attr :credentials,   nil do |value|
    allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
    allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
    allowed.any? { |klass| klass === value }
  end
  config_attr :scope,         nil, ::String, ::Array, nil
  config_attr :lib_name,      nil, ::String, nil
  config_attr :lib_version,   nil, ::String, nil
  config_attr(:channel_args,  { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
  config_attr :interceptors,  nil, ::Array, nil
  config_attr :timeout,       nil, ::Numeric, nil
  config_attr :metadata,      nil, ::Hash, nil
  config_attr :retry_policy,  nil, ::Hash, ::Proc, nil
  config_attr :quota_project, nil, ::String, nil

  # @private
  def initialize parent_config = nil
    @parent_config = parent_config unless parent_config.nil?

    yield self if block_given?
  end

  ##
  # Configurations for individual RPCs
  # @return [Rpcs]
  #
  def rpcs
    @rpcs ||= begin
      parent_rpcs = nil
      parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
      Rpcs.new parent_rpcs
    end
  end

  ##
  # Configuration RPC class for the Publisher API.
  #
  # Includes fields providing the configuration for each RPC in this service.
  # Each configuration object is of type `Gapic::Config::Method` and includes
  # the following configuration fields:
  #
  #  *  `timeout` (*type:* `Numeric`) - The call timeout in seconds
  #  *  `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
  #  *  `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
  #     include the following keys:
  #      *  `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
  #      *  `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
  #      *  `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
  #      *  `:retry_codes` (*type:* `Array<String>`) - The error codes that should
  #         trigger a retry.
  #
  class Rpcs
    ##
    # RPC-specific configuration for `create_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :create_topic
    ##
    # RPC-specific configuration for `update_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :update_topic
    ##
    # RPC-specific configuration for `publish`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :publish
    ##
    # RPC-specific configuration for `get_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :get_topic
    ##
    # RPC-specific configuration for `list_topics`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topics
    ##
    # RPC-specific configuration for `list_topic_subscriptions`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topic_subscriptions
    ##
    # RPC-specific configuration for `list_topic_snapshots`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topic_snapshots
    ##
    # RPC-specific configuration for `delete_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :delete_topic
    ##
    # RPC-specific configuration for `detach_subscription`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :detach_subscription

    # @private
    def initialize parent_rpcs = nil
      create_topic_config = parent_rpcs.create_topic if parent_rpcs.respond_to? :create_topic
      @create_topic = ::Gapic::Config::Method.new create_topic_config
      update_topic_config = parent_rpcs.update_topic if parent_rpcs.respond_to? :update_topic
      @update_topic = ::Gapic::Config::Method.new update_topic_config
      publish_config = parent_rpcs.publish if parent_rpcs.respond_to? :publish
      @publish = ::Gapic::Config::Method.new publish_config
      get_topic_config = parent_rpcs.get_topic if parent_rpcs.respond_to? :get_topic
      @get_topic = ::Gapic::Config::Method.new get_topic_config
      list_topics_config = parent_rpcs.list_topics if parent_rpcs.respond_to? :list_topics
      @list_topics = ::Gapic::Config::Method.new list_topics_config
      list_topic_subscriptions_config = parent_rpcs.list_topic_subscriptions if parent_rpcs.respond_to? :list_topic_subscriptions
      @list_topic_subscriptions = ::Gapic::Config::Method.new list_topic_subscriptions_config
      list_topic_snapshots_config = parent_rpcs.list_topic_snapshots if parent_rpcs.respond_to? :list_topic_snapshots
      @list_topic_snapshots = ::Gapic::Config::Method.new list_topic_snapshots_config
      delete_topic_config = parent_rpcs.delete_topic if parent_rpcs.respond_to? :delete_topic
      @delete_topic = ::Gapic::Config::Method.new delete_topic_config
      detach_subscription_config = parent_rpcs.detach_subscription if parent_rpcs.respond_to? :detach_subscription
      @detach_subscription = ::Gapic::Config::Method.new detach_subscription_config

      yield self if block_given?
    end
  end
end

#retry_policy::Hash

The retry policy. The value is a hash with the following keys:

  • :initial_delay (type: Numeric) - The initial delay in seconds.
  • :max_delay (type: Numeric) - The max delay in seconds.
  • :multiplier (type: Numeric) - The incremental backoff multiplier.
  • :retry_codes (type: Array<String>) - The error codes that should trigger a retry.

Returns:

  • (::Hash)


1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
# File 'lib/google/cloud/pubsub/v1/publisher/client.rb', line 1122

class Configuration
  extend ::Gapic::Config

  config_attr :endpoint,      "pubsub.googleapis.com", ::String
  config_attr :credentials,   nil do |value|
    allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
    allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
    allowed.any? { |klass| klass === value }
  end
  config_attr :scope,         nil, ::String, ::Array, nil
  config_attr :lib_name,      nil, ::String, nil
  config_attr :lib_version,   nil, ::String, nil
  config_attr(:channel_args,  { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
  config_attr :interceptors,  nil, ::Array, nil
  config_attr :timeout,       nil, ::Numeric, nil
  config_attr :metadata,      nil, ::Hash, nil
  config_attr :retry_policy,  nil, ::Hash, ::Proc, nil
  config_attr :quota_project, nil, ::String, nil

  # @private
  def initialize parent_config = nil
    @parent_config = parent_config unless parent_config.nil?

    yield self if block_given?
  end

  ##
  # Configurations for individual RPCs
  # @return [Rpcs]
  #
  def rpcs
    @rpcs ||= begin
      parent_rpcs = nil
      parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
      Rpcs.new parent_rpcs
    end
  end

  ##
  # Configuration RPC class for the Publisher API.
  #
  # Includes fields providing the configuration for each RPC in this service.
  # Each configuration object is of type `Gapic::Config::Method` and includes
  # the following configuration fields:
  #
  #  *  `timeout` (*type:* `Numeric`) - The call timeout in seconds
  #  *  `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
  #  *  `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
  #     include the following keys:
  #      *  `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
  #      *  `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
  #      *  `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
  #      *  `:retry_codes` (*type:* `Array<String>`) - The error codes that should
  #         trigger a retry.
  #
  class Rpcs
    ##
    # RPC-specific configuration for `create_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :create_topic
    ##
    # RPC-specific configuration for `update_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :update_topic
    ##
    # RPC-specific configuration for `publish`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :publish
    ##
    # RPC-specific configuration for `get_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :get_topic
    ##
    # RPC-specific configuration for `list_topics`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topics
    ##
    # RPC-specific configuration for `list_topic_subscriptions`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topic_subscriptions
    ##
    # RPC-specific configuration for `list_topic_snapshots`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topic_snapshots
    ##
    # RPC-specific configuration for `delete_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :delete_topic
    ##
    # RPC-specific configuration for `detach_subscription`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :detach_subscription

    # @private
    def initialize parent_rpcs = nil
      create_topic_config = parent_rpcs.create_topic if parent_rpcs.respond_to? :create_topic
      @create_topic = ::Gapic::Config::Method.new create_topic_config
      update_topic_config = parent_rpcs.update_topic if parent_rpcs.respond_to? :update_topic
      @update_topic = ::Gapic::Config::Method.new update_topic_config
      publish_config = parent_rpcs.publish if parent_rpcs.respond_to? :publish
      @publish = ::Gapic::Config::Method.new publish_config
      get_topic_config = parent_rpcs.get_topic if parent_rpcs.respond_to? :get_topic
      @get_topic = ::Gapic::Config::Method.new get_topic_config
      list_topics_config = parent_rpcs.list_topics if parent_rpcs.respond_to? :list_topics
      @list_topics = ::Gapic::Config::Method.new list_topics_config
      list_topic_subscriptions_config = parent_rpcs.list_topic_subscriptions if parent_rpcs.respond_to? :list_topic_subscriptions
      @list_topic_subscriptions = ::Gapic::Config::Method.new list_topic_subscriptions_config
      list_topic_snapshots_config = parent_rpcs.list_topic_snapshots if parent_rpcs.respond_to? :list_topic_snapshots
      @list_topic_snapshots = ::Gapic::Config::Method.new list_topic_snapshots_config
      delete_topic_config = parent_rpcs.delete_topic if parent_rpcs.respond_to? :delete_topic
      @delete_topic = ::Gapic::Config::Method.new delete_topic_config
      detach_subscription_config = parent_rpcs.detach_subscription if parent_rpcs.respond_to? :detach_subscription
      @detach_subscription = ::Gapic::Config::Method.new detach_subscription_config

      yield self if block_given?
    end
  end
end

#scope::Array<::String>

The OAuth scopes

Returns:

  • (::Array<::String>)


1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
# File 'lib/google/cloud/pubsub/v1/publisher/client.rb', line 1122

class Configuration
  extend ::Gapic::Config

  config_attr :endpoint,      "pubsub.googleapis.com", ::String
  config_attr :credentials,   nil do |value|
    allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
    allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
    allowed.any? { |klass| klass === value }
  end
  config_attr :scope,         nil, ::String, ::Array, nil
  config_attr :lib_name,      nil, ::String, nil
  config_attr :lib_version,   nil, ::String, nil
  config_attr(:channel_args,  { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
  config_attr :interceptors,  nil, ::Array, nil
  config_attr :timeout,       nil, ::Numeric, nil
  config_attr :metadata,      nil, ::Hash, nil
  config_attr :retry_policy,  nil, ::Hash, ::Proc, nil
  config_attr :quota_project, nil, ::String, nil

  # @private
  def initialize parent_config = nil
    @parent_config = parent_config unless parent_config.nil?

    yield self if block_given?
  end

  ##
  # Configurations for individual RPCs
  # @return [Rpcs]
  #
  def rpcs
    @rpcs ||= begin
      parent_rpcs = nil
      parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
      Rpcs.new parent_rpcs
    end
  end

  ##
  # Configuration RPC class for the Publisher API.
  #
  # Includes fields providing the configuration for each RPC in this service.
  # Each configuration object is of type `Gapic::Config::Method` and includes
  # the following configuration fields:
  #
  #  *  `timeout` (*type:* `Numeric`) - The call timeout in seconds
  #  *  `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
  #  *  `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
  #     include the following keys:
  #      *  `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
  #      *  `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
  #      *  `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
  #      *  `:retry_codes` (*type:* `Array<String>`) - The error codes that should
  #         trigger a retry.
  #
  class Rpcs
    ##
    # RPC-specific configuration for `create_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :create_topic
    ##
    # RPC-specific configuration for `update_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :update_topic
    ##
    # RPC-specific configuration for `publish`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :publish
    ##
    # RPC-specific configuration for `get_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :get_topic
    ##
    # RPC-specific configuration for `list_topics`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topics
    ##
    # RPC-specific configuration for `list_topic_subscriptions`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topic_subscriptions
    ##
    # RPC-specific configuration for `list_topic_snapshots`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topic_snapshots
    ##
    # RPC-specific configuration for `delete_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :delete_topic
    ##
    # RPC-specific configuration for `detach_subscription`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :detach_subscription

    # @private
    def initialize parent_rpcs = nil
      create_topic_config = parent_rpcs.create_topic if parent_rpcs.respond_to? :create_topic
      @create_topic = ::Gapic::Config::Method.new create_topic_config
      update_topic_config = parent_rpcs.update_topic if parent_rpcs.respond_to? :update_topic
      @update_topic = ::Gapic::Config::Method.new update_topic_config
      publish_config = parent_rpcs.publish if parent_rpcs.respond_to? :publish
      @publish = ::Gapic::Config::Method.new publish_config
      get_topic_config = parent_rpcs.get_topic if parent_rpcs.respond_to? :get_topic
      @get_topic = ::Gapic::Config::Method.new get_topic_config
      list_topics_config = parent_rpcs.list_topics if parent_rpcs.respond_to? :list_topics
      @list_topics = ::Gapic::Config::Method.new list_topics_config
      list_topic_subscriptions_config = parent_rpcs.list_topic_subscriptions if parent_rpcs.respond_to? :list_topic_subscriptions
      @list_topic_subscriptions = ::Gapic::Config::Method.new list_topic_subscriptions_config
      list_topic_snapshots_config = parent_rpcs.list_topic_snapshots if parent_rpcs.respond_to? :list_topic_snapshots
      @list_topic_snapshots = ::Gapic::Config::Method.new list_topic_snapshots_config
      delete_topic_config = parent_rpcs.delete_topic if parent_rpcs.respond_to? :delete_topic
      @delete_topic = ::Gapic::Config::Method.new delete_topic_config
      detach_subscription_config = parent_rpcs.detach_subscription if parent_rpcs.respond_to? :detach_subscription
      @detach_subscription = ::Gapic::Config::Method.new detach_subscription_config

      yield self if block_given?
    end
  end
end

#timeout::Numeric

The call timeout in seconds.

Returns:

  • (::Numeric)


1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
# File 'lib/google/cloud/pubsub/v1/publisher/client.rb', line 1122

class Configuration
  extend ::Gapic::Config

  config_attr :endpoint,      "pubsub.googleapis.com", ::String
  config_attr :credentials,   nil do |value|
    allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
    allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
    allowed.any? { |klass| klass === value }
  end
  config_attr :scope,         nil, ::String, ::Array, nil
  config_attr :lib_name,      nil, ::String, nil
  config_attr :lib_version,   nil, ::String, nil
  config_attr(:channel_args,  { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
  config_attr :interceptors,  nil, ::Array, nil
  config_attr :timeout,       nil, ::Numeric, nil
  config_attr :metadata,      nil, ::Hash, nil
  config_attr :retry_policy,  nil, ::Hash, ::Proc, nil
  config_attr :quota_project, nil, ::String, nil

  # @private
  def initialize parent_config = nil
    @parent_config = parent_config unless parent_config.nil?

    yield self if block_given?
  end

  ##
  # Configurations for individual RPCs
  # @return [Rpcs]
  #
  def rpcs
    @rpcs ||= begin
      parent_rpcs = nil
      parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
      Rpcs.new parent_rpcs
    end
  end

  ##
  # Configuration RPC class for the Publisher API.
  #
  # Includes fields providing the configuration for each RPC in this service.
  # Each configuration object is of type `Gapic::Config::Method` and includes
  # the following configuration fields:
  #
  #  *  `timeout` (*type:* `Numeric`) - The call timeout in seconds
  #  *  `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
  #  *  `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
  #     include the following keys:
  #      *  `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
  #      *  `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
  #      *  `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
  #      *  `:retry_codes` (*type:* `Array<String>`) - The error codes that should
  #         trigger a retry.
  #
  class Rpcs
    ##
    # RPC-specific configuration for `create_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :create_topic
    ##
    # RPC-specific configuration for `update_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :update_topic
    ##
    # RPC-specific configuration for `publish`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :publish
    ##
    # RPC-specific configuration for `get_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :get_topic
    ##
    # RPC-specific configuration for `list_topics`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topics
    ##
    # RPC-specific configuration for `list_topic_subscriptions`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topic_subscriptions
    ##
    # RPC-specific configuration for `list_topic_snapshots`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :list_topic_snapshots
    ##
    # RPC-specific configuration for `delete_topic`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :delete_topic
    ##
    # RPC-specific configuration for `detach_subscription`
    # @return [::Gapic::Config::Method]
    #
    attr_reader :detach_subscription

    # @private
    def initialize parent_rpcs = nil
      create_topic_config = parent_rpcs.create_topic if parent_rpcs.respond_to? :create_topic
      @create_topic = ::Gapic::Config::Method.new create_topic_config
      update_topic_config = parent_rpcs.update_topic if parent_rpcs.respond_to? :update_topic
      @update_topic = ::Gapic::Config::Method.new update_topic_config
      publish_config = parent_rpcs.publish if parent_rpcs.respond_to? :publish
      @publish = ::Gapic::Config::Method.new publish_config
      get_topic_config = parent_rpcs.get_topic if parent_rpcs.respond_to? :get_topic
      @get_topic = ::Gapic::Config::Method.new get_topic_config
      list_topics_config = parent_rpcs.list_topics if parent_rpcs.respond_to? :list_topics
      @list_topics = ::Gapic::Config::Method.new list_topics_config
      list_topic_subscriptions_config = parent_rpcs.list_topic_subscriptions if parent_rpcs.respond_to? :list_topic_subscriptions
      @list_topic_subscriptions = ::Gapic::Config::Method.new list_topic_subscriptions_config
      list_topic_snapshots_config = parent_rpcs.list_topic_snapshots if parent_rpcs.respond_to? :list_topic_snapshots
      @list_topic_snapshots = ::Gapic::Config::Method.new list_topic_snapshots_config
      delete_topic_config = parent_rpcs.delete_topic if parent_rpcs.respond_to? :delete_topic
      @delete_topic = ::Gapic::Config::Method.new delete_topic_config
      detach_subscription_config = parent_rpcs.detach_subscription if parent_rpcs.respond_to? :detach_subscription
      @detach_subscription = ::Gapic::Config::Method.new detach_subscription_config

      yield self if block_given?
    end
  end
end

Instance Method Details

#rpcsRpcs

Configurations for individual RPCs

Returns:



1152
1153
1154
1155
1156
1157
1158
# File 'lib/google/cloud/pubsub/v1/publisher/client.rb', line 1152

def rpcs
  @rpcs ||= begin
    parent_rpcs = nil
    parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
    Rpcs.new parent_rpcs
  end
end