"use strict";var _a;Object.defineProperty(exports,"__esModule",{value:!0}),exports.GlueDataBrewStartJobRun=void 0;const jsiiDeprecationWarnings=require("../../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),iam=require("../../../aws-iam"),sfn=require("../../../aws-stepfunctions"),cdk=require("../../../core"),task_utils_1=require("../private/task-utils");class GlueDataBrewStartJobRun extends sfn.TaskStateBase{constructor(scope,id,props){var _b;super(scope,id,props),this.props=props;try{jsiiDeprecationWarnings.aws_cdk_lib_aws_stepfunctions_tasks_GlueDataBrewStartJobRunProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.constructor),error}this.integrationPattern=(_b=props.integrationPattern)!==null&&_b!==void 0?_b:sfn.IntegrationPattern.REQUEST_RESPONSE,task_utils_1.validatePatternSupported(this.integrationPattern,GlueDataBrewStartJobRun.SUPPORTED_INTEGRATION_PATTERNS);const actions=["databrew:startJobRun"];this.integrationPattern===sfn.IntegrationPattern.RUN_JOB&&actions.push("databrew:stopJobRun","databrew:listJobRuns"),this.taskPolicies=[new iam.PolicyStatement({resources:[cdk.Stack.of(this).formatArn({service:"databrew",resource:"job",resourceName:sfn.JsonPath.isEncodedJsonPath(this.props.name)?"*":this.props.name})],actions})]}_renderTask(){return{Resource:task_utils_1.integrationResourceArn("databrew","startJobRun",this.integrationPattern),Parameters:sfn.FieldUtils.renderObject({Name:this.props.name})}}}exports.GlueDataBrewStartJobRun=GlueDataBrewStartJobRun,_a=JSII_RTTI_SYMBOL_1,GlueDataBrewStartJobRun[_a]={fqn:"aws-cdk-lib.aws_stepfunctions_tasks.GlueDataBrewStartJobRun",version:"2.21.0"},GlueDataBrewStartJobRun.SUPPORTED_INTEGRATION_PATTERNS=[sfn.IntegrationPattern.REQUEST_RESPONSE,sfn.IntegrationPattern.RUN_JOB];
//# sourceMappingURL=start-job-run.js.map
