class AggregatingAutoScalingService implements AutoScalingService {

    @Override
    public Observable<GetPolicyResult> getAllScalingPolicies(CallMetadata callMetadata) {
        return aggregatingClient.call(AutoScalingServiceGrpc::newStub, getAllScalingPoliciesInCell(callMetadata))
                .map(CellResponse::getResult)
                .reduce((acc, next) -> GetPolicyResult.newBuilder()
                        .addAllItems(acc.getItemsList())
                        .addAllItems(next.getItemsList())
                        .build()
                );
    }

    @Inject public  AggregatingAutoScalingService(CellConnector connector,
                                         GrpcConfiguration configuration,
                                         AggregatingJobManagementServiceHelper jobManagementServiceHelper,
                                         AggregatingCellClient aggregatingClient);

}