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

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

The data structure representing a proxy managed by the RDS Proxy.

This data type is used as a response element in the DescribeDBProxies action.

See Also:
  • Method Details

    • dbProxyName

      public final String dbProxyName()

      The identifier for the proxy. This name must be unique for all proxies owned by your Amazon Web Services account in the specified Amazon Web Services Region.

      Returns:
      The identifier for the proxy. This name must be unique for all proxies owned by your Amazon Web Services account in the specified Amazon Web Services Region.
    • dbProxyArn

      public final String dbProxyArn()

      The Amazon Resource Name (ARN) for the proxy.

      Returns:
      The Amazon Resource Name (ARN) for the proxy.
    • status

      public final DBProxyStatus status()

      The current status of this proxy. A status of available means the proxy is ready to handle requests. Other values indicate that you must wait for the proxy to be ready, or take some action to resolve an issue.

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

      Returns:
      The current status of this proxy. A status of available means the proxy is ready to handle requests. Other values indicate that you must wait for the proxy to be ready, or take some action to resolve an issue.
      See Also:
    • statusAsString

      public final String statusAsString()

      The current status of this proxy. A status of available means the proxy is ready to handle requests. Other values indicate that you must wait for the proxy to be ready, or take some action to resolve an issue.

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

      Returns:
      The current status of this proxy. A status of available means the proxy is ready to handle requests. Other values indicate that you must wait for the proxy to be ready, or take some action to resolve an issue.
      See Also:
    • engineFamily

      public final String engineFamily()

      The kinds of databases that the proxy can connect to. This value determines which database network protocol the proxy recognizes when it interprets network traffic to and from the database. MYSQL supports Aurora MySQL, RDS for MariaDB, and RDS for MySQL databases. POSTGRESQL supports Aurora PostgreSQL and RDS for PostgreSQL databases. SQLSERVER supports RDS for Microsoft SQL Server databases.

      Returns:
      The kinds of databases that the proxy can connect to. This value determines which database network protocol the proxy recognizes when it interprets network traffic to and from the database. MYSQL supports Aurora MySQL, RDS for MariaDB, and RDS for MySQL databases. POSTGRESQL supports Aurora PostgreSQL and RDS for PostgreSQL databases. SQLSERVER supports RDS for Microsoft SQL Server databases.
    • vpcId

      public final String vpcId()

      Provides the VPC ID of the DB proxy.

      Returns:
      Provides the VPC ID of the DB proxy.
    • hasVpcSecurityGroupIds

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

      public final List<String> vpcSecurityGroupIds()

      Provides a list of VPC security groups that the proxy belongs to.

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

      Returns:
      Provides a list of VPC security groups that the proxy belongs to.
    • hasVpcSubnetIds

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

      public final List<String> vpcSubnetIds()

      The EC2 subnet IDs for the proxy.

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

      Returns:
      The EC2 subnet IDs for the proxy.
    • hasAuth

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

      public final List<UserAuthConfigInfo> auth()

      One or more data structures specifying the authorization mechanism to connect to the associated RDS DB instance or Aurora DB cluster.

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

      Returns:
      One or more data structures specifying the authorization mechanism to connect to the associated RDS DB instance or Aurora DB cluster.
    • roleArn

      public final String roleArn()

      The Amazon Resource Name (ARN) for the IAM role that the proxy uses to access Amazon Secrets Manager.

      Returns:
      The Amazon Resource Name (ARN) for the IAM role that the proxy uses to access Amazon Secrets Manager.
    • endpoint

      public final String endpoint()

      The endpoint that you can use to connect to the DB proxy. You include the endpoint value in the connection string for a database client application.

      Returns:
      The endpoint that you can use to connect to the DB proxy. You include the endpoint value in the connection string for a database client application.
    • requireTLS

      public final Boolean requireTLS()

      Indicates whether Transport Layer Security (TLS) encryption is required for connections to the proxy.

      Returns:
      Indicates whether Transport Layer Security (TLS) encryption is required for connections to the proxy.
    • idleClientTimeout

      public final Integer idleClientTimeout()

      The number of seconds a connection to the proxy can have no activity before the proxy drops the client connection. The proxy keeps the underlying database connection open and puts it back into the connection pool for reuse by later connection requests.

      Default: 1800 (30 minutes)

      Constraints: 1 to 28,800

      Returns:
      The number of seconds a connection to the proxy can have no activity before the proxy drops the client connection. The proxy keeps the underlying database connection open and puts it back into the connection pool for reuse by later connection requests.

      Default: 1800 (30 minutes)

      Constraints: 1 to 28,800

    • debugLogging

      public final Boolean debugLogging()

      Indicates whether the proxy includes detailed information about SQL statements in its logs. This information helps you to debug issues involving SQL behavior or the performance and scalability of the proxy connections. The debug information includes the text of SQL statements that you submit through the proxy. Thus, only enable this setting when needed for debugging, and only when you have security measures in place to safeguard any sensitive information that appears in the logs.

      Returns:
      Indicates whether the proxy includes detailed information about SQL statements in its logs. This information helps you to debug issues involving SQL behavior or the performance and scalability of the proxy connections. The debug information includes the text of SQL statements that you submit through the proxy. Thus, only enable this setting when needed for debugging, and only when you have security measures in place to safeguard any sensitive information that appears in the logs.
    • createdDate

      public final Instant createdDate()

      The date and time when the proxy was first created.

      Returns:
      The date and time when the proxy was first created.
    • updatedDate

      public final Instant updatedDate()

      The date and time when the proxy was last updated.

      Returns:
      The date and time when the proxy was last updated.
    • toBuilder

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

      public static DBProxy.Builder builder()
    • serializableBuilderClass

      public static Class<? extends DBProxy.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.