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

org.cdk8s.plus23.k8s.KubeEndpoints Maven / Gradle / Ivy

package org.cdk8s.plus23.k8s;

/**
 * Endpoints is a collection of endpoints that implement the actual service.
 * 

* Example: * Name: "mysvc", * Subsets: [ * { * Addresses: [{"ip": "10.10.1.1"}, {"ip": "10.10.2.2"}], * Ports: [{"name": "a", "port": 8675}, {"name": "b", "port": 309}] * }, * { * Addresses: [{"ip": "10.10.3.3"}], * Ports: [{"name": "a", "port": 93}, {"name": "b", "port": 76}] * }, * ] */ @javax.annotation.Generated(value = "jsii-pacmak/1.75.0 (build 63bb957)", date = "2023-02-21T09:46:03.880Z") @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Jsii(module = org.cdk8s.plus23.$Module.class, fqn = "cdk8s-plus-23.k8s.KubeEndpoints") public class KubeEndpoints extends org.cdk8s.ApiObject { protected KubeEndpoints(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); } protected KubeEndpoints(final software.amazon.jsii.JsiiObject.InitializationMode initializationMode) { super(initializationMode); } static { GVK = software.amazon.jsii.JsiiObject.jsiiStaticGet(org.cdk8s.plus23.k8s.KubeEndpoints.class, "GVK", software.amazon.jsii.NativeType.forClass(org.cdk8s.GroupVersionKind.class)); } /** * Defines a "io.k8s.api.core.v1.Endpoints" API object. *

* @param scope the scope in which to define this object. This parameter is required. * @param id a scope-local name for the object. This parameter is required. * @param props initialization props. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public KubeEndpoints(final @org.jetbrains.annotations.NotNull software.constructs.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String id, final @org.jetbrains.annotations.Nullable org.cdk8s.plus23.k8s.KubeEndpointsProps props) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); software.amazon.jsii.JsiiEngine.getInstance().createNewObject(this, new Object[] { java.util.Objects.requireNonNull(scope, "scope is required"), java.util.Objects.requireNonNull(id, "id is required"), props }); } /** * Defines a "io.k8s.api.core.v1.Endpoints" API object. *

* @param scope the scope in which to define this object. This parameter is required. * @param id a scope-local name for the object. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public KubeEndpoints(final @org.jetbrains.annotations.NotNull software.constructs.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String id) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); software.amazon.jsii.JsiiEngine.getInstance().createNewObject(this, new Object[] { java.util.Objects.requireNonNull(scope, "scope is required"), java.util.Objects.requireNonNull(id, "id is required") }); } /** * Renders a Kubernetes manifest for "io.k8s.api.core.v1.Endpoints". *

* This can be used to inline resource manifests inside other objects (e.g. as templates). *

* @param props initialization props. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static @org.jetbrains.annotations.NotNull java.lang.Object manifest(final @org.jetbrains.annotations.Nullable org.cdk8s.plus23.k8s.KubeEndpointsProps props) { return software.amazon.jsii.JsiiObject.jsiiStaticCall(org.cdk8s.plus23.k8s.KubeEndpoints.class, "manifest", software.amazon.jsii.NativeType.forClass(java.lang.Object.class), new Object[] { props }); } /** * Renders a Kubernetes manifest for "io.k8s.api.core.v1.Endpoints". *

* This can be used to inline resource manifests inside other objects (e.g. as templates). */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static @org.jetbrains.annotations.NotNull java.lang.Object manifest() { return software.amazon.jsii.JsiiObject.jsiiStaticCall(org.cdk8s.plus23.k8s.KubeEndpoints.class, "manifest", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); } /** * Renders the object to Kubernetes JSON. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public @org.jetbrains.annotations.NotNull java.lang.Object toJson() { return software.amazon.jsii.Kernel.call(this, "toJson", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); } /** * Returns the apiVersion and kind for "io.k8s.api.core.v1.Endpoints". */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public final static org.cdk8s.GroupVersionKind GVK; /** * A fluent builder for {@link org.cdk8s.plus23.k8s.KubeEndpoints}. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { /** * @return a new instance of {@link Builder}. * @param scope the scope in which to define this object. This parameter is required. * @param id a scope-local name for the object. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static Builder create(final software.constructs.Construct scope, final java.lang.String id) { return new Builder(scope, id); } private final software.constructs.Construct scope; private final java.lang.String id; private org.cdk8s.plus23.k8s.KubeEndpointsProps.Builder props; private Builder(final software.constructs.Construct scope, final java.lang.String id) { this.scope = scope; this.id = id; } /** * Standard object's metadata. *

* More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata *

* @return {@code this} * @param metadata Standard object's metadata. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder metadata(final org.cdk8s.plus23.k8s.ObjectMeta metadata) { this.props().metadata(metadata); return this; } /** * The set of all endpoints is the union of all subsets. *

* Addresses are placed into subsets according to the IPs they share. A single address with multiple ports, some of which are ready and some of which are not (because they come from different containers) will result in the address being displayed in different subsets for the different ports. No address will appear in both Addresses and NotReadyAddresses in the same subset. Sets of addresses and ports that comprise a service. *

* @return {@code this} * @param subsets The set of all endpoints is the union of all subsets. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder subsets(final java.util.List subsets) { this.props().subsets(subsets); return this; } /** * @returns a newly built instance of {@link org.cdk8s.plus23.k8s.KubeEndpoints}. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public org.cdk8s.plus23.k8s.KubeEndpoints build() { return new org.cdk8s.plus23.k8s.KubeEndpoints( this.scope, this.id, this.props != null ? this.props.build() : null ); } private org.cdk8s.plus23.k8s.KubeEndpointsProps.Builder props() { if (this.props == null) { this.props = new org.cdk8s.plus23.k8s.KubeEndpointsProps.Builder(); } return this.props; } } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy