/** * {@inheritDoc} */ public Iterator<V> iterator() { return iterator.get(); }
/** * {@inheritDoc} */ public Iterator<V> iterator() { return iterator.get(); }
public BufferPool get() { WeakReference<BufferPool> ref = threadLocal.get(); if (ref == null) { BufferPool pool = bufferPoolFactory.create(serializationService); ref = new WeakReference<BufferPool>(pool); strongReferences.put(Thread.currentThread(), pool); threadLocal.set(ref); return pool; } else { BufferPool pool = ref.get(); if (pool == null) { throw notActiveExceptionSupplier.get(); } return pool; } }
public BufferPool get() { WeakReference<BufferPool> ref = threadLocal.get(); if (ref == null) { BufferPool pool = bufferPoolFactory.create(serializationService); ref = new WeakReference<BufferPool>(pool); strongReferences.put(Thread.currentThread(), pool); threadLocal.set(ref); return pool; } else { BufferPool pool = ref.get(); if (pool == null) { throw notActiveExceptionSupplier.get(); } return pool; } }
private void retryFailedTargets() throws InterruptedException, ExecutionException { List<Member> failedMembers = new LinkedList<Member>(); for (Map.Entry<Member, Object> memberResult : results.entrySet()) { Member member = memberResult.getKey(); Object result = memberResult.getValue(); if (result instanceof Throwable) { failedMembers.add(member); } } for (Member failedMember : failedMembers) { Operation operation = operationFactory.get(); Future future = operationService.createInvocationBuilder(serviceName, operation, failedMember.getAddress()).invoke(); results.put(failedMember, future); } for (Member failedMember : failedMembers) { Future future = (Future) results.get(failedMember); Object result = future.get(); results.put(failedMember, result); } } }
private void retryFailedTargets() throws InterruptedException, ExecutionException { List<Member> failedMembers = new LinkedList<Member>(); for (Map.Entry<Member, Object> memberResult : results.entrySet()) { Member member = memberResult.getKey(); Object result = memberResult.getValue(); if (result instanceof Throwable) { failedMembers.add(member); } } for (Member failedMember : failedMembers) { Operation operation = operationFactory.get(); Future future = operationService.createInvocationBuilder(serviceName, operation, failedMember.getAddress()).invoke(); results.put(failedMember, future); } for (Member failedMember : failedMembers) { Future future = (Future) results.get(failedMember); Object result = future.get(); results.put(failedMember, result); } } }
@Override public HandlerStatus onWrite() { // the buffer is in reading mode compactOrClear(dst); try { for (; ; ) { if (command == null) { command = src.get(); if (command == null) { // everything is processed, so we are done return CLEAN; } } if (command.writeTo(dst)) { // command got written, lets see if another command can be written command = null; } else { // the command didn't get written completely return DIRTY; } } } finally { dst.flip(); } } }
@Override public HandlerStatus onWrite() { compactOrClear(dst); try { for (; ; ) { if (message == null) { message = src.get(); if (message == null) { // everything is processed, so we are done return CLEAN; } } if (message.writeTo(dst)) { // message got written, lets see if another message can be written message = null; } else { // the message didn't get written completely, so we are done. return DIRTY; } } } finally { dst.flip(); } } }
@Override public HandlerStatus onWrite() { compactOrClear(dst); try { for (; ; ) { if (packet == null) { packet = src.get(); if (packet == null) { // everything is processed, so we are done return CLEAN; } } if (packetWriter.writeTo(packet, dst)) { // packet got written, lets see if another packet can be written packet = null; } else { // the packet didn't get written completely, so we are done. return DIRTY; } } } finally { dst.flip(); } } }
@Override public HandlerStatus onWrite() { // the buffer is in reading mode compactOrClear(dst); try { for (; ; ) { if (command == null) { command = src.get(); if (command == null) { // everything is processed, so we are done return CLEAN; } } if (command.writeTo(dst)) { // command got written, lets see if another command can be written command = null; } else { // the command didn't get written completely return DIRTY; } } } finally { dst.flip(); } } }
@Override public HandlerStatus onWrite() { compactOrClear(dst); try { for (; ; ) { if (packet == null) { packet = src.get(); if (packet == null) { // everything is processed, so we are done return CLEAN; } } if (packetWriter.writeTo(packet, dst)) { // packet got written, lets see if another packet can be written packet = null; } else { // the packet didn't get written completely, so we are done. return DIRTY; } } } finally { dst.flip(); } } }
@Override public HandlerStatus onWrite() { compactOrClear(dst); try { for (; ; ) { if (message == null) { message = src.get(); if (message == null) { // everything is processed, so we are done return CLEAN; } } if (message.writeTo(dst)) { // message got written, lets see if another message can be written message = null; } else { // the message didn't get written completely, so we are done. return DIRTY; } } } finally { dst.flip(); } } }
private ICompletableFuture<Object> invokeOnMember(Member member) { Address address = member.getAddress(); Operation operation = operationSupplier.get(); String serviceName = operation.getServiceName(); return nodeEngine.getOperationService().invokeOnTarget(serviceName, operation, address); }
private void invokeOnAllTargets() { for (Member target : targets) { Future future = operationService.createInvocationBuilder(serviceName, operationFactory.get(), target.getAddress()) .setTryCount(TRY_COUNT).setTryPauseMillis(TRY_PAUSE_MILLIS).invoke(); futures.put(target, future); } }
private void invokeOnAllTargets() { for (Member target : targets) { Future future = operationService.createInvocationBuilder(serviceName, operationFactory.get(), target.getAddress()) .setTryCount(TRY_COUNT).setTryPauseMillis(TRY_PAUSE_MILLIS).invoke(); futures.put(target, future); } }
private ICompletableFuture<Object> invokeOnMember(Member member) { Address address = member.getAddress(); Operation operation = operationSupplier.get(); String serviceName = operation.getServiceName(); return nodeEngine.getOperationService().invokeOnTarget(serviceName, operation, address); }
private void invokeOnAllMembers(Supplier<Operation> operationSupplier) { NodeEngineImpl nodeEngine = instance.node.nodeEngine; OperationService os = nodeEngine.getOperationService(); try { for (Member member : nodeEngine.getClusterService().getMembers()) { if (!member.localMember()) { os.invokeOnTarget(ClusterServiceImpl.SERVICE_NAME, operationSupplier.get(), member.getAddress()); } else { os.execute(operationSupplier.get()); } } } catch (Throwable t) { throw ExceptionUtil.rethrow(t); } }
private void invokeOnAllMembers(Supplier<Operation> operationSupplier) { NodeEngineImpl nodeEngine = instance.node.nodeEngine; OperationService os = nodeEngine.getOperationService(); try { for (Member member : nodeEngine.getClusterService().getMembers()) { if (!member.localMember()) { os.invokeOnTarget(ClusterServiceImpl.SERVICE_NAME, operationSupplier.get(), member.getAddress()); } else { os.execute(operationSupplier.get()); } } } catch (Throwable t) { throw ExceptionUtil.rethrow(t); } }
@Override protected void processMessage() throws Throwable { Supplier<Operation> operationSupplier = createOperationSupplier(); Collection<Member> targets = getTargets(); returnResponseIfNoTargetLeft(targets, EMPTY_MAP); final InternalOperationService operationService = nodeEngine.getOperationService(); MultiTargetCallback callback = new MultiTargetCallback(targets); for (Member target : targets) { Operation op = operationSupplier.get(); InvocationBuilder builder = operationService.createInvocationBuilder(getServiceName(), op, target.getAddress()) .setResultDeserialized(false) .setExecutionCallback(new SingleTargetCallback(target, callback)); builder.invoke(); } }
@Override protected void processMessage() throws Throwable { Supplier<Operation> operationSupplier = createOperationSupplier(); Collection<Member> targets = getTargets(); returnResponseIfNoTargetLeft(targets, EMPTY_MAP); final InternalOperationService operationService = nodeEngine.getOperationService(); MultiTargetCallback callback = new MultiTargetCallback(targets); for (Member target : targets) { Operation op = operationSupplier.get(); InvocationBuilder builder = operationService.createInvocationBuilder(getServiceName(), op, target.getAddress()) .setResultDeserialized(false) .setExecutionCallback(new SingleTargetCallback(target, callback)); builder.invoke(); } }