Class PostgresPlugin.Builder

java.lang.Object
com.google.genkit.plugins.postgresql.PostgresPlugin.Builder
Enclosing class:
PostgresPlugin

public static class PostgresPlugin.Builder extends Object
Builder for PostgresPlugin.
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • connectionString

      public PostgresPlugin.Builder connectionString(String connectionString)
      Sets the JDBC connection string (required unless externalDataSource is provided).

      Example: "jdbc:postgresql://localhost:5432/mydb"

    • username

      public PostgresPlugin.Builder username(String username)
      Sets the database username.
    • password

      public PostgresPlugin.Builder password(String password)
      Sets the database password.
    • addTable

      public PostgresPlugin.Builder addTable(PostgresTableConfig tableConfig)
      Adds a table configuration.
    • hikariProperty

      public PostgresPlugin.Builder hikariProperty(String key, Object value)
      Sets a HikariCP connection pool property.

      Common properties:

      • maximumPoolSize - maximum pool size (default: 10)
      • minimumIdle - minimum idle connections (default: 2)
      • connectionTimeout - connection timeout in ms (default: 30000)
      • idleTimeout - idle connection timeout in ms
      • maxLifetime - maximum connection lifetime in ms
    • dataSource

      public PostgresPlugin.Builder dataSource(DataSource dataSource)
      Sets an external DataSource to use instead of creating one.

      This is useful when you want to manage the connection pool yourself or use a different connection pool implementation.

    • local

      public static PostgresPlugin.Builder local(String database, String username, String password)
      Creates a builder configured for a local PostgreSQL instance.
      Parameters:
      database - the database name
      username - the username
      password - the password
      Returns:
      a pre-configured builder
    • build

      public PostgresPlugin build()
      Builds the PostgresPlugin.
      Throws:
      IllegalStateException - if required configuration is missing