Package org.postgresql.replication.fluent

# Interface ChainedCreateReplicationSlotBuilder

All Known Implementing Classes:
  `ReplicationCreateSlotBuilder`

public interface ChainedCreateReplicationSlotBuilder
Fluent interface for specify common parameters for Logical and Physical replication.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `ChainedLogicalCreateSlotBuilder`
  `logical()`
  Get the logical slot builder.
  `ChainedPhysicalCreateSlotBuilder`
  `physical()`
  Create physical replication stream for process wal logs in binary form.

- ## Method Details

  - ### logical

    ChainedLogicalCreateSlotBuilder logical()
    Get the logical slot builder. Example usage:

            pgConnection
                .getReplicationAPI()
                .createReplicationSlot()
                .logical()
                .withSlotName("mySlot")
                .withOutputPlugin("test_decoding")
                .make();

            PGReplicationStream stream =
                pgConnection
                    .getReplicationAPI()
                    .replicationStream()
                    .logical()
                    .withSlotName("mySlot")
                    .withSlotOption("include-xids", false)
                    .withSlotOption("skip-empty-xacts", true)
                    .start();

            while (true) {
              ByteBuffer buffer = stream.read();
              //process logical changes
            }

    Returns:
      not null fluent api

  - ### physical

    ChainedPhysicalCreateSlotBuilder physical()
    Create physical replication stream for process wal logs in binary form.

    Example usage:

            pgConnection
                .getReplicationAPI()
                .createReplicationSlot()
                .physical()
                .withSlotName("mySlot")
                .make();

            PGReplicationStream stream =
                pgConnection
                    .getReplicationAPI()
                    .replicationStream()
                    .physical()
                    .withSlotName("mySlot")
                    .start();

            while (true) {
              ByteBuffer buffer = stream.read();
              //process binary WAL logs
            }

    Returns:
      not null fluent api