diff options
Diffstat (limited to 'src/main/java/at/gv/egiz/moazs/RedisRepository.java')
-rw-r--r-- | src/main/java/at/gv/egiz/moazs/RedisRepository.java | 63 |
1 files changed, 0 insertions, 63 deletions
diff --git a/src/main/java/at/gv/egiz/moazs/RedisRepository.java b/src/main/java/at/gv/egiz/moazs/RedisRepository.java deleted file mode 100644 index db49b23..0000000 --- a/src/main/java/at/gv/egiz/moazs/RedisRepository.java +++ /dev/null @@ -1,63 +0,0 @@ -package at.gv.egiz.moazs; - -import at.gv.e_government.reference.namespace.zustellung.mzs.app2mzs_.DeliveryRequestType; -import at.gv.e_government.reference.namespace.zustellung.mzs.app2mzs_.ObjectFactory; -import org.apache.tools.ant.filters.StringInputStream; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.redis.core.HashOperations; -import org.springframework.data.redis.core.RedisTemplate; -import org.springframework.stereotype.Repository; - -import javax.annotation.PostConstruct; -import javax.xml.bind.JAXBElement; -import java.util.Optional; - -@Repository -public class RedisRepository { - - private static final Logger logger = LoggerFactory.getLogger(RedisRepository.class); - - private static final String KEY = "MZS_DELIVERY_REQUEST"; - - private final RedisTemplate<String, Object> redisTemplate; - - private final Marshaller marshaller; - - private HashOperations<String, String, String> hashOperations; - - private final ObjectFactory factory = new ObjectFactory(); - - @Autowired - public RedisRepository(RedisTemplate<String, Object> redisTemplate, Marshaller marshaller){ - this.redisTemplate = redisTemplate; - this.marshaller = marshaller; - } - - @PostConstruct - private void init(){ - hashOperations = redisTemplate.opsForHash(); - } - - public void add(DeliveryRequestType request) { - var hashKey = request.getMetaData().getAppDeliveryID(); - var serializedRequest = marshaller.marshallXml(factory.createDeliveryRequest(request)); - - logger.info("Save DeliveryRequest with AppDeliveryId = {}", hashKey); - hashOperations.put(KEY, hashKey, serializedRequest); - } - - public Optional<DeliveryRequestType> getDeliveryRequest(String appDeliveryID) { - var serializedRequest = (String) hashOperations.get(KEY, appDeliveryID); - - if (serializedRequest == null) { - return Optional.empty(); - } - - var stream = new StringInputStream(serializedRequest); - var request = (JAXBElement<DeliveryRequestType>) marshaller.unmarshallXml(stream); - return Optional.of(request.getValue()); - } - -} |