Homeautomation/src/main/java/de/ph87/homeautomation/knx/group/KnxGroupReader.java
Patrick Haßel 0b146b5972 #3 FIX Property- & Device updates
+ Devices in Property::usages
+ code clean
2022-10-26 21:04:18 +02:00

37 lines
1.0 KiB
Java

package de.ph87.homeautomation.knx.group;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import tuwien.auto.calimero.GroupAddress;
import java.util.List;
import java.util.Optional;
@Slf4j
@Service
@Transactional
@RequiredArgsConstructor
public class KnxGroupReader {
private final KnxGroupRepository knxGroupRepository;
public Optional<KnxGroup> getByAddress(final int main, final int mid, final int sub) {
return knxGroupRepository.findByAddressRaw(new GroupAddress(main, mid, sub).getRawAddress());
}
public List<KnxGroup> findAll() {
return knxGroupRepository.findAll();
}
public List<KnxGroup> findAllLike(final String term) {
return knxGroupRepository.findAllByNameContainsIgnoreCaseOrAddressStrContainsIgnoreCase(term, term);
}
public KnxGroup getById(final long id) {
return knxGroupRepository.findById(id).orElseThrow(RuntimeException::new);
}
}