On Fri, 6 Jun 2025 21:36:06 GMT, Valerie Peng <[email protected]> wrote:
>> src/java.base/share/classes/com/sun/crypto/provider/PBEKey.java line 82:
>>
>>> 80: }
>>> 81:
>>> 82: public byte[] getEncoded() {
>>
>> I understand this is not a public API class so there is no need to provide
>> `@throws` in the spec. But, on the other hand, do we need to provide one in
>> its super class `java.security.key`? I have no opinion.
>
> Well, I am not sure. `java.securityKey` is the super interface for all keys,
> including private, public, and secret keys. The Exception is due to
> implementing the `javax.security.auth.Destroyable` interface, so the
> `@throws` spec should goes to the class which implements both `Destroyable`
> and `Key` interfaces. `PBEKey` is not a public API class, so perhaps we can
> documenting this in the `SunJCE` provider section as this is
> implementation-specific?
Also, `PublicKey` does not implement (or implement by inheritance)
`Destroyable`.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/25632#discussion_r2150187408