All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazon.redshift.core.ReplicationProtocol Maven / Gradle / Ivy

There is a newer version: 2.1.0.30
Show newest version
/*
 * Copyright (c) 2016, PostgreSQL Global Development Group
 * See the LICENSE file in the project root for more information.
 */

package com.amazon.redshift.core;

import com.amazon.redshift.logger.RedshiftLogger;
import com.amazon.redshift.replication.RedshiftReplicationStream;
import com.amazon.redshift.replication.fluent.logical.LogicalReplicationOptions;
import com.amazon.redshift.replication.fluent.physical.PhysicalReplicationOptions;

import java.sql.SQLException;

/**
 * 

Abstracts the protocol-specific details of physic and logic replication.

* *

With each connection open with replication options associate own instance ReplicationProtocol.

*/ public interface ReplicationProtocol { /** * @param options not null options for logical replication stream * @param logger the logger to log the entry for debugging. * @return not null stream instance from which available fetch wal logs that was decode by output * plugin * @throws SQLException on error */ RedshiftReplicationStream startLogical(LogicalReplicationOptions options, RedshiftLogger logger) throws SQLException; /** * @param options not null options for physical replication stream * @param logger the logger to log the entry for debugging. * @return not null stream instance from which available fetch wal logs * @throws SQLException on error */ RedshiftReplicationStream startPhysical(PhysicalReplicationOptions options, RedshiftLogger logger) throws SQLException; }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy