Class CreateApplicationRequest

All Implemented Interfaces:
SdkPojo, ToCopyableBuilder<CreateApplicationRequest.Builder,CreateApplicationRequest>

@Generated("software.amazon.awssdk:codegen") public final class CreateApplicationRequest extends GameLiftStreamsRequest implements ToCopyableBuilder<CreateApplicationRequest.Builder,CreateApplicationRequest>
  • Method Details

    • applicationLogOutputUri

      public final String applicationLogOutputUri()

      An Amazon S3 URI to a bucket where you would like Amazon GameLift Streams to save application logs. Required if you specify one or more ApplicationLogPaths.

      The log bucket must have permissions that give Amazon GameLift Streams access to write the log files. For more information, see Application log bucket permission policy in the Amazon GameLift Streams Developer Guide.

      Returns:
      An Amazon S3 URI to a bucket where you would like Amazon GameLift Streams to save application logs. Required if you specify one or more ApplicationLogPaths.

      The log bucket must have permissions that give Amazon GameLift Streams access to write the log files. For more information, see Application log bucket permission policy in the Amazon GameLift Streams Developer Guide.

    • hasApplicationLogPaths

      public final boolean hasApplicationLogPaths()
      For responses, this returns true if the service returned a value for the ApplicationLogPaths property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • applicationLogPaths

      public final List<String> applicationLogPaths()

      Locations of log files that your content generates during a stream session. Enter path values that are relative to the ApplicationSourceUri location. You can specify up to 10 log paths. Amazon GameLift Streams uploads designated log files to the Amazon S3 bucket that you specify in ApplicationLogOutputUri at the end of a stream session. To retrieve stored log files, call GetStreamSession and get the LogFileLocationUri.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasApplicationLogPaths() method.

      Returns:
      Locations of log files that your content generates during a stream session. Enter path values that are relative to the ApplicationSourceUri location. You can specify up to 10 log paths. Amazon GameLift Streams uploads designated log files to the Amazon S3 bucket that you specify in ApplicationLogOutputUri at the end of a stream session. To retrieve stored log files, call GetStreamSession and get the LogFileLocationUri.
    • applicationSourceUri

      public final String applicationSourceUri()

      The location of the content that you want to stream. Enter an Amazon S3 URI to a bucket that contains your game or other application. The location can have a multi-level prefix structure, but it must include all the files needed to run the content. Amazon GameLift Streams copies everything under the specified location.

      This value is immutable. To designate a different content location, create a new application.

      The Amazon S3 bucket and the Amazon GameLift Streams application must be in the same Amazon Web Services Region.

      Returns:
      The location of the content that you want to stream. Enter an Amazon S3 URI to a bucket that contains your game or other application. The location can have a multi-level prefix structure, but it must include all the files needed to run the content. Amazon GameLift Streams copies everything under the specified location.

      This value is immutable. To designate a different content location, create a new application.

      The Amazon S3 bucket and the Amazon GameLift Streams application must be in the same Amazon Web Services Region.

    • clientToken

      public final String clientToken()

      A unique identifier that represents a client request. The request is idempotent, which ensures that an API request completes only once. When users send a request, Amazon GameLift Streams automatically populates this field.

      Returns:
      A unique identifier that represents a client request. The request is idempotent, which ensures that an API request completes only once. When users send a request, Amazon GameLift Streams automatically populates this field.
    • description

      public final String description()

      A human-readable label for the application. You can update this value later.

      Returns:
      A human-readable label for the application. You can update this value later.
    • executablePath

      public final String executablePath()

      The path and file name of the executable file that launches the content for streaming. Enter a path value that is relative to the location set in ApplicationSourceUri.

      Returns:
      The path and file name of the executable file that launches the content for streaming. Enter a path value that is relative to the location set in ApplicationSourceUri.
    • runtimeEnvironment

      public final RuntimeEnvironment runtimeEnvironment()

      Configuration settings that identify the operating system for an application resource. This can also include a compatibility layer and other drivers.

      A runtime environment can be one of the following:

      • For Linux applications

        • Ubuntu 22.04 LTS (Type=UBUNTU, Version=22_04_LTS)

      • For Windows applications

        • Microsoft Windows Server 2022 Base (Type=WINDOWS, Version=2022)

        • Proton 8.0-5 (Type=PROTON, Version=20241007)

        • Proton 8.0-2c (Type=PROTON, Version=20230704)

      Returns:
      Configuration settings that identify the operating system for an application resource. This can also include a compatibility layer and other drivers.

      A runtime environment can be one of the following:

      • For Linux applications

        • Ubuntu 22.04 LTS (Type=UBUNTU, Version=22_04_LTS)

      • For Windows applications

        • Microsoft Windows Server 2022 Base (Type=WINDOWS, Version=2022)

        • Proton 8.0-5 (Type=PROTON, Version=20241007)

        • Proton 8.0-2c (Type=PROTON, Version=20230704)

    • hasTags

      public final boolean hasTags()
      For responses, this returns true if the service returned a value for the Tags property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • tags

      public final Map<String,String> tags()

      A list of labels to assign to the new application resource. Tags are developer-defined key-value pairs. Tagging Amazon Web Services resources is useful for resource management, access management and cost allocation. See Tagging Amazon Web Services Resources in the Amazon Web Services General Reference. You can use TagResource to add tags, UntagResource to remove tags, and ListTagsForResource to view tags on existing resources.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasTags() method.

      Returns:
      A list of labels to assign to the new application resource. Tags are developer-defined key-value pairs. Tagging Amazon Web Services resources is useful for resource management, access management and cost allocation. See Tagging Amazon Web Services Resources in the Amazon Web Services General Reference. You can use TagResource to add tags, UntagResource to remove tags, and ListTagsForResource to view tags on existing resources.
    • toBuilder

      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<CreateApplicationRequest.Builder,CreateApplicationRequest>
      Specified by:
      toBuilder in class GameLiftStreamsRequest
      Returns:
      a builder for type T
    • builder

      public static CreateApplicationRequest.Builder builder()
    • serializableBuilderClass

      public static Class<? extends CreateApplicationRequest.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class AwsRequest
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class AwsRequest
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
      Description copied from class: SdkRequest
      Used to retrieve the value of a field from any class that extends SdkRequest. The field name specified should match the member name from the corresponding service-2.json model specified in the codegen-resources folder for a given service. The class specifies what class to cast the returned value to. If the returned value is also a modeled class, the SdkRequest.getValueForField(String, Class) method will again be available.
      Overrides:
      getValueForField in class SdkRequest
      Parameters:
      fieldName - The name of the member to be retrieved.
      clazz - The class to cast the returned object to.
      Returns:
      Optional containing the casted return value
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.
    • sdkFieldNameToField

      public final Map<String,SdkField<?>> sdkFieldNameToField()
      Specified by:
      sdkFieldNameToField in interface SdkPojo
      Returns:
      The mapping between the field name and its corresponding field.