1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274
|
// Code generated by smithy-go-codegen DO NOT EDIT.
package types
import (
smithydocument "github.com/aws/smithy-go/document"
"time"
)
// Information about an Amazon QLDB journal stream, including the Amazon Resource
// Name (ARN), stream name, creation time, current status, and the parameters of
// the original stream creation request.
type JournalKinesisStreamDescription struct {
// The configuration settings of the Amazon Kinesis Data Streams destination for a
// QLDB journal stream.
//
// This member is required.
KinesisConfiguration *KinesisConfiguration
// The name of the ledger.
//
// This member is required.
LedgerName *string
// The Amazon Resource Name (ARN) of the IAM role that grants QLDB permissions for
// a journal stream to write data records to a Kinesis Data Streams resource.
//
// This member is required.
RoleArn *string
// The current state of the QLDB journal stream.
//
// This member is required.
Status StreamStatus
// The UUID (represented in Base62-encoded text) of the QLDB journal stream.
//
// This member is required.
StreamId *string
// The user-defined name of the QLDB journal stream.
//
// This member is required.
StreamName *string
// The Amazon Resource Name (ARN) of the QLDB journal stream.
Arn *string
// The date and time, in epoch time format, when the QLDB journal stream was
// created. (Epoch time format is the number of seconds elapsed since 12:00:00 AM
// January 1, 1970 UTC.)
CreationTime *time.Time
// The error message that describes the reason that a stream has a status of
// IMPAIRED or FAILED . This is not applicable to streams that have other status
// values.
ErrorCause ErrorCause
// The exclusive date and time that specifies when the stream ends. If this
// parameter is undefined, the stream runs indefinitely until you cancel it.
ExclusiveEndTime *time.Time
// The inclusive start date and time from which to start streaming journal data.
InclusiveStartTime *time.Time
noSmithyDocumentSerde
}
// Information about a journal export job, including the ledger name, export ID,
// creation time, current status, and the parameters of the original export
// creation request.
type JournalS3ExportDescription struct {
// The exclusive end date and time for the range of journal contents that was
// specified in the original export request.
//
// This member is required.
ExclusiveEndTime *time.Time
// The date and time, in epoch time format, when the export job was created.
// (Epoch time format is the number of seconds elapsed since 12:00:00 AM January 1,
// 1970 UTC.)
//
// This member is required.
ExportCreationTime *time.Time
// The UUID (represented in Base62-encoded text) of the journal export job.
//
// This member is required.
ExportId *string
// The inclusive start date and time for the range of journal contents that was
// specified in the original export request.
//
// This member is required.
InclusiveStartTime *time.Time
// The name of the ledger.
//
// This member is required.
LedgerName *string
// The Amazon Resource Name (ARN) of the IAM role that grants QLDB permissions for
// a journal export job to do the following:
// - Write objects into your Amazon Simple Storage Service (Amazon S3) bucket.
// - (Optional) Use your customer managed key in Key Management Service (KMS)
// for server-side encryption of your exported data.
//
// This member is required.
RoleArn *string
// The Amazon Simple Storage Service (Amazon S3) bucket location in which a
// journal export job writes the journal contents.
//
// This member is required.
S3ExportConfiguration *S3ExportConfiguration
// The current state of the journal export job.
//
// This member is required.
Status ExportStatus
// The output format of the exported journal data.
OutputFormat OutputFormat
noSmithyDocumentSerde
}
// The configuration settings of the Amazon Kinesis Data Streams destination for
// an Amazon QLDB journal stream.
type KinesisConfiguration struct {
// The Amazon Resource Name (ARN) of the Kinesis Data Streams resource.
//
// This member is required.
StreamArn *string
// Enables QLDB to publish multiple data records in a single Kinesis Data Streams
// record, increasing the number of records sent per API call. Default: True
// Record aggregation has important implications for processing records and
// requires de-aggregation in your stream consumer. To learn more, see KPL Key
// Concepts (https://docs.aws.amazon.com/streams/latest/dev/kinesis-kpl-concepts.html)
// and Consumer De-aggregation (https://docs.aws.amazon.com/streams/latest/dev/kinesis-kpl-consumer-deaggregation.html)
// in the Amazon Kinesis Data Streams Developer Guide.
AggregationEnabled *bool
noSmithyDocumentSerde
}
// Information about the encryption of data at rest in an Amazon QLDB ledger. This
// includes the current status, the key in Key Management Service (KMS), and when
// the key became inaccessible (in the case of an error). For more information, see
// Encryption at rest (https://docs.aws.amazon.com/qldb/latest/developerguide/encryption-at-rest.html)
// in the Amazon QLDB Developer Guide.
type LedgerEncryptionDescription struct {
// The current state of encryption at rest for the ledger. This can be one of the
// following values:
// - ENABLED : Encryption is fully enabled using the specified key.
// - UPDATING : The ledger is actively processing the specified key change. Key
// changes in QLDB are asynchronous. The ledger is fully accessible without any
// performance impact while the key change is being processed. The amount of time
// it takes to update a key varies depending on the ledger size.
// - KMS_KEY_INACCESSIBLE : The specified customer managed KMS key is not
// accessible, and the ledger is impaired. Either the key was disabled or deleted,
// or the grants on the key were revoked. When a ledger is impaired, it is not
// accessible and does not accept any read or write requests. An impaired ledger
// automatically returns to an active state after you restore the grants on the
// key, or re-enable the key that was disabled. However, deleting a customer
// managed KMS key is irreversible. After a key is deleted, you can no longer
// access the ledgers that are protected with that key, and the data becomes
// unrecoverable permanently.
//
// This member is required.
EncryptionStatus EncryptionStatus
// The Amazon Resource Name (ARN) of the customer managed KMS key that the ledger
// uses for encryption at rest. If this parameter is undefined, the ledger uses an
// Amazon Web Services owned KMS key for encryption.
//
// This member is required.
KmsKeyArn *string
// The date and time, in epoch time format, when the KMS key first became
// inaccessible, in the case of an error. (Epoch time format is the number of
// seconds that have elapsed since 12:00:00 AM January 1, 1970 UTC.) This parameter
// is undefined if the KMS key is accessible.
InaccessibleKmsKeyDateTime *time.Time
noSmithyDocumentSerde
}
// Information about a ledger, including its name, state, and when it was created.
type LedgerSummary struct {
// The date and time, in epoch time format, when the ledger was created. (Epoch
// time format is the number of seconds elapsed since 12:00:00 AM January 1, 1970
// UTC.)
CreationDateTime *time.Time
// The name of the ledger.
Name *string
// The current status of the ledger.
State LedgerState
noSmithyDocumentSerde
}
// The encryption settings that are used by a journal export job to write data in
// an Amazon Simple Storage Service (Amazon S3) bucket.
type S3EncryptionConfiguration struct {
// The Amazon S3 object encryption type. To learn more about server-side
// encryption options in Amazon S3, see Protecting Data Using Server-Side
// Encryption (https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html)
// in the Amazon S3 Developer Guide.
//
// This member is required.
ObjectEncryptionType S3ObjectEncryptionType
// The Amazon Resource Name (ARN) of a symmetric encryption key in Key Management
// Service (KMS). Amazon S3 does not support asymmetric KMS keys. You must provide
// a KmsKeyArn if you specify SSE_KMS as the ObjectEncryptionType . KmsKeyArn is
// not required if you specify SSE_S3 as the ObjectEncryptionType .
KmsKeyArn *string
noSmithyDocumentSerde
}
// The Amazon Simple Storage Service (Amazon S3) bucket location in which a
// journal export job writes the journal contents.
type S3ExportConfiguration struct {
// The Amazon S3 bucket name in which a journal export job writes the journal
// contents. The bucket name must comply with the Amazon S3 bucket naming
// conventions. For more information, see Bucket Restrictions and Limitations (https://docs.aws.amazon.com/AmazonS3/latest/dev/BucketRestrictions.html)
// in the Amazon S3 Developer Guide.
//
// This member is required.
Bucket *string
// The encryption settings that are used by a journal export job to write data in
// an Amazon S3 bucket.
//
// This member is required.
EncryptionConfiguration *S3EncryptionConfiguration
// The prefix for the Amazon S3 bucket in which a journal export job writes the
// journal contents. The prefix must comply with Amazon S3 key naming rules and
// restrictions. For more information, see Object Key and Metadata (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html)
// in the Amazon S3 Developer Guide. The following are examples of valid Prefix
// values:
// - JournalExports-ForMyLedger/Testing/
// - JournalExports
// - My:Tests/
//
// This member is required.
Prefix *string
noSmithyDocumentSerde
}
// A structure that can contain a value in multiple encoding formats.
type ValueHolder struct {
// An Amazon Ion plaintext value contained in a ValueHolder structure.
IonText *string
noSmithyDocumentSerde
}
type noSmithyDocumentSerde = smithydocument.NoSerde
|