armeria icon indicating copy to clipboard operation
armeria copied to clipboard

Expose Athenz TokenClient as public API

Open hyunw9 opened this issue 2 months ago • 1 comments

Motivation:

AccessTokenClient and RoleTokenClient are currently declared as package-private, preventing users of the Armeria library from directly instantiating or using these classes.

As wrote in #6431, some users may want to obtain only the Athenz token for use with non-Armeria clients.

This PR provides flexibility by exposing these classes as public API, allowing users to fetch tokens directly.

Modifications:

armeria/athenz/src/main/java/com/linecorp/armeria/client/athenz/AccessTokenClient.java

Changed final class AccessTokenClient to public final class AccessTokenClient.

armeria/athenz/src/main/java/com/linecorp/armeria/client/athenz/RoleTokenClient.java

Changed final class RoleTokenClient to public final class RoleTokenClient.

Result:

Closes #6431

After this PR is merged, users will be able to directly import and instantiate com.linecorp.armeria.client.athenz.AccessTokenClient and com.linecorp.armeria.client.athenz.RoleTokenClient.

hyunw9 avatar Oct 26 '25 12:10 hyunw9

🔍 Build Scan® (commit: 4205241b1acd8504460b5a52a3afab274dd68cf4)

Job name Status Build Scan®
build-ubicloud-standard-16-jdk-8 https://ge.armeria.dev/s/i7wsogtrsd4uu
build-ubicloud-standard-16-jdk-21-snapshot-blockhound https://ge.armeria.dev/s/42dwyi7ykbooa
build-ubicloud-standard-16-jdk-17-min-java-17-coverage ❌ (failure) https://ge.armeria.dev/s/egqpao32tx3ew
build-ubicloud-standard-16-jdk-17-min-java-11 https://ge.armeria.dev/s/2x5ih67ad4exo
build-ubicloud-standard-16-jdk-17-leak https://ge.armeria.dev/s/26bru3723z6r4
build-ubicloud-standard-16-jdk-11 https://ge.armeria.dev/s/gu52cvpzfityk
build-macos-latest-jdk-21 https://ge.armeria.dev/s/5f4qqkapy3chw

github-actions[bot] avatar Oct 26 '25 14:10 github-actions[bot]