public void commitTransaction(ConnectionContext context, TransactionId xid, boolean onePhase) throws Exception { trace(new TransactionInfo(context.getConnectionId(), xid, onePhase ? TransactionInfo.COMMIT_ONE_PHASE : TransactionInfo.COMMIT_TWO_PHASE)); super.commitTransaction(context, xid, onePhase); }
public void beginTransaction(ConnectionContext context, TransactionId xid) throws Exception { trace(new TransactionInfo(context.getConnectionId(), xid, TransactionInfo.BEGIN)); super.beginTransaction(context, xid); }
public void rollbackTransaction(ConnectionContext context, TransactionId xid) throws Exception { trace(new TransactionInfo(context.getConnectionId(), xid, TransactionInfo.ROLLBACK)); super.rollbackTransaction(context, xid); }
public void forgetTransaction(ConnectionContext context, TransactionId xid) throws Exception { trace(new TransactionInfo(context.getConnectionId(), xid, TransactionInfo.FORGET)); super.forgetTransaction(context, xid); }
public int prepareTransaction(ConnectionContext context, TransactionId xid) throws Exception { trace(new TransactionInfo(context.getConnectionId(), xid, TransactionInfo.PREPARE)); return super.prepareTransaction(context, xid); }
@Override public void removeConnection(ConnectionContext context, ConnectionInfo info, Throwable error) throws Exception { String clientId = info.getClientId(); if (clientId == null) { throw new InvalidClientIDException("No clientID specified for connection disconnect request"); } synchronized (clientIdSet) { ConnectionContext oldValue = clientIdSet.get(clientId); // we may be removing the duplicate connection, not the first connection to be created // so lets check that their connection IDs are the same if (oldValue == context) { if (isEqual(oldValue.getConnectionId(), info.getConnectionId())) { clientIdSet.remove(clientId); } } } connections.remove(context.getConnection()); }
public void beginTransaction(ConnectionContext context, TransactionId xid) throws Exception { // the transaction may have already been started. if (xid.isXATransaction()) { XATransaction transaction = null; synchronized (xaTransactions) { transaction = xaTransactions.get(xid); if (transaction != null) { return; } transaction = new XATransaction(transactionStore, (XATransactionId)xid, this, context.getConnectionId()); xaTransactions.put(xid, transaction); } } else { Map<TransactionId, Transaction> transactionMap = context.getTransactions(); Transaction transaction = transactionMap.get(xid); if (transaction != null) { throw new JMSException("Transaction '" + xid + "' has already been started."); } transaction = new LocalTransaction(transactionStore, (LocalTransactionId)xid, context); transactionMap.put(xid, transaction); } }
@Override public Destination addDestination(ConnectionContext context, ActiveMQDestination destination, boolean create) throws Exception { Destination answer = super.addDestination(context, destination, create); if (!AdvisorySupport.isAdvisoryTopic(destination)) { //for queues, create demand if isUseVirtualDestSubsOnCreation is true if (getBrokerService().isUseVirtualDestSubsOnCreation() && destination.isQueue()) { //check if this new destination matches a virtual destination that exists for (VirtualDestination virtualDestination : virtualDestinations) { if (virtualDestinationMatcher.matches(virtualDestination, destination)) { fireVirtualDestinationAddAdvisory(context, null, destination, virtualDestination); } } } DestinationInfo info = new DestinationInfo(context.getConnectionId(), DestinationInfo.ADD_OPERATION_TYPE, destination); DestinationInfo previous = destinations.putIfAbsent(destination, info); if (previous == null) { ActiveMQTopic topic = AdvisorySupport.getDestinationAdvisoryTopic(destination); fireAdvisory(context, topic, info); } } return answer; }
@Override public void send(ProducerBrokerExchange producerExchange, Message messageSend) throws Exception { ConnectionMonitor monitor = monitors.get(producerExchange.getConnectionContext().getConnectionId()); if( monitor!=null ) { monitor.onSend(producerExchange, messageSend); } }
public void commitTransaction(ConnectionContext context, TransactionId xid, boolean onePhase) throws Exception { trace(new TransactionInfo(context.getConnectionId(), xid, onePhase ? TransactionInfo.COMMIT_ONE_PHASE : TransactionInfo.COMMIT_TWO_PHASE)); super.commitTransaction(context, xid, onePhase); }
/** * Forgets a transaction. * * @param context * @param xid * @throws Exception */ public void forgetTransaction(ConnectionContext context, TransactionId xid) throws Exception { TransactionInfo info = new TransactionInfo(context.getConnectionId(), xid, TransactionInfo.FORGET); sendAsyncToSlave(info); super.forgetTransaction(context, xid); }
public void forgetTransaction(ConnectionContext context, TransactionId xid) throws Exception { trace(new TransactionInfo(context.getConnectionId(), xid, TransactionInfo.FORGET)); super.forgetTransaction(context, xid); }
public int prepareTransaction(ConnectionContext context, TransactionId xid) throws Exception { trace(new TransactionInfo(context.getConnectionId(), xid, TransactionInfo.PREPARE)); return super.prepareTransaction(context, xid); }
public void rollbackTransaction(ConnectionContext context, TransactionId xid) throws Exception { trace(new TransactionInfo(context.getConnectionId(), xid, TransactionInfo.ROLLBACK)); super.rollbackTransaction(context, xid); }
public void rollbackTransaction(ConnectionContext context, TransactionId xid) throws Exception { trace(new TransactionInfo(context.getConnectionId(), xid, TransactionInfo.ROLLBACK)); super.rollbackTransaction(context, xid); }
public void beginTransaction(ConnectionContext context, TransactionId xid) throws Exception { trace(new TransactionInfo(context.getConnectionId(), xid, TransactionInfo.BEGIN)); super.beginTransaction(context, xid); }
public int prepareTransaction(ConnectionContext context, TransactionId xid) throws Exception { trace(new TransactionInfo(context.getConnectionId(), xid, TransactionInfo.PREPARE)); return super.prepareTransaction(context, xid); }
/** * Rollsback a transaction. * * @param context * @param xid * @throws Exception */ public void rollbackTransaction(ConnectionContext context, TransactionId xid) throws Exception { TransactionInfo info = new TransactionInfo(context.getConnectionId(), xid, TransactionInfo.ROLLBACK); sendAsyncToSlave(info); super.rollbackTransaction(context, xid); }
public int prepareTransaction(ConnectionContext context, TransactionId xid) throws Exception { trace(new TransactionInfo(context.getConnectionId(), xid, TransactionInfo.PREPARE)); return super.prepareTransaction(context, xid); }
/** * begin a transaction * * @param context * @param xid * @throws Exception */ public void beginTransaction(ConnectionContext context, TransactionId xid) throws Exception { TransactionInfo info = new TransactionInfo(context.getConnectionId(), xid, TransactionInfo.BEGIN); sendAsyncToSlave(info); super.beginTransaction(context, xid); }