java.lang.Object
software.amazon.awssdk.services.appsync.model.GraphqlApi
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<GraphqlApi.Builder,GraphqlApi>

@Generated("software.amazon.awssdk:codegen") public final class GraphqlApi extends Object implements SdkPojo, Serializable, ToCopyableBuilder<GraphqlApi.Builder,GraphqlApi>

Describes a GraphQL API.

See Also:
  • Method Details

    • name

      public final String name()

      The API name.

      Returns:
      The API name.
    • apiId

      public final String apiId()

      The API ID.

      Returns:
      The API ID.
    • authenticationType

      public final AuthenticationType authenticationType()

      The authentication type.

      If the service returns an enum value that is not available in the current SDK version, authenticationType will return AuthenticationType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from authenticationTypeAsString().

      Returns:
      The authentication type.
      See Also:
    • authenticationTypeAsString

      public final String authenticationTypeAsString()

      The authentication type.

      If the service returns an enum value that is not available in the current SDK version, authenticationType will return AuthenticationType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from authenticationTypeAsString().

      Returns:
      The authentication type.
      See Also:
    • logConfig

      public final LogConfig logConfig()

      The Amazon CloudWatch Logs configuration.

      Returns:
      The Amazon CloudWatch Logs configuration.
    • userPoolConfig

      public final UserPoolConfig userPoolConfig()

      The Amazon Cognito user pool configuration.

      Returns:
      The Amazon Cognito user pool configuration.
    • openIDConnectConfig

      public final OpenIDConnectConfig openIDConnectConfig()

      The OpenID Connect configuration.

      Returns:
      The OpenID Connect configuration.
    • arn

      public final String arn()

      The Amazon Resource Name (ARN).

      Returns:
      The Amazon Resource Name (ARN).
    • hasUris

      public final boolean hasUris()
      For responses, this returns true if the service returned a value for the Uris 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.
    • uris

      public final Map<String,String> uris()

      The URIs.

      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 hasUris() method.

      Returns:
      The URIs.
    • 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()

      The tags.

      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:
      The tags.
    • hasAdditionalAuthenticationProviders

      public final boolean hasAdditionalAuthenticationProviders()
      For responses, this returns true if the service returned a value for the AdditionalAuthenticationProviders 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.
    • additionalAuthenticationProviders

      public final List<AdditionalAuthenticationProvider> additionalAuthenticationProviders()

      A list of additional authentication providers for the GraphqlApi API.

      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 hasAdditionalAuthenticationProviders() method.

      Returns:
      A list of additional authentication providers for the GraphqlApi API.
    • xrayEnabled

      public final Boolean xrayEnabled()

      A flag indicating whether to use X-Ray tracing for this GraphqlApi.

      Returns:
      A flag indicating whether to use X-Ray tracing for this GraphqlApi.
    • wafWebAclArn

      public final String wafWebAclArn()

      The ARN of the WAF access control list (ACL) associated with this GraphqlApi, if one exists.

      Returns:
      The ARN of the WAF access control list (ACL) associated with this GraphqlApi, if one exists.
    • lambdaAuthorizerConfig

      public final LambdaAuthorizerConfig lambdaAuthorizerConfig()

      Configuration for Lambda function authorization.

      Returns:
      Configuration for Lambda function authorization.
    • hasDns

      public final boolean hasDns()
      For responses, this returns true if the service returned a value for the Dns 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.
    • dns

      public final Map<String,String> dns()

      The DNS records for the API.

      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 hasDns() method.

      Returns:
      The DNS records for the API.
    • visibility

      public final GraphQLApiVisibility visibility()

      Sets the value of the GraphQL API to public (GLOBAL) or private (PRIVATE). If no value is provided, the visibility will be set to GLOBAL by default. This value cannot be changed once the API has been created.

      If the service returns an enum value that is not available in the current SDK version, visibility will return GraphQLApiVisibility.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from visibilityAsString().

      Returns:
      Sets the value of the GraphQL API to public (GLOBAL) or private (PRIVATE). If no value is provided, the visibility will be set to GLOBAL by default. This value cannot be changed once the API has been created.
      See Also:
    • visibilityAsString

      public final String visibilityAsString()

      Sets the value of the GraphQL API to public (GLOBAL) or private (PRIVATE). If no value is provided, the visibility will be set to GLOBAL by default. This value cannot be changed once the API has been created.

      If the service returns an enum value that is not available in the current SDK version, visibility will return GraphQLApiVisibility.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from visibilityAsString().

      Returns:
      Sets the value of the GraphQL API to public (GLOBAL) or private (PRIVATE). If no value is provided, the visibility will be set to GLOBAL by default. This value cannot be changed once the API has been created.
      See Also:
    • apiType

      public final GraphQLApiType apiType()

      The value that indicates whether the GraphQL API is a standard API (GRAPHQL) or merged API ( MERGED).

      If the service returns an enum value that is not available in the current SDK version, apiType will return GraphQLApiType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from apiTypeAsString().

      Returns:
      The value that indicates whether the GraphQL API is a standard API (GRAPHQL) or merged API ( MERGED).
      See Also:
    • apiTypeAsString

      public final String apiTypeAsString()

      The value that indicates whether the GraphQL API is a standard API (GRAPHQL) or merged API ( MERGED).

      If the service returns an enum value that is not available in the current SDK version, apiType will return GraphQLApiType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from apiTypeAsString().

      Returns:
      The value that indicates whether the GraphQL API is a standard API (GRAPHQL) or merged API ( MERGED).
      See Also:
    • mergedApiExecutionRoleArn

      public final String mergedApiExecutionRoleArn()

      The Identity and Access Management service role ARN for a merged API. The AppSync service assumes this role on behalf of the Merged API to validate access to source APIs at runtime and to prompt the AUTO_MERGE to update the merged API endpoint with the source API changes automatically.

      Returns:
      The Identity and Access Management service role ARN for a merged API. The AppSync service assumes this role on behalf of the Merged API to validate access to source APIs at runtime and to prompt the AUTO_MERGE to update the merged API endpoint with the source API changes automatically.
    • owner

      public final String owner()

      The account owner of the GraphQL API.

      Returns:
      The account owner of the GraphQL API.
    • ownerContact

      public final String ownerContact()

      The owner contact information for an API resource.

      This field accepts any string input with a length of 0 - 256 characters.

      Returns:
      The owner contact information for an API resource.

      This field accepts any string input with a length of 0 - 256 characters.

    • introspectionConfig

      public final GraphQLApiIntrospectionConfig introspectionConfig()

      Sets the value of the GraphQL API to enable (ENABLED) or disable (DISABLED) introspection. If no value is provided, the introspection configuration will be set to ENABLED by default. This field will produce an error if the operation attempts to use the introspection feature while this field is disabled.

      For more information about introspection, see GraphQL introspection.

      If the service returns an enum value that is not available in the current SDK version, introspectionConfig will return GraphQLApiIntrospectionConfig.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from introspectionConfigAsString().

      Returns:
      Sets the value of the GraphQL API to enable (ENABLED) or disable (DISABLED) introspection. If no value is provided, the introspection configuration will be set to ENABLED by default. This field will produce an error if the operation attempts to use the introspection feature while this field is disabled.

      For more information about introspection, see GraphQL introspection.

      See Also:
    • introspectionConfigAsString

      public final String introspectionConfigAsString()

      Sets the value of the GraphQL API to enable (ENABLED) or disable (DISABLED) introspection. If no value is provided, the introspection configuration will be set to ENABLED by default. This field will produce an error if the operation attempts to use the introspection feature while this field is disabled.

      For more information about introspection, see GraphQL introspection.

      If the service returns an enum value that is not available in the current SDK version, introspectionConfig will return GraphQLApiIntrospectionConfig.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from introspectionConfigAsString().

      Returns:
      Sets the value of the GraphQL API to enable (ENABLED) or disable (DISABLED) introspection. If no value is provided, the introspection configuration will be set to ENABLED by default. This field will produce an error if the operation attempts to use the introspection feature while this field is disabled.

      For more information about introspection, see GraphQL introspection.

      See Also:
    • queryDepthLimit

      public final Integer queryDepthLimit()

      The maximum depth a query can have in a single request. Depth refers to the amount of nested levels allowed in the body of query. The default value is 0 (or unspecified), which indicates there's no depth limit. If you set a limit, it can be between 1 and 75 nested levels. This field will produce a limit error if the operation falls out of bounds.

      Note that fields can still be set to nullable or non-nullable. If a non-nullable field produces an error, the error will be thrown upwards to the first nullable field available.

      Returns:
      The maximum depth a query can have in a single request. Depth refers to the amount of nested levels allowed in the body of query. The default value is 0 (or unspecified), which indicates there's no depth limit. If you set a limit, it can be between 1 and 75 nested levels. This field will produce a limit error if the operation falls out of bounds.

      Note that fields can still be set to nullable or non-nullable. If a non-nullable field produces an error, the error will be thrown upwards to the first nullable field available.

    • resolverCountLimit

      public final Integer resolverCountLimit()

      The maximum number of resolvers that can be invoked in a single request. The default value is 0 (or unspecified), which will set the limit to 10000. When specified, the limit value can be between 1 and 10000. This field will produce a limit error if the operation falls out of bounds.

      Returns:
      The maximum number of resolvers that can be invoked in a single request. The default value is 0 (or unspecified), which will set the limit to 10000. When specified, the limit value can be between 1 and 10000. This field will produce a limit error if the operation falls out of bounds.
    • enhancedMetricsConfig

      public final EnhancedMetricsConfig enhancedMetricsConfig()

      The enhancedMetricsConfig object.

      Returns:
      The enhancedMetricsConfig object.
    • toBuilder

      public GraphqlApi.Builder 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<GraphqlApi.Builder,GraphqlApi>
      Returns:
      a builder for type T
    • builder

      public static GraphqlApi.Builder builder()
    • serializableBuilderClass

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

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

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • 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)
    • 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.