@Override public void getQueueSizes(EventServicePb.GetQueueSizesRequest req, StreamObserver<EventServicePb.GetQueueSizesResponse> response) { EventServicePb.GetQueueSizesResponse.Builder builder = EventServicePb.GetQueueSizesResponse.newBuilder(); for (Map.Entry<String, Map<String, Long>> pair : ((Map<String, Map<String, Long>>)eventService.getEventQueues(true)).entrySet()) { builder.putEventToQueueInfo(pair.getKey(), EventServicePb.GetQueueSizesResponse.QueueInfo.newBuilder() .putAllQueueSizes(pair.getValue()).build() ); } response.onNext(builder.build()); response.onCompleted(); }