package org.openstack.atlas.service.domain.repository; import org.openstack.atlas.service.domain.exceptions.EntityNotFoundException; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.springframework.transaction.annotation.Transactional; import javax.persistence.EntityManager; import javax.persistence.PersistenceContext; import java.util.ArrayList; import java.util.List; @org.springframework.stereotype.Repository @Transactional public class RateLimitRepository { final Log LOG = LogFactory.getLog(RateLimitRepository.class); @PersistenceContext(unitName = "loadbalancing") private EntityManager entityManager; public List<Integer> getAllRateLimitedLoadBalancerIds() throws EntityNotFoundException { List<Integer> loadBalancerIds = entityManager.createQuery("SELECT r.loadbalancer.id FROM RateLimit r").getResultList(); if (loadBalancerIds != null && loadBalancerIds.size() > 0) { return loadBalancerIds; } else { return new ArrayList<Integer>(); } } }