DynamicCommandMetadata is a simple POJO for extracting commands which are user-definable and
generated at run-time from a user-defined JSON. This class concerns with the population of those
JSON objects onto more accessible formats for easier internal handling.
A default instance of this Builder will create a PGAdapter proxy server that:
Accepts connections to any Cloud Spanner database. The database name must be given as a
fully qualified database name in the PostgreSQL connection URL.
Accepts connections on a dynamically assigned port. You can get the port that was
assigned to the server after the server has started by calling ProxyServer#getLocalPort().
Uses the default credentials in the current runtime environment.
Listens for Unix domain socket connections on '/tmp'.
The PostgreSQL wire protocol can send data in both binary and text format. When using text
format, the Server will normally send output back to the client using a format
understood by PostgreSQL clients. If you are using the server with a text-only client that does
not try to interpret the data that is returned by the server, such as for example psql, then it
is advisable to use Cloud Spanner formatting. The server will then return all data in a format
understood by Cloud Spanner.
The default format used by the server is TextFormat.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-28 UTC."],[],[],null,["# Package com.google.cloud.spanner.pgadapter.metadata (0.27.1)\n\nVersion latestkeyboard_arrow_down\n\n- [0.27.1 (latest)](/java/docs/reference/pgadapter/latest/com.google.cloud.spanner.pgadapter.metadata)\n- [0.27.0](/java/docs/reference/pgadapter/0.27.0/com.google.cloud.spanner.pgadapter.metadata)\n- [0.26.0](/java/docs/reference/pgadapter/0.26.0/com.google.cloud.spanner.pgadapter.metadata)\n- [0.25.0](/java/docs/reference/pgadapter/0.25.0/com.google.cloud.spanner.pgadapter.metadata)\n- [0.24.0](/java/docs/reference/pgadapter/0.24.0/com.google.cloud.spanner.pgadapter.metadata)\n- [0.23.1](/java/docs/reference/pgadapter/0.23.1/com.google.cloud.spanner.pgadapter.metadata)\n- [0.22.1](/java/docs/reference/pgadapter/0.22.1/com.google.cloud.spanner.pgadapter.metadata)\n- [0.21.0](/java/docs/reference/pgadapter/0.21.0/com.google.cloud.spanner.pgadapter.metadata)\n- [0.20.0](/java/docs/reference/pgadapter/0.20.0/com.google.cloud.spanner.pgadapter.metadata)\n- [0.19.1](/java/docs/reference/pgadapter/0.19.1/com.google.cloud.spanner.pgadapter.metadata)\n- [0.18.4](/java/docs/reference/pgadapter/0.18.4/com.google.cloud.spanner.pgadapter.metadata)\n- [0.17.0](/java/docs/reference/pgadapter/0.17.0/com.google.cloud.spanner.pgadapter.metadata)\n- [0.16.0](/java/docs/reference/pgadapter/0.16.0/com.google.cloud.spanner.pgadapter.metadata)\n- [0.15.0](/java/docs/reference/pgadapter/0.15.0/com.google.cloud.spanner.pgadapter.metadata)\n- [0.14.1](/java/docs/reference/pgadapter/0.14.1/com.google.cloud.spanner.pgadapter.metadata)\n- [0.9.0](/java/docs/reference/pgadapter/0.9.0/com.google.cloud.spanner.pgadapter.metadata)\n- [0.8.0](/java/docs/reference/pgadapter/0.8.0/com.google.cloud.spanner.pgadapter.metadata)\n- [0.7.0](/java/docs/reference/pgadapter/0.7.0/com.google.cloud.spanner.pgadapter.metadata)\n- [0.6.1](/java/docs/reference/pgadapter/0.6.1/com.google.cloud.spanner.pgadapter.metadata)\n- [0.5.1](/java/docs/reference/pgadapter/0.5.1/com.google.cloud.spanner.pgadapter.metadata) \n\nClasses\n-------\n\n### [CommandMetadataParser](/java/docs/reference/pgadapter/latest/com.google.cloud.spanner.pgadapter.metadata.CommandMetadataParser)\n\nParses command metadata json files.\n\n### [ConnectionMetadata](/java/docs/reference/pgadapter/latest/com.google.cloud.spanner.pgadapter.metadata.ConnectionMetadata)\n\n### [DescribeResult](/java/docs/reference/pgadapter/latest/com.google.cloud.spanner.pgadapter.metadata.DescribeResult)\n\n### [DynamicCommandMetadata](/java/docs/reference/pgadapter/latest/com.google.cloud.spanner.pgadapter.metadata.DynamicCommandMetadata)\n\nDynamicCommandMetadata is a simple POJO for extracting commands which are user-definable and\ngenerated at run-time from a user-defined JSON. This class concerns with the population of those\nJSON objects onto more accessible formats for easier internal handling.\n\n### [OptionsMetadata](/java/docs/reference/pgadapter/latest/com.google.cloud.spanner.pgadapter.metadata.OptionsMetadata)\n\nMetadata extractor for CLI.\n\n### [OptionsMetadata.Builder](/java/docs/reference/pgadapter/latest/com.google.cloud.spanner.pgadapter.metadata.OptionsMetadata.Builder)\n\nBuilder class for creating an instance of [OptionsMetadata](/java/docs/reference/pgadapter/latest/com.google.cloud.spanner.pgadapter.metadata.OptionsMetadata).\n\nA default instance of this Builder will create a PGAdapter proxy server that:\n\n1. Accepts connections to any Cloud Spanner database. The database name must be given as a fully qualified database name in the PostgreSQL connection URL.\n2. Accepts connections on a dynamically assigned port. You can get the port that was assigned to the server after the server has started by calling [ProxyServer#getLocalPort()](/java/docs/reference/pgadapter/latest/com.google.cloud.spanner.pgadapter.ProxyServer#com_google_cloud_spanner_pgadapter_ProxyServer_getLocalPort__).\n3. Uses the default credentials in the current runtime environment.\n4. Listens for Unix domain socket connections on '/tmp'.\n\n### [SendResultSetState](/java/docs/reference/pgadapter/latest/com.google.cloud.spanner.pgadapter.metadata.SendResultSetState)\n\nThe state of a result after (a part of it) has been sent to the client.\n\n### [User](/java/docs/reference/pgadapter/latest/com.google.cloud.spanner.pgadapter.metadata.User)\n\nUser class for when proper auth gets added.\n\nEnums\n-----\n\n### [OptionsMetadata.DdlTransactionMode](/java/docs/reference/pgadapter/latest/com.google.cloud.spanner.pgadapter.metadata.OptionsMetadata.DdlTransactionMode)\n\n### [OptionsMetadata.SslMode](/java/docs/reference/pgadapter/latest/com.google.cloud.spanner.pgadapter.metadata.OptionsMetadata.SslMode)\n\n### [OptionsMetadata.TextFormat](/java/docs/reference/pgadapter/latest/com.google.cloud.spanner.pgadapter.metadata.OptionsMetadata.TextFormat)\n\nThe PostgreSQL wire protocol can send data in both binary and text format. When using text\nformat, the [Server](/java/docs/reference/pgadapter/latest/com.google.cloud.spanner.pgadapter.Server) will normally send output back to the client using a format\nunderstood by PostgreSQL clients. If you are using the server with a text-only client that does\nnot try to interpret the data that is returned by the server, such as for example psql, then it\nis advisable to use Cloud Spanner formatting. The server will then return all data in a format\nunderstood by Cloud Spanner.\n\nThe default format used by the server is [TextFormat](/java/docs/reference/pgadapter/latest/com.google.cloud.spanner.pgadapter.metadata.OptionsMetadata.TextFormat)."]]