Class CatalogBase

java.lang.Object
software.amazon.jsii.JsiiObject
software.constructs.Construct
software.amazon.awscdk.Resource
software.amazon.awscdk.services.glue.alpha.CatalogBase
All Implemented Interfaces:
ICatalogRef, IEnvironmentAware, IResource, ICatalog, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct, software.constructs.IDependable
Direct Known Subclasses:
Catalog

@Generated(value="jsii-pacmak/1.138.0 (build 0ca7ee8)", date="2026-08-10T14:51:27.958Z") @Stability(Experimental) public abstract class CatalogBase extends Resource implements ICatalog
(experimental) Base class for all ICatalog implementations.

Materializes the single CfnDataCatalogEncryptionSettings resource (targeting its own catalogId) from the encryption options supplied at construction. Encryption is fixed at construction, so a catalog either carries settings or it does not.

  • Constructor Details

    • CatalogBase

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

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

      @Stability(Stable) protected CatalogBase(@NotNull software.constructs.Construct scope, @NotNull String id, @Nullable ResourceProps props)
      Parameters:
      scope - This parameter is required.
      id - This parameter is required.
      props -
    • CatalogBase

      @Stability(Stable) protected CatalogBase(@NotNull software.constructs.Construct scope, @NotNull String id)
      Parameters:
      scope - This parameter is required.
      id - This parameter is required.
  • Method Details

    • configureEncryption

      @Stability(Experimental) protected void configureEncryption(@NotNull CatalogEncryptionOptions options)
      (experimental) Emit the catalog's encryption settings from the options fixed at construction.

      Subclasses call this once, after catalogId/catalogArn are assigned. When neither block is configured, no resource is emitted, avoiding an empty settings resource that would reset the catalog on deploy.

      Parameters:
      options - This parameter is required.
    • getCatalogArn

      @Stability(Experimental) @NotNull public abstract String getCatalogArn()
      (experimental) The ARN of the catalog.
      Specified by:
      getCatalogArn in interface ICatalog
    • getCatalogId

      @Stability(Experimental) @NotNull public abstract String getCatalogId()
      (experimental) The id of the catalog (for the account-wide catalog, the AWS account id).
      Specified by:
      getCatalogId in interface ICatalog
    • getCatalogRef

      @Stability(Experimental) @NotNull public CatalogReference getCatalogRef()
      (experimental) A reference to a Catalog resource.
      Specified by:
      getCatalogRef in interface ICatalogRef
    • getConnectionPasswordKey

      @Stability(Experimental) @Nullable public IKeyRef getConnectionPasswordKey()
      (experimental) The customer-managed KMS key used to encrypt connection passwords, if one was configured.

      Undefined when password encryption uses an AWS-managed key or is not configured. Grant access to it via KeyGrants, e.g. if (catalog.connectionPasswordKey) { KeyGrants.fromKey(catalog.connectionPasswordKey).encrypt(grantee); }.

      Specified by:
      getConnectionPasswordKey in interface ICatalog
    • getEncryptionKey

      @Stability(Experimental) @Nullable public IKeyRef getEncryptionKey()
      (experimental) The customer-managed KMS key used for the catalog's encryption at rest, if one was configured.

      Undefined when encryption is disabled or an AWS-managed key is used. Grant access to it via KeyGrants, e.g. if (catalog.encryptionKey) { KeyGrants.fromKey(catalog.encryptionKey).encrypt(grantee); }.

      Specified by:
      getEncryptionKey in interface ICatalog