pg-transactional-outbox
Version:
A PostgreSQL based transactional outbox and inbox pattern implementation to support exactly once message processing (with at least once message delivery).
33 lines • 4.17 kB
TypeScript
export { DatabaseClient } from './common/database';
export { ErrorCode, ExtendedError, MessageError, TransactionalOutboxInboxError, ensureExtendedError, } from './common/error';
export { ListenerConfig, ListenerSettings, OutboxOrInbox, fallbackEnvPrefix, getInboxListenerEnvTemplate, getInboxListenerSettings, getOutboxListenerEnvTemplate, getOutboxListenerSettings, inboxEnvPrefix, outboxEnvPrefix, } from './common/listener-config';
export { InMemoryLogEntry, TransactionalLogger, getDefaultLogger, getDisabledLogger, getInMemoryLogger, } from './common/logger';
export { IsolationLevel, executeTransaction } from './common/utils';
export { GeneralMessageHandler } from './handler/general-message-handler';
export { HandlerStrategies } from './handler/handler-strategies';
export { TransactionalMessageHandler } from './handler/transactional-message-handler';
export { MessageStorage, initializeMessageStorage, } from './message/initialize-message-storage';
export { DeleteOld, runMessageCleanupOnce, runScheduledMessageCleanup, } from './message/message-cleanup';
export { StoredTransactionalMessage, TransactionalMessage, } from './message/transactional-message';
export { PollingListenerConfig, PollingListenerSettings, applyDefaultPollingListenerConfigValues, getInboxPollingListenerEnvTemplate, getInboxPollingListenerSettings, getOutboxPollingListenerEnvTemplate, getOutboxPollingListenerSettings, } from './polling/config';
export { initializePollingMessageListener } from './polling/polling-message-listener';
export { PollingMessageStrategies } from './polling/polling-strategies';
export { ReplicationConcurrencyController } from './replication/concurrency-controller/concurrency-controller';
export { createReplicationFullConcurrencyController } from './replication/concurrency-controller/create-full-concurrency-controller';
export { ReplicationMultiConcurrencyType, createReplicationMultiConcurrencyController, } from './replication/concurrency-controller/create-multi-concurrency-controller';
export { createReplicationMutexConcurrencyController } from './replication/concurrency-controller/create-mutex-concurrency-controller';
export { createReplicationSegmentMutexConcurrencyController } from './replication/concurrency-controller/create-segment-mutex-concurrency-controller';
export { createReplicationSemaphoreConcurrencyController } from './replication/concurrency-controller/create-semaphore-concurrency-controller';
export { ReplicationListenerConfig, ReplicationListenerSettings, applyDefaultReplicationListenerConfigValues, getInboxReplicationListenerEnvTemplate, getInboxReplicationListenerSettings, getOutboxReplicationListenerEnvTemplate, getOutboxReplicationListenerSettings, } from './replication/config';
export { initializeReplicationMessageListener } from './replication/replication-message-listener';
export { ReplicationMessageStrategies } from './replication/replication-strategies';
export { defaultReplicationConcurrencyStrategy } from './replication/strategies/concurrency-strategy';
export { ReplicationListenerRestartStrategy, defaultReplicationListenerAndSlotRestartStrategy, defaultReplicationListenerRestartStrategy, } from './replication/strategies/listener-restart-strategy';
export { DatabasePollingSetupConfig, DatabaseReplicationSetupConfig, DatabaseSetup, DatabaseSetupConfig, } from './setup/database-setup';
export { DatabaseSetupExporter } from './setup/database-setup-exporter';
export { MessageProcessingDbClientStrategy, defaultMessageProcessingDbClientStrategy, } from './strategies/message-processing-db-client-strategy';
export { MessageProcessingTimeoutStrategy, defaultMessageProcessingTimeoutStrategy, } from './strategies/message-processing-timeout-strategy';
export { MessageProcessingTransactionLevelStrategy, defaultMessageProcessingTransactionLevelStrategy, } from './strategies/message-processing-transaction-level-strategy';
export { MessageRetryStrategy, defaultMessageRetryStrategy, } from './strategies/message-retry-strategy';
export { PoisonousMessageRetryStrategy, defaultPoisonousMessageRetryStrategy, } from './strategies/poisonous-message-retry-strategy';
//# sourceMappingURL=index.d.ts.map