final public Set<RegionQueue> getQueuesForConcurrentSerialGatewaySender() { if (this.eventProcessor != null && (this.eventProcessor instanceof ConcurrentSerialGatewaySenderEventProcessor)) { return ((ConcurrentSerialGatewaySenderEventProcessor)this.eventProcessor) .getQueues(); } return null; }
@Override public void enqueueEvent(EnumListenerEvent operation, EntryEvent event, Object substituteValue) throws IOException, CacheException { // Get the appropriate index into the gateways int index = Math.abs(getHashCode(((EntryEventImpl)event)) % this.processors.size()); // Distribute the event to the gateway enqueueEvent(operation, event, substituteValue, index); }
@Override public void stopProcessing() { if (!this.isAlive()) { return; .createThreadGroup( "ConcurrentSerialGatewaySenderEventProcessor Logger Group", getLogger()); try { boolean b = f.get(); if (getLogger().fineEnabled()) { getLogger().fine( "ConcurrentSerialGatewaySenderEventProcessor: " + (b ? "Successfully" : "Unsuccesfully") getLogger() .warning( LocalizedStrings.GatewaySender_0_CAUGHT_EXCEPTION_WHILE_STOPPING_1, setIsStopped(true); closeProcessor(); if (getLogger().fineEnabled()) { getLogger().fine( "ConcurrentSerialGatewaySenderEventProcessor: Stopped dispatching: " + this);
waitForRunningStatus(); } catch (GatewaySenderException e) { this.ex = e; this.setException(ex); setIsStopped(true); } else { setIsStopped(false);
@Override public void stopProcessing() { if (!this.isAlive()) { return; setIsStopped(true); closeProcessor();
/** * @param sender */ public ConcurrentSerialGatewaySenderEventProcessor( AbstractGatewaySender sender) { super(LoggingThreadGroup.createThreadGroup("Event Processor for GatewaySender_" + sender.getId(), logger), "Event Processor for GatewaySender_" + sender.getId(), sender); this.sender = sender; initializeMessageQueue(sender.getId()); queues = new HashSet<RegionQueue>(); for (SerialGatewaySenderEventProcessor processor : processors) { queues.add(processor.getQueue()); } setDaemon(true); }
private void waitForRunningStatus() { for (SerialGatewaySenderEventProcessor serialProcessor : this.processors) { synchronized (serialProcessor.runningStateLock) { while (serialProcessor.getException() == null && serialProcessor.isStopped()) { try { serialProcessor.runningStateLock.wait(); } catch (InterruptedException e) { Thread.currentThread().interrupt(); } } Exception ex = serialProcessor.getException(); if (ex != null) { throw new GatewaySenderException( LocalizedStrings.Sender_COULD_NOT_START_GATEWAYSENDER_0_BECAUSE_OF_EXCEPTION_1 .toLocalizedString(new Object[] { this.getId(), ex.getMessage() }), ex.getCause()); } } } }
eventProcessor = new ConcurrentSerialGatewaySenderEventProcessor( SerialAsyncEventQueueImpl.this); } else {
waitForRunningStatus(); } catch (GatewaySenderException e) { this.ex = e; this.setException(ex); setIsStopped(true); } else { setIsStopped(false);
/** * @param sender */ public ConcurrentSerialGatewaySenderEventProcessor( SerialGatewaySenderImpl sender) { super(LogWriterImpl.createThreadGroup("Event Processor for GatewaySender_" + sender.getId(), sender.getLogger()), "Event Processor for GatewaySender_" + sender.getId(), sender); this.sender = sender; initializeMessageQueue(sender.getId()); queues = new HashSet<RegionQueue>(); for (SerialGatewaySenderEventProcessor processor : processors) { queues.add(processor.getQueue()); } setDaemon(true); }
private void waitForRunningStatus() { for (SerialGatewaySenderEventProcessor serialProcessor : this.processors) { synchronized (serialProcessor.runningStateLock) { while (serialProcessor.getException() == null && serialProcessor.isStopped()) { try { serialProcessor.runningStateLock.wait(); } catch (InterruptedException e) { Thread.currentThread().interrupt(); } } Exception ex = serialProcessor.getException(); if (ex != null) { throw new GatewaySenderException( LocalizedStrings.Sender_COULD_NOT_START_GATEWAYSENDER_0_BECAUSE_OF_EXCEPTION_1 .toLocalizedString(new Object[] { this.getId(), ex.getMessage() }), ex.getCause()); } } } }
eventProcessor = new ConcurrentSerialGatewaySenderEventProcessor( SerialGatewaySenderImpl.this); } else {
final public Set<RegionQueue> getQueuesForConcurrentSerialGatewaySender() { if (this.eventProcessor != null && (this.eventProcessor instanceof ConcurrentSerialGatewaySenderEventProcessor)) { return ((ConcurrentSerialGatewaySenderEventProcessor)this.eventProcessor) .getQueues(); } return null; }
@Override public void enqueueEvent(EnumListenerEvent operation, EntryEventImpl event) throws IOException, CacheException { // Get the appropriate index into the gateways int index = Math.abs(getHashCode(((EntryEventImpl)event)) % this.processors.size()); // Distribute the event to the gateway enqueueEvent(operation, event, index); }
final public Set<RegionQueue> getQueues() { if (this.eventProcessor != null) { if (!(this.eventProcessor instanceof ConcurrentSerialGatewaySenderEventProcessor)) { Set<RegionQueue> queues = new HashSet<RegionQueue>(); queues.add(this.eventProcessor.getQueue()); return queues; } return ((ConcurrentSerialGatewaySenderEventProcessor)this.eventProcessor) .getQueues(); } return null; }
final public Set<RegionQueue> getQueues() { if (this.eventProcessor != null) { if (!(this.eventProcessor instanceof ConcurrentSerialGatewaySenderEventProcessor)) { return Collections.singleton(this.eventProcessor.getQueue()); } return ((ConcurrentSerialGatewaySenderEventProcessor)this.eventProcessor) .getQueues(); } return null; }
@Override public int size() { AbstractGatewaySenderEventProcessor eventProcessor = ((AbstractGatewaySender) sender).getEventProcessor(); int size = 0; if (eventProcessor instanceof ConcurrentSerialGatewaySenderEventProcessor) { Set<RegionQueue> queues = ((ConcurrentSerialGatewaySenderEventProcessor) eventProcessor).getQueues(); Iterator<RegionQueue> itr = queues.iterator(); while (itr.hasNext()) { size = size + itr.next().size(); } } else { size = eventProcessor.getQueue().size(); } return size; }
Set<RegionQueue> queues = cProcessor.getQueues(); StringBuilder sb = new StringBuilder(); sb.append("Concurrent serial gateway sender " + sender.getId() + " uses " + queues.size() + " regions");
Set<RegionQueue> queues = cProcessor.getQueues(); StringBuilder sb = new StringBuilder(); sb.append("Concurrent serial gateway sender " + sender.getId() + " uses " + queues.size() + " regions");