Class TableDestination

java.lang.Object
io.github.flink.gcp.connector.bigtable.TableDestination
All Implemented Interfaces:
Serializable

@Public public final class TableDestination extends Object implements Serializable
A fully-qualified Bigtable table reference: project, instance and table.

The instance is part of the identity because a table id is unique only within one instance, and a project may hold several instances.

Instances are pure table identity: equals(Object) and hashCode() are defined over exactly (project, instance, table). Nothing about how the client reaches the table — the application profile that selects routing, the emulator endpoint — belongs here; those are sink options, because they choose a path to the data rather than the data's address.

This type sits at the module root rather than under sink because both directions take the same value; the module's detailed agent guidance records that deviation.

Instances are immutable and cheap to reuse.

See Also:
  • Method Details

    • of

      public static TableDestination of(String project, String instance, String table)
      Creates a TableDestination from bare ids, not resource paths.
      Parameters:
      project - the Google Cloud project id
      instance - the Bigtable instance id
      table - the Bigtable table id
      Returns:
      the destination
      Throws:
      IllegalArgumentException - if a component is null or blank, has leading or trailing whitespace, or contains '/' — a separator would make the composed resource path address a different resource
    • getProject

      public String getProject()
      Returns the Google Cloud project id, given as a bare id rather than a resource path.
    • getInstance

      public String getInstance()
      Returns the Bigtable instance id, given as a bare id rather than a resource path.
    • getTable

      public String getTable()
      Returns the Bigtable table id, given as a bare id rather than a resource path.
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Returns the table as project.instance.table.
      Overrides:
      toString in class Object