# Preview API

Show preview API for:

- 524: PEM Encodings of Cryptographic Objects (Second Preview)
- 525: Structured Concurrency (Sixth Preview)
- 526: Lazy Constants (Second Preview)
- Toggle all

## Contents

- Interfaces
- Classes
- Enum Classes
- Exception Classes
- Record Classes
- Methods

- Interfaces
  Interface
  Preview Feature
  Description
  java.lang.LazyConstantPREVIEW
  Lazy Constants
  A lazy constant is a holder of contents that can be set at most once.
  java.security.DEREncodablePREVIEW
  PEM Encodings of Cryptographic Objects
  This interface is implemented by security API classes that contain binary-encodable key or certificate material.
  java.util.concurrent.StructuredTaskScopePREVIEW
  Structured Concurrency
  An API for structured concurrency.
  java.util.concurrent.StructuredTaskScope.ConfigurationPREVIEW
  Structured Concurrency
  Represents the configuration for a `StructuredTaskScope`.
  java.util.concurrent.StructuredTaskScope.JoinerPREVIEW
  Structured Concurrency
  An object used with a `StructuredTaskScope`PREVIEW to handle subtask completion and produce the result for the scope owner waiting in the `join`PREVIEW method for subtasks to complete.
  java.util.concurrent.StructuredTaskScope.SubtaskPREVIEW
  Structured Concurrency
  Represents a subtask forked with `StructuredTaskScope.fork(Callable)`PREVIEW or `StructuredTaskScope.fork(Runnable)`PREVIEW.

- Classes
  Class
  Preview Feature
  Description
  java.security.PEMDecoderPREVIEW
  PEM Encodings of Cryptographic Objects
  `PEMDecoder` implements a decoder for Privacy-Enhanced Mail (PEM) data.
  java.security.PEMEncoderPREVIEW
  PEM Encodings of Cryptographic Objects
  `PEMEncoder` implements an encoder for Privacy-Enhanced Mail (PEM) data.

- Enum Classes
  Enum Class
  Preview Feature
  Description
  java.util.concurrent.StructuredTaskScope.Subtask.StatePREVIEW
  Structured Concurrency
  Represents the state of a subtask.

- Exception Classes
  Exception Class
  Preview Feature
  Description
  java.util.concurrent.StructuredTaskScope.FailedExceptionPREVIEW
  Structured Concurrency
  Exception thrown by `StructuredTaskScope.join()`PREVIEW when the outcome is an exception rather than a result.
  java.util.concurrent.StructuredTaskScope.TimeoutExceptionPREVIEW
  Structured Concurrency
  Exception thrown by `StructuredTaskScope.join()`PREVIEW if the scope was opened with a timeout, the timeout expired before or while waiting in `join`, and the `Joiner.onTimeout`PREVIEW method throws this exception.
  java.util.concurrent.StructureViolationExceptionPREVIEW
  Structured Concurrency
  Thrown when a structure violation is detected.

- Record Classes
  Record Class
  Preview Feature
  Description
  java.security.PEMPREVIEW
  PEM Encodings of Cryptographic Objects
  `PEM` is a `DEREncodable`PREVIEW that represents Privacy-Enhanced Mail (PEM) data by its type and Base64-encoded content.

- Methods
  Method
  Preview Feature
  Description
  java.util.List.ofLazy(int, IntFunction<? extends E>)PREVIEW
  Lazy Constants
  Returns a new lazily computed list of the provided `size`.
  java.util.Map.ofLazy(Set<? extends K>, Function<? super K, ? extends V>)PREVIEW
  Lazy Constants
  Returns a new lazily computed map with the provided `keys`.
  javax.crypto.EncryptedPrivateKeyInfo.encrypt(DEREncodable, char[])PREVIEW
  PEM Encodings of Cryptographic Objects
  Creates an `EncryptedPrivateKeyInfo` by encrypting the specified `DEREncodable`.
  javax.crypto.EncryptedPrivateKeyInfo.encrypt(DEREncodable, char[], String, AlgorithmParameterSpec, Provider)PREVIEW
  PEM Encodings of Cryptographic Objects
  Creates an `EncryptedPrivateKeyInfo` by encrypting the specified `DEREncodable`.
  javax.crypto.EncryptedPrivateKeyInfo.encrypt(DEREncodable, Key, String, AlgorithmParameterSpec, Provider, SecureRandom)PREVIEW
  PEM Encodings of Cryptographic Objects
  Creates an `EncryptedPrivateKeyInfo` by encrypting the specified `DEREncodable`.
  javax.crypto.EncryptedPrivateKeyInfo.getKey(char[])PREVIEW
  PEM Encodings of Cryptographic Objects
  Extracts and returns the enclosed `PrivateKey` using the specified password.
  javax.crypto.EncryptedPrivateKeyInfo.getKey(Key, Provider)PREVIEW
  PEM Encodings of Cryptographic Objects
  Extracts and returns the enclosed `PrivateKey` using the specified decryption key and provider.
  javax.crypto.EncryptedPrivateKeyInfo.getKeyPair(char[])PREVIEW
  PEM Encodings of Cryptographic Objects
  Extracts and returns the enclosed `KeyPair` using the specified password.
  javax.crypto.EncryptedPrivateKeyInfo.getKeyPair(Key, Provider)PREVIEW
  PEM Encodings of Cryptographic Objects
  Extracts and returns the enclosed `KeyPair` using the specified decryption key and provider.