aws-solutions-constructs.aws-lambda-dynamodb 1.176.0__tar.gz → 2.98.0__tar.gz
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.
- aws_solutions_constructs_aws_lambda_dynamodb-2.98.0/PKG-INFO +28 -0
- aws_solutions_constructs_aws_lambda_dynamodb-2.98.0/README.md +1 -0
- {aws-solutions-constructs.aws-lambda-dynamodb-1.176.0 → aws_solutions_constructs_aws_lambda_dynamodb-2.98.0}/pyproject.toml +2 -2
- {aws-solutions-constructs.aws-lambda-dynamodb-1.176.0 → aws_solutions_constructs_aws_lambda_dynamodb-2.98.0}/setup.py +9 -13
- aws_solutions_constructs_aws_lambda_dynamodb-2.98.0/src/aws_solutions_constructs/aws_lambda_dynamodb/__init__.py +332 -0
- aws_solutions_constructs_aws_lambda_dynamodb-2.98.0/src/aws_solutions_constructs/aws_lambda_dynamodb/_jsii/__init__.py +46 -0
- aws_solutions_constructs_aws_lambda_dynamodb-2.98.0/src/aws_solutions_constructs/aws_lambda_dynamodb/_jsii/aws-lambda-dynamodb@2.98.0.jsii.tgz +0 -0
- aws_solutions_constructs_aws_lambda_dynamodb-2.98.0/src/aws_solutions_constructs.aws_lambda_dynamodb.egg-info/PKG-INFO +28 -0
- {aws-solutions-constructs.aws-lambda-dynamodb-1.176.0 → aws_solutions_constructs_aws_lambda_dynamodb-2.98.0}/src/aws_solutions_constructs.aws_lambda_dynamodb.egg-info/SOURCES.txt +1 -1
- aws_solutions_constructs_aws_lambda_dynamodb-2.98.0/src/aws_solutions_constructs.aws_lambda_dynamodb.egg-info/requires.txt +6 -0
- aws-solutions-constructs.aws-lambda-dynamodb-1.176.0/PKG-INFO +0 -162
- aws-solutions-constructs.aws-lambda-dynamodb-1.176.0/README.md +0 -137
- aws-solutions-constructs.aws-lambda-dynamodb-1.176.0/src/aws_solutions_constructs/aws_lambda_dynamodb/__init__.py +0 -434
- aws-solutions-constructs.aws-lambda-dynamodb-1.176.0/src/aws_solutions_constructs/aws_lambda_dynamodb/_jsii/__init__.py +0 -31
- aws-solutions-constructs.aws-lambda-dynamodb-1.176.0/src/aws_solutions_constructs/aws_lambda_dynamodb/_jsii/aws-lambda-dynamodb@1.176.0.jsii.tgz +0 -0
- aws-solutions-constructs.aws-lambda-dynamodb-1.176.0/src/aws_solutions_constructs.aws_lambda_dynamodb.egg-info/PKG-INFO +0 -162
- aws-solutions-constructs.aws-lambda-dynamodb-1.176.0/src/aws_solutions_constructs.aws_lambda_dynamodb.egg-info/requires.txt +0 -9
- {aws-solutions-constructs.aws-lambda-dynamodb-1.176.0 → aws_solutions_constructs_aws_lambda_dynamodb-2.98.0}/LICENSE +0 -0
- {aws-solutions-constructs.aws-lambda-dynamodb-1.176.0 → aws_solutions_constructs_aws_lambda_dynamodb-2.98.0}/MANIFEST.in +0 -0
- {aws-solutions-constructs.aws-lambda-dynamodb-1.176.0 → aws_solutions_constructs_aws_lambda_dynamodb-2.98.0}/setup.cfg +0 -0
- {aws-solutions-constructs.aws-lambda-dynamodb-1.176.0 → aws_solutions_constructs_aws_lambda_dynamodb-2.98.0}/src/aws_solutions_constructs/aws_lambda_dynamodb/py.typed +0 -0
- {aws-solutions-constructs.aws-lambda-dynamodb-1.176.0 → aws_solutions_constructs_aws_lambda_dynamodb-2.98.0}/src/aws_solutions_constructs.aws_lambda_dynamodb.egg-info/dependency_links.txt +0 -0
- {aws-solutions-constructs.aws-lambda-dynamodb-1.176.0 → aws_solutions_constructs_aws_lambda_dynamodb-2.98.0}/src/aws_solutions_constructs.aws_lambda_dynamodb.egg-info/top_level.txt +0 -0
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: aws-solutions-constructs.aws-lambda-dynamodb
|
|
3
|
+
Version: 2.98.0
|
|
4
|
+
Summary: CDK Constructs for AWS Lambda to AWS DynamoDB integration.
|
|
5
|
+
Home-page: https://github.com/awslabs/aws-solutions-constructs.git
|
|
6
|
+
Author: Amazon Web Services
|
|
7
|
+
License: Apache-2.0
|
|
8
|
+
Project-URL: Source, https://github.com/awslabs/aws-solutions-constructs.git
|
|
9
|
+
Classifier: Intended Audience :: Developers
|
|
10
|
+
Classifier: Operating System :: OS Independent
|
|
11
|
+
Classifier: Programming Language :: JavaScript
|
|
12
|
+
Classifier: Programming Language :: Python :: 3 :: Only
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
16
|
+
Classifier: Typing :: Typed
|
|
17
|
+
Classifier: License :: OSI Approved
|
|
18
|
+
Requires-Python: ~=3.9
|
|
19
|
+
Description-Content-Type: text/markdown
|
|
20
|
+
License-File: LICENSE
|
|
21
|
+
Requires-Dist: aws-cdk-lib<3.0.0,>=2.234.0
|
|
22
|
+
Requires-Dist: aws-solutions-constructs.core==2.98.0
|
|
23
|
+
Requires-Dist: constructs<11.0.0,>=10.0.0
|
|
24
|
+
Requires-Dist: jsii<2.0.0,>=1.119.0
|
|
25
|
+
Requires-Dist: publication>=0.0.3
|
|
26
|
+
Requires-Dist: typeguard<4.3.0,>=2.13.3
|
|
27
|
+
|
|
28
|
+
Documentation for this pattern can be found [here](https://github.com/awslabs/aws-solutions-constructs/blob/main/source/patterns/%40aws-solutions-constructs/aws-lambda-dynamodb/README.adoc)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Documentation for this pattern can be found [here](https://github.com/awslabs/aws-solutions-constructs/blob/main/source/patterns/%40aws-solutions-constructs/aws-lambda-dynamodb/README.adoc)
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
[build-system]
|
|
2
|
-
requires = ["setuptools~=
|
|
2
|
+
requires = ["setuptools~=75.3.2", "build~=1.3.0"]
|
|
3
3
|
build-backend = "setuptools.build_meta"
|
|
4
4
|
|
|
5
5
|
[tool.pyright]
|
|
6
6
|
defineConstant = { DEBUG = true }
|
|
7
|
-
pythonVersion = "3.
|
|
7
|
+
pythonVersion = "3.9"
|
|
8
8
|
pythonPlatform = "All"
|
|
9
9
|
reportSelfClsParameterName = false
|
|
@@ -5,7 +5,7 @@ kwargs = json.loads(
|
|
|
5
5
|
"""
|
|
6
6
|
{
|
|
7
7
|
"name": "aws-solutions-constructs.aws-lambda-dynamodb",
|
|
8
|
-
"version": "
|
|
8
|
+
"version": "2.98.0",
|
|
9
9
|
"description": "CDK Constructs for AWS Lambda to AWS DynamoDB integration.",
|
|
10
10
|
"license": "Apache-2.0",
|
|
11
11
|
"url": "https://github.com/awslabs/aws-solutions-constructs.git",
|
|
@@ -26,33 +26,29 @@ kwargs = json.loads(
|
|
|
26
26
|
],
|
|
27
27
|
"package_data": {
|
|
28
28
|
"aws_solutions_constructs.aws_lambda_dynamodb._jsii": [
|
|
29
|
-
"aws-lambda-dynamodb@
|
|
29
|
+
"aws-lambda-dynamodb@2.98.0.jsii.tgz"
|
|
30
30
|
],
|
|
31
31
|
"aws_solutions_constructs.aws_lambda_dynamodb": [
|
|
32
32
|
"py.typed"
|
|
33
33
|
]
|
|
34
34
|
},
|
|
35
|
-
"python_requires": "~=3.
|
|
35
|
+
"python_requires": "~=3.9",
|
|
36
36
|
"install_requires": [
|
|
37
|
-
"aws-cdk
|
|
38
|
-
"aws-
|
|
39
|
-
"
|
|
40
|
-
"
|
|
41
|
-
"aws-solutions-constructs.core==1.176.0",
|
|
42
|
-
"constructs>=3.2.0, <4.0.0",
|
|
43
|
-
"jsii>=1.71.0, <2.0.0",
|
|
37
|
+
"aws-cdk-lib>=2.234.0, <3.0.0",
|
|
38
|
+
"aws-solutions-constructs.core==2.98.0",
|
|
39
|
+
"constructs>=10.0.0, <11.0.0",
|
|
40
|
+
"jsii>=1.119.0, <2.0.0",
|
|
44
41
|
"publication>=0.0.3",
|
|
45
|
-
"typeguard
|
|
42
|
+
"typeguard>=2.13.3,<4.3.0"
|
|
46
43
|
],
|
|
47
44
|
"classifiers": [
|
|
48
45
|
"Intended Audience :: Developers",
|
|
49
46
|
"Operating System :: OS Independent",
|
|
50
47
|
"Programming Language :: JavaScript",
|
|
51
48
|
"Programming Language :: Python :: 3 :: Only",
|
|
52
|
-
"Programming Language :: Python :: 3.7",
|
|
53
|
-
"Programming Language :: Python :: 3.8",
|
|
54
49
|
"Programming Language :: Python :: 3.9",
|
|
55
50
|
"Programming Language :: Python :: 3.10",
|
|
51
|
+
"Programming Language :: Python :: 3.11",
|
|
56
52
|
"Typing :: Typed",
|
|
57
53
|
"License :: OSI Approved"
|
|
58
54
|
],
|
|
@@ -0,0 +1,332 @@
|
|
|
1
|
+
r'''
|
|
2
|
+
Documentation for this pattern can be found [here](https://github.com/awslabs/aws-solutions-constructs/blob/main/source/patterns/%40aws-solutions-constructs/aws-lambda-dynamodb/README.adoc)
|
|
3
|
+
'''
|
|
4
|
+
from pkgutil import extend_path
|
|
5
|
+
__path__ = extend_path(__path__, __name__)
|
|
6
|
+
|
|
7
|
+
import abc
|
|
8
|
+
import builtins
|
|
9
|
+
import datetime
|
|
10
|
+
import enum
|
|
11
|
+
import typing
|
|
12
|
+
|
|
13
|
+
import jsii
|
|
14
|
+
import publication
|
|
15
|
+
import typing_extensions
|
|
16
|
+
|
|
17
|
+
import typeguard
|
|
18
|
+
from importlib.metadata import version as _metadata_package_version
|
|
19
|
+
TYPEGUARD_MAJOR_VERSION = int(_metadata_package_version('typeguard').split('.')[0])
|
|
20
|
+
|
|
21
|
+
def check_type(argname: str, value: object, expected_type: typing.Any) -> typing.Any:
|
|
22
|
+
if TYPEGUARD_MAJOR_VERSION <= 2:
|
|
23
|
+
return typeguard.check_type(argname=argname, value=value, expected_type=expected_type) # type:ignore
|
|
24
|
+
else:
|
|
25
|
+
if isinstance(value, jsii._reference_map.InterfaceDynamicProxy): # pyright: ignore [reportAttributeAccessIssue]
|
|
26
|
+
pass
|
|
27
|
+
else:
|
|
28
|
+
if TYPEGUARD_MAJOR_VERSION == 3:
|
|
29
|
+
typeguard.config.collection_check_strategy = typeguard.CollectionCheckStrategy.ALL_ITEMS # type:ignore
|
|
30
|
+
typeguard.check_type(value=value, expected_type=expected_type) # type:ignore
|
|
31
|
+
else:
|
|
32
|
+
typeguard.check_type(value=value, expected_type=expected_type, collection_check_strategy=typeguard.CollectionCheckStrategy.ALL_ITEMS) # type:ignore
|
|
33
|
+
|
|
34
|
+
from ._jsii import *
|
|
35
|
+
|
|
36
|
+
import aws_cdk.aws_dynamodb as _aws_cdk_aws_dynamodb_ceddda9d
|
|
37
|
+
import aws_cdk.aws_ec2 as _aws_cdk_aws_ec2_ceddda9d
|
|
38
|
+
import aws_cdk.aws_lambda as _aws_cdk_aws_lambda_ceddda9d
|
|
39
|
+
import constructs as _constructs_77d1e7e8
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
class LambdaToDynamoDB(
|
|
43
|
+
_constructs_77d1e7e8.Construct,
|
|
44
|
+
metaclass=jsii.JSIIMeta,
|
|
45
|
+
jsii_type="@aws-solutions-constructs/aws-lambda-dynamodb.LambdaToDynamoDB",
|
|
46
|
+
):
|
|
47
|
+
def __init__(
|
|
48
|
+
self,
|
|
49
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
50
|
+
id: builtins.str,
|
|
51
|
+
*,
|
|
52
|
+
deploy_vpc: typing.Optional[builtins.bool] = None,
|
|
53
|
+
dynamo_table_props: typing.Optional[typing.Union[_aws_cdk_aws_dynamodb_ceddda9d.TableProps, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
54
|
+
existing_lambda_obj: typing.Optional[_aws_cdk_aws_lambda_ceddda9d.Function] = None,
|
|
55
|
+
existing_table_obj: typing.Optional[_aws_cdk_aws_dynamodb_ceddda9d.Table] = None,
|
|
56
|
+
existing_vpc: typing.Optional[_aws_cdk_aws_ec2_ceddda9d.IVpc] = None,
|
|
57
|
+
lambda_function_props: typing.Optional[typing.Union[_aws_cdk_aws_lambda_ceddda9d.FunctionProps, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
58
|
+
table_environment_variable_name: typing.Optional[builtins.str] = None,
|
|
59
|
+
table_permissions: typing.Optional[builtins.str] = None,
|
|
60
|
+
vpc_props: typing.Optional[typing.Union[_aws_cdk_aws_ec2_ceddda9d.VpcProps, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
61
|
+
) -> None:
|
|
62
|
+
'''
|
|
63
|
+
:param scope: - represents the scope for all the resources.
|
|
64
|
+
:param id: - this is a a scope-unique id.
|
|
65
|
+
:param deploy_vpc: Whether to deploy a new VPC. Default: - false
|
|
66
|
+
:param dynamo_table_props: Optional user provided props to override the default props for the DynamoDB Table. Providing both this and ``existingTableInterface`` causes an error. Default: - Partition key ID: string
|
|
67
|
+
:param existing_lambda_obj: Optional - instance of an existing Lambda Function object, providing both this and ``lambdaFunctionProps`` will cause an error. Default: - None
|
|
68
|
+
:param existing_table_obj: Existing instance of DynamoDB table object, providing both this and ``dynamoTableProps`` will cause an error. Default: - None
|
|
69
|
+
:param existing_vpc: An existing VPC for the construct to use (construct will NOT create a new VPC in this case).
|
|
70
|
+
:param lambda_function_props: Optional - user provided props to override the default props for the Lambda function. Providing both this and ``existingLambdaObj`` causes an error. Default: - Default props are used
|
|
71
|
+
:param table_environment_variable_name: Optional Name for the Lambda function environment variable set to the name of the DynamoDB table. Default: - DDB_TABLE_NAME
|
|
72
|
+
:param table_permissions: Optional table permissions to grant to the Lambda function. One of the following may be specified: "All", "Read", "ReadWrite", "Write". Default: - Read/write access is given to the Lambda function if no value is specified.
|
|
73
|
+
:param vpc_props: Properties to override default properties if deployVpc is true.
|
|
74
|
+
|
|
75
|
+
:access: public
|
|
76
|
+
:since: 0.8.0
|
|
77
|
+
:summary: Constructs a new instance of the LambdaToDynamoDB class.
|
|
78
|
+
'''
|
|
79
|
+
if __debug__:
|
|
80
|
+
type_hints = typing.get_type_hints(_typecheckingstub__092571f3790131920e423b6b48f6ada271812c0ab4c4b76127eec81553b7a3b0)
|
|
81
|
+
check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
|
|
82
|
+
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
83
|
+
props = LambdaToDynamoDBProps(
|
|
84
|
+
deploy_vpc=deploy_vpc,
|
|
85
|
+
dynamo_table_props=dynamo_table_props,
|
|
86
|
+
existing_lambda_obj=existing_lambda_obj,
|
|
87
|
+
existing_table_obj=existing_table_obj,
|
|
88
|
+
existing_vpc=existing_vpc,
|
|
89
|
+
lambda_function_props=lambda_function_props,
|
|
90
|
+
table_environment_variable_name=table_environment_variable_name,
|
|
91
|
+
table_permissions=table_permissions,
|
|
92
|
+
vpc_props=vpc_props,
|
|
93
|
+
)
|
|
94
|
+
|
|
95
|
+
jsii.create(self.__class__, self, [scope, id, props])
|
|
96
|
+
|
|
97
|
+
@builtins.property
|
|
98
|
+
@jsii.member(jsii_name="dynamoTable")
|
|
99
|
+
def dynamo_table(self) -> _aws_cdk_aws_dynamodb_ceddda9d.Table:
|
|
100
|
+
return typing.cast(_aws_cdk_aws_dynamodb_ceddda9d.Table, jsii.get(self, "dynamoTable"))
|
|
101
|
+
|
|
102
|
+
@builtins.property
|
|
103
|
+
@jsii.member(jsii_name="lambdaFunction")
|
|
104
|
+
def lambda_function(self) -> _aws_cdk_aws_lambda_ceddda9d.Function:
|
|
105
|
+
return typing.cast(_aws_cdk_aws_lambda_ceddda9d.Function, jsii.get(self, "lambdaFunction"))
|
|
106
|
+
|
|
107
|
+
@builtins.property
|
|
108
|
+
@jsii.member(jsii_name="vpc")
|
|
109
|
+
def vpc(self) -> typing.Optional[_aws_cdk_aws_ec2_ceddda9d.IVpc]:
|
|
110
|
+
return typing.cast(typing.Optional[_aws_cdk_aws_ec2_ceddda9d.IVpc], jsii.get(self, "vpc"))
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
@jsii.data_type(
|
|
114
|
+
jsii_type="@aws-solutions-constructs/aws-lambda-dynamodb.LambdaToDynamoDBProps",
|
|
115
|
+
jsii_struct_bases=[],
|
|
116
|
+
name_mapping={
|
|
117
|
+
"deploy_vpc": "deployVpc",
|
|
118
|
+
"dynamo_table_props": "dynamoTableProps",
|
|
119
|
+
"existing_lambda_obj": "existingLambdaObj",
|
|
120
|
+
"existing_table_obj": "existingTableObj",
|
|
121
|
+
"existing_vpc": "existingVpc",
|
|
122
|
+
"lambda_function_props": "lambdaFunctionProps",
|
|
123
|
+
"table_environment_variable_name": "tableEnvironmentVariableName",
|
|
124
|
+
"table_permissions": "tablePermissions",
|
|
125
|
+
"vpc_props": "vpcProps",
|
|
126
|
+
},
|
|
127
|
+
)
|
|
128
|
+
class LambdaToDynamoDBProps:
|
|
129
|
+
def __init__(
|
|
130
|
+
self,
|
|
131
|
+
*,
|
|
132
|
+
deploy_vpc: typing.Optional[builtins.bool] = None,
|
|
133
|
+
dynamo_table_props: typing.Optional[typing.Union[_aws_cdk_aws_dynamodb_ceddda9d.TableProps, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
134
|
+
existing_lambda_obj: typing.Optional[_aws_cdk_aws_lambda_ceddda9d.Function] = None,
|
|
135
|
+
existing_table_obj: typing.Optional[_aws_cdk_aws_dynamodb_ceddda9d.Table] = None,
|
|
136
|
+
existing_vpc: typing.Optional[_aws_cdk_aws_ec2_ceddda9d.IVpc] = None,
|
|
137
|
+
lambda_function_props: typing.Optional[typing.Union[_aws_cdk_aws_lambda_ceddda9d.FunctionProps, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
138
|
+
table_environment_variable_name: typing.Optional[builtins.str] = None,
|
|
139
|
+
table_permissions: typing.Optional[builtins.str] = None,
|
|
140
|
+
vpc_props: typing.Optional[typing.Union[_aws_cdk_aws_ec2_ceddda9d.VpcProps, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
141
|
+
) -> None:
|
|
142
|
+
'''
|
|
143
|
+
:param deploy_vpc: Whether to deploy a new VPC. Default: - false
|
|
144
|
+
:param dynamo_table_props: Optional user provided props to override the default props for the DynamoDB Table. Providing both this and ``existingTableInterface`` causes an error. Default: - Partition key ID: string
|
|
145
|
+
:param existing_lambda_obj: Optional - instance of an existing Lambda Function object, providing both this and ``lambdaFunctionProps`` will cause an error. Default: - None
|
|
146
|
+
:param existing_table_obj: Existing instance of DynamoDB table object, providing both this and ``dynamoTableProps`` will cause an error. Default: - None
|
|
147
|
+
:param existing_vpc: An existing VPC for the construct to use (construct will NOT create a new VPC in this case).
|
|
148
|
+
:param lambda_function_props: Optional - user provided props to override the default props for the Lambda function. Providing both this and ``existingLambdaObj`` causes an error. Default: - Default props are used
|
|
149
|
+
:param table_environment_variable_name: Optional Name for the Lambda function environment variable set to the name of the DynamoDB table. Default: - DDB_TABLE_NAME
|
|
150
|
+
:param table_permissions: Optional table permissions to grant to the Lambda function. One of the following may be specified: "All", "Read", "ReadWrite", "Write". Default: - Read/write access is given to the Lambda function if no value is specified.
|
|
151
|
+
:param vpc_props: Properties to override default properties if deployVpc is true.
|
|
152
|
+
|
|
153
|
+
:summary: The properties for the LambdaToDynamoDB Construct
|
|
154
|
+
'''
|
|
155
|
+
if isinstance(dynamo_table_props, dict):
|
|
156
|
+
dynamo_table_props = _aws_cdk_aws_dynamodb_ceddda9d.TableProps(**dynamo_table_props)
|
|
157
|
+
if isinstance(lambda_function_props, dict):
|
|
158
|
+
lambda_function_props = _aws_cdk_aws_lambda_ceddda9d.FunctionProps(**lambda_function_props)
|
|
159
|
+
if isinstance(vpc_props, dict):
|
|
160
|
+
vpc_props = _aws_cdk_aws_ec2_ceddda9d.VpcProps(**vpc_props)
|
|
161
|
+
if __debug__:
|
|
162
|
+
type_hints = typing.get_type_hints(_typecheckingstub__a2c30a6a57824df9f62e5321acb93af2c3fb40432124ad8139a8da216f3d87fc)
|
|
163
|
+
check_type(argname="argument deploy_vpc", value=deploy_vpc, expected_type=type_hints["deploy_vpc"])
|
|
164
|
+
check_type(argname="argument dynamo_table_props", value=dynamo_table_props, expected_type=type_hints["dynamo_table_props"])
|
|
165
|
+
check_type(argname="argument existing_lambda_obj", value=existing_lambda_obj, expected_type=type_hints["existing_lambda_obj"])
|
|
166
|
+
check_type(argname="argument existing_table_obj", value=existing_table_obj, expected_type=type_hints["existing_table_obj"])
|
|
167
|
+
check_type(argname="argument existing_vpc", value=existing_vpc, expected_type=type_hints["existing_vpc"])
|
|
168
|
+
check_type(argname="argument lambda_function_props", value=lambda_function_props, expected_type=type_hints["lambda_function_props"])
|
|
169
|
+
check_type(argname="argument table_environment_variable_name", value=table_environment_variable_name, expected_type=type_hints["table_environment_variable_name"])
|
|
170
|
+
check_type(argname="argument table_permissions", value=table_permissions, expected_type=type_hints["table_permissions"])
|
|
171
|
+
check_type(argname="argument vpc_props", value=vpc_props, expected_type=type_hints["vpc_props"])
|
|
172
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
173
|
+
if deploy_vpc is not None:
|
|
174
|
+
self._values["deploy_vpc"] = deploy_vpc
|
|
175
|
+
if dynamo_table_props is not None:
|
|
176
|
+
self._values["dynamo_table_props"] = dynamo_table_props
|
|
177
|
+
if existing_lambda_obj is not None:
|
|
178
|
+
self._values["existing_lambda_obj"] = existing_lambda_obj
|
|
179
|
+
if existing_table_obj is not None:
|
|
180
|
+
self._values["existing_table_obj"] = existing_table_obj
|
|
181
|
+
if existing_vpc is not None:
|
|
182
|
+
self._values["existing_vpc"] = existing_vpc
|
|
183
|
+
if lambda_function_props is not None:
|
|
184
|
+
self._values["lambda_function_props"] = lambda_function_props
|
|
185
|
+
if table_environment_variable_name is not None:
|
|
186
|
+
self._values["table_environment_variable_name"] = table_environment_variable_name
|
|
187
|
+
if table_permissions is not None:
|
|
188
|
+
self._values["table_permissions"] = table_permissions
|
|
189
|
+
if vpc_props is not None:
|
|
190
|
+
self._values["vpc_props"] = vpc_props
|
|
191
|
+
|
|
192
|
+
@builtins.property
|
|
193
|
+
def deploy_vpc(self) -> typing.Optional[builtins.bool]:
|
|
194
|
+
'''Whether to deploy a new VPC.
|
|
195
|
+
|
|
196
|
+
:default: - false
|
|
197
|
+
'''
|
|
198
|
+
result = self._values.get("deploy_vpc")
|
|
199
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
200
|
+
|
|
201
|
+
@builtins.property
|
|
202
|
+
def dynamo_table_props(
|
|
203
|
+
self,
|
|
204
|
+
) -> typing.Optional[_aws_cdk_aws_dynamodb_ceddda9d.TableProps]:
|
|
205
|
+
'''Optional user provided props to override the default props for the DynamoDB Table.
|
|
206
|
+
|
|
207
|
+
Providing both this and
|
|
208
|
+
``existingTableInterface`` causes an error.
|
|
209
|
+
|
|
210
|
+
:default: - Partition key ID: string
|
|
211
|
+
'''
|
|
212
|
+
result = self._values.get("dynamo_table_props")
|
|
213
|
+
return typing.cast(typing.Optional[_aws_cdk_aws_dynamodb_ceddda9d.TableProps], result)
|
|
214
|
+
|
|
215
|
+
@builtins.property
|
|
216
|
+
def existing_lambda_obj(
|
|
217
|
+
self,
|
|
218
|
+
) -> typing.Optional[_aws_cdk_aws_lambda_ceddda9d.Function]:
|
|
219
|
+
'''Optional - instance of an existing Lambda Function object, providing both this and ``lambdaFunctionProps`` will cause an error.
|
|
220
|
+
|
|
221
|
+
:default: - None
|
|
222
|
+
'''
|
|
223
|
+
result = self._values.get("existing_lambda_obj")
|
|
224
|
+
return typing.cast(typing.Optional[_aws_cdk_aws_lambda_ceddda9d.Function], result)
|
|
225
|
+
|
|
226
|
+
@builtins.property
|
|
227
|
+
def existing_table_obj(
|
|
228
|
+
self,
|
|
229
|
+
) -> typing.Optional[_aws_cdk_aws_dynamodb_ceddda9d.Table]:
|
|
230
|
+
'''Existing instance of DynamoDB table object, providing both this and ``dynamoTableProps`` will cause an error.
|
|
231
|
+
|
|
232
|
+
:default: - None
|
|
233
|
+
'''
|
|
234
|
+
result = self._values.get("existing_table_obj")
|
|
235
|
+
return typing.cast(typing.Optional[_aws_cdk_aws_dynamodb_ceddda9d.Table], result)
|
|
236
|
+
|
|
237
|
+
@builtins.property
|
|
238
|
+
def existing_vpc(self) -> typing.Optional[_aws_cdk_aws_ec2_ceddda9d.IVpc]:
|
|
239
|
+
'''An existing VPC for the construct to use (construct will NOT create a new VPC in this case).'''
|
|
240
|
+
result = self._values.get("existing_vpc")
|
|
241
|
+
return typing.cast(typing.Optional[_aws_cdk_aws_ec2_ceddda9d.IVpc], result)
|
|
242
|
+
|
|
243
|
+
@builtins.property
|
|
244
|
+
def lambda_function_props(
|
|
245
|
+
self,
|
|
246
|
+
) -> typing.Optional[_aws_cdk_aws_lambda_ceddda9d.FunctionProps]:
|
|
247
|
+
'''Optional - user provided props to override the default props for the Lambda function.
|
|
248
|
+
|
|
249
|
+
Providing both this and ``existingLambdaObj``
|
|
250
|
+
causes an error.
|
|
251
|
+
|
|
252
|
+
:default: - Default props are used
|
|
253
|
+
'''
|
|
254
|
+
result = self._values.get("lambda_function_props")
|
|
255
|
+
return typing.cast(typing.Optional[_aws_cdk_aws_lambda_ceddda9d.FunctionProps], result)
|
|
256
|
+
|
|
257
|
+
@builtins.property
|
|
258
|
+
def table_environment_variable_name(self) -> typing.Optional[builtins.str]:
|
|
259
|
+
'''Optional Name for the Lambda function environment variable set to the name of the DynamoDB table.
|
|
260
|
+
|
|
261
|
+
:default: - DDB_TABLE_NAME
|
|
262
|
+
'''
|
|
263
|
+
result = self._values.get("table_environment_variable_name")
|
|
264
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
265
|
+
|
|
266
|
+
@builtins.property
|
|
267
|
+
def table_permissions(self) -> typing.Optional[builtins.str]:
|
|
268
|
+
'''Optional table permissions to grant to the Lambda function.
|
|
269
|
+
|
|
270
|
+
One of the following may be specified: "All", "Read", "ReadWrite", "Write".
|
|
271
|
+
|
|
272
|
+
:default: - Read/write access is given to the Lambda function if no value is specified.
|
|
273
|
+
'''
|
|
274
|
+
result = self._values.get("table_permissions")
|
|
275
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
276
|
+
|
|
277
|
+
@builtins.property
|
|
278
|
+
def vpc_props(self) -> typing.Optional[_aws_cdk_aws_ec2_ceddda9d.VpcProps]:
|
|
279
|
+
'''Properties to override default properties if deployVpc is true.'''
|
|
280
|
+
result = self._values.get("vpc_props")
|
|
281
|
+
return typing.cast(typing.Optional[_aws_cdk_aws_ec2_ceddda9d.VpcProps], result)
|
|
282
|
+
|
|
283
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
284
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
285
|
+
|
|
286
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
287
|
+
return not (rhs == self)
|
|
288
|
+
|
|
289
|
+
def __repr__(self) -> str:
|
|
290
|
+
return "LambdaToDynamoDBProps(%s)" % ", ".join(
|
|
291
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
292
|
+
)
|
|
293
|
+
|
|
294
|
+
|
|
295
|
+
__all__ = [
|
|
296
|
+
"LambdaToDynamoDB",
|
|
297
|
+
"LambdaToDynamoDBProps",
|
|
298
|
+
]
|
|
299
|
+
|
|
300
|
+
publication.publish()
|
|
301
|
+
|
|
302
|
+
def _typecheckingstub__092571f3790131920e423b6b48f6ada271812c0ab4c4b76127eec81553b7a3b0(
|
|
303
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
304
|
+
id: builtins.str,
|
|
305
|
+
*,
|
|
306
|
+
deploy_vpc: typing.Optional[builtins.bool] = None,
|
|
307
|
+
dynamo_table_props: typing.Optional[typing.Union[_aws_cdk_aws_dynamodb_ceddda9d.TableProps, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
308
|
+
existing_lambda_obj: typing.Optional[_aws_cdk_aws_lambda_ceddda9d.Function] = None,
|
|
309
|
+
existing_table_obj: typing.Optional[_aws_cdk_aws_dynamodb_ceddda9d.Table] = None,
|
|
310
|
+
existing_vpc: typing.Optional[_aws_cdk_aws_ec2_ceddda9d.IVpc] = None,
|
|
311
|
+
lambda_function_props: typing.Optional[typing.Union[_aws_cdk_aws_lambda_ceddda9d.FunctionProps, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
312
|
+
table_environment_variable_name: typing.Optional[builtins.str] = None,
|
|
313
|
+
table_permissions: typing.Optional[builtins.str] = None,
|
|
314
|
+
vpc_props: typing.Optional[typing.Union[_aws_cdk_aws_ec2_ceddda9d.VpcProps, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
315
|
+
) -> None:
|
|
316
|
+
"""Type checking stubs"""
|
|
317
|
+
pass
|
|
318
|
+
|
|
319
|
+
def _typecheckingstub__a2c30a6a57824df9f62e5321acb93af2c3fb40432124ad8139a8da216f3d87fc(
|
|
320
|
+
*,
|
|
321
|
+
deploy_vpc: typing.Optional[builtins.bool] = None,
|
|
322
|
+
dynamo_table_props: typing.Optional[typing.Union[_aws_cdk_aws_dynamodb_ceddda9d.TableProps, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
323
|
+
existing_lambda_obj: typing.Optional[_aws_cdk_aws_lambda_ceddda9d.Function] = None,
|
|
324
|
+
existing_table_obj: typing.Optional[_aws_cdk_aws_dynamodb_ceddda9d.Table] = None,
|
|
325
|
+
existing_vpc: typing.Optional[_aws_cdk_aws_ec2_ceddda9d.IVpc] = None,
|
|
326
|
+
lambda_function_props: typing.Optional[typing.Union[_aws_cdk_aws_lambda_ceddda9d.FunctionProps, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
327
|
+
table_environment_variable_name: typing.Optional[builtins.str] = None,
|
|
328
|
+
table_permissions: typing.Optional[builtins.str] = None,
|
|
329
|
+
vpc_props: typing.Optional[typing.Union[_aws_cdk_aws_ec2_ceddda9d.VpcProps, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
330
|
+
) -> None:
|
|
331
|
+
"""Type checking stubs"""
|
|
332
|
+
pass
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
from pkgutil import extend_path
|
|
2
|
+
__path__ = extend_path(__path__, __name__)
|
|
3
|
+
|
|
4
|
+
import abc
|
|
5
|
+
import builtins
|
|
6
|
+
import datetime
|
|
7
|
+
import enum
|
|
8
|
+
import typing
|
|
9
|
+
|
|
10
|
+
import jsii
|
|
11
|
+
import publication
|
|
12
|
+
import typing_extensions
|
|
13
|
+
|
|
14
|
+
import typeguard
|
|
15
|
+
from importlib.metadata import version as _metadata_package_version
|
|
16
|
+
TYPEGUARD_MAJOR_VERSION = int(_metadata_package_version('typeguard').split('.')[0])
|
|
17
|
+
|
|
18
|
+
def check_type(argname: str, value: object, expected_type: typing.Any) -> typing.Any:
|
|
19
|
+
if TYPEGUARD_MAJOR_VERSION <= 2:
|
|
20
|
+
return typeguard.check_type(argname=argname, value=value, expected_type=expected_type) # type:ignore
|
|
21
|
+
else:
|
|
22
|
+
if isinstance(value, jsii._reference_map.InterfaceDynamicProxy): # pyright: ignore [reportAttributeAccessIssue]
|
|
23
|
+
pass
|
|
24
|
+
else:
|
|
25
|
+
if TYPEGUARD_MAJOR_VERSION == 3:
|
|
26
|
+
typeguard.config.collection_check_strategy = typeguard.CollectionCheckStrategy.ALL_ITEMS # type:ignore
|
|
27
|
+
typeguard.check_type(value=value, expected_type=expected_type) # type:ignore
|
|
28
|
+
else:
|
|
29
|
+
typeguard.check_type(value=value, expected_type=expected_type, collection_check_strategy=typeguard.CollectionCheckStrategy.ALL_ITEMS) # type:ignore
|
|
30
|
+
|
|
31
|
+
import aws_cdk._jsii
|
|
32
|
+
import aws_solutions_constructs.core._jsii
|
|
33
|
+
import constructs._jsii
|
|
34
|
+
|
|
35
|
+
__jsii_assembly__ = jsii.JSIIAssembly.load(
|
|
36
|
+
"@aws-solutions-constructs/aws-lambda-dynamodb",
|
|
37
|
+
"2.98.0",
|
|
38
|
+
__name__[0:-6],
|
|
39
|
+
"aws-lambda-dynamodb@2.98.0.jsii.tgz",
|
|
40
|
+
)
|
|
41
|
+
|
|
42
|
+
__all__ = [
|
|
43
|
+
"__jsii_assembly__",
|
|
44
|
+
]
|
|
45
|
+
|
|
46
|
+
publication.publish()
|
|
Binary file
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: aws-solutions-constructs.aws-lambda-dynamodb
|
|
3
|
+
Version: 2.98.0
|
|
4
|
+
Summary: CDK Constructs for AWS Lambda to AWS DynamoDB integration.
|
|
5
|
+
Home-page: https://github.com/awslabs/aws-solutions-constructs.git
|
|
6
|
+
Author: Amazon Web Services
|
|
7
|
+
License: Apache-2.0
|
|
8
|
+
Project-URL: Source, https://github.com/awslabs/aws-solutions-constructs.git
|
|
9
|
+
Classifier: Intended Audience :: Developers
|
|
10
|
+
Classifier: Operating System :: OS Independent
|
|
11
|
+
Classifier: Programming Language :: JavaScript
|
|
12
|
+
Classifier: Programming Language :: Python :: 3 :: Only
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
16
|
+
Classifier: Typing :: Typed
|
|
17
|
+
Classifier: License :: OSI Approved
|
|
18
|
+
Requires-Python: ~=3.9
|
|
19
|
+
Description-Content-Type: text/markdown
|
|
20
|
+
License-File: LICENSE
|
|
21
|
+
Requires-Dist: aws-cdk-lib<3.0.0,>=2.234.0
|
|
22
|
+
Requires-Dist: aws-solutions-constructs.core==2.98.0
|
|
23
|
+
Requires-Dist: constructs<11.0.0,>=10.0.0
|
|
24
|
+
Requires-Dist: jsii<2.0.0,>=1.119.0
|
|
25
|
+
Requires-Dist: publication>=0.0.3
|
|
26
|
+
Requires-Dist: typeguard<4.3.0,>=2.13.3
|
|
27
|
+
|
|
28
|
+
Documentation for this pattern can be found [here](https://github.com/awslabs/aws-solutions-constructs/blob/main/source/patterns/%40aws-solutions-constructs/aws-lambda-dynamodb/README.adoc)
|
|
@@ -11,4 +11,4 @@ src/aws_solutions_constructs.aws_lambda_dynamodb.egg-info/top_level.txt
|
|
|
11
11
|
src/aws_solutions_constructs/aws_lambda_dynamodb/__init__.py
|
|
12
12
|
src/aws_solutions_constructs/aws_lambda_dynamodb/py.typed
|
|
13
13
|
src/aws_solutions_constructs/aws_lambda_dynamodb/_jsii/__init__.py
|
|
14
|
-
src/aws_solutions_constructs/aws_lambda_dynamodb/_jsii/aws-lambda-dynamodb@
|
|
14
|
+
src/aws_solutions_constructs/aws_lambda_dynamodb/_jsii/aws-lambda-dynamodb@2.98.0.jsii.tgz
|