Class ShadowReplicator
java.lang.Object
org.apache.pulsar.broker.service.AbstractReplicator
org.apache.pulsar.broker.service.persistent.PersistentReplicator
org.apache.pulsar.broker.service.persistent.ShadowReplicator
- All Implemented Interfaces:
AsyncCallbacks.DeleteCallback,AsyncCallbacks.ReadEntriesCallback,MessageExpirer,Replicator
Replicate messages to shadow topic.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.pulsar.broker.service.persistent.PersistentReplicator
PersistentReplicator.ProducerSendCallbackNested classes/interfaces inherited from class org.apache.pulsar.broker.service.AbstractReplicator
AbstractReplicator.State -
Field Summary
Fields inherited from class org.apache.pulsar.broker.service.persistent.PersistentReplicator
cursor, dispatchRateLimiter, fetchSchemaInProgress, messageTTLInSeconds, msgExpired, msgOut, PENDING_MESSAGES_UPDATER, stats, topicFields inherited from class org.apache.pulsar.broker.service.AbstractReplicator
backOff, brokerService, client, localCluster, localTopic, localTopicName, producer, producerBuilder, producerQueueSize, remoteCluster, remoteTopicName, REPL_PRODUCER_NAME_DELIMITER, replicationClient, replicatorId, replicatorPrefix, state, STATE_UPDATER -
Constructor Summary
ConstructorsConstructorDescriptionShadowReplicator(String shadowTopic, PersistentTopic sourceTopic, ManagedCursor cursor, BrokerService brokerService, PulsarClientImpl replicationClient) -
Method Summary
Modifier and TypeMethodDescriptionprotected Stringstatic StringgetShadowReplicatorName(String replicatorPrefix, String shadowTopic) Cursor name fot this shadow replicator.protected booleanreplicateEntries(List<Entry> entries) Methods inherited from class org.apache.pulsar.broker.service.persistent.PersistentReplicator
checkReplicatedSubscriptionMarker, clearBacklog, computeStats, deleteComplete, deleteFailed, disableReplicatorRead, doReleaseResources, expireMessages, expireMessages, getCursor, getMessageExpiredCount, getNumberOfEntriesInBacklog, getRateLimiter, getReplicatorReadPosition, getSchemaInfo, initializeDispatchRateLimiterIfNeeded, peekNthMessage, readEntriesComplete, readEntriesFailed, readMoreEntries, setProducerAndTriggerReadEntries, skipMessages, updateCursorState, updateMessageTTL, updateRateLimiter, updateRatesMethods inherited from class org.apache.pulsar.broker.service.AbstractReplicator
closeProducerAsync, compareSetAndGetState, delayStartProducerAfterDisconnected, disconnect, doCloseProducerAsync, getAttributes, getRemoteCluster, getRemoteCluster, getReplicationDelayMs, getReplicatorName, getState, isConnected, isLocalTopicActive, isTerminated, isWritable, prepareCreateProducer, remove, scheduleCheckTopicActiveAndStartProducer, startProducer, terminate, tryChangeStatusToTerminating, validatePartitionedTopicAsyncMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.pulsar.broker.service.Replicator
disconnect, getLocalTopic, getRemoteCluster, getStats, isConnected, isTerminated, startProducer, terminate
-
Constructor Details
-
ShadowReplicator
public ShadowReplicator(String shadowTopic, PersistentTopic sourceTopic, ManagedCursor cursor, BrokerService brokerService, PulsarClientImpl replicationClient) throws PulsarServerException - Throws:
PulsarServerException
-
-
Method Details
-
getProducerName
- Specified by:
getProducerNamein classAbstractReplicator- Returns:
- Producer name format : replicatorPrefix-localTopic-->remoteTopic
-
replicateEntries
- Specified by:
replicateEntriesin classPersistentReplicator
-
getShadowReplicatorName
Cursor name fot this shadow replicator.- Parameters:
replicatorPrefix-shadowTopic-- Returns:
-