class CassandraLoadBalancerStore implements LoadBalancerStore {

    @Override
    public Completable removeLoadBalancer(JobLoadBalancer jobLoadBalancer) {
        logger.debug("Removing load balancer {}", jobLoadBalancer);
        BoundStatement stmt = deleteAssociation.bind(jobLoadBalancer.getJobId(), jobLoadBalancer.getLoadBalancerId());
        return storeHelper.execute(stmt)
                // Note: If the C* entry doesn't exist, it'll fail here and not remove from the map.
                .map(rs -> {
                    loadBalancerStateMap.remove(jobLoadBalancer);
                    removeJobLoadBalancerAssociation(jobLoadBalancer);
                    return jobLoadBalancer;
                })
                .toCompletable();
    }

    @Inject public  CassandraLoadBalancerStore(CassandraStoreConfiguration configuration,
                                      @Named(LOAD_BALANCER_SANITIZER) EntitySanitizer entitySanitizer,
                                      @Named(LOAD_BALANCER_CASSANDRA_SESSION) Session session);

}