java.lang.Object
software.amazon.jsii.JsiiObject
software.amazon.awscdk.Mixin
software.amazon.awscdk.cfnpropertymixins.services.elasticsearch.CfnDomainPropsMixin
All Implemented Interfaces:
software.amazon.jsii.JsiiSerializable, software.constructs.IMixin

@Generated(value="jsii-pacmak/1.127.0 (build 2117ad5)", date="2026-03-11T13:19:59.229Z") @Stability(Stable) public class CfnDomainPropsMixin extends Mixin implements software.constructs.IMixin
The AWS::Elasticsearch::Domain resource creates an Amazon OpenSearch Service domain.

The AWS::Elasticsearch::Domain resource is being replaced by the AWS::OpenSearchService::Domain resource. While the legacy Elasticsearch resource and options are still supported, we recommend modifying your existing Cloudformation templates to use the new OpenSearch Service resource, which supports both OpenSearch and legacy Elasticsearch. For instructions to upgrade domains defined within CloudFormation from Elasticsearch to OpenSearch, see Remarks .

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.cfnpropertymixins.services.elasticsearch.*;
 import software.amazon.awscdk.*;
 Object accessPolicies;
 IMergeStrategy mergeStrategy;
 CfnDomainPropsMixin cfnDomainPropsMixin = CfnDomainPropsMixin.Builder.create(CfnDomainMixinProps.builder()
         .accessPolicies(accessPolicies)
         .advancedOptions(Map.of(
                 "advancedOptionsKey", "advancedOptions"))
         .advancedSecurityOptions(AdvancedSecurityOptionsInputProperty.builder()
                 .anonymousAuthEnabled(false)
                 .enabled(false)
                 .internalUserDatabaseEnabled(false)
                 .masterUserOptions(MasterUserOptionsProperty.builder()
                         .masterUserArn("masterUserArn")
                         .masterUserName("masterUserName")
                         .masterUserPassword("masterUserPassword")
                         .build())
                 .build())
         .cognitoOptions(CognitoOptionsProperty.builder()
                 .enabled(false)
                 .identityPoolId("identityPoolId")
                 .roleArn("roleArn")
                 .userPoolId("userPoolId")
                 .build())
         .domainArn("domainArn")
         .domainEndpointOptions(DomainEndpointOptionsProperty.builder()
                 .customEndpoint("customEndpoint")
                 .customEndpointCertificateArn("customEndpointCertificateArn")
                 .customEndpointEnabled(false)
                 .enforceHttps(false)
                 .tlsSecurityPolicy("tlsSecurityPolicy")
                 .build())
         .domainName("domainName")
         .ebsOptions(EBSOptionsProperty.builder()
                 .ebsEnabled(false)
                 .iops(123)
                 .volumeSize(123)
                 .volumeType("volumeType")
                 .build())
         .elasticsearchClusterConfig(ElasticsearchClusterConfigProperty.builder()
                 .coldStorageOptions(ColdStorageOptionsProperty.builder()
                         .enabled(false)
                         .build())
                 .dedicatedMasterCount(123)
                 .dedicatedMasterEnabled(false)
                 .dedicatedMasterType("dedicatedMasterType")
                 .instanceCount(123)
                 .instanceType("instanceType")
                 .warmCount(123)
                 .warmEnabled(false)
                 .warmType("warmType")
                 .zoneAwarenessConfig(ZoneAwarenessConfigProperty.builder()
                         .availabilityZoneCount(123)
                         .build())
                 .zoneAwarenessEnabled(false)
                 .build())
         .elasticsearchVersion("elasticsearchVersion")
         .encryptionAtRestOptions(EncryptionAtRestOptionsProperty.builder()
                 .enabled(false)
                 .kmsKeyId("kmsKeyId")
                 .build())
         .logPublishingOptions(Map.of(
                 "logPublishingOptionsKey", LogPublishingOptionProperty.builder()
                         .cloudWatchLogsLogGroupArn("cloudWatchLogsLogGroupArn")
                         .enabled(false)
                         .build()))
         .nodeToNodeEncryptionOptions(NodeToNodeEncryptionOptionsProperty.builder()
                 .enabled(false)
                 .build())
         .snapshotOptions(SnapshotOptionsProperty.builder()
                 .automatedSnapshotStartHour(123)
                 .build())
         .tags(List.of(CfnTag.builder()
                 .key("key")
                 .value("value")
                 .build()))
         .vpcOptions(VPCOptionsProperty.builder()
                 .securityGroupIds(List.of("securityGroupIds"))
                 .subnetIds(List.of("subnetIds"))
                 .build())
         .build())
 .strategy(mergeStrategy)
 .build();
 

See Also:
  • Field Details

    • CFN_PROPERTY_KEYS

      @Stability(Stable) protected static final List<String> CFN_PROPERTY_KEYS
  • Constructor Details

    • CfnDomainPropsMixin

      protected CfnDomainPropsMixin(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnDomainPropsMixin

      protected CfnDomainPropsMixin(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnDomainPropsMixin

      @Stability(Stable) public CfnDomainPropsMixin(@NotNull CfnDomainMixinProps props, @Nullable CfnPropertyMixinOptions options)
      Create a mixin to apply properties to AWS::Elasticsearch::Domain.

      Parameters:
      props - L1 properties to apply. This parameter is required.
      options - Mixin options.
    • CfnDomainPropsMixin

      @Stability(Stable) public CfnDomainPropsMixin(@NotNull CfnDomainMixinProps props)
      Create a mixin to apply properties to AWS::Elasticsearch::Domain.

      Parameters:
      props - L1 properties to apply. This parameter is required.
  • Method Details

    • applyTo

      @Stability(Stable) public void applyTo(@NotNull software.constructs.IConstruct construct)
      Apply the mixin properties to the construct.

      Specified by:
      applyTo in interface software.constructs.IMixin
      Specified by:
      applyTo in class Mixin
      Parameters:
      construct - This parameter is required.
    • supports

      @Stability(Stable) @NotNull public Boolean supports(@NotNull software.constructs.IConstruct construct)
      Check if this mixin supports the given construct.

      Specified by:
      supports in interface software.constructs.IMixin
      Overrides:
      supports in class Mixin
      Parameters:
      construct - This parameter is required.
    • getProps

      @Stability(Stable) @NotNull protected CfnDomainMixinProps getProps()
    • getStrategy

      @Stability(Stable) @NotNull protected IMergeStrategy getStrategy()