Package org.apache.pulsar.client.impl
Class TransactionMetaStoreHandler
- java.lang.Object
-
- org.apache.pulsar.client.impl.TransactionMetaStoreHandler
-
- All Implemented Interfaces:
io.netty.util.TimerTask,java.io.Closeable,java.lang.AutoCloseable
public class TransactionMetaStoreHandler extends java.lang.Object implements java.io.Closeable, io.netty.util.TimerTaskHandler for transaction meta store.
-
-
Field Summary
Fields Modifier and Type Field Description protected PulsarClientImplclientprotected io.netty.util.Timertimerprotected java.lang.Stringtopic
-
Constructor Summary
Constructors Constructor Description TransactionMetaStoreHandler(long transactionCoordinatorId, PulsarClientImpl pulsarClient, java.lang.String topic, java.util.concurrent.CompletableFuture<java.lang.Void> connectFuture)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.concurrent.CompletableFuture<java.lang.Void>addPublishPartitionToTxnAsync(org.apache.pulsar.client.api.transaction.TxnID txnID, java.util.List<java.lang.String> partitions)java.util.concurrent.CompletableFuture<java.lang.Void>addSubscriptionToTxn(org.apache.pulsar.client.api.transaction.TxnID txnID, java.util.List<org.apache.pulsar.common.api.proto.Subscription> subscriptionList)protected booleanchangeToConnecting()protected booleanchangeToReadyState()protected booleanchangeToRegisteringSchemaState()voidclose()voidconnectionFailed(org.apache.pulsar.client.api.PulsarClientException exception)voidconnectionOpened(ClientCnx cnx)java.util.concurrent.CompletableFuture<java.lang.Void>endTxnAsync(org.apache.pulsar.client.api.transaction.TxnID txnID, org.apache.pulsar.common.api.proto.TxnAction action)protected org.apache.pulsar.client.impl.HandlerState.StategetAndUpdateState(java.util.function.UnaryOperator<org.apache.pulsar.client.impl.HandlerState.State> updater)PulsarClientImplgetClient()org.apache.pulsar.client.impl.HandlerState.StategetConnectHandleState()static org.apache.pulsar.client.api.transaction.TransactionCoordinatorClientExceptiongetExceptionByServerError(org.apache.pulsar.common.api.proto.ServerError serverError, java.lang.String msg)java.lang.StringgetHandlerName()protected org.apache.pulsar.client.impl.HandlerState.StategetState()voidhandleAddSubscriptionToTxnResponse(org.apache.pulsar.common.api.proto.CommandAddSubscriptionToTxnResponse response)java.util.concurrent.CompletableFuture<org.apache.pulsar.client.api.transaction.TxnID>newTransactionAsync(long timeout, java.util.concurrent.TimeUnit unit)voidrun(io.netty.util.Timeout timeout)protected voidsetState(org.apache.pulsar.client.impl.HandlerState.State s)voidstart()
-
-
-
Field Detail
-
timer
protected final io.netty.util.Timer timer
-
client
protected final PulsarClientImpl client
-
topic
protected final java.lang.String topic
-
-
Constructor Detail
-
TransactionMetaStoreHandler
public TransactionMetaStoreHandler(long transactionCoordinatorId, PulsarClientImpl pulsarClient, java.lang.String topic, java.util.concurrent.CompletableFuture<java.lang.Void> connectFuture)
-
-
Method Detail
-
start
public void start()
-
connectionFailed
public void connectionFailed(org.apache.pulsar.client.api.PulsarClientException exception)
-
connectionOpened
public void connectionOpened(ClientCnx cnx)
-
newTransactionAsync
public java.util.concurrent.CompletableFuture<org.apache.pulsar.client.api.transaction.TxnID> newTransactionAsync(long timeout, java.util.concurrent.TimeUnit unit)
-
addPublishPartitionToTxnAsync
public java.util.concurrent.CompletableFuture<java.lang.Void> addPublishPartitionToTxnAsync(org.apache.pulsar.client.api.transaction.TxnID txnID, java.util.List<java.lang.String> partitions)
-
addSubscriptionToTxn
public java.util.concurrent.CompletableFuture<java.lang.Void> addSubscriptionToTxn(org.apache.pulsar.client.api.transaction.TxnID txnID, java.util.List<org.apache.pulsar.common.api.proto.Subscription> subscriptionList)
-
handleAddSubscriptionToTxnResponse
public void handleAddSubscriptionToTxnResponse(org.apache.pulsar.common.api.proto.CommandAddSubscriptionToTxnResponse response)
-
endTxnAsync
public java.util.concurrent.CompletableFuture<java.lang.Void> endTxnAsync(org.apache.pulsar.client.api.transaction.TxnID txnID, org.apache.pulsar.common.api.proto.TxnAction action)
-
getExceptionByServerError
public static org.apache.pulsar.client.api.transaction.TransactionCoordinatorClientException getExceptionByServerError(org.apache.pulsar.common.api.proto.ServerError serverError, java.lang.String msg)
-
run
public void run(io.netty.util.Timeout timeout) throws java.lang.Exception- Specified by:
runin interfaceio.netty.util.TimerTask- Throws:
java.lang.Exception
-
close
public void close() throws java.io.IOException- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Throws:
java.io.IOException
-
getConnectHandleState
public org.apache.pulsar.client.impl.HandlerState.State getConnectHandleState()
-
getHandlerName
public java.lang.String getHandlerName()
-
changeToReadyState
protected boolean changeToReadyState()
-
changeToRegisteringSchemaState
protected boolean changeToRegisteringSchemaState()
-
getState
protected org.apache.pulsar.client.impl.HandlerState.State getState()
-
changeToConnecting
protected boolean changeToConnecting()
-
setState
protected void setState(org.apache.pulsar.client.impl.HandlerState.State s)
-
getAndUpdateState
protected org.apache.pulsar.client.impl.HandlerState.State getAndUpdateState(java.util.function.UnaryOperator<org.apache.pulsar.client.impl.HandlerState.State> updater)
-
getClient
public PulsarClientImpl getClient()
-
-