Class CfnSchedule
- All Implemented Interfaces:
IConstruct
,IDependable
,IInspectable
,software.amazon.jsii.JsiiSerializable
,software.constructs.IConstruct
AWS::Scheduler::Schedule
.
A schedule is the main resource you create, configure, and manage using Amazon EventBridge Scheduler.
Every schedule has a schedule expression that determines when, and with what frequency, the schedule runs. EventBridge Scheduler supports three types of schedules: rate, cron, and one-time schedules. For more information about different schedule types, see Schedule types in the EventBridge Scheduler User Guide .
When you create a schedule, you configure a target for the schedule to invoke. A target is an API operation that EventBridge Scheduler calls on your behalf every time your schedule runs. EventBridge Scheduler supports two types of targets: templated targets invoke common API operations across a core groups of services, and customizeable universal targets that you can use to call more than 6,000 operations across over 270 services. For more information about configuring targets, see Managing targets in the EventBridge Scheduler User Guide .
For more information about managing schedules, changing the schedule state, setting up flexible time windows, and configuring a dead-letter queue for a schedule, see Managing a schedule in the EventBridge Scheduler User Guide .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import software.amazon.awscdk.services.scheduler.*; Object tags; CfnSchedule cfnSchedule = CfnSchedule.Builder.create(this, "MyCfnSchedule") .flexibleTimeWindow(FlexibleTimeWindowProperty.builder() .mode("mode") // the properties below are optional .maximumWindowInMinutes(123) .build()) .scheduleExpression("scheduleExpression") .target(TargetProperty.builder() .arn("arn") .roleArn("roleArn") // the properties below are optional .deadLetterConfig(DeadLetterConfigProperty.builder() .arn("arn") .build()) .ecsParameters(EcsParametersProperty.builder() .taskDefinitionArn("taskDefinitionArn") // the properties below are optional .capacityProviderStrategy(List.of(CapacityProviderStrategyItemProperty.builder() .capacityProvider("capacityProvider") // the properties below are optional .base(123) .weight(123) .build())) .enableEcsManagedTags(false) .enableExecuteCommand(false) .group("group") .launchType("launchType") .networkConfiguration(NetworkConfigurationProperty.builder() .awsvpcConfiguration(AwsVpcConfigurationProperty.builder() .subnets(List.of("subnets")) // the properties below are optional .assignPublicIp("assignPublicIp") .securityGroups(List.of("securityGroups")) .build()) .build()) .placementConstraints(List.of(PlacementConstraintProperty.builder() .expression("expression") .type("type") .build())) .placementStrategy(List.of(PlacementStrategyProperty.builder() .field("field") .type("type") .build())) .platformVersion("platformVersion") .propagateTags("propagateTags") .referenceId("referenceId") .tags(tags) .taskCount(123) .build()) .eventBridgeParameters(EventBridgeParametersProperty.builder() .detailType("detailType") .source("source") .build()) .input("input") .kinesisParameters(KinesisParametersProperty.builder() .partitionKey("partitionKey") .build()) .retryPolicy(RetryPolicyProperty.builder() .maximumEventAgeInSeconds(123) .maximumRetryAttempts(123) .build()) .sageMakerPipelineParameters(SageMakerPipelineParametersProperty.builder() .pipelineParameterList(List.of(SageMakerPipelineParameterProperty.builder() .name("name") .value("value") .build())) .build()) .sqsParameters(SqsParametersProperty.builder() .messageGroupId("messageGroupId") .build()) .build()) // the properties below are optional .description("description") .endDate("endDate") .groupName("groupName") .kmsKeyArn("kmsKeyArn") .name("name") .scheduleExpressionTimezone("scheduleExpressionTimezone") .startDate("startDate") .state("state") .build();
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic interface
This structure specifies the VPC subnets and security groups for the task, and whether a public IP address is to be used.static final class
A fluent builder forCfnSchedule
.static interface
The details of a capacity provider strategy.static interface
An object that contains information about an Amazon SQS queue that EventBridge Scheduler uses as a dead-letter queue for your schedule.static interface
The templated target type for the Amazon ECSRunTask
API operation.static interface
The templated target type for the EventBridgePutEvents
API operation.static interface
Allows you to configure a time window during which EventBridge Scheduler invokes the schedule.static interface
The templated target type for the Amazon KinesisPutRecord
API operation.static interface
Specifies the network configuration for an ECS task.static interface
An object representing a constraint on task placement.static interface
The task placement strategy for a task or service.static interface
ARetryPolicy
object that includes information about the retry policy settings, including the maximum age of an event, and the maximum number of times EventBridge Scheduler will try to deliver the event to a target.static interface
The name and value pair of a parameter to use to start execution of a SageMaker Model Building Pipeline.static interface
The templated target type for the Amazon SageMakerStartPipelineExecution
API operation.static interface
The templated target type for the Amazon SQSSendMessage
API operation.static interface
The schedule's target.Nested classes/interfaces inherited from class software.amazon.jsii.JsiiObject
software.amazon.jsii.JsiiObject.InitializationMode
Nested classes/interfaces inherited from interface software.amazon.awscdk.core.IConstruct
IConstruct.Jsii$Default
Nested classes/interfaces inherited from interface software.constructs.IConstruct
software.constructs.IConstruct.Jsii$Default
Nested classes/interfaces inherited from interface software.amazon.awscdk.core.IInspectable
IInspectable.Jsii$Default, IInspectable.Jsii$Proxy
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
The CloudFormation resource type name for this resource class. -
Constructor Summary
ModifierConstructorDescriptionCfnSchedule
(Construct scope, String id, CfnScheduleProps props) Create a newAWS::Scheduler::Schedule
.protected
CfnSchedule
(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) protected
CfnSchedule
(software.amazon.jsii.JsiiObjectRef objRef) -
Method Summary
Modifier and TypeMethodDescriptionThe Amazon Resource Name (ARN) for the Amazon EventBridge Scheduler schedule.The description you specify for the schedule.The date, in UTC, before which the schedule can invoke its target.Allows you to configure a time window during which EventBridge Scheduler invokes the schedule.The name of the schedule group associated with this schedule.The Amazon Resource Name (ARN) for the customer managed KMS key that EventBridge Scheduler will use to encrypt and decrypt your data.getName()
The name of the schedule.The expression that defines when the schedule runs.The timezone in which the scheduling expression is evaluated.The date, in UTC, after which the schedule can begin invoking its target.getState()
Specifies whether the schedule is enabled or disabled.The schedule's target details.void
inspect
(TreeInspector inspector) Examines the CloudFormation resource and discloses attributes.renderProperties
(Map<String, Object> props) void
setDescription
(String value) The description you specify for the schedule.void
setEndDate
(String value) The date, in UTC, before which the schedule can invoke its target.void
setFlexibleTimeWindow
(IResolvable value) Allows you to configure a time window during which EventBridge Scheduler invokes the schedule.void
Allows you to configure a time window during which EventBridge Scheduler invokes the schedule.void
setGroupName
(String value) The name of the schedule group associated with this schedule.void
setKmsKeyArn
(String value) The Amazon Resource Name (ARN) for the customer managed KMS key that EventBridge Scheduler will use to encrypt and decrypt your data.void
The name of the schedule.void
setScheduleExpression
(String value) The expression that defines when the schedule runs.void
The timezone in which the scheduling expression is evaluated.void
setStartDate
(String value) The date, in UTC, after which the schedule can begin invoking its target.void
Specifies whether the schedule is enabled or disabled.void
setTarget
(IResolvable value) The schedule's target details.void
The schedule's target details.Methods inherited from class software.amazon.awscdk.core.CfnResource
addDeletionOverride, addDependsOn, addMetadata, addOverride, addPropertyDeletionOverride, addPropertyOverride, applyRemovalPolicy, applyRemovalPolicy, applyRemovalPolicy, getAtt, getCfnOptions, getCfnResourceType, getMetadata, getUpdatedProperites, isCfnResource, shouldSynthesize, toString, validateProperties
Methods inherited from class software.amazon.awscdk.core.CfnRefElement
getRef
Methods inherited from class software.amazon.awscdk.core.CfnElement
getCreationStack, getLogicalId, getStack, isCfnElement, overrideLogicalId
Methods inherited from class software.amazon.awscdk.core.Construct
getNode, isConstruct, onPrepare, onSynthesize, onValidate, prepare, synthesize, validate
Methods inherited from class software.amazon.jsii.JsiiObject
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSet
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Field Details
-
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
-
-
Constructor Details
-
CfnSchedule
protected CfnSchedule(software.amazon.jsii.JsiiObjectRef objRef) -
CfnSchedule
protected CfnSchedule(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) -
CfnSchedule
@Stability(Stable) public CfnSchedule(@NotNull Construct scope, @NotNull String id, @NotNull CfnScheduleProps props) Create a newAWS::Scheduler::Schedule
.- Parameters:
scope
-- scope in which this resource is defined.
id
-- scoped id of the resource.
props
-- resource properties.
-
-
Method Details
-
inspect
Examines the CloudFormation resource and discloses attributes.- Specified by:
inspect
in interfaceIInspectable
- Parameters:
inspector
-- tree inspector to collect and process attributes.
-
renderProperties
@Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String, Object> props) - Overrides:
renderProperties
in classCfnResource
- Parameters:
props
- This parameter is required.
-
getAttrArn
The Amazon Resource Name (ARN) for the Amazon EventBridge Scheduler schedule. -
getCfnProperties
- Overrides:
getCfnProperties
in classCfnResource
-
getFlexibleTimeWindow
Allows you to configure a time window during which EventBridge Scheduler invokes the schedule. -
setFlexibleTimeWindow
@Stability(Stable) public void setFlexibleTimeWindow(@NotNull CfnSchedule.FlexibleTimeWindowProperty value) Allows you to configure a time window during which EventBridge Scheduler invokes the schedule. -
setFlexibleTimeWindow
Allows you to configure a time window during which EventBridge Scheduler invokes the schedule. -
getScheduleExpression
The expression that defines when the schedule runs. The following formats are supported.at
expression -at(yyyy-mm-ddThh:mm:ss)
rate
expression -rate(value unit)
cron
expression -cron(fields)
You can use
at
expressions to create one-time schedules that invoke a target once, at the time and in the time zone, that you specify. You can userate
andcron
expressions to create recurring schedules. Rate-based schedules are useful when you want to invoke a target at regular intervals, such as every 15 minutes or every five days. Cron-based schedules are useful when you want to invoke a target periodically at a specific time, such as at 8:00 am (UTC+0) every 1st day of the month.A
cron
expression consists of six fields separated by white spaces:(minutes hours day_of_month month day_of_week year)
.A
rate
expression consists of a value as a positive integer, and a unit with the following options:minute
|minutes
|hour
|hours
|day
|days
For more information and examples, see Schedule types on EventBridge Scheduler in the EventBridge Scheduler User Guide .
-
setScheduleExpression
The expression that defines when the schedule runs. The following formats are supported.at
expression -at(yyyy-mm-ddThh:mm:ss)
rate
expression -rate(value unit)
cron
expression -cron(fields)
You can use
at
expressions to create one-time schedules that invoke a target once, at the time and in the time zone, that you specify. You can userate
andcron
expressions to create recurring schedules. Rate-based schedules are useful when you want to invoke a target at regular intervals, such as every 15 minutes or every five days. Cron-based schedules are useful when you want to invoke a target periodically at a specific time, such as at 8:00 am (UTC+0) every 1st day of the month.A
cron
expression consists of six fields separated by white spaces:(minutes hours day_of_month month day_of_week year)
.A
rate
expression consists of a value as a positive integer, and a unit with the following options:minute
|minutes
|hour
|hours
|day
|days
For more information and examples, see Schedule types on EventBridge Scheduler in the EventBridge Scheduler User Guide .
-
getTarget
The schedule's target details. -
setTarget
The schedule's target details. -
setTarget
The schedule's target details. -
getDescription
The description you specify for the schedule. -
setDescription
The description you specify for the schedule. -
getEndDate
The date, in UTC, before which the schedule can invoke its target.Depending on the schedule's recurrence expression, invocations might stop on, or before, the
EndDate
you specify. EventBridge Scheduler ignoresEndDate
for one-time schedules. -
setEndDate
The date, in UTC, before which the schedule can invoke its target.Depending on the schedule's recurrence expression, invocations might stop on, or before, the
EndDate
you specify. EventBridge Scheduler ignoresEndDate
for one-time schedules. -
getGroupName
The name of the schedule group associated with this schedule. -
setGroupName
The name of the schedule group associated with this schedule. -
getKmsKeyArn
The Amazon Resource Name (ARN) for the customer managed KMS key that EventBridge Scheduler will use to encrypt and decrypt your data. -
setKmsKeyArn
The Amazon Resource Name (ARN) for the customer managed KMS key that EventBridge Scheduler will use to encrypt and decrypt your data. -
getName
The name of the schedule. -
setName
The name of the schedule. -
getScheduleExpressionTimezone
The timezone in which the scheduling expression is evaluated. -
setScheduleExpressionTimezone
The timezone in which the scheduling expression is evaluated. -
getStartDate
The date, in UTC, after which the schedule can begin invoking its target.Depending on the schedule's recurrence expression, invocations might occur on, or after, the
StartDate
you specify. EventBridge Scheduler ignoresStartDate
for one-time schedules. -
setStartDate
The date, in UTC, after which the schedule can begin invoking its target.Depending on the schedule's recurrence expression, invocations might occur on, or after, the
StartDate
you specify. EventBridge Scheduler ignoresStartDate
for one-time schedules. -
getState
Specifies whether the schedule is enabled or disabled.Allowed Values :
ENABLED
|DISABLED
-
setState
Specifies whether the schedule is enabled or disabled.Allowed Values :
ENABLED
|DISABLED
-