UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

2 lines (1 loc) 1.76 kB
"use strict";var _a;Object.defineProperty(exports,"__esModule",{value:!0}),exports.FirehoseDestination=void 0;var jsiiDeprecationWarnings=()=>{var tmp=require("../../.warnings.jsii.js");return jsiiDeprecationWarnings=()=>tmp,tmp};const JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti");var iam=()=>{var tmp=require("../../aws-iam");return iam=()=>tmp,tmp},core_1=()=>{var tmp=require("../../core");return core_1=()=>tmp,tmp};class FirehoseDestination{constructor(stream,props={}){this.stream=stream,this.props=props;try{jsiiDeprecationWarnings().aws_cdk_lib_aws_kinesisfirehose_IDeliveryStream(stream),jsiiDeprecationWarnings().aws_cdk_lib_aws_logs_destinations_FirehoseDestinationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,FirehoseDestination),error}}bind(scope,_sourceLogGroup){try{jsiiDeprecationWarnings().aws_cdk_lib_aws_logs_ILogGroup(_sourceLogGroup)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.bind),error}const id="CloudWatchLogsCanPutRecords",role=this.props.role??scope.node.tryFindChild(id)??new(iam()).Role(scope,id,{assumedBy:new(iam()).ServicePrincipal("logs.amazonaws.com",{conditions:{StringLike:{"aws:SourceArn":core_1().Stack.of(scope).formatArn({service:"logs",resource:"*"})}}})});this.stream.grantPutRecords(role);const policy=role.node.tryFindChild("DefaultPolicy");return policy&&(role.node.defaultChild.addOverride("DependsOn",void 0),scope.node.addDependency(policy)),{arn:this.stream.deliveryStreamArn,role}}}exports.FirehoseDestination=FirehoseDestination,_a=JSII_RTTI_SYMBOL_1,FirehoseDestination[_a]={fqn:"aws-cdk-lib.aws_logs_destinations.FirehoseDestination",version:"2.202.0"};