void addMessage(ConnectionContext context, final Message message, final RecordLocation location) { synchronized (this) { lastLocation = location; MessageId id = message.getMessageId(); messages.put(id, message); message.getMessageId().setFutureOrSequenceLong(0l); if (indexListener != null) { indexListener.onAdd(new IndexListener.MessageContext(context, message, null)); } } }
@Override public void sequenceAssignedWithIndexLocked(final long sequence) { message.getMessageId().setFutureOrSequenceLong(sequence); if (indexListener != null) { if (possibleFuture == null) { trackPendingAdd(dest, sequence); indexListener.onAdd(new IndexListener.MessageContext(context, message, new Runnable() { @Override public void run() { trackPendingAddComplete(dest, sequence); } })); } } } }, null);
@Override public synchronized void addMessage(ConnectionContext context, Message message) throws IOException { synchronized (messageTable) { messageTable.put(message.getMessageId(), message); incMessageStoreStatistics(getMessageStoreStatistics(), message); message.incrementReferenceCount(); message.getMessageId().setFutureOrSequenceLong(sequenceId++); if (indexListener != null) { indexListener.onAdd(new IndexListener.MessageContext(context, message, null)); } } }
@Override public ListenableFuture<Object> asyncAddQueueMessage(final ConnectionContext context, final Message message) throws IOException { if (isConcurrentStoreAndDispatchQueues()) { message.beforeMarshall(wireFormat); StoreQueueTask result = new StoreQueueTask(this, context, message); ListenableFuture<Object> future = result.getFuture(); message.getMessageId().setFutureOrSequenceLong(future); message.setRecievedByDFBridge(true); // flag message as concurrentStoreAndDispatch result.aquireLocks(); synchronized (asyncTaskMap) { addQueueTask(this, result); if (indexListener != null) { indexListener.onAdd(new IndexListener.MessageContext(context, message, null)); } } return future; } else { return super.asyncAddQueueMessage(context, message); } }
indexListener.onAdd(new IndexListener.MessageContext(context, message, new Runnable() { @Override public void run() {
@Override public void run(final ConnectionContext context) throws IOException { JDBCPersistenceAdapter jdbcPersistenceAdapter = (JDBCPersistenceAdapter) persistenceAdapter; final Long preparedEntrySequence = (Long) message.getMessageId().getEntryLocator(); TransactionContext c = jdbcPersistenceAdapter.getTransactionContext(context); long newSequence; synchronized (jdbcMessageStore.pendingAdditions) { newSequence = jdbcPersistenceAdapter.getNextSequenceId(); final long sequenceToSet = newSequence; c.onCompletion(new Runnable() { @Override public void run() { message.getMessageId().setEntryLocator(sequenceToSet); message.getMessageId().setFutureOrSequenceLong(sequenceToSet); } }); if (jdbcMessageStore.getIndexListener() != null) { jdbcMessageStore.getIndexListener().onAdd(new IndexListener.MessageContext(context, message, null)); } } jdbcPersistenceAdapter.commitAdd(context, message.getMessageId(), preparedEntrySequence, newSequence); jdbcMessageStore.onAdd(message, (Long)message.getMessageId().getEntryLocator(), message.getPriority()); }
void addMessage(ConnectionContext context, final Message message, final RecordLocation location) { synchronized (this) { lastLocation = location; MessageId id = message.getMessageId(); messages.put(id, message); message.getMessageId().setFutureOrSequenceLong(0l); if (indexListener != null) { indexListener.onAdd(new IndexListener.MessageContext(context, message, null)); } } }
void addMessage(ConnectionContext context, final Message message, final RecordLocation location) { synchronized (this) { lastLocation = location; MessageId id = message.getMessageId(); messages.put(id, message); message.getMessageId().setFutureOrSequenceLong(0l); if (indexListener != null) { indexListener.onAdd(new IndexListener.MessageContext(context, message, null)); } } }
void addMessage(ConnectionContext context, final Message message, final RecordLocation location) { synchronized (this) { lastLocation = location; MessageId id = message.getMessageId(); messages.put(id, message); message.getMessageId().setFutureOrSequenceLong(0l); if (indexListener != null) { indexListener.onAdd(new IndexListener.MessageContext(context, message, null)); } } }
@Override public void sequenceAssignedWithIndexLocked(final long sequence) { message.getMessageId().setFutureOrSequenceLong(sequence); if (indexListener != null) { if (possibleFuture == null) { trackPendingAdd(dest, sequence); indexListener.onAdd(new IndexListener.MessageContext(context, message, new Runnable() { @Override public void run() { trackPendingAddComplete(dest, sequence); } })); } } } }, null);
@Override public void sequenceAssignedWithIndexLocked(final long sequence) { message.getMessageId().setFutureOrSequenceLong(sequence); if (indexListener != null) { if (possibleFuture == null) { trackPendingAdd(dest, sequence); indexListener.onAdd(new IndexListener.MessageContext(context, message, new Runnable() { @Override public void run() { trackPendingAddComplete(dest, sequence); } })); } } } }, null);
@Override public synchronized void addMessage(ConnectionContext context, Message message) throws IOException { synchronized (messageTable) { messageTable.put(message.getMessageId(), message); incMessageStoreStatistics(getMessageStoreStatistics(), message); message.incrementReferenceCount(); message.getMessageId().setFutureOrSequenceLong(sequenceId++); if (indexListener != null) { indexListener.onAdd(new IndexListener.MessageContext(context, message, null)); } } }
@Override public void sequenceAssignedWithIndexLocked(final long sequence) { message.getMessageId().setFutureOrSequenceLong(sequence); if (indexListener != null) { if (possibleFuture == null) { trackPendingAdd(dest, sequence); indexListener.onAdd(new IndexListener.MessageContext(context, message, new Runnable() { @Override public void run() { trackPendingAddComplete(dest, sequence); } })); } } } }, null);
@Override public synchronized void addMessage(ConnectionContext context, Message message) throws IOException { synchronized (messageTable) { messageTable.put(message.getMessageId(), message); incMessageStoreStatistics(getMessageStoreStatistics(), message); message.incrementReferenceCount(); message.getMessageId().setFutureOrSequenceLong(sequenceId++); if (indexListener != null) { indexListener.onAdd(new IndexListener.MessageContext(context, message, null)); } } }
@Override public synchronized void addMessage(ConnectionContext context, Message message) throws IOException { synchronized (messageTable) { messageTable.put(message.getMessageId(), message); incMessageStoreStatistics(getMessageStoreStatistics(), message); message.incrementReferenceCount(); message.getMessageId().setFutureOrSequenceLong(sequenceId++); if (indexListener != null) { indexListener.onAdd(new IndexListener.MessageContext(context, message, null)); } } }
@Override public ListenableFuture<Object> asyncAddQueueMessage(final ConnectionContext context, final Message message) throws IOException { if (isConcurrentStoreAndDispatchQueues()) { message.beforeMarshall(wireFormat); StoreQueueTask result = new StoreQueueTask(this, context, message); ListenableFuture<Object> future = result.getFuture(); message.getMessageId().setFutureOrSequenceLong(future); message.setRecievedByDFBridge(true); // flag message as concurrentStoreAndDispatch result.aquireLocks(); synchronized (asyncTaskMap) { addQueueTask(this, result); if (indexListener != null) { indexListener.onAdd(new IndexListener.MessageContext(context, message, null)); } } return future; } else { return super.asyncAddQueueMessage(context, message); } }
@Override public ListenableFuture<Object> asyncAddQueueMessage(final ConnectionContext context, final Message message) throws IOException { if (isConcurrentStoreAndDispatchQueues()) { message.beforeMarshall(wireFormat); StoreQueueTask result = new StoreQueueTask(this, context, message); ListenableFuture<Object> future = result.getFuture(); message.getMessageId().setFutureOrSequenceLong(future); message.setRecievedByDFBridge(true); // flag message as concurrentStoreAndDispatch result.aquireLocks(); synchronized (asyncTaskMap) { addQueueTask(this, result); if (indexListener != null) { indexListener.onAdd(new IndexListener.MessageContext(context, message, null)); } } return future; } else { return super.asyncAddQueueMessage(context, message); } }
indexListener.onAdd(new IndexListener.MessageContext(context, message, new Runnable() { @Override public void run() {
@Override public ListenableFuture<Object> asyncAddQueueMessage(final ConnectionContext context, final Message message) throws IOException { if (isConcurrentStoreAndDispatchQueues()) { message.beforeMarshall(wireFormat); StoreQueueTask result = new StoreQueueTask(this, context, message); ListenableFuture<Object> future = result.getFuture(); message.getMessageId().setFutureOrSequenceLong(future); message.setRecievedByDFBridge(true); // flag message as concurrentStoreAndDispatch result.aquireLocks(); synchronized (asyncTaskMap) { addQueueTask(this, result); if (indexListener != null) { indexListener.onAdd(new IndexListener.MessageContext(context, message, null)); } } return future; } else { return super.asyncAddQueueMessage(context, message); } }
indexListener.onAdd(new IndexListener.MessageContext(context, message, new Runnable() { @Override public void run() {