@aws-cdk/aws-glue-alpha 2.95.1-alpha.0 → 2.96.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jsii +982 -374
- package/.jsii.tabl.json.gz +0 -0
- package/.warnings.jsii.js +104 -4
- package/README.md +36 -14
- package/lib/code.js +3 -3
- package/lib/connection.js +2 -2
- package/lib/data-format.js +5 -5
- package/lib/data-quality-ruleset.js +2 -2
- package/lib/database.js +1 -1
- package/lib/external-table.d.ts +62 -0
- package/lib/external-table.js +132 -0
- package/lib/index.d.ts +4 -1
- package/lib/index.js +5 -2
- package/lib/job-executable.js +4 -4
- package/lib/job.js +2 -2
- package/lib/s3-table.d.ts +122 -0
- package/lib/s3-table.js +224 -0
- package/lib/schema.js +1 -1
- package/lib/security-configuration.js +1 -1
- package/lib/storage-parameter.js +1 -1
- package/lib/{table.d.ts → table-base.d.ts} +11 -112
- package/lib/table-base.js +188 -0
- package/lib/table-deprecated.d.ts +10 -0
- package/lib/table-deprecated.js +17 -0
- package/package.json +8 -8
- package/lib/table.js +0 -384
package/.jsii.tabl.json.gz
CHANGED
|
Binary file
|
package/.warnings.jsii.js
CHANGED
|
@@ -94,6 +94,40 @@ function _aws_cdk_aws_glue_alpha_DatabaseProps(p) {
|
|
|
94
94
|
}
|
|
95
95
|
function _aws_cdk_aws_glue_alpha_Database(p) {
|
|
96
96
|
}
|
|
97
|
+
function _aws_cdk_aws_glue_alpha_ExternalTableProps(p) {
|
|
98
|
+
if (p == null)
|
|
99
|
+
return;
|
|
100
|
+
visitedObjects.add(p);
|
|
101
|
+
try {
|
|
102
|
+
if (!visitedObjects.has(p.connection))
|
|
103
|
+
_aws_cdk_aws_glue_alpha_IConnection(p.connection);
|
|
104
|
+
if (p.columns != null)
|
|
105
|
+
for (const o of p.columns)
|
|
106
|
+
if (!visitedObjects.has(o))
|
|
107
|
+
_aws_cdk_aws_glue_alpha_Column(o);
|
|
108
|
+
if (!visitedObjects.has(p.database))
|
|
109
|
+
_aws_cdk_aws_glue_alpha_IDatabase(p.database);
|
|
110
|
+
if (!visitedObjects.has(p.dataFormat))
|
|
111
|
+
_aws_cdk_aws_glue_alpha_DataFormat(p.dataFormat);
|
|
112
|
+
if (p.partitionIndexes != null)
|
|
113
|
+
for (const o of p.partitionIndexes)
|
|
114
|
+
if (!visitedObjects.has(o))
|
|
115
|
+
_aws_cdk_aws_glue_alpha_PartitionIndex(o);
|
|
116
|
+
if (p.partitionKeys != null)
|
|
117
|
+
for (const o of p.partitionKeys)
|
|
118
|
+
if (!visitedObjects.has(o))
|
|
119
|
+
_aws_cdk_aws_glue_alpha_Column(o);
|
|
120
|
+
if (p.storageParameters != null)
|
|
121
|
+
for (const o of p.storageParameters)
|
|
122
|
+
if (!visitedObjects.has(o))
|
|
123
|
+
_aws_cdk_aws_glue_alpha_StorageParameter(o);
|
|
124
|
+
}
|
|
125
|
+
finally {
|
|
126
|
+
visitedObjects.delete(p);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
function _aws_cdk_aws_glue_alpha_ExternalTable(p) {
|
|
130
|
+
}
|
|
97
131
|
function _aws_cdk_aws_glue_alpha_WorkerType(p) {
|
|
98
132
|
}
|
|
99
133
|
function _aws_cdk_aws_glue_alpha_JobState(p) {
|
|
@@ -292,6 +326,42 @@ function _aws_cdk_aws_glue_alpha_JobExecutableConfig(p) {
|
|
|
292
326
|
visitedObjects.delete(p);
|
|
293
327
|
}
|
|
294
328
|
}
|
|
329
|
+
function _aws_cdk_aws_glue_alpha_TableEncryption(p) {
|
|
330
|
+
}
|
|
331
|
+
function _aws_cdk_aws_glue_alpha_S3TableProps(p) {
|
|
332
|
+
if (p == null)
|
|
333
|
+
return;
|
|
334
|
+
visitedObjects.add(p);
|
|
335
|
+
try {
|
|
336
|
+
if (!visitedObjects.has(p.encryption))
|
|
337
|
+
_aws_cdk_aws_glue_alpha_TableEncryption(p.encryption);
|
|
338
|
+
if (p.columns != null)
|
|
339
|
+
for (const o of p.columns)
|
|
340
|
+
if (!visitedObjects.has(o))
|
|
341
|
+
_aws_cdk_aws_glue_alpha_Column(o);
|
|
342
|
+
if (!visitedObjects.has(p.database))
|
|
343
|
+
_aws_cdk_aws_glue_alpha_IDatabase(p.database);
|
|
344
|
+
if (!visitedObjects.has(p.dataFormat))
|
|
345
|
+
_aws_cdk_aws_glue_alpha_DataFormat(p.dataFormat);
|
|
346
|
+
if (p.partitionIndexes != null)
|
|
347
|
+
for (const o of p.partitionIndexes)
|
|
348
|
+
if (!visitedObjects.has(o))
|
|
349
|
+
_aws_cdk_aws_glue_alpha_PartitionIndex(o);
|
|
350
|
+
if (p.partitionKeys != null)
|
|
351
|
+
for (const o of p.partitionKeys)
|
|
352
|
+
if (!visitedObjects.has(o))
|
|
353
|
+
_aws_cdk_aws_glue_alpha_Column(o);
|
|
354
|
+
if (p.storageParameters != null)
|
|
355
|
+
for (const o of p.storageParameters)
|
|
356
|
+
if (!visitedObjects.has(o))
|
|
357
|
+
_aws_cdk_aws_glue_alpha_StorageParameter(o);
|
|
358
|
+
}
|
|
359
|
+
finally {
|
|
360
|
+
visitedObjects.delete(p);
|
|
361
|
+
}
|
|
362
|
+
}
|
|
363
|
+
function _aws_cdk_aws_glue_alpha_S3Table(p) {
|
|
364
|
+
}
|
|
295
365
|
function _aws_cdk_aws_glue_alpha_Column(p) {
|
|
296
366
|
if (p == null)
|
|
297
367
|
return;
|
|
@@ -394,11 +464,9 @@ function _aws_cdk_aws_glue_alpha_PartitionIndex(p) {
|
|
|
394
464
|
}
|
|
395
465
|
function _aws_cdk_aws_glue_alpha_ITable(p) {
|
|
396
466
|
}
|
|
397
|
-
function _aws_cdk_aws_glue_alpha_TableEncryption(p) {
|
|
398
|
-
}
|
|
399
467
|
function _aws_cdk_aws_glue_alpha_TableAttributes(p) {
|
|
400
468
|
}
|
|
401
|
-
function
|
|
469
|
+
function _aws_cdk_aws_glue_alpha_TableBaseProps(p) {
|
|
402
470
|
if (p == null)
|
|
403
471
|
return;
|
|
404
472
|
visitedObjects.add(p);
|
|
@@ -411,8 +479,40 @@ function _aws_cdk_aws_glue_alpha_TableProps(p) {
|
|
|
411
479
|
_aws_cdk_aws_glue_alpha_IDatabase(p.database);
|
|
412
480
|
if (!visitedObjects.has(p.dataFormat))
|
|
413
481
|
_aws_cdk_aws_glue_alpha_DataFormat(p.dataFormat);
|
|
482
|
+
if (p.partitionIndexes != null)
|
|
483
|
+
for (const o of p.partitionIndexes)
|
|
484
|
+
if (!visitedObjects.has(o))
|
|
485
|
+
_aws_cdk_aws_glue_alpha_PartitionIndex(o);
|
|
486
|
+
if (p.partitionKeys != null)
|
|
487
|
+
for (const o of p.partitionKeys)
|
|
488
|
+
if (!visitedObjects.has(o))
|
|
489
|
+
_aws_cdk_aws_glue_alpha_Column(o);
|
|
490
|
+
if (p.storageParameters != null)
|
|
491
|
+
for (const o of p.storageParameters)
|
|
492
|
+
if (!visitedObjects.has(o))
|
|
493
|
+
_aws_cdk_aws_glue_alpha_StorageParameter(o);
|
|
494
|
+
}
|
|
495
|
+
finally {
|
|
496
|
+
visitedObjects.delete(p);
|
|
497
|
+
}
|
|
498
|
+
}
|
|
499
|
+
function _aws_cdk_aws_glue_alpha_TableBase(p) {
|
|
500
|
+
}
|
|
501
|
+
function _aws_cdk_aws_glue_alpha_TableProps(p) {
|
|
502
|
+
if (p == null)
|
|
503
|
+
return;
|
|
504
|
+
visitedObjects.add(p);
|
|
505
|
+
try {
|
|
414
506
|
if (!visitedObjects.has(p.encryption))
|
|
415
507
|
_aws_cdk_aws_glue_alpha_TableEncryption(p.encryption);
|
|
508
|
+
if (p.columns != null)
|
|
509
|
+
for (const o of p.columns)
|
|
510
|
+
if (!visitedObjects.has(o))
|
|
511
|
+
_aws_cdk_aws_glue_alpha_Column(o);
|
|
512
|
+
if (!visitedObjects.has(p.database))
|
|
513
|
+
_aws_cdk_aws_glue_alpha_IDatabase(p.database);
|
|
514
|
+
if (!visitedObjects.has(p.dataFormat))
|
|
515
|
+
_aws_cdk_aws_glue_alpha_DataFormat(p.dataFormat);
|
|
416
516
|
if (p.partitionIndexes != null)
|
|
417
517
|
for (const o of p.partitionIndexes)
|
|
418
518
|
if (!visitedObjects.has(o))
|
|
@@ -468,4 +568,4 @@ class DeprecationError extends Error {
|
|
|
468
568
|
});
|
|
469
569
|
}
|
|
470
570
|
}
|
|
471
|
-
module.exports = { print, getPropertyDescriptor, DeprecationError, _aws_cdk_aws_glue_alpha_Code, _aws_cdk_aws_glue_alpha_S3Code, _aws_cdk_aws_glue_alpha_AssetCode, _aws_cdk_aws_glue_alpha_CodeConfig, _aws_cdk_aws_glue_alpha_ConnectionType, _aws_cdk_aws_glue_alpha_IConnection, _aws_cdk_aws_glue_alpha_ConnectionOptions, _aws_cdk_aws_glue_alpha_ConnectionProps, _aws_cdk_aws_glue_alpha_Connection, _aws_cdk_aws_glue_alpha_InputFormat, _aws_cdk_aws_glue_alpha_OutputFormat, _aws_cdk_aws_glue_alpha_SerializationLibrary, _aws_cdk_aws_glue_alpha_ClassificationString, _aws_cdk_aws_glue_alpha_DataFormatProps, _aws_cdk_aws_glue_alpha_DataFormat, _aws_cdk_aws_glue_alpha_DataQualityTargetTable, _aws_cdk_aws_glue_alpha_IDataQualityRuleset, _aws_cdk_aws_glue_alpha_DataQualityRulesetProps, _aws_cdk_aws_glue_alpha_DataQualityRuleset, _aws_cdk_aws_glue_alpha_IDatabase, _aws_cdk_aws_glue_alpha_DatabaseProps, _aws_cdk_aws_glue_alpha_Database, _aws_cdk_aws_glue_alpha_WorkerType, _aws_cdk_aws_glue_alpha_JobState, _aws_cdk_aws_glue_alpha_MetricType, _aws_cdk_aws_glue_alpha_ExecutionClass, _aws_cdk_aws_glue_alpha_IJob, _aws_cdk_aws_glue_alpha_SparkUIProps, _aws_cdk_aws_glue_alpha_SparkUILoggingLocation, _aws_cdk_aws_glue_alpha_ContinuousLoggingProps, _aws_cdk_aws_glue_alpha_JobAttributes, _aws_cdk_aws_glue_alpha_JobProps, _aws_cdk_aws_glue_alpha_Job, _aws_cdk_aws_glue_alpha_GlueVersion, _aws_cdk_aws_glue_alpha_JobLanguage, _aws_cdk_aws_glue_alpha_PythonVersion, _aws_cdk_aws_glue_alpha_Runtime, _aws_cdk_aws_glue_alpha_JobType, _aws_cdk_aws_glue_alpha_ScalaJobExecutableProps, _aws_cdk_aws_glue_alpha_PythonSparkJobExecutableProps, _aws_cdk_aws_glue_alpha_PythonShellExecutableProps, _aws_cdk_aws_glue_alpha_PythonRayExecutableProps, _aws_cdk_aws_glue_alpha_JobExecutable, _aws_cdk_aws_glue_alpha_JobExecutableConfig, _aws_cdk_aws_glue_alpha_Column, _aws_cdk_aws_glue_alpha_Type, _aws_cdk_aws_glue_alpha_Schema, _aws_cdk_aws_glue_alpha_ISecurityConfiguration, _aws_cdk_aws_glue_alpha_S3EncryptionMode, _aws_cdk_aws_glue_alpha_CloudWatchEncryptionMode, _aws_cdk_aws_glue_alpha_JobBookmarksEncryptionMode, _aws_cdk_aws_glue_alpha_S3Encryption, _aws_cdk_aws_glue_alpha_CloudWatchEncryption, _aws_cdk_aws_glue_alpha_JobBookmarksEncryption, _aws_cdk_aws_glue_alpha_SecurityConfigurationProps, _aws_cdk_aws_glue_alpha_SecurityConfiguration, _aws_cdk_aws_glue_alpha_CompressionType, _aws_cdk_aws_glue_alpha_InvalidCharHandlingAction, _aws_cdk_aws_glue_alpha_NumericOverflowHandlingAction, _aws_cdk_aws_glue_alpha_SurplusBytesHandlingAction, _aws_cdk_aws_glue_alpha_SurplusCharHandlingAction, _aws_cdk_aws_glue_alpha_ColumnCountMismatchHandlingAction, _aws_cdk_aws_glue_alpha_WriteParallel, _aws_cdk_aws_glue_alpha_OrcColumnMappingType, _aws_cdk_aws_glue_alpha_StorageParameters, _aws_cdk_aws_glue_alpha_StorageParameter, _aws_cdk_aws_glue_alpha_PartitionIndex, _aws_cdk_aws_glue_alpha_ITable,
|
|
571
|
+
module.exports = { print, getPropertyDescriptor, DeprecationError, _aws_cdk_aws_glue_alpha_Code, _aws_cdk_aws_glue_alpha_S3Code, _aws_cdk_aws_glue_alpha_AssetCode, _aws_cdk_aws_glue_alpha_CodeConfig, _aws_cdk_aws_glue_alpha_ConnectionType, _aws_cdk_aws_glue_alpha_IConnection, _aws_cdk_aws_glue_alpha_ConnectionOptions, _aws_cdk_aws_glue_alpha_ConnectionProps, _aws_cdk_aws_glue_alpha_Connection, _aws_cdk_aws_glue_alpha_InputFormat, _aws_cdk_aws_glue_alpha_OutputFormat, _aws_cdk_aws_glue_alpha_SerializationLibrary, _aws_cdk_aws_glue_alpha_ClassificationString, _aws_cdk_aws_glue_alpha_DataFormatProps, _aws_cdk_aws_glue_alpha_DataFormat, _aws_cdk_aws_glue_alpha_DataQualityTargetTable, _aws_cdk_aws_glue_alpha_IDataQualityRuleset, _aws_cdk_aws_glue_alpha_DataQualityRulesetProps, _aws_cdk_aws_glue_alpha_DataQualityRuleset, _aws_cdk_aws_glue_alpha_IDatabase, _aws_cdk_aws_glue_alpha_DatabaseProps, _aws_cdk_aws_glue_alpha_Database, _aws_cdk_aws_glue_alpha_ExternalTableProps, _aws_cdk_aws_glue_alpha_ExternalTable, _aws_cdk_aws_glue_alpha_WorkerType, _aws_cdk_aws_glue_alpha_JobState, _aws_cdk_aws_glue_alpha_MetricType, _aws_cdk_aws_glue_alpha_ExecutionClass, _aws_cdk_aws_glue_alpha_IJob, _aws_cdk_aws_glue_alpha_SparkUIProps, _aws_cdk_aws_glue_alpha_SparkUILoggingLocation, _aws_cdk_aws_glue_alpha_ContinuousLoggingProps, _aws_cdk_aws_glue_alpha_JobAttributes, _aws_cdk_aws_glue_alpha_JobProps, _aws_cdk_aws_glue_alpha_Job, _aws_cdk_aws_glue_alpha_GlueVersion, _aws_cdk_aws_glue_alpha_JobLanguage, _aws_cdk_aws_glue_alpha_PythonVersion, _aws_cdk_aws_glue_alpha_Runtime, _aws_cdk_aws_glue_alpha_JobType, _aws_cdk_aws_glue_alpha_ScalaJobExecutableProps, _aws_cdk_aws_glue_alpha_PythonSparkJobExecutableProps, _aws_cdk_aws_glue_alpha_PythonShellExecutableProps, _aws_cdk_aws_glue_alpha_PythonRayExecutableProps, _aws_cdk_aws_glue_alpha_JobExecutable, _aws_cdk_aws_glue_alpha_JobExecutableConfig, _aws_cdk_aws_glue_alpha_TableEncryption, _aws_cdk_aws_glue_alpha_S3TableProps, _aws_cdk_aws_glue_alpha_S3Table, _aws_cdk_aws_glue_alpha_Column, _aws_cdk_aws_glue_alpha_Type, _aws_cdk_aws_glue_alpha_Schema, _aws_cdk_aws_glue_alpha_ISecurityConfiguration, _aws_cdk_aws_glue_alpha_S3EncryptionMode, _aws_cdk_aws_glue_alpha_CloudWatchEncryptionMode, _aws_cdk_aws_glue_alpha_JobBookmarksEncryptionMode, _aws_cdk_aws_glue_alpha_S3Encryption, _aws_cdk_aws_glue_alpha_CloudWatchEncryption, _aws_cdk_aws_glue_alpha_JobBookmarksEncryption, _aws_cdk_aws_glue_alpha_SecurityConfigurationProps, _aws_cdk_aws_glue_alpha_SecurityConfiguration, _aws_cdk_aws_glue_alpha_CompressionType, _aws_cdk_aws_glue_alpha_InvalidCharHandlingAction, _aws_cdk_aws_glue_alpha_NumericOverflowHandlingAction, _aws_cdk_aws_glue_alpha_SurplusBytesHandlingAction, _aws_cdk_aws_glue_alpha_SurplusCharHandlingAction, _aws_cdk_aws_glue_alpha_ColumnCountMismatchHandlingAction, _aws_cdk_aws_glue_alpha_WriteParallel, _aws_cdk_aws_glue_alpha_OrcColumnMappingType, _aws_cdk_aws_glue_alpha_StorageParameters, _aws_cdk_aws_glue_alpha_StorageParameter, _aws_cdk_aws_glue_alpha_PartitionIndex, _aws_cdk_aws_glue_alpha_ITable, _aws_cdk_aws_glue_alpha_TableAttributes, _aws_cdk_aws_glue_alpha_TableBaseProps, _aws_cdk_aws_glue_alpha_TableBase, _aws_cdk_aws_glue_alpha_TableProps, _aws_cdk_aws_glue_alpha_Table };
|
package/README.md
CHANGED
|
@@ -211,7 +211,7 @@ A Glue table describes a table of data in S3: its structure (column names and ty
|
|
|
211
211
|
|
|
212
212
|
```ts
|
|
213
213
|
declare const myDatabase: glue.Database;
|
|
214
|
-
new glue.
|
|
214
|
+
new glue.S3Table(this, 'MyTable', {
|
|
215
215
|
database: myDatabase,
|
|
216
216
|
columns: [{
|
|
217
217
|
name: 'col1',
|
|
@@ -230,7 +230,7 @@ By default, a S3 bucket will be created to store the table's data but you can ma
|
|
|
230
230
|
```ts
|
|
231
231
|
declare const myBucket: s3.Bucket;
|
|
232
232
|
declare const myDatabase: glue.Database;
|
|
233
|
-
new glue.
|
|
233
|
+
new glue.S3Table(this, 'MyTable', {
|
|
234
234
|
bucket: myBucket,
|
|
235
235
|
s3Prefix: 'my-table/',
|
|
236
236
|
// ...
|
|
@@ -247,7 +247,7 @@ Glue tables can be configured to contain user-defined properties, to describe th
|
|
|
247
247
|
|
|
248
248
|
```ts
|
|
249
249
|
declare const myDatabase: glue.Database;
|
|
250
|
-
new glue.
|
|
250
|
+
new glue.S3Table(this, 'MyTable', {
|
|
251
251
|
storageParameters: [
|
|
252
252
|
glue.StorageParameter.skipHeaderLineCount(1),
|
|
253
253
|
glue.StorageParameter.compressionType(glue.CompressionType.GZIP),
|
|
@@ -269,7 +269,7 @@ To improve query performance, a table can specify `partitionKeys` on which data
|
|
|
269
269
|
|
|
270
270
|
```ts
|
|
271
271
|
declare const myDatabase: glue.Database;
|
|
272
|
-
new glue.
|
|
272
|
+
new glue.S3Table(this, 'MyTable', {
|
|
273
273
|
database: myDatabase,
|
|
274
274
|
columns: [{
|
|
275
275
|
name: 'col1',
|
|
@@ -300,7 +300,7 @@ property:
|
|
|
300
300
|
|
|
301
301
|
```ts
|
|
302
302
|
declare const myDatabase: glue.Database;
|
|
303
|
-
new glue.
|
|
303
|
+
new glue.S3Table(this, 'MyTable', {
|
|
304
304
|
database: myDatabase,
|
|
305
305
|
columns: [{
|
|
306
306
|
name: 'col1',
|
|
@@ -337,7 +337,7 @@ If you have a table with a large number of partitions that grows over time, cons
|
|
|
337
337
|
|
|
338
338
|
```ts
|
|
339
339
|
declare const myDatabase: glue.Database;
|
|
340
|
-
new glue.
|
|
340
|
+
new glue.S3Table(this, 'MyTable', {
|
|
341
341
|
database: myDatabase,
|
|
342
342
|
columns: [{
|
|
343
343
|
name: 'col1',
|
|
@@ -355,6 +355,28 @@ new glue.Table(this, 'MyTable', {
|
|
|
355
355
|
});
|
|
356
356
|
```
|
|
357
357
|
|
|
358
|
+
### Glue Connections
|
|
359
|
+
|
|
360
|
+
Glue connections allow external data connections to third party databases and data warehouses. However, these connections can also be assigned to Glue Tables, allowing you to query external data sources using the Glue Data Catalog.
|
|
361
|
+
|
|
362
|
+
Whereas `S3Table` will point to (and if needed, create) a bucket to store the tables' data, `ExternalTable` will point to an existing table in a data source. For example, to create a table in Glue that points to a table in Redshift:
|
|
363
|
+
|
|
364
|
+
```ts
|
|
365
|
+
declare const myConnection: glue.Connection;
|
|
366
|
+
declare const myDatabase: glue.Database;
|
|
367
|
+
new glue.ExternalTable(this, 'MyTable', {
|
|
368
|
+
connection: myConnection,
|
|
369
|
+
externalDataLocation: 'default_db_public_example', // A table in Redshift
|
|
370
|
+
// ...
|
|
371
|
+
database: myDatabase,
|
|
372
|
+
columns: [{
|
|
373
|
+
name: 'col1',
|
|
374
|
+
type: glue.Schema.STRING,
|
|
375
|
+
}],
|
|
376
|
+
dataFormat: glue.DataFormat.JSON,
|
|
377
|
+
});
|
|
378
|
+
```
|
|
379
|
+
|
|
358
380
|
## [Encryption](https://docs.aws.amazon.com/athena/latest/ug/encryption.html)
|
|
359
381
|
|
|
360
382
|
You can enable encryption on a Table's data:
|
|
@@ -363,7 +385,7 @@ You can enable encryption on a Table's data:
|
|
|
363
385
|
|
|
364
386
|
```ts
|
|
365
387
|
declare const myDatabase: glue.Database;
|
|
366
|
-
new glue.
|
|
388
|
+
new glue.S3Table(this, 'MyTable', {
|
|
367
389
|
encryption: glue.TableEncryption.S3_MANAGED,
|
|
368
390
|
// ...
|
|
369
391
|
database: myDatabase,
|
|
@@ -380,7 +402,7 @@ new glue.Table(this, 'MyTable', {
|
|
|
380
402
|
```ts
|
|
381
403
|
declare const myDatabase: glue.Database;
|
|
382
404
|
// KMS key is created automatically
|
|
383
|
-
new glue.
|
|
405
|
+
new glue.S3Table(this, 'MyTable', {
|
|
384
406
|
encryption: glue.TableEncryption.KMS,
|
|
385
407
|
// ...
|
|
386
408
|
database: myDatabase,
|
|
@@ -392,7 +414,7 @@ new glue.Table(this, 'MyTable', {
|
|
|
392
414
|
});
|
|
393
415
|
|
|
394
416
|
// with an explicit KMS key
|
|
395
|
-
new glue.
|
|
417
|
+
new glue.S3Table(this, 'MyTable', {
|
|
396
418
|
encryption: glue.TableEncryption.KMS,
|
|
397
419
|
encryptionKey: new kms.Key(this, 'MyKey'),
|
|
398
420
|
// ...
|
|
@@ -409,7 +431,7 @@ new glue.Table(this, 'MyTable', {
|
|
|
409
431
|
|
|
410
432
|
```ts
|
|
411
433
|
declare const myDatabase: glue.Database;
|
|
412
|
-
new glue.
|
|
434
|
+
new glue.S3Table(this, 'MyTable', {
|
|
413
435
|
encryption: glue.TableEncryption.KMS_MANAGED,
|
|
414
436
|
// ...
|
|
415
437
|
database: myDatabase,
|
|
@@ -426,7 +448,7 @@ new glue.Table(this, 'MyTable', {
|
|
|
426
448
|
```ts
|
|
427
449
|
declare const myDatabase: glue.Database;
|
|
428
450
|
// KMS key is created automatically
|
|
429
|
-
new glue.
|
|
451
|
+
new glue.S3Table(this, 'MyTable', {
|
|
430
452
|
encryption: glue.TableEncryption.CLIENT_SIDE_KMS,
|
|
431
453
|
// ...
|
|
432
454
|
database: myDatabase,
|
|
@@ -438,7 +460,7 @@ new glue.Table(this, 'MyTable', {
|
|
|
438
460
|
});
|
|
439
461
|
|
|
440
462
|
// with an explicit KMS key
|
|
441
|
-
new glue.
|
|
463
|
+
new glue.S3Table(this, 'MyTable', {
|
|
442
464
|
encryption: glue.TableEncryption.CLIENT_SIDE_KMS,
|
|
443
465
|
encryptionKey: new kms.Key(this, 'MyKey'),
|
|
444
466
|
// ...
|
|
@@ -451,7 +473,7 @@ new glue.Table(this, 'MyTable', {
|
|
|
451
473
|
});
|
|
452
474
|
```
|
|
453
475
|
|
|
454
|
-
*Note: you cannot provide a `Bucket` when creating the `
|
|
476
|
+
*Note: you cannot provide a `Bucket` when creating the `S3Table` if you wish to use server-side encryption (`KMS`, `KMS_MANAGED` or `S3_MANAGED`)*.
|
|
455
477
|
|
|
456
478
|
## Types
|
|
457
479
|
|
|
@@ -459,7 +481,7 @@ A table's schema is a collection of columns, each of which have a `name` and a `
|
|
|
459
481
|
|
|
460
482
|
```ts
|
|
461
483
|
declare const myDatabase: glue.Database;
|
|
462
|
-
new glue.
|
|
484
|
+
new glue.S3Table(this, 'MyTable', {
|
|
463
485
|
columns: [{
|
|
464
486
|
name: 'primitive_column',
|
|
465
487
|
type: glue.Schema.STRING,
|
package/lib/code.js
CHANGED
|
@@ -30,7 +30,7 @@ class Code {
|
|
|
30
30
|
}
|
|
31
31
|
exports.Code = Code;
|
|
32
32
|
_a = JSII_RTTI_SYMBOL_1;
|
|
33
|
-
Code[_a] = { fqn: "@aws-cdk/aws-glue-alpha.Code", version: "2.
|
|
33
|
+
Code[_a] = { fqn: "@aws-cdk/aws-glue-alpha.Code", version: "2.96.0-alpha.0" };
|
|
34
34
|
/**
|
|
35
35
|
* Glue job Code from an S3 bucket.
|
|
36
36
|
*/
|
|
@@ -52,7 +52,7 @@ class S3Code extends Code {
|
|
|
52
52
|
}
|
|
53
53
|
exports.S3Code = S3Code;
|
|
54
54
|
_b = JSII_RTTI_SYMBOL_1;
|
|
55
|
-
S3Code[_b] = { fqn: "@aws-cdk/aws-glue-alpha.S3Code", version: "2.
|
|
55
|
+
S3Code[_b] = { fqn: "@aws-cdk/aws-glue-alpha.S3Code", version: "2.96.0-alpha.0" };
|
|
56
56
|
/**
|
|
57
57
|
* Job Code from a local file.
|
|
58
58
|
*/
|
|
@@ -98,5 +98,5 @@ class AssetCode extends Code {
|
|
|
98
98
|
}
|
|
99
99
|
exports.AssetCode = AssetCode;
|
|
100
100
|
_c = JSII_RTTI_SYMBOL_1;
|
|
101
|
-
AssetCode[_c] = { fqn: "@aws-cdk/aws-glue-alpha.AssetCode", version: "2.
|
|
101
|
+
AssetCode[_c] = { fqn: "@aws-cdk/aws-glue-alpha.AssetCode", version: "2.96.0-alpha.0" };
|
|
102
102
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNvZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx5QkFBeUI7QUFHekIsc0RBQXNEO0FBQ3RELHdDQUF3QztBQUN4Qyw0RUFBZ0U7QUFHaEU7O0dBRUc7QUFDSCxNQUFzQixJQUFJO0lBRXhCOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQWtCLEVBQUUsR0FBVztRQUN0RCxPQUFPLElBQUksTUFBTSxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQztLQUNoQztJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsU0FBUyxDQUFDLElBQVksRUFBRSxPQUErQjtRQUNuRSxPQUFPLElBQUksU0FBUyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztLQUNyQzs7QUFsQkgsb0JBd0JDOzs7QUFFRDs7R0FFRztBQUNILE1BQWEsTUFBTyxTQUFRLElBQUk7SUFDOUIsWUFBNkIsTUFBa0IsRUFBbUIsR0FBVztRQUMzRSxLQUFLLEVBQUUsQ0FBQztRQURtQixXQUFNLEdBQU4sTUFBTSxDQUFZO1FBQW1CLFFBQUcsR0FBSCxHQUFHLENBQVE7S0FFNUU7SUFFTSxJQUFJLENBQUMsTUFBNEIsRUFBRSxTQUF5QjtRQUNqRSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzNDLE9BQU87WUFDTCxVQUFVLEVBQUU7Z0JBQ1YsVUFBVSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVTtnQkFDbEMsU0FBUyxFQUFFLElBQUksQ0FBQyxHQUFHO2FBQ3BCO1NBQ0YsQ0FBQztLQUNIOztBQWJILHdCQWNDOzs7QUFFRDs7R0FFRztBQUNILE1BQWEsU0FBVSxTQUFRLElBQUk7SUFHakM7O09BRUc7SUFDSCxZQUE2QixJQUFZLEVBQW1CLFVBQWlDLEVBQUc7UUFDOUYsS0FBSyxFQUFFLENBQUM7UUFEbUIsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUFtQixZQUFPLEdBQVAsT0FBTyxDQUE2QjtRQUc5RixJQUFJLEVBQUUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFO1lBQ3pDLE1BQU0sSUFBSSxLQUFLLENBQUMsYUFBYSxJQUFJLENBQUMsSUFBSSwyQ0FBMkMsQ0FBQyxDQUFDO1NBQ3BGO0tBQ0Y7SUFFTSxJQUFJLENBQUMsS0FBMkIsRUFBRSxTQUF5QjtRQUNoRSxxRkFBcUY7UUFDckYsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFO2dCQUN4RSxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7Z0JBQ2YsR0FBRyxJQUFJLENBQUMsT0FBTzthQUNoQixDQUFDLENBQUM7U0FDSjthQUFNLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzNELE1BQU0sSUFBSSxLQUFLLENBQUMsbURBQW1ELEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLEtBQUs7Z0JBQ3hHLDZDQUE2QyxDQUFDLENBQUM7U0FDbEQ7UUFDRCxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNoQyxPQUFPO1lBQ0wsVUFBVSxFQUFFO2dCQUNWLFVBQVUsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVk7Z0JBQ25DLFNBQVMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVc7YUFDbEM7U0FDRixDQUFDO0tBQ0g7SUFFRDs7T0FFRztJQUNLLFFBQVEsQ0FBQyxDQUFTO1FBQ3hCLE9BQU8sSUFBQSwwQkFBTyxFQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ25CO0lBQUEsQ0FBQzs7QUF2Q0osOEJBd0NDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZnMgZnJvbSAnZnMnO1xuaW1wb3J0ICogYXMgaWFtIGZyb20gJ2F3cy1jZGstbGliL2F3cy1pYW0nO1xuaW1wb3J0ICogYXMgczMgZnJvbSAnYXdzLWNkay1saWIvYXdzLXMzJztcbmltcG9ydCAqIGFzIHMzYXNzZXRzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1zMy1hc3NldHMnO1xuaW1wb3J0ICogYXMgY2RrIGZyb20gJ2F3cy1jZGstbGliL2NvcmUnO1xuaW1wb3J0IHsgbWQ1aGFzaCB9IGZyb20gJ2F3cy1jZGstbGliL2NvcmUvbGliL2hlbHBlcnMtaW50ZXJuYWwnO1xuaW1wb3J0ICogYXMgY29uc3RydWN0cyBmcm9tICdjb25zdHJ1Y3RzJztcblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgR2x1ZSBKb2IncyBDb2RlIGFzc2V0cyAoYW4gYXNzZXQgY2FuIGJlIGEgc2NyaXB0cywgYSBqYXIsIGEgcHl0aG9uIGZpbGUgb3IgYW55IG90aGVyIGZpbGUpLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQ29kZSB7XG5cbiAgLyoqXG4gICAqIEpvYiBjb2RlIGFzIGFuIFMzIG9iamVjdC5cbiAgICogQHBhcmFtIGJ1Y2tldCBUaGUgUzMgYnVja2V0XG4gICAqIEBwYXJhbSBrZXkgVGhlIG9iamVjdCBrZXlcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbUJ1Y2tldChidWNrZXQ6IHMzLklCdWNrZXQsIGtleTogc3RyaW5nKTogUzNDb2RlIHtcbiAgICByZXR1cm4gbmV3IFMzQ29kZShidWNrZXQsIGtleSk7XG4gIH1cblxuICAvKipcbiAgICogSm9iIGNvZGUgZnJvbSBhIGxvY2FsIGRpc2sgcGF0aC5cbiAgICpcbiAgICogQHBhcmFtIHBhdGggY29kZSBmaWxlIChub3QgYSBkaXJlY3RvcnkpLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tQXNzZXQocGF0aDogc3RyaW5nLCBvcHRpb25zPzogczNhc3NldHMuQXNzZXRPcHRpb25zKTogQXNzZXRDb2RlIHtcbiAgICByZXR1cm4gbmV3IEFzc2V0Q29kZShwYXRoLCBvcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiB0aGUgSm9iIGlzIGluaXRpYWxpemVkIHRvIGFsbG93IHRoaXMgb2JqZWN0IHRvIGJpbmQuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgYmluZChzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsIGdyYW50YWJsZTogaWFtLklHcmFudGFibGUpOiBDb2RlQ29uZmlnO1xufVxuXG4vKipcbiAqIEdsdWUgam9iIENvZGUgZnJvbSBhbiBTMyBidWNrZXQuXG4gKi9cbmV4cG9ydCBjbGFzcyBTM0NvZGUgZXh0ZW5kcyBDb2RlIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBidWNrZXQ6IHMzLklCdWNrZXQsIHByaXZhdGUgcmVhZG9ubHkga2V5OiBzdHJpbmcpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcHVibGljIGJpbmQoX3Njb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCwgZ3JhbnRhYmxlOiBpYW0uSUdyYW50YWJsZSk6IENvZGVDb25maWcge1xuICAgIHRoaXMuYnVja2V0LmdyYW50UmVhZChncmFudGFibGUsIHRoaXMua2V5KTtcbiAgICByZXR1cm4ge1xuICAgICAgczNMb2NhdGlvbjoge1xuICAgICAgICBidWNrZXROYW1lOiB0aGlzLmJ1Y2tldC5idWNrZXROYW1lLFxuICAgICAgICBvYmplY3RLZXk6IHRoaXMua2V5LFxuICAgICAgfSxcbiAgICB9O1xuICB9XG59XG5cbi8qKlxuICogSm9iIENvZGUgZnJvbSBhIGxvY2FsIGZpbGUuXG4gKi9cbmV4cG9ydCBjbGFzcyBBc3NldENvZGUgZXh0ZW5kcyBDb2RlIHtcbiAgcHJpdmF0ZSBhc3NldD86IHMzYXNzZXRzLkFzc2V0O1xuXG4gIC8qKlxuICAgKiBAcGFyYW0gcGF0aCBUaGUgcGF0aCB0byB0aGUgQ29kZSBmaWxlLlxuICAgKi9cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBwYXRoOiBzdHJpbmcsIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogczNhc3NldHMuQXNzZXRPcHRpb25zID0geyB9KSB7XG4gICAgc3VwZXIoKTtcblxuICAgIGlmIChmcy5sc3RhdFN5bmModGhpcy5wYXRoKS5pc0RpcmVjdG9yeSgpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYENvZGUgcGF0aCAke3RoaXMucGF0aH0gaXMgYSBkaXJlY3RvcnkuIE9ubHkgZmlsZXMgYXJlIHN1cHBvcnRlZGApO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBiaW5kKHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCwgZ3JhbnRhYmxlOiBpYW0uSUdyYW50YWJsZSk6IENvZGVDb25maWcge1xuICAgIC8vIElmIHRoZSBzYW1lIEFzc2V0Q29kZSBpcyB1c2VkIG11bHRpcGxlIHRpbWVzLCByZXRhaW4gb25seSB0aGUgZmlyc3QgaW5zdGFudGlhdGlvbi5cbiAgICBpZiAoIXRoaXMuYXNzZXQpIHtcbiAgICAgIHRoaXMuYXNzZXQgPSBuZXcgczNhc3NldHMuQXNzZXQoc2NvcGUsIGBDb2RlJHt0aGlzLmhhc2hjb2RlKHRoaXMucGF0aCl9YCwge1xuICAgICAgICBwYXRoOiB0aGlzLnBhdGgsXG4gICAgICAgIC4uLnRoaXMub3B0aW9ucyxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSBpZiAoY2RrLlN0YWNrLm9mKHRoaXMuYXNzZXQpICE9PSBjZGsuU3RhY2sub2Yoc2NvcGUpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEFzc2V0IGlzIGFscmVhZHkgYXNzb2NpYXRlZCB3aXRoIGFub3RoZXIgc3RhY2sgJyR7Y2RrLlN0YWNrLm9mKHRoaXMuYXNzZXQpLnN0YWNrTmFtZX0nLiBgICtcbiAgICAgICAgJ0NyZWF0ZSBhIG5ldyBDb2RlIGluc3RhbmNlIGZvciBldmVyeSBzdGFjay4nKTtcbiAgICB9XG4gICAgdGhpcy5hc3NldC5ncmFudFJlYWQoZ3JhbnRhYmxlKTtcbiAgICByZXR1cm4ge1xuICAgICAgczNMb2NhdGlvbjoge1xuICAgICAgICBidWNrZXROYW1lOiB0aGlzLmFzc2V0LnMzQnVja2V0TmFtZSxcbiAgICAgICAgb2JqZWN0S2V5OiB0aGlzLmFzc2V0LnMzT2JqZWN0S2V5LFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEhhc2ggYSBzdHJpbmdcbiAgICovXG4gIHByaXZhdGUgaGFzaGNvZGUoczogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gbWQ1aGFzaChzKTtcbiAgfTtcbn1cblxuLyoqXG4gKiBSZXN1bHQgb2YgYmluZGluZyBgQ29kZWAgaW50byBhIGBKb2JgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvZGVDb25maWcge1xuICAvKipcbiAgICogVGhlIGxvY2F0aW9uIG9mIHRoZSBjb2RlIGluIFMzLlxuICAgKi9cbiAgcmVhZG9ubHkgczNMb2NhdGlvbjogczMuTG9jYXRpb247XG59Il19
|
package/lib/connection.js
CHANGED
|
@@ -25,7 +25,7 @@ class ConnectionType {
|
|
|
25
25
|
}
|
|
26
26
|
exports.ConnectionType = ConnectionType;
|
|
27
27
|
_a = JSII_RTTI_SYMBOL_1;
|
|
28
|
-
ConnectionType[_a] = { fqn: "@aws-cdk/aws-glue-alpha.ConnectionType", version: "2.
|
|
28
|
+
ConnectionType[_a] = { fqn: "@aws-cdk/aws-glue-alpha.ConnectionType", version: "2.96.0-alpha.0" };
|
|
29
29
|
/**
|
|
30
30
|
* Designates a connection to a database through Java Database Connectivity (JDBC).
|
|
31
31
|
*/
|
|
@@ -132,5 +132,5 @@ class Connection extends cdk.Resource {
|
|
|
132
132
|
}
|
|
133
133
|
exports.Connection = Connection;
|
|
134
134
|
_b = JSII_RTTI_SYMBOL_1;
|
|
135
|
-
Connection[_b] = { fqn: "@aws-cdk/aws-glue-alpha.Connection", version: "2.
|
|
135
|
+
Connection[_b] = { fqn: "@aws-cdk/aws-glue-alpha.Connection", version: "2.96.0-alpha.0" };
|
|
136
136
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNvbm5lY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0Esd0NBQXdDO0FBRXhDLG1EQUFxRDtBQUVyRDs7Ozs7R0FLRztBQUNILE1BQWEsY0FBYztJQTJCekIsWUFBWSxJQUFZO1FBQ3RCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0tBQ2xCO0lBRUQ7O09BRUc7SUFDSSxRQUFRO1FBQ2IsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO0tBQ2xCOztBQXBDSCx3Q0FxQ0M7OztBQW5DQzs7R0FFRztBQUNvQixtQkFBSSxHQUFHLElBQUksY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBRXpEOztHQUVHO0FBQ29CLG9CQUFLLEdBQUcsSUFBSSxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7QUFFM0Q7O0dBRUc7QUFDb0Isc0JBQU8sR0FBRyxJQUFJLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUUvRDs7R0FFRztBQUNvQixzQkFBTyxHQUFHLElBQUksY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBeUZqRTs7R0FFRztBQUNILE1BQWEsVUFBVyxTQUFRLEdBQUcsQ0FBQyxRQUFRO0lBRTFDOzs7Ozs7T0FNRztJQUNJLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxLQUEyQixFQUFFLEVBQVUsRUFBRSxhQUFxQjtRQUM1RixNQUFNLE1BQU8sU0FBUSxHQUFHLENBQUMsUUFBUTtZQUFqQzs7Z0JBQ2tCLG1CQUFjLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQyxhQUFhLEVBQUUsWUFBWSxDQUFDLENBQUM7Z0JBQzFFLGtCQUFhLEdBQUcsYUFBYSxDQUFDO1lBQ2hELENBQUM7U0FBQTtRQUVELE9BQU8sSUFBSSxNQUFNLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0tBQzlCO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksTUFBTSxDQUFDLGtC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UUFDM0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUM7S0FDOUI7O0FBM0ZILGdDQTRGQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGVjMiBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZWMyJztcbmltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYi9jb3JlJztcbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBDZm5Db25uZWN0aW9uIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWdsdWUnO1xuXG4vKipcbiAqIFRoZSB0eXBlIG9mIHRoZSBnbHVlIGNvbm5lY3Rpb25cbiAqXG4gKiBJZiB5b3UgbmVlZCB0byB1c2UgYSBjb25uZWN0aW9uIHR5cGUgdGhhdCBkb2Vzbid0IGV4aXN0IGFzIGEgc3RhdGljIG1lbWJlciwgeW91XG4gKiBjYW4gaW5zdGFudGlhdGUgYSBgQ29ubmVjdGlvblR5cGVgIG9iamVjdCwgZS5nOiBgbmV3IENvbm5lY3Rpb25UeXBlKCdORVdfVFlQRScpYC5cbiAqL1xuZXhwb3J0IGNsYXNzIENvbm5lY3Rpb25UeXBlIHtcblxuICAvKipcbiAgICogRGVzaWduYXRlcyBhIGNvbm5lY3Rpb24gdG8gYSBkYXRhYmFzZSB0aHJvdWdoIEphdmEgRGF0YWJhc2UgQ29ubmVjdGl2aXR5IChKREJDKS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgSkRCQyA9IG5ldyBDb25uZWN0aW9uVHlwZSgnSkRCQycpO1xuXG4gIC8qKlxuICAgKiBEZXNpZ25hdGVzIGEgY29ubmVjdGlvbiB0byBhbiBBcGFjaGUgS2Fma2Egc3RyZWFtaW5nIHBsYXRmb3JtLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBLQUZLQSA9IG5ldyBDb25uZWN0aW9uVHlwZSgnS0FGS0EnKTtcblxuICAvKipcbiAgICogRGVzaWduYXRlcyBhIGNvbm5lY3Rpb24gdG8gYSBNb25nb0RCIGRvY3VtZW50IGRhdGFiYXNlLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBNT05HT0RCID0gbmV3IENvbm5lY3Rpb25UeXBlKCdNT05HT0RCJyk7XG5cbiAgLyoqXG4gICAqIERlc2lnbmF0ZXMgYSBuZXR3b3JrIGNvbm5lY3Rpb24gdG8gYSBkYXRhIHNvdXJjZSB3aXRoaW4gYW4gQW1hem9uIFZpcnR1YWwgUHJpdmF0ZSBDbG91ZCBlbnZpcm9ubWVudCAoQW1hem9uIFZQQykuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IE5FVFdPUksgPSBuZXcgQ29ubmVjdGlvblR5cGUoJ05FVFdPUksnKTtcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhpcyBDb25uZWN0aW9uVHlwZSwgYXMgZXhwZWN0ZWQgYnkgQ29ubmVjdGlvbiByZXNvdXJjZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBuYW1lOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IobmFtZTogc3RyaW5nKSB7XG4gICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgY29ubmVjdGlvbiB0eXBlIG5hbWUgYXMgZXhwZWN0ZWQgYnkgQ29ubmVjdGlvbiByZXNvdXJjZS5cbiAgICovXG4gIHB1YmxpYyB0b1N0cmluZygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm5hbWU7XG4gIH1cbn1cblxuLyoqXG4gKiBJbnRlcmZhY2UgcmVwcmVzZW50aW5nIGEgY3JlYXRlZCBvciBhbiBpbXBvcnRlZCBgQ29ubmVjdGlvbmBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQ29ubmVjdGlvbiBleHRlbmRzIGNkay5JUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGNvbm5lY3Rpb25cbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgY29ubmVjdGlvbk5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgY29ubmVjdGlvblxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBjb25uZWN0aW9uQXJuOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQmFzZSBDb25uZWN0aW9uIE9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb25uZWN0aW9uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgY29ubmVjdGlvblxuICAgKiBAZGVmYXVsdCBjbG91ZGZvcm1hdGlvbiBnZW5lcmF0ZWQgbmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgY29ubmVjdGlvbk5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgY29ubmVjdGlvbi5cbiAgICogQGRlZmF1bHQgbm8gZGVzY3JpcHRpb25cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiAgS2V5LVZhbHVlIHBhaXJzIHRoYXQgZGVmaW5lIHBhcmFtZXRlcnMgZm9yIHRoZSBjb25uZWN0aW9uLlxuICAgKiAgQGRlZmF1bHQgZW1wdHkgcHJvcGVydGllc1xuICAgKiAgQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZ2x1ZS9sYXRlc3QvZGcvYXdzLWdsdWUtcHJvZ3JhbW1pbmctZXRsLWNvbm5lY3QuaHRtbFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvcGVydGllcz86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG5cbiAgLyoqXG4gICAqIEEgbGlzdCBvZiBjcml0ZXJpYSB0aGF0IGNhbiBiZSB1c2VkIGluIHNlbGVjdGluZyB0aGlzIGNvbm5lY3Rpb24uXG4gICAqIFRoaXMgaXMgdXNlZnVsIGZvciBmaWx0ZXJpbmcgdGhlIHJlc3VsdHMgb2YgaHR0cHM6Ly9hd3NjbGkuYW1hem9uYXdzLmNvbS92Mi9kb2N1bWVudGF0aW9uL2FwaS9sYXRlc3QvcmVmZXJlbmNlL2dsdWUvZ2V0LWNvbm5lY3Rpb25zLmh0bWxcbiAgICogQGRlZmF1bHQgbm8gbWF0Y2ggY3JpdGVyaWFcbiAgICovXG4gIHJlYWRvbmx5IG1hdGNoQ3JpdGVyaWE/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogVGhlIGxpc3Qgb2Ygc2VjdXJpdHkgZ3JvdXBzIG5lZWRlZCB0byBzdWNjZXNzZnVsbHkgbWFrZSB0aGlzIGNvbm5lY3Rpb24gZS5nLiB0byBzdWNjZXNzZnVsbHkgY29ubmVjdCB0byBWUEMuXG4gICAqIEBkZWZhdWx0IG5vIHNlY3VyaXR5IGdyb3VwXG4gICAqL1xuICByZWFkb25seSBzZWN1cml0eUdyb3Vwcz86IGVjMi5JU2VjdXJpdHlHcm91cFtdO1xuXG4gIC8qKlxuICAgKiBUaGUgVlBDIHN1Ym5ldCB0byBjb25uZWN0IHRvIHJlc291cmNlcyB3aXRoaW4gYSBWUEMuIFNlZSBtb3JlIGF0IGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9nbHVlL2xhdGVzdC9kZy9zdGFydC1jb25uZWN0aW5nLmh0bWwuXG4gICAqIEBkZWZhdWx0IG5vIHN1Ym5ldFxuICAgKi9cbiAgcmVhZG9ubHkgc3VibmV0PzogZWMyLklTdWJuZXQ7XG59XG5cbi8qKlxuICogQ29uc3RydWN0aW9uIHByb3BlcnRpZXMgZm9yIGBDb25uZWN0aW9uYFxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbm5lY3Rpb25Qcm9wcyBleHRlbmRzIENvbm5lY3Rpb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSB0eXBlIG9mIHRoZSBjb25uZWN0aW9uXG4gICAqL1xuICByZWFkb25seSB0eXBlOiBDb25uZWN0aW9uVHlwZTtcbn1cblxuLyoqXG4gKiBBbiBBV1MgR2x1ZSBjb25uZWN0aW9uIHRvIGEgZGF0YSBzb3VyY2UuXG4gKi9cbmV4cG9ydCBjbGFzcyBDb25uZWN0aW9uIGV4dGVuZHMgY2RrLlJlc291cmNlIGltcGxlbWVudHMgSUNvbm5lY3Rpb24ge1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgQ29ubmVjdGlvbiBjb25zdHJ1Y3QgdGhhdCByZXByZXNlbnRzIGFuIGV4dGVybmFsIGNvbm5lY3Rpb24uXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSBUaGUgc2NvcGUgY3JlYXRpbmcgY29uc3RydWN0ICh1c3VhbGx5IGB0aGlzYCkuXG4gICAqIEBwYXJhbSBpZCBUaGUgY29uc3RydWN0J3MgaWQuXG4gICAqIEBwYXJhbSBjb25uZWN0aW9uQXJuIGFybiBvZiBleHRlcm5hbCBjb25uZWN0aW9uLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tQ29ubmVjdGlvbkFybihzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIGNvbm5lY3Rpb25Bcm46IHN0cmluZyk6IElDb25uZWN0aW9uIHtcbiAgICBjbGFzcyBJbXBvcnQgZXh0ZW5kcyBjZGsuUmVzb3VyY2UgaW1wbGVtZW50cyBJQ29ubmVjdGlvbiB7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgY29ubmVjdGlvbk5hbWUgPSBjZGsuQXJuLmV4dHJhY3RSZXNvdXJjZU5hbWUoY29ubmVjdGlvbkFybiwgJ2Nvbm5lY3Rpb24nKTtcbiAgICAgIHB1YmxpYyByZWFkb25seSBjb25uZWN0aW9uQXJuID0gY29ubmVjdGlvbkFybjtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3IEltcG9ydChzY29wZSwgaWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBDb25uZWN0aW9uIGNvbnN0cnVjdCB0aGF0IHJlcHJlc2VudHMgYW4gZXh0ZXJuYWwgY29ubmVjdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIFRoZSBzY29wZSBjcmVhdGluZyBjb25zdHJ1Y3QgKHVzdWFsbHkgYHRoaXNgKS5cbiAgICogQHBhcmFtIGlkIFRoZSBjb25zdHJ1Y3QncyBpZC5cbiAgICogQHBhcmFtIGNvbm5lY3Rpb25OYW1lIG5hbWUgb2YgZXh0ZXJuYWwgY29ubmVjdGlvbi5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbUNvbm5lY3Rpb25OYW1lKHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCwgaWQ6IHN0cmluZywgY29ubmVjdGlvbk5hbWU6IHN0cmluZyk6IElDb25uZWN0aW9uIHtcbiAgICBjbGFzcyBJbXBvcnQgZXh0ZW5kcyBjZGsuUmVzb3VyY2UgaW1wbGVtZW50cyBJQ29ubmVjdGlvbiB7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgY29ubmVjdGlvbk5hbWUgPSBjb25uZWN0aW9uTmFtZTtcbiAgICAgIHB1YmxpYyByZWFkb25seSBjb25uZWN0aW9uQXJuID0gQ29ubmVjdGlvbi5idWlsZENvbm5lY3Rpb25Bcm4oc2NvcGUsIGNvbm5lY3Rpb25OYW1lKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3IEltcG9ydChzY29wZSwgaWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgYnVpbGRDb25uZWN0aW9uQXJuKHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCwgY29ubmVjdGlvbk5hbWU6IHN0cmluZykgOiBzdHJpbmcge1xuICAgIHJldHVybiBjZGsuU3RhY2sub2Yoc2NvcGUpLmZvcm1hdEFybih7XG4gICAgICBzZXJ2aWNlOiAnZ2x1ZScsXG4gICAgICByZXNvdXJjZTogJ2Nvbm5lY3Rpb24nLFxuICAgICAgcmVzb3VyY2VOYW1lOiBjb25uZWN0aW9uTmFtZSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBjb25uZWN0aW9uXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY29ubmVjdGlvbkFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgY29ubmVjdGlvblxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGNvbm5lY3Rpb25OYW1lOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBwcm9wZXJ0aWVzOiB7W2tleTogc3RyaW5nXTogc3RyaW5nfTtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBDb25uZWN0aW9uUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHBoeXNpY2FsTmFtZTogcHJvcHMuY29ubmVjdGlvbk5hbWUsXG4gICAgfSk7XG5cbiAgICB0aGlzLnByb3BlcnRpZXMgPSBwcm9wcy5wcm9wZXJ0aWVzIHx8IHt9O1xuXG4gICAgY29uc3QgcGh5c2ljYWxDb25uZWN0aW9uUmVxdWlyZW1lbnRzID0gcHJvcHMuc3VibmV0IHx8IHByb3BzLnNlY3VyaXR5R3JvdXBzID8ge1xuICAgICAgYXZhaWxhYmlsaXR5Wm9uZTogcHJvcHMuc3VibmV0ID8gcHJvcHMuc3VibmV0LmF2YWlsYWJpbGl0eVpvbmUgOiB1bmRlZmluZWQsXG4gICAgICBzdWJuZXRJZDogcHJvcHMuc3VibmV0ID8gcHJvcHMuc3VibmV0LnN1Ym5ldElkIDogdW5kZWZpbmVkLFxuICAgICAgc2VjdXJpdHlHcm91cElkTGlzdDogcHJvcHMuc2VjdXJpdHlHcm91cHMgPyBwcm9wcy5zZWN1cml0eUdyb3Vwcy5tYXAoc2cgPT4gc2cuc2VjdXJpdHlHcm91cElkKSA6IHVuZGVmaW5lZCxcbiAgICB9IDogdW5kZWZpbmVkO1xuXG4gICAgY29uc3QgY29ubmVjdGlvblJlc291cmNlID0gbmV3IENmbkNvbm5lY3Rpb24odGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgY2F0YWxvZ0lkOiBjZGsuU3RhY2sub2YodGhpcykuYWNjb3VudCxcbiAgICAgIGNvbm5lY3Rpb25JbnB1dDoge1xuICAgICAgICBjb25uZWN0aW9uUHJvcGVydGllczogY2RrLkxhenkuYW55KHsgcHJvZHVjZTogKCkgPT4gT2JqZWN0LmtleXModGhpcy5wcm9wZXJ0aWVzKS5sZW5ndGggPiAwID8gdGhpcy5wcm9wZXJ0aWVzIDogdW5kZWZpbmVkIH0pLFxuICAgICAgICBjb25uZWN0aW9uVHlwZTogcHJvcHMudHlwZS5uYW1lLFxuICAgICAgICBkZXNjcmlwdGlvbjogcHJvcHMuZGVzY3JpcHRpb24sXG4gICAgICAgIG1hdGNoQ3JpdGVyaWE6IHByb3BzLm1hdGNoQ3JpdGVyaWEsXG4gICAgICAgIG5hbWU6IHByb3BzLmNvbm5lY3Rpb25OYW1lLFxuICAgICAgICBwaHlzaWNhbENvbm5lY3Rpb25SZXF1aXJlbWVudHMsXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgY29uc3QgcmVzb3VyY2VOYW1lID0gdGhpcy5nZXRSZXNvdXJjZU5hbWVBdHRyaWJ1dGUoY29ubmVjdGlvblJlc291cmNlLnJlZik7XG4gICAgdGhpcy5jb25uZWN0aW9uQXJuID0gQ29ubmVjdGlvbi5idWlsZENvbm5lY3Rpb25Bcm4odGhpcywgcmVzb3VyY2VOYW1lKTtcbiAgICB0aGlzLmNvbm5lY3Rpb25OYW1lID0gcmVzb3VyY2VOYW1lO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhZGRpdGlvbmFsIGNvbm5lY3Rpb24gcGFyYW1ldGVyc1xuICAgKiBAcGFyYW0ga2V5IHBhcmFtZXRlciBrZXlcbiAgICogQHBhcmFtIHZhbHVlIHBhcmFtZXRlciB2YWx1ZVxuICAgKi9cbiAgcHVibGljIGFkZFByb3BlcnR5KGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5wcm9wZXJ0aWVzW2tleV0gPSB2YWx1ZTtcbiAgfVxufVxuIl19
|
package/lib/data-format.js
CHANGED
|
@@ -14,7 +14,7 @@ class InputFormat {
|
|
|
14
14
|
}
|
|
15
15
|
exports.InputFormat = InputFormat;
|
|
16
16
|
_a = JSII_RTTI_SYMBOL_1;
|
|
17
|
-
InputFormat[_a] = { fqn: "@aws-cdk/aws-glue-alpha.InputFormat", version: "2.
|
|
17
|
+
InputFormat[_a] = { fqn: "@aws-cdk/aws-glue-alpha.InputFormat", version: "2.96.0-alpha.0" };
|
|
18
18
|
/**
|
|
19
19
|
* InputFormat for Avro files.
|
|
20
20
|
*
|
|
@@ -58,7 +58,7 @@ class OutputFormat {
|
|
|
58
58
|
}
|
|
59
59
|
exports.OutputFormat = OutputFormat;
|
|
60
60
|
_b = JSII_RTTI_SYMBOL_1;
|
|
61
|
-
OutputFormat[_b] = { fqn: "@aws-cdk/aws-glue-alpha.OutputFormat", version: "2.
|
|
61
|
+
OutputFormat[_b] = { fqn: "@aws-cdk/aws-glue-alpha.OutputFormat", version: "2.96.0-alpha.0" };
|
|
62
62
|
/**
|
|
63
63
|
* Writes text data with a null key (value only).
|
|
64
64
|
*
|
|
@@ -95,7 +95,7 @@ class SerializationLibrary {
|
|
|
95
95
|
}
|
|
96
96
|
exports.SerializationLibrary = SerializationLibrary;
|
|
97
97
|
_c = JSII_RTTI_SYMBOL_1;
|
|
98
|
-
SerializationLibrary[_c] = { fqn: "@aws-cdk/aws-glue-alpha.SerializationLibrary", version: "2.
|
|
98
|
+
SerializationLibrary[_c] = { fqn: "@aws-cdk/aws-glue-alpha.SerializationLibrary", version: "2.96.0-alpha.0" };
|
|
99
99
|
/**
|
|
100
100
|
* @see https://svn.apache.org/repos/infra/websites/production/hive/content/javadocs/r3.1.3/api/org/apache/hadoop/hive/serde2/avro/AvroSerDe.html
|
|
101
101
|
*/
|
|
@@ -148,7 +148,7 @@ class ClassificationString {
|
|
|
148
148
|
}
|
|
149
149
|
exports.ClassificationString = ClassificationString;
|
|
150
150
|
_d = JSII_RTTI_SYMBOL_1;
|
|
151
|
-
ClassificationString[_d] = { fqn: "@aws-cdk/aws-glue-alpha.ClassificationString", version: "2.
|
|
151
|
+
ClassificationString[_d] = { fqn: "@aws-cdk/aws-glue-alpha.ClassificationString", version: "2.96.0-alpha.0" };
|
|
152
152
|
/**
|
|
153
153
|
* @see https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-format.html#aws-glue-programming-etl-format-avro
|
|
154
154
|
*/
|
|
@@ -195,7 +195,7 @@ class DataFormat {
|
|
|
195
195
|
}
|
|
196
196
|
exports.DataFormat = DataFormat;
|
|
197
197
|
_e = JSII_RTTI_SYMBOL_1;
|
|
198
|
-
DataFormat[_e] = { fqn: "@aws-cdk/aws-glue-alpha.DataFormat", version: "2.
|
|
198
|
+
DataFormat[_e] = { fqn: "@aws-cdk/aws-glue-alpha.DataFormat", version: "2.96.0-alpha.0" };
|
|
199
199
|
/**
|
|
200
200
|
* DataFormat for Apache Web Server Logs. Also works for CloudFront logs
|
|
201
201
|
*
|
|
@@ -18,7 +18,7 @@ class DataQualityTargetTable {
|
|
|
18
18
|
}
|
|
19
19
|
exports.DataQualityTargetTable = DataQualityTargetTable;
|
|
20
20
|
_a = JSII_RTTI_SYMBOL_1;
|
|
21
|
-
DataQualityTargetTable[_a] = { fqn: "@aws-cdk/aws-glue-alpha.DataQualityTargetTable", version: "2.
|
|
21
|
+
DataQualityTargetTable[_a] = { fqn: "@aws-cdk/aws-glue-alpha.DataQualityTargetTable", version: "2.96.0-alpha.0" };
|
|
22
22
|
/**
|
|
23
23
|
* A Glue Data Quality ruleset.
|
|
24
24
|
*/
|
|
@@ -78,5 +78,5 @@ class DataQualityRuleset extends core_1.Resource {
|
|
|
78
78
|
}
|
|
79
79
|
exports.DataQualityRuleset = DataQualityRuleset;
|
|
80
80
|
_b = JSII_RTTI_SYMBOL_1;
|
|
81
|
-
DataQualityRuleset[_b] = { fqn: "@aws-cdk/aws-glue-alpha.DataQualityRuleset", version: "2.
|
|
81
|
+
DataQualityRuleset[_b] = { fqn: "@aws-cdk/aws-glue-alpha.DataQualityRuleset", version: "2.96.0-alpha.0" };
|
|
82
82
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1xdWFsaXR5LXJ1bGVzZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJkYXRhLXF1YWxpdHktcnVsZXNldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxtQ0FBbUM7QUFFbkMsMkNBQXVEO0FBQ3ZELG1EQUE2RDtBQUU3RDs7R0FFRztBQUNILE1BQWEsc0JBQXNCO0lBV2pDLFlBQVksWUFBb0IsRUFBRSxTQUFpQjtRQUNqRCxJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQztRQUNqQyxJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztLQUM1Qjs7QUFkSCx3REFlQzs7O0FBeUREOztHQUVHO0FBQ0gsTUFBYSxrQkFBbUIsU0FBUSxlQUFRO0lBQ3ZDLE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBMkIsRUFBRSxFQUFVLEVBQUUsVUFBa0I7UUFDdEYsTUFBTSxNQUFPLFNBQVEsZUFBUTtZQUE3Qjs7Z0JBQ1MsZUFBVSxHQUFHLFVBQVUsQ0FBQztnQkFDeEIsZ0JBQVcsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLG1CQUFtQixDQUFDLFVBQVUsRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO1lBQ3JGLENBQUM7U0FBQTtRQUVELE9BQU8sSUFBSSxNQUFNLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0tBQzlCO0lBRU0sTUFBTSxDQUFDLGVBQWUsQ0FBQyxLQUEyQixFQUFFLEVBQVUsRUFBRSxXQUFtQjtRQUN4RixNQUFNLE1BQU8sU0FBUSxlQUFRO1lBQTdCOztnQkFDUyxlQUFVLEdBQUcsa0JBQWtCLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQztnQkFDcEUsZ0JBQVcsR0FBRyxXQUFXLENBQUM7WUFDbkMsQ0FBQztTQUFBO1FBRUQsT0FBTyxJQUFJLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7S0FDOUI7SUFFTyxNQUFNLENBQUMsZUFBZSxDQUFDLEtBQTJCLEVBQUUsV0FBbUI7UUFDN0UsT0FBTyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLENBQUM7WUFDbkMsT0FBTyxFQUFFLE1BQU07WUFDZixRQUFRLEVBQUUsb0JBQW9CO1lBQzlCLFlBQVksRUFBRSxXQUFXO1NBQzFCLENBQUMsQ0FBQztLQUNKO0lBWUQsWUFBWSxLQUEyQixFQUFFLEVBQVUsRUFBRSxLQUE4QjtRQUNqRixLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLFlBQVksRUFBRSxLQUFLLENBQUMsV0FBVztTQUNoQyxDQUFDLENBQUM7Ozs7OzsrQ0F4Q00sa0JBQWtCOzs7O1FBMEMzQixNQUFNLGVBQWUsR0FBRyxJQUFJLGdDQUFxQixDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDbEUsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO1lBQzlCLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVztZQUM5QixJQUFJLEVBQUUsS0FBSyxDQUFDLFdBQVc7WUFDdkIsT0FBTyxFQUFFLEtBQUssQ0FBQyxXQUFXO1lBQzFCLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNoQixXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVc7U0FDL0IsQ0FBQyxDQUFDO1FBRUgsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN4RSxJQUFJLENBQUMsVUFBVSxHQUFHLGtCQUFrQixDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDekUsSUFBSSxDQUFDLFdBQVcsR0FBRyxZQUFZLENBQUM7S0FDakM7O0FBdERILGdEQXVEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgSVJlc291cmNlLCBSZXNvdXJjZSB9IGZyb20gJ2F3cy1jZGstbGliL2NvcmUnO1xuaW1wb3J0IHsgQ2ZuRGF0YVF1YWxpdHlSdWxlc2V0IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWdsdWUnO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgb2YgYSBEYXRhUXVhbGl0eVRhcmdldFRhYmxlLlxuICovXG5leHBvcnQgY2xhc3MgRGF0YVF1YWxpdHlUYXJnZXRUYWJsZSB7XG4gIC8qKlxuICAgKiBUaGUgZGF0YWJhc2UgbmFtZSBvZiB0aGUgdGFyZ2V0IHRhYmxlLlxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YWJhc2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB0YWJsZSBuYW1lIG9mIHRoZSB0YXJnZXQgdGFibGUuXG4gICAqL1xuICByZWFkb25seSB0YWJsZU5hbWU6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihkYXRhYmFzZU5hbWU6IHN0cmluZywgdGFibGVOYW1lOiBzdHJpbmcpIHtcbiAgICB0aGlzLmRhdGFiYXNlTmFtZSA9IGRhdGFiYXNlTmFtZTtcbiAgICB0aGlzLnRhYmxlTmFtZSA9IHRhYmxlTmFtZTtcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElEYXRhUXVhbGl0eVJ1bGVzZXQgZXh0ZW5kcyBJUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgcnVsZXNldFxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBydWxlc2V0QXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBydWxlc2V0XG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IHJ1bGVzZXROYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29uc3RydWN0aW9uIHByb3BlcnRpZXMgZm9yIGBEYXRhUXVhbGl0eVJ1bGVzZXRgXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YVF1YWxpdHlSdWxlc2V0UHJvcHMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHJ1bGVzZXRcbiAgICogQGRlZmF1bHQgY2xvdWRmb3JtYXRpb24gZ2VuZXJhdGVkIG5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHJ1bGVzZXROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgY2xpZW50IHRva2VuIG9mIHRoZSBydWxlc2V0XG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IGNsaWVudFRva2VuPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZGVzY3JpcHRpb24gb2YgdGhlIHJ1bGVzZXRcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBkcWRsIG9mIHRoZSBydWxlc2V0XG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IHJ1bGVzZXREcWRsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqICBLZXktVmFsdWUgcGFpcnMgdGhhdCBkZWZpbmUgdGFncyBmb3IgdGhlIHJ1bGVzZXQuXG4gICAqICBAZGVmYXVsdCBlbXB0eSB0YWdzXG4gICAqL1xuICByZWFkb25seSB0YWdzPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcblxuICAvKipcbiAgICogVGhlIHRhcmdldCB0YWJsZSBvZiB0aGUgcnVsZXNldFxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSB0YXJnZXRUYWJsZTogRGF0YVF1YWxpdHlUYXJnZXRUYWJsZTtcbn1cblxuLyoqXG4gKiBBIEdsdWUgRGF0YSBRdWFsaXR5IHJ1bGVzZXQuXG4gKi9cbmV4cG9ydCBjbGFzcyBEYXRhUXVhbGl0eVJ1bGVzZXQgZXh0ZW5kcyBSZXNvdXJjZSBpbXBsZW1lbnRzIElEYXRhUXVhbGl0eVJ1bGVzZXQge1xuICBwdWJsaWMgc3RhdGljIGZyb21SdWxlc2V0QXJuKHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCwgaWQ6IHN0cmluZywgcnVsZXNldEFybjogc3RyaW5nKTogSURhdGFRdWFsaXR5UnVsZXNldCB7XG4gICAgY2xhc3MgSW1wb3J0IGV4dGVuZHMgUmVzb3VyY2UgaW1wbGVtZW50cyBJRGF0YVF1YWxpdHlSdWxlc2V0IHtcbiAgICAgIHB1YmxpYyBydWxlc2V0QXJuID0gcnVsZXNldEFybjtcbiAgICAgIHB1YmxpYyBydWxlc2V0TmFtZSA9IGNkay5Bcm4uZXh0cmFjdFJlc291cmNlTmFtZShydWxlc2V0QXJuLCAnZGF0YXF1YWxpdHlydWxlc2V0Jyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5ldyBJbXBvcnQoc2NvcGUsIGlkKTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgZnJvbVJ1bGVzZXROYW1lKHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCwgaWQ6IHN0cmluZywgcnVsZXNldE5hbWU6IHN0cmluZyk6IElEYXRhUXVhbGl0eVJ1bGVzZXQge1xuICAgIGNsYXNzIEltcG9ydCBleHRlbmRzIFJlc291cmNlIGltcGxlbWVudHMgSURhdGFRdWFsaXR5UnVsZXNldCB7XG4gICAgICBwdWJsaWMgcnVsZXNldEFybiA9IERhdGFRdWFsaXR5UnVsZXNldC5idWlsZFJ1bGVzZXRBcm4oc2NvcGUsIHJ1bGVzZXROYW1lKTtcbiAgICAgIHB1YmxpYyBydWxlc2V0TmFtZSA9IHJ1bGVzZXROYW1lO1xuICAgIH1cblxuICAgIHJldHVybiBuZXcgSW1wb3J0KHNjb3BlLCBpZCk7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBidWlsZFJ1bGVzZXRBcm4oc2NvcGU6IGNvbnN0cnVjdHMuQ29uc3RydWN0LCBydWxlc2V0TmFtZTogc3RyaW5nKSA6IHN0cmluZyB7XG4gICAgcmV0dXJuIGNkay5TdGFjay5vZihzY29wZSkuZm9ybWF0QXJuKHtcbiAgICAgIHNlcnZpY2U6ICdnbHVlJyxcbiAgICAgIHJlc291cmNlOiAnZGF0YXF1YWxpdHlydWxlc2V0JyxcbiAgICAgIHJlc291cmNlTmFtZTogcnVsZXNldE5hbWUsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogTmFtZSBvZiB0aGlzIHJ1bGVzZXQuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcnVsZXNldE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogQVJOIG9mIHRoaXMgcnVsZXNldC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBydWxlc2V0QXJuOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IGNvbnN0cnVjdHMuQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogRGF0YVF1YWxpdHlSdWxlc2V0UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHBoeXNpY2FsTmFtZTogcHJvcHMucnVsZXNldE5hbWUsXG4gICAgfSk7XG5cbiAgICBjb25zdCBydWxlc2V0UmVzb3VyY2UgPSBuZXcgQ2ZuRGF0YVF1YWxpdHlSdWxlc2V0KHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIGNsaWVudFRva2VuOiBwcm9wcy5jbGllbnRUb2tlbixcbiAgICAgIGRlc2NyaXB0aW9uOiBwcm9wcy5kZXNjcmlwdGlvbixcbiAgICAgIG5hbWU6IHByb3BzLnJ1bGVzZXROYW1lLFxuICAgICAgcnVsZXNldDogcHJvcHMucnVsZXNldERxZGwsXG4gICAgICB0YWdzOiBwcm9wcy50YWdzLFxuICAgICAgdGFyZ2V0VGFibGU6IHByb3BzLnRhcmdldFRhYmxlLFxuICAgIH0pO1xuXG4gICAgY29uc3QgcmVzb3VyY2VOYW1lID0gdGhpcy5nZXRSZXNvdXJjZU5hbWVBdHRyaWJ1dGUocnVsZXNldFJlc291cmNlLnJlZik7XG4gICAgdGhpcy5ydWxlc2V0QXJuID0gRGF0YVF1YWxpdHlSdWxlc2V0LmJ1aWxkUnVsZXNldEFybih0aGlzLCByZXNvdXJjZU5hbWUpO1xuICAgIHRoaXMucnVsZXNldE5hbWUgPSByZXNvdXJjZU5hbWU7XG4gIH1cbn0iXX0=
|
package/lib/database.js
CHANGED
|
@@ -71,7 +71,7 @@ class Database extends core_1.Resource {
|
|
|
71
71
|
}
|
|
72
72
|
exports.Database = Database;
|
|
73
73
|
_a = JSII_RTTI_SYMBOL_1;
|
|
74
|
-
Database[_a] = { fqn: "@aws-cdk/aws-glue-alpha.Database", version: "2.
|
|
74
|
+
Database[_a] = { fqn: "@aws-cdk/aws-glue-alpha.Database", version: "2.96.0-alpha.0" };
|
|
75
75
|
function validateLocationUri(locationUri) {
|
|
76
76
|
if (locationUri.length < 1 || locationUri.length > 1024) {
|
|
77
77
|
throw new Error(`locationUri length must be (inclusively) between 1 and 1024, but was ${locationUri.length}`);
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { CfnTable } from 'aws-cdk-lib/aws-glue';
|
|
2
|
+
import * as iam from 'aws-cdk-lib/aws-iam';
|
|
3
|
+
import { Construct } from 'constructs';
|
|
4
|
+
import { IConnection } from './connection';
|
|
5
|
+
import { PartitionIndex, TableBase, TableBaseProps } from './table-base';
|
|
6
|
+
export interface ExternalTableProps extends TableBaseProps {
|
|
7
|
+
/**
|
|
8
|
+
* The connection the table will use when performing reads and writes.
|
|
9
|
+
*
|
|
10
|
+
* @default - No connection
|
|
11
|
+
*/
|
|
12
|
+
readonly connection: IConnection;
|
|
13
|
+
/**
|
|
14
|
+
* The data source location of the glue table, (e.g. `default_db_public_example` for Redshift).
|
|
15
|
+
*
|
|
16
|
+
* If this property is set, it will override both `bucket` and `s3Prefix`.
|
|
17
|
+
*
|
|
18
|
+
* @default - No outsourced data source location
|
|
19
|
+
*/
|
|
20
|
+
readonly externalDataLocation: string;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* A Glue table that targets an external data location (e.g. A table in a Redshift Cluster).
|
|
24
|
+
*/
|
|
25
|
+
export declare class ExternalTable extends TableBase {
|
|
26
|
+
/**
|
|
27
|
+
* Name of this table.
|
|
28
|
+
*/
|
|
29
|
+
readonly tableName: string;
|
|
30
|
+
/**
|
|
31
|
+
* ARN of this table.
|
|
32
|
+
*/
|
|
33
|
+
readonly tableArn: string;
|
|
34
|
+
/**
|
|
35
|
+
* The connection associated to this table
|
|
36
|
+
*/
|
|
37
|
+
readonly connection: IConnection;
|
|
38
|
+
/**
|
|
39
|
+
* This table's partition indexes.
|
|
40
|
+
*/
|
|
41
|
+
readonly partitionIndexes?: PartitionIndex[];
|
|
42
|
+
protected readonly tableResource: CfnTable;
|
|
43
|
+
constructor(scope: Construct, id: string, props: ExternalTableProps);
|
|
44
|
+
/**
|
|
45
|
+
* Grant read permissions to the table
|
|
46
|
+
*
|
|
47
|
+
* @param grantee the principal
|
|
48
|
+
*/
|
|
49
|
+
grantRead(grantee: iam.IGrantable): iam.Grant;
|
|
50
|
+
/**
|
|
51
|
+
* Grant write permissions to the table
|
|
52
|
+
*
|
|
53
|
+
* @param grantee the principal
|
|
54
|
+
*/
|
|
55
|
+
grantWrite(grantee: iam.IGrantable): iam.Grant;
|
|
56
|
+
/**
|
|
57
|
+
* Grant read and write permissions to the table
|
|
58
|
+
*
|
|
59
|
+
* @param grantee the principal
|
|
60
|
+
*/
|
|
61
|
+
grantReadWrite(grantee: iam.IGrantable): iam.Grant;
|
|
62
|
+
}
|