#[non_exhaustive]pub struct BigtableConfig {
pub table: String,
pub app_profile_id: String,
pub service_account_email: String,
pub write_metadata: bool,
pub state: State,
/* private fields */
}Expand description
Configuration for a Bigtable subscription. The Pub/Sub message will be written to a Bigtable row as follows:
- row key: subscription name and message ID delimited by #.
- columns: message bytes written to a single column family “data” with an empty-string column qualifier.
- cell timestamp: the message publish timestamp.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.table: StringOptional. The unique name of the table to write messages to.
Values are of the form
projects/<project>/instances/<instance>/tables/<table>.
app_profile_id: StringOptional. The app profile to use for the Bigtable writes. If not specified, the “default” application profile will be used. The app profile must use single-cluster routing.
service_account_email: StringOptional. The service account to use to write to Bigtable. The subscription
creator or updater that specifies this field must have
iam.serviceAccounts.actAs permission on the service account. If not
specified, the Pub/Sub service
agent,
service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used.
write_metadata: boolOptional. When true, write the subscription name, message_id, publish_time, attributes, and ordering_key to additional columns in the table under the pubsub_metadata column family. The subscription name, message_id, and publish_time fields are put in their own columns while all other message properties (other than data) are written to a JSON object in the attributes column.
state: StateOutput only. An output-only field that indicates whether or not the subscription can receive messages.
Implementations§
Source§impl BigtableConfig
impl BigtableConfig
pub fn new() -> Self
Sourcepub fn set_app_profile_id<T: Into<String>>(self, v: T) -> Self
pub fn set_app_profile_id<T: Into<String>>(self, v: T) -> Self
Sets the value of app_profile_id.
§Example
let x = BigtableConfig::new().set_app_profile_id("example");Sourcepub fn set_service_account_email<T: Into<String>>(self, v: T) -> Self
pub fn set_service_account_email<T: Into<String>>(self, v: T) -> Self
Sets the value of service_account_email.
§Example
let x = BigtableConfig::new().set_service_account_email("example");Sourcepub fn set_write_metadata<T: Into<bool>>(self, v: T) -> Self
pub fn set_write_metadata<T: Into<bool>>(self, v: T) -> Self
Trait Implementations§
Source§impl Clone for BigtableConfig
impl Clone for BigtableConfig
Source§fn clone(&self) -> BigtableConfig
fn clone(&self) -> BigtableConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for BigtableConfig
impl Debug for BigtableConfig
Source§impl Default for BigtableConfig
impl Default for BigtableConfig
Source§fn default() -> BigtableConfig
fn default() -> BigtableConfig
Source§impl Message for BigtableConfig
impl Message for BigtableConfig
Source§impl PartialEq for BigtableConfig
impl PartialEq for BigtableConfig
impl StructuralPartialEq for BigtableConfig
Auto Trait Implementations§
impl Freeze for BigtableConfig
impl RefUnwindSafe for BigtableConfig
impl Send for BigtableConfig
impl Sync for BigtableConfig
impl Unpin for BigtableConfig
impl UnsafeUnpin for BigtableConfig
impl UnwindSafe for BigtableConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request