| Total Complexity | 5 |
| Total Lines | 33 |
| Duplicated Lines | 0 % |
| Changes | 0 | ||
| 1 | package dev.hltech.dredd.domain.contracts; |
||
| 12 | @Component |
||
| 13 | public class JpaServiceContractsRepository implements ServiceContractsRepository { |
||
| 14 | |||
| 15 | private final EntityManager entityManager; |
||
| 16 | |||
| 17 | @Autowired |
||
| 18 | public JpaServiceContractsRepository(EntityManager entityManager) { |
||
| 19 | this.entityManager = entityManager; |
||
| 20 | } |
||
| 21 | |||
| 22 | @Override |
||
| 23 | public ServiceContracts persist(ServiceContracts serviceContracts) { |
||
| 24 | return entityManager.merge(serviceContracts); |
||
| 25 | } |
||
| 26 | |||
| 27 | @Override |
||
| 28 | public Optional<ServiceContracts> find(String name, String version) { |
||
| 29 | return ofNullable(entityManager.find(ServiceContracts.class, new ServiceContracts.ServiceContractsId(name, version))); |
||
| 30 | } |
||
| 31 | |||
| 32 | @Override |
||
| 33 | public List<ServiceContracts> find(String name) { |
||
| 34 | return entityManager |
||
| 35 | .createQuery("select o from " + ServiceContracts.class.getName() + " o where o.id.name = :name", ServiceContracts.class) |
||
| 36 | .setParameter("name", name) |
||
| 37 | .getResultList(); |
||
| 38 | } |
||
| 39 | |||
| 40 | @Override |
||
| 41 | public List<String> getServiceNames() { |
||
| 42 | return entityManager |
||
| 43 | .createQuery("select o.id.name from " + ServiceContracts.class.getName() + " o", String.class) |
||
| 44 | .getResultList(); |
||
| 45 | } |
||
| 48 |