GoogleFirestoreDatabase class final
Factory wrapper for google_firestore_database (provider
hashicorp/google ~> 7.0).
Required identity:
localName: Terraform local name (the address segment aftergoogle_firestore_database.).name: database ID (4-63 chars,[a-z][0-9]-). Use the literal'(default)'for the project's default database.locationId: GCP region or multi-region ('asia-northeast1','nam5','eur3'). See https://cloud.google.com/firestore/docs/locations.type: FirestoreDatabaseType.firestoreNative for the Firestore document API, or FirestoreDatabaseType.datastoreMode for the legacy Datastore API. Forces replacement when changed.
Example (default Native-mode database in asia-northeast1):
final db = GoogleFirestoreDatabase(
localName: 'default',
name: TfArg.literal('(default)'),
locationId: TfArg.literal('asia-northeast1'),
type: TfArg.literal(FirestoreDatabaseType.firestoreNative),
pointInTimeRecoveryEnablement: TfArg.literal(
PointInTimeRecoveryEnablement.enabled,
),
deleteProtectionState: TfArg.literal(
DeleteProtectionState.enabled,
),
);
Manages one Cloud Firestore database in a GCP project. A project can
host multiple named databases; the '(default)' database is created
implicitly when the Firestore API is first enabled, so importing it
(via terraform import) is often the right move before placing it
under Terraform control.
Constructors
-
GoogleFirestoreDatabase({required String localName, required TfArg<
String> name, required TfArg<String> locationId, required TfArg<FirestoreDatabaseType> type, FirestoreDatabaseCmekConfig? cmekConfig, TfArg<DatabaseEdition> ? databaseEdition, TfArg<ConcurrencyMode> ? concurrencyMode, TfArg<AppEngineIntegrationMode> ? appEngineIntegrationMode, TfArg<PointInTimeRecoveryEnablement> ? pointInTimeRecoveryEnablement, TfArg<DeleteProtectionState> ? deleteProtectionState, TfArg<String> ? deletionPolicy, TfArg<FirestoreDataAccessMode> ? firestoreDataAccessMode, TfArg<MongodbCompatibleDataAccessMode> ? mongodbCompatibleDataAccessMode, TfArg<RealtimeUpdatesMode> ? realtimeUpdatesMode, TfArg<Map< ? tags, TfArg<String, String> >String> ? project, LifecycleOptions? lifecycle, List<DependencyTarget> ? dependsOn})
Properties
-
argMap
→ Map<
String, TfArg?> -
Argument-name → TfArg map. Keys are snake_case (Terraform JSON name).
Synth emits these keys directly; the factory is responsible for the
camelCase → snake_case translation at construction time.
finalinherited
-
createTime
→ TfRef<
String> -
Reference to
create_timeattribute (RFC3339).no setter -
dependsOn
→ List<
DependencyTarget> ? -
Optional
depends_on = [...]. Each entry is aDependencyTarget— either a wholesale resource (rendered as bare address) or an explicitTfRef(rendered viabareAddress).finalinherited -
earliestVersionTime
→ TfRef<
String> -
Reference to
earliest_version_timeattribute. RFC3339; the oldest timestamp from which point-in-time reads are supported.no setter -
etag
→ TfRef<
String> -
Reference to
etagattribute (used for optimistic concurrency).no setter - hashCode → int
-
The hash code for this object.
no setterinherited
-
id
→ TfRef<
String> -
Reference to
idattribute (full pathprojects/{project}/databases/{name}).no setter -
keyPrefix
→ TfRef<
String> -
Reference to
key_prefixattribute -- the Datastore-style application-ID key prefix for this database.no setter - kind → ResourceKind
-
Always
ResourceKind.resource. Overridden byData.no setterinherited - lifecycle → LifecycleOptions?
-
Optional
lifecycle { ... }block.finalinherited - localName → String
-
User-supplied local name within a Stack.
finalinherited
-
nameRef
→ TfRef<
String> -
Reference to
nameattribute (google_firestore_database.<id>.name).no setter - provider → ProviderBinding?
-
Optional explicit provider binding. Only the type is referenced here;
the concrete
Providerclass lives interradart_google(provider classes are defined per-provider, outside the core runtime).finalinherited - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
sensitiveFields
→ Set<
String> -
Field names that are
@Sensitiveper the IR-derived per-resource constant. Curated factories override with a baked-instatic const Set<String>(file-private in v0.5+).no setter - supportsDeletionProtection → bool
-
Capability flag: true when this resource's underlying Terraform
schema has a
deletion_protectionboolean attribute that the synth-time devMode flow can flip tofalse. Defaults to false; the codegen emitter overrides this totruefor wrappers whose schema includes the attribute.no setterinherited - terraformType → String
-
Terraform resource type, e.g.
google_pubsub_topic.finalinherited - tfAddress → String
-
no setterinherited
-
uid
→ TfRef<
String> -
Reference to
uidattribute (server-assigned UUID4 for the database).no setter
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited