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

software.amazon.awscdk.services.gamelift.alpha.IFleet Maven / Gradle / Ivy

There is a newer version: 2.170.0-alpha.0
Show newest version
package software.amazon.awscdk.services.gamelift.alpha;

/**
 * (experimental) Represents a Gamelift fleet.
 */
@javax.annotation.Generated(value = "jsii-pacmak/1.104.0 (build e79254c)", date = "2024-12-27T17:02:12.111Z")
@software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.gamelift.alpha.$Module.class, fqn = "@aws-cdk/aws-gamelift-alpha.IFleet")
@software.amazon.jsii.Jsii.Proxy(IFleet.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public interface IFleet extends software.amazon.jsii.JsiiSerializable, software.amazon.awscdk.IResource, software.amazon.awscdk.services.iam.IGrantable, software.amazon.awscdk.services.gamelift.alpha.IGameSessionQueueDestination {

    /**
     * (experimental) The ARN of the fleet.
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
    @org.jetbrains.annotations.NotNull java.lang.String getFleetArn();

    /**
     * (experimental) The Identifier of the fleet.
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
    @org.jetbrains.annotations.NotNull java.lang.String getFleetId();

    /**
     * (experimental) Grant the grantee identity permissions to perform actions.
     * 

* @param grantee This parameter is required. * @param actions This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.iam.Grant grant(final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.iam.IGrantable grantee, final @org.jetbrains.annotations.NotNull java.lang.String... actions); /** * (experimental) Return the given named metric for this fleet. *

* @param metricName This parameter is required. * @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metric(final @org.jetbrains.annotations.NotNull java.lang.String metricName, final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props); /** * (experimental) Return the given named metric for this fleet. *

* @param metricName This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metric(final @org.jetbrains.annotations.NotNull java.lang.String metricName); /** * (experimental) Instances with ACTIVE status, which means they are running active server processes. *

* The count includes idle instances and those that are hosting one or more game sessions. * This metric measures current total instance capacity. *

* This metric can be used with automatic scaling. *

* @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricActiveInstances(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props); /** * (experimental) Instances with ACTIVE status, which means they are running active server processes. *

* The count includes idle instances and those that are hosting one or more game sessions. * This metric measures current total instance capacity. *

* This metric can be used with automatic scaling. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricActiveInstances(); /** * (experimental) Target number of active instances that GameLift is working to maintain in the fleet. *

* With automatic scaling, this value is determined based on the scaling policies currently in force. * Without automatic scaling, this value is set manually. * This metric is not available when viewing data for fleet metric groups. *

* @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricDesiredInstances(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props); /** * (experimental) Target number of active instances that GameLift is working to maintain in the fleet. *

* With automatic scaling, this value is determined based on the scaling policies currently in force. * Without automatic scaling, this value is set manually. * This metric is not available when viewing data for fleet metric groups. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricDesiredInstances(); /** * (experimental) Active instances that are currently hosting zero (0) game sessions. *

* This metric measures capacity that is available but unused. * This metric can be used with automatic scaling. *

* @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricIdleInstances(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props); /** * (experimental) Active instances that are currently hosting zero (0) game sessions. *

* This metric measures capacity that is available but unused. * This metric can be used with automatic scaling. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricIdleInstances(); /** * (experimental) Number of spot instances that have been interrupted. *

* @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricInstanceInterruptions(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props); /** * (experimental) Number of spot instances that have been interrupted. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricInstanceInterruptions(); /** * (experimental) Maximum number of instances that are allowed for the fleet. *

* A fleet's instance maximum determines the capacity ceiling during manual or automatic scaling up. * This metric is not available when viewing data for fleet metric groups. *

* @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricMaxInstances(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props); /** * (experimental) Maximum number of instances that are allowed for the fleet. *

* A fleet's instance maximum determines the capacity ceiling during manual or automatic scaling up. * This metric is not available when viewing data for fleet metric groups. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricMaxInstances(); /** * (experimental) Minimum number of instances allowed for the fleet. *

* A fleet's instance minimum determines the capacity floor during manual or automatic scaling down. * This metric is not available when viewing data for fleet metric groups. *

* @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricMinInstances(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props); /** * (experimental) Minimum number of instances allowed for the fleet. *

* A fleet's instance minimum determines the capacity floor during manual or automatic scaling down. * This metric is not available when viewing data for fleet metric groups. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricMinInstances(); /** * (experimental) Percentage of all active instances that are idle (calculated as IdleInstances / ActiveInstances). *

* This metric can be used for automatic scaling. *

* @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricPercentIdleInstances(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props); /** * (experimental) Percentage of all active instances that are idle (calculated as IdleInstances / ActiveInstances). *

* This metric can be used for automatic scaling. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricPercentIdleInstances(); /** * A proxy class which represents a concrete javascript instance of this type. */ @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements software.amazon.awscdk.services.gamelift.alpha.IFleet.Jsii$Default { protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); } /** * The tree node. */ @Override @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public final @org.jetbrains.annotations.NotNull software.constructs.Node getNode() { return software.amazon.jsii.Kernel.get(this, "node", software.amazon.jsii.NativeType.forClass(software.constructs.Node.class)); } /** * The environment this resource belongs to. *

* For resources that are created and managed by the CDK * (generally, those created by creating new class instances like Role, Bucket, etc.), * this is always the same as the environment of the stack they belong to; * however, for imported resources * (those obtained from static methods like fromRoleArn, fromBucketName, etc.), * that might be different than the stack they were imported into. */ @Override @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public final @org.jetbrains.annotations.NotNull software.amazon.awscdk.ResourceEnvironment getEnv() { return software.amazon.jsii.Kernel.get(this, "env", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.ResourceEnvironment.class)); } /** * The stack in which this resource is defined. */ @Override @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public final @org.jetbrains.annotations.NotNull software.amazon.awscdk.Stack getStack() { return software.amazon.jsii.Kernel.get(this, "stack", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.Stack.class)); } /** * The principal to grant permissions to. */ @Override @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.iam.IPrincipal getGrantPrincipal() { return software.amazon.jsii.Kernel.get(this, "grantPrincipal", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.iam.IPrincipal.class)); } /** * (experimental) The ARN(s) to put into the destination field for a game session queue. *

* This property is for cdk modules to consume only. You should not need to use this property. * Instead, use dedicated identifier on each components. */ @Override @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public final @org.jetbrains.annotations.NotNull java.lang.String getResourceArnForDestination() { return software.amazon.jsii.Kernel.get(this, "resourceArnForDestination", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * (experimental) The ARN of the fleet. */ @Override @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public final @org.jetbrains.annotations.NotNull java.lang.String getFleetArn() { return software.amazon.jsii.Kernel.get(this, "fleetArn", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * (experimental) The Identifier of the fleet. */ @Override @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public final @org.jetbrains.annotations.NotNull java.lang.String getFleetId() { return software.amazon.jsii.Kernel.get(this, "fleetId", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * Apply the given removal policy to this resource. *

* The Removal Policy controls what happens to this resource when it stops * being managed by CloudFormation, either because you've removed it from the * CDK application or because you've made a change that requires the resource * to be replaced. *

* The resource can be deleted (RemovalPolicy.DESTROY), or left in your AWS * account for data recovery and cleanup later (RemovalPolicy.RETAIN). *

* @param policy This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public final void applyRemovalPolicy(final @org.jetbrains.annotations.NotNull software.amazon.awscdk.RemovalPolicy policy) { software.amazon.jsii.Kernel.call(this, "applyRemovalPolicy", software.amazon.jsii.NativeType.VOID, new Object[] { java.util.Objects.requireNonNull(policy, "policy is required") }); } /** * (experimental) Grant the grantee identity permissions to perform actions. *

* @param grantee This parameter is required. * @param actions This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.iam.Grant grant(final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.iam.IGrantable grantee, final @org.jetbrains.annotations.NotNull java.lang.String... actions) { return software.amazon.jsii.Kernel.call(this, "grant", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.iam.Grant.class), java.util.stream.Stream.concat(java.util.Arrays.stream(new Object[] { java.util.Objects.requireNonNull(grantee, "grantee is required") }), java.util.Arrays.stream(actions)).toArray(Object[]::new)); } /** * (experimental) Return the given named metric for this fleet. *

* @param metricName This parameter is required. * @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metric(final @org.jetbrains.annotations.NotNull java.lang.String metricName, final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props) { return software.amazon.jsii.Kernel.call(this, "metric", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class), new Object[] { java.util.Objects.requireNonNull(metricName, "metricName is required"), props }); } /** * (experimental) Return the given named metric for this fleet. *

* @param metricName This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metric(final @org.jetbrains.annotations.NotNull java.lang.String metricName) { return software.amazon.jsii.Kernel.call(this, "metric", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class), new Object[] { java.util.Objects.requireNonNull(metricName, "metricName is required") }); } /** * (experimental) Instances with ACTIVE status, which means they are running active server processes. *

* The count includes idle instances and those that are hosting one or more game sessions. * This metric measures current total instance capacity. *

* This metric can be used with automatic scaling. *

* @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricActiveInstances(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props) { return software.amazon.jsii.Kernel.call(this, "metricActiveInstances", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class), new Object[] { props }); } /** * (experimental) Instances with ACTIVE status, which means they are running active server processes. *

* The count includes idle instances and those that are hosting one or more game sessions. * This metric measures current total instance capacity. *

* This metric can be used with automatic scaling. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricActiveInstances() { return software.amazon.jsii.Kernel.call(this, "metricActiveInstances", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class)); } /** * (experimental) Target number of active instances that GameLift is working to maintain in the fleet. *

* With automatic scaling, this value is determined based on the scaling policies currently in force. * Without automatic scaling, this value is set manually. * This metric is not available when viewing data for fleet metric groups. *

* @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricDesiredInstances(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props) { return software.amazon.jsii.Kernel.call(this, "metricDesiredInstances", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class), new Object[] { props }); } /** * (experimental) Target number of active instances that GameLift is working to maintain in the fleet. *

* With automatic scaling, this value is determined based on the scaling policies currently in force. * Without automatic scaling, this value is set manually. * This metric is not available when viewing data for fleet metric groups. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricDesiredInstances() { return software.amazon.jsii.Kernel.call(this, "metricDesiredInstances", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class)); } /** * (experimental) Active instances that are currently hosting zero (0) game sessions. *

* This metric measures capacity that is available but unused. * This metric can be used with automatic scaling. *

* @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricIdleInstances(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props) { return software.amazon.jsii.Kernel.call(this, "metricIdleInstances", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class), new Object[] { props }); } /** * (experimental) Active instances that are currently hosting zero (0) game sessions. *

* This metric measures capacity that is available but unused. * This metric can be used with automatic scaling. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricIdleInstances() { return software.amazon.jsii.Kernel.call(this, "metricIdleInstances", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class)); } /** * (experimental) Number of spot instances that have been interrupted. *

* @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricInstanceInterruptions(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props) { return software.amazon.jsii.Kernel.call(this, "metricInstanceInterruptions", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class), new Object[] { props }); } /** * (experimental) Number of spot instances that have been interrupted. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricInstanceInterruptions() { return software.amazon.jsii.Kernel.call(this, "metricInstanceInterruptions", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class)); } /** * (experimental) Maximum number of instances that are allowed for the fleet. *

* A fleet's instance maximum determines the capacity ceiling during manual or automatic scaling up. * This metric is not available when viewing data for fleet metric groups. *

* @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricMaxInstances(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props) { return software.amazon.jsii.Kernel.call(this, "metricMaxInstances", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class), new Object[] { props }); } /** * (experimental) Maximum number of instances that are allowed for the fleet. *

* A fleet's instance maximum determines the capacity ceiling during manual or automatic scaling up. * This metric is not available when viewing data for fleet metric groups. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricMaxInstances() { return software.amazon.jsii.Kernel.call(this, "metricMaxInstances", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class)); } /** * (experimental) Minimum number of instances allowed for the fleet. *

* A fleet's instance minimum determines the capacity floor during manual or automatic scaling down. * This metric is not available when viewing data for fleet metric groups. *

* @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricMinInstances(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props) { return software.amazon.jsii.Kernel.call(this, "metricMinInstances", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class), new Object[] { props }); } /** * (experimental) Minimum number of instances allowed for the fleet. *

* A fleet's instance minimum determines the capacity floor during manual or automatic scaling down. * This metric is not available when viewing data for fleet metric groups. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricMinInstances() { return software.amazon.jsii.Kernel.call(this, "metricMinInstances", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class)); } /** * (experimental) Percentage of all active instances that are idle (calculated as IdleInstances / ActiveInstances). *

* This metric can be used for automatic scaling. *

* @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricPercentIdleInstances(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props) { return software.amazon.jsii.Kernel.call(this, "metricPercentIdleInstances", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class), new Object[] { props }); } /** * (experimental) Percentage of all active instances that are idle (calculated as IdleInstances / ActiveInstances). *

* This metric can be used for automatic scaling. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricPercentIdleInstances() { return software.amazon.jsii.Kernel.call(this, "metricPercentIdleInstances", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class)); } } /** * Internal default implementation for {@link IFleet}. */ @software.amazon.jsii.Internal interface Jsii$Default extends IFleet, software.amazon.awscdk.IResource.Jsii$Default, software.amazon.awscdk.services.gamelift.alpha.IGameSessionQueueDestination.Jsii$Default, software.amazon.awscdk.services.iam.IGrantable.Jsii$Default { /** * The tree node. */ @Override @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.NotNull software.constructs.Node getNode() { return software.amazon.jsii.Kernel.get(this, "node", software.amazon.jsii.NativeType.forClass(software.constructs.Node.class)); } /** * The environment this resource belongs to. *

* For resources that are created and managed by the CDK * (generally, those created by creating new class instances like Role, Bucket, etc.), * this is always the same as the environment of the stack they belong to; * however, for imported resources * (those obtained from static methods like fromRoleArn, fromBucketName, etc.), * that might be different than the stack they were imported into. */ @Override @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.NotNull software.amazon.awscdk.ResourceEnvironment getEnv() { return software.amazon.jsii.Kernel.get(this, "env", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.ResourceEnvironment.class)); } /** * The stack in which this resource is defined. */ @Override @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.NotNull software.amazon.awscdk.Stack getStack() { return software.amazon.jsii.Kernel.get(this, "stack", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.Stack.class)); } /** * The principal to grant permissions to. */ @Override @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.iam.IPrincipal getGrantPrincipal() { return software.amazon.jsii.Kernel.get(this, "grantPrincipal", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.iam.IPrincipal.class)); } /** * (experimental) The ARN(s) to put into the destination field for a game session queue. *

* This property is for cdk modules to consume only. You should not need to use this property. * Instead, use dedicated identifier on each components. */ @Override @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) default @org.jetbrains.annotations.NotNull java.lang.String getResourceArnForDestination() { return software.amazon.jsii.Kernel.get(this, "resourceArnForDestination", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * (experimental) The ARN of the fleet. */ @Override @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) default @org.jetbrains.annotations.NotNull java.lang.String getFleetArn() { return software.amazon.jsii.Kernel.get(this, "fleetArn", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * (experimental) The Identifier of the fleet. */ @Override @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) default @org.jetbrains.annotations.NotNull java.lang.String getFleetId() { return software.amazon.jsii.Kernel.get(this, "fleetId", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * Apply the given removal policy to this resource. *

* The Removal Policy controls what happens to this resource when it stops * being managed by CloudFormation, either because you've removed it from the * CDK application or because you've made a change that requires the resource * to be replaced. *

* The resource can be deleted (RemovalPolicy.DESTROY), or left in your AWS * account for data recovery and cleanup later (RemovalPolicy.RETAIN). *

* @param policy This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override default void applyRemovalPolicy(final @org.jetbrains.annotations.NotNull software.amazon.awscdk.RemovalPolicy policy) { software.amazon.jsii.Kernel.call(this, "applyRemovalPolicy", software.amazon.jsii.NativeType.VOID, new Object[] { java.util.Objects.requireNonNull(policy, "policy is required") }); } /** * (experimental) Grant the grantee identity permissions to perform actions. *

* @param grantee This parameter is required. * @param actions This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override default @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.iam.Grant grant(final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.iam.IGrantable grantee, final @org.jetbrains.annotations.NotNull java.lang.String... actions) { return software.amazon.jsii.Kernel.call(this, "grant", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.iam.Grant.class), java.util.stream.Stream.concat(java.util.Arrays.stream(new Object[] { java.util.Objects.requireNonNull(grantee, "grantee is required") }), java.util.Arrays.stream(actions)).toArray(Object[]::new)); } /** * (experimental) Return the given named metric for this fleet. *

* @param metricName This parameter is required. * @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override default @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metric(final @org.jetbrains.annotations.NotNull java.lang.String metricName, final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props) { return software.amazon.jsii.Kernel.call(this, "metric", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class), new Object[] { java.util.Objects.requireNonNull(metricName, "metricName is required"), props }); } /** * (experimental) Instances with ACTIVE status, which means they are running active server processes. *

* The count includes idle instances and those that are hosting one or more game sessions. * This metric measures current total instance capacity. *

* This metric can be used with automatic scaling. *

* @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override default @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricActiveInstances(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props) { return software.amazon.jsii.Kernel.call(this, "metricActiveInstances", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class), new Object[] { props }); } /** * (experimental) Target number of active instances that GameLift is working to maintain in the fleet. *

* With automatic scaling, this value is determined based on the scaling policies currently in force. * Without automatic scaling, this value is set manually. * This metric is not available when viewing data for fleet metric groups. *

* @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override default @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricDesiredInstances(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props) { return software.amazon.jsii.Kernel.call(this, "metricDesiredInstances", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class), new Object[] { props }); } /** * (experimental) Active instances that are currently hosting zero (0) game sessions. *

* This metric measures capacity that is available but unused. * This metric can be used with automatic scaling. *

* @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override default @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricIdleInstances(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props) { return software.amazon.jsii.Kernel.call(this, "metricIdleInstances", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class), new Object[] { props }); } /** * (experimental) Number of spot instances that have been interrupted. *

* @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override default @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricInstanceInterruptions(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props) { return software.amazon.jsii.Kernel.call(this, "metricInstanceInterruptions", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class), new Object[] { props }); } /** * (experimental) Maximum number of instances that are allowed for the fleet. *

* A fleet's instance maximum determines the capacity ceiling during manual or automatic scaling up. * This metric is not available when viewing data for fleet metric groups. *

* @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override default @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricMaxInstances(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props) { return software.amazon.jsii.Kernel.call(this, "metricMaxInstances", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class), new Object[] { props }); } /** * (experimental) Minimum number of instances allowed for the fleet. *

* A fleet's instance minimum determines the capacity floor during manual or automatic scaling down. * This metric is not available when viewing data for fleet metric groups. *

* @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override default @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricMinInstances(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props) { return software.amazon.jsii.Kernel.call(this, "metricMinInstances", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class), new Object[] { props }); } /** * (experimental) Percentage of all active instances that are idle (calculated as IdleInstances / ActiveInstances). *

* This metric can be used for automatic scaling. *

* @param props */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override default @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.cloudwatch.Metric metricPercentIdleInstances(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.cloudwatch.MetricOptions props) { return software.amazon.jsii.Kernel.call(this, "metricPercentIdleInstances", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.cloudwatch.Metric.class), new Object[] { props }); } } }