All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.cdk8s.plus31.k8s.TokenReviewSpec Maven / Gradle / Ivy

package org.cdk8s.plus31.k8s;

/**
 * TokenReviewSpec is a description of the token authentication request.
 */
@javax.annotation.Generated(value = "jsii-pacmak/1.104.0 (build e79254c)", date = "2024-10-12T12:14:17.733Z")
@software.amazon.jsii.Jsii(module = org.cdk8s.plus31.$Module.class, fqn = "cdk8s-plus-31.k8s.TokenReviewSpec")
@software.amazon.jsii.Jsii.Proxy(TokenReviewSpec.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public interface TokenReviewSpec extends software.amazon.jsii.JsiiSerializable {

    /**
     * Audiences is a list of the identifiers that the resource server presented with the token identifies as.
     * 

* Audience-aware token authenticators will verify that the token was intended for at least one of the audiences in this list. If no audiences are provided, the audience will default to the audience of the Kubernetes apiserver. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.util.List getAudiences() { return null; } /** * Token is the opaque bearer token. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getToken() { return null; } /** * @return a {@link Builder} of {@link TokenReviewSpec} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link TokenReviewSpec} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.util.List audiences; java.lang.String token; /** * Sets the value of {@link TokenReviewSpec#getAudiences} * @param audiences Audiences is a list of the identifiers that the resource server presented with the token identifies as. * Audience-aware token authenticators will verify that the token was intended for at least one of the audiences in this list. If no audiences are provided, the audience will default to the audience of the Kubernetes apiserver. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder audiences(java.util.List audiences) { this.audiences = audiences; return this; } /** * Sets the value of {@link TokenReviewSpec#getToken} * @param token Token is the opaque bearer token. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder token(java.lang.String token) { this.token = token; return this; } /** * Builds the configured instance. * @return a new instance of {@link TokenReviewSpec} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public TokenReviewSpec build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link TokenReviewSpec} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements TokenReviewSpec { private final java.util.List audiences; private final java.lang.String token; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.audiences = software.amazon.jsii.Kernel.get(this, "audiences", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class))); this.token = software.amazon.jsii.Kernel.get(this, "token", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.audiences = builder.audiences; this.token = builder.token; } @Override public final java.util.List getAudiences() { return this.audiences; } @Override public final java.lang.String getToken() { return this.token; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); if (this.getAudiences() != null) { data.set("audiences", om.valueToTree(this.getAudiences())); } if (this.getToken() != null) { data.set("token", om.valueToTree(this.getToken())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("cdk8s-plus-31.k8s.TokenReviewSpec")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; TokenReviewSpec.Jsii$Proxy that = (TokenReviewSpec.Jsii$Proxy) o; if (this.audiences != null ? !this.audiences.equals(that.audiences) : that.audiences != null) return false; return this.token != null ? this.token.equals(that.token) : that.token == null; } @Override public final int hashCode() { int result = this.audiences != null ? this.audiences.hashCode() : 0; result = 31 * result + (this.token != null ? this.token.hashCode() : 0); return result; } } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy