@Override public Iterable<ServiceEndPoint> filter(Iterable<ServiceEndPoint> endPoints, PartitionContext partitionContext) { HashCode partitionHash = getPartitionHash(partitionContext); if (partitionHash == null) { return endPoints; // No partition hash means any server can handle the request. } // The choose() method is synchronized. Do any prep work we can up front before calling into it. Map<String, ServiceEndPoint> endPointsById = indexById(endPoints); ServiceEndPoint endPoint = choose(endPointsById, partitionHash); return Collections.singleton(endPoint); }
@Override public void purge(String apiKey, @PartitionKey String queue) { doPurge(apiKey, queue); } }
@Override public void configure(ServicePoolBuilder<AuthQueueService> servicePoolBuilder) { servicePoolBuilder.withPartitionFilter(new ConsistentHashPartitionFilter()) .withPartitionContextAnnotationsFrom(QueueClient.class); }
@Override public void purge(String apiKey, @PartitionKey String queue) { doPurge(apiKey, queue); } }
@Override public void configure(ServicePoolBuilder<QueueService> servicePoolBuilder) { servicePoolBuilder.withPartitionFilter(new ConsistentHashPartitionFilter()) .withPartitionContextAnnotationsFrom(QueueServiceAuthenticatorProxy.class); }
@Override public Iterable<ServiceEndPoint> filter(Iterable<ServiceEndPoint> endPoints, PartitionContext partitionContext) { HashCode partitionHash = getPartitionHash(partitionContext); if (partitionHash == null) { return endPoints; // No partition hash means any server can handle the request. } // The choose() method is synchronized. Do any prep work we can up front before calling into it. Map<String, ServiceEndPoint> endPointsById = indexById(endPoints); ServiceEndPoint endPoint = choose(endPointsById, partitionHash); return Collections.singleton(endPoint); }
@Override public long getClaimCount(String apiKey, @PartitionKey String queue) { return doGetClaimCount(apiKey, queue); }
@Override public void configure(ServicePoolBuilder<SubjectDatabus> servicePoolBuilder) { servicePoolBuilder.withPartitionFilter(new ConsistentHashPartitionFilter()) .withPartitionContextAnnotationsFrom(AbstractSubjectDatabus.class); }
@Override public List<Message> poll(String apiKey, @PartitionKey String queue, Duration claimTtl, int limit) { return doPoll(apiKey, queue, claimTtl, limit); }
@Override public void configure(ServicePoolBuilder<DedupQueueService> servicePoolBuilder) { servicePoolBuilder.withPartitionFilter(new ConsistentHashPartitionFilter()) .withPartitionContextAnnotationsFrom(DedupQueueServiceAuthenticatorProxy.class); }
@Override public void purge(@PartitionKey String queue) { _authDedupQueueService.purge(_apiKey, queue); }
@Override public void configure(ServicePoolBuilder<AuthDatabus> servicePoolBuilder) { servicePoolBuilder.withPartitionFilter(new ConsistentHashPartitionFilter()) .withPartitionContextAnnotationsFrom(DatabusClient.class); }
@Override public List<Message> peek(@PartitionKey String queue, int limit) { return _authDedupQueueService.peek(_apiKey, queue, limit); }
@Override public void configure(ServicePoolBuilder<Databus> servicePoolBuilder) { servicePoolBuilder.withPartitionFilter(new ConsistentHashPartitionFilter()) .withPartitionContextAnnotationsFrom(DatabusAuthenticatorProxy.class); }
@Override public long getEventCountUpTo(@PartitionKey String subscription, long limit) { return _authDatabus.getEventCountUpTo(_apiKey, subscription, limit); }
@Override public void configure(ServicePoolBuilder<AuthDedupQueueService> servicePoolBuilder) { servicePoolBuilder.withPartitionFilter(new ConsistentHashPartitionFilter()) .withPartitionContextAnnotationsFrom(DedupQueueClient.class); }
@Override public void unclaimAll(@PartitionKey String queue) { _authDedupQueueService.unclaimAll(_apiKey, queue); }
@Override public long getMessageCount(@PartitionKey String queue) { return _authDedupQueueService.getMessageCount(_apiKey, queue); }
@Override public List<Message> poll(@PartitionKey String queue, Duration claimTtl, int limit) { return _authDedupQueueService.poll(_apiKey, queue, claimTtl, limit); }
@Override public long getClaimCount(@PartitionKey String subscription) { return _authDatabus.getClaimCount(_apiKey, subscription); }