Skip to content

Commit

Permalink
comments and unit test
Browse files Browse the repository at this point in the history
  • Loading branch information
duarten committed Feb 19, 2022
1 parent cf8fb72 commit 8d57302
Show file tree
Hide file tree
Showing 3 changed files with 681 additions and 17 deletions.
24 changes: 15 additions & 9 deletions packages/@aws-cdk/aws-s3objectlambda/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,14 +27,16 @@ This construct library allows you to define S3 object lambda access points.
import * as lambda from '@aws-cdk/aws-lambda';
import * as s3 from '@aws-cdk/aws-s3';
import * as s3objectlambda from '@aws-cdk/aws-s3objectlambda';
import * as cdk from '@aws-cdk/core';

const bucket = new s3.Bucket(this, 'MyBucket');
const handler = new lambda.Function(this, 'MyFunction', {
const stack = new cdk.Stack();
const bucket = new s3.Bucket(stack, 'MyBucket');
const handler = new lambda.Function(stack, 'MyFunction', {
runtime: lambda.Runtime.NODEJS_14_X,
handler: 'index.handler',
code: lambda.Code.fromAsset('lambda.zip'),
});
new AccessPoint(this, 'MyObjectLambda', {
new s3objectlambda.AccessPoint(stack, 'MyObjectLambda', {
bucket,
handler,
accessPointName: 'my-access-point',
Expand All @@ -52,14 +54,16 @@ Lambdas are currently limited to only transforming `GetObject` requests. However
import * as lambda from '@aws-cdk/aws-lambda';
import * as s3 from '@aws-cdk/aws-s3';
import * as s3objectlambda from '@aws-cdk/aws-s3objectlambda';
import * as cdk from '@aws-cdk/core';

const bucket = new s3.Bucket(this, 'MyBucket');
const handler = new lambda.Function(this, 'MyFunction', {
const stack = new cdk.Stack();
const bucket = new s3.Bucket(stack, 'MyBucket');
const handler = new lambda.Function(stack, 'MyFunction', {
runtime: lambda.Runtime.NODEJS_14_X,
handler: 'index.handler',
code: lambda.Code.fromAsset('lambda.zip'),
});
new AccessPoint(this, 'MyObjectLambda', {
new s3objectlambda.AccessPoint(stack, 'MyObjectLambda', {
bucket,
handler,
accessPointName: 'my-access-point',
Expand All @@ -76,14 +80,16 @@ You can specify an additional object that provides supplemental data to the Lamb
import * as lambda from '@aws-cdk/aws-lambda';
import * as s3 from '@aws-cdk/aws-s3';
import * as s3objectlambda from '@aws-cdk/aws-s3objectlambda';
import * as cdk from '@aws-cdk/core';

const bucket = new s3.Bucket(this, 'MyBucket');
const handler = new lambda.Function(this, 'MyFunction', {
const stack = new cdk.Stack();
const bucket = new s3.Bucket(stack, 'MyBucket');
const handler = new lambda.Function(stack, 'MyFunction', {
runtime: lambda.Runtime.NODEJS_14_X,
handler: 'index.handler',
code: lambda.Code.fromAsset('lambda.zip'),
});
new AccessPoint(this, 'MyObjectLambda', {
new s3objectlambda.AccessPoint(stack, 'MyObjectLambda', {
bucket,
handler,
accessPointName: 'my-access-point',
Expand Down
6 changes: 2 additions & 4 deletions packages/@aws-cdk/aws-s3objectlambda/lib/access-point.ts
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ export interface AccessPointProps {
*
* @default - No data.
*/
readonly payload?: Record<string, unknown>;
readonly payload?: { [key: string]: any };
}

abstract class AccessPointBase extends core.Resource implements IAccessPoint {
Expand Down Expand Up @@ -205,9 +205,7 @@ export class AccessPoint extends AccessPointBase {

constructor(scope: Construct, id: string, props: AccessPointProps) {
super(scope, id, {
physicalName: props.accessPointName ?? core.Lazy.string({
produce: () => core.Names.uniqueId(this).toLowerCase(),
}),
physicalName: props.accessPointName,
});

if (props.accessPointName) {
Expand Down
Loading

0 comments on commit 8d57302

Please sign in to comment.