From 7a003c9287be57fe90173e4dd728ad995ed7036e Mon Sep 17 00:00:00 2001
From: Christof Rabensteiner <christof.rabensteiner@iaik.tugraz.at>
Date: Wed, 17 Apr 2019 15:34:48 +0200
Subject: Refactor: Move Repositories to Repository Package

---
 .../java/at/gv/egiz/moazs/DeliveryRepository.java  | 15 ------
 .../at/gv/egiz/moazs/DeliveryRequestHandler.java   |  1 +
 .../gv/egiz/moazs/InMemoryDeliveryRepository.java  | 40 --------------
 .../at/gv/egiz/moazs/RedisDeliveryRepository.java  | 61 ---------------------
 .../egiz/moazs/repository/DeliveryRepository.java  | 15 ++++++
 .../repository/InMemoryDeliveryRepository.java     | 40 ++++++++++++++
 .../moazs/repository/RedisDeliveryRepository.java  | 62 ++++++++++++++++++++++
 7 files changed, 118 insertions(+), 116 deletions(-)
 delete mode 100644 src/main/java/at/gv/egiz/moazs/DeliveryRepository.java
 delete mode 100644 src/main/java/at/gv/egiz/moazs/InMemoryDeliveryRepository.java
 delete mode 100644 src/main/java/at/gv/egiz/moazs/RedisDeliveryRepository.java
 create mode 100644 src/main/java/at/gv/egiz/moazs/repository/DeliveryRepository.java
 create mode 100644 src/main/java/at/gv/egiz/moazs/repository/InMemoryDeliveryRepository.java
 create mode 100644 src/main/java/at/gv/egiz/moazs/repository/RedisDeliveryRepository.java

(limited to 'src')

diff --git a/src/main/java/at/gv/egiz/moazs/DeliveryRepository.java b/src/main/java/at/gv/egiz/moazs/DeliveryRepository.java
deleted file mode 100644
index 6df2829..0000000
--- a/src/main/java/at/gv/egiz/moazs/DeliveryRepository.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package at.gv.egiz.moazs;
-
-import at.gv.e_government.reference.namespace.zustellung.mzs.app2mzs_.DeliveryRequestType;
-import org.springframework.stereotype.Repository;
-
-import java.util.Optional;
-
-@Repository
-public interface DeliveryRepository {
-
-    void add(DeliveryRequestType request);
-
-    Optional<DeliveryRequestType> getDeliveryRequest(String appDeliveryID);
-
-}
diff --git a/src/main/java/at/gv/egiz/moazs/DeliveryRequestHandler.java b/src/main/java/at/gv/egiz/moazs/DeliveryRequestHandler.java
index 7d8cb43..0dc0a15 100644
--- a/src/main/java/at/gv/egiz/moazs/DeliveryRequestHandler.java
+++ b/src/main/java/at/gv/egiz/moazs/DeliveryRequestHandler.java
@@ -2,6 +2,7 @@ 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_.DeliveryResponseType;
+import at.gv.egiz.moazs.repository.DeliveryRepository;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
diff --git a/src/main/java/at/gv/egiz/moazs/InMemoryDeliveryRepository.java b/src/main/java/at/gv/egiz/moazs/InMemoryDeliveryRepository.java
deleted file mode 100644
index aa1e3e9..0000000
--- a/src/main/java/at/gv/egiz/moazs/InMemoryDeliveryRepository.java
+++ /dev/null
@@ -1,40 +0,0 @@
-package at.gv.egiz.moazs;
-
-import at.gv.e_government.reference.namespace.zustellung.mzs.app2mzs_.DeliveryRequestType;
-import com.google.common.cache.Cache;
-import com.google.common.cache.CacheBuilder;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.context.annotation.Profile;
-import org.springframework.stereotype.Repository;
-
-import java.util.Optional;
-import java.util.concurrent.TimeUnit;
-
-@Repository
-@Profile("!cluster")
-public class InMemoryDeliveryRepository implements DeliveryRepository {
-
-    private static final Logger logger = LoggerFactory.getLogger(InMemoryDeliveryRepository.class);
-
-    private static final Cache<String, DeliveryRequestType> rep = CacheBuilder.newBuilder()
-            .expireAfterWrite(30, TimeUnit.MINUTES)
-            .build();
-
-    public InMemoryDeliveryRepository() {
-        logger.info("InMemoryDeliveryRepository()");
-    }
-
-    @Override
-    public void add(DeliveryRequestType request) {
-        String key = request.getMetaData().getAppDeliveryID();
-        logger.info("Save DeliveryRequest with AppDeliveryId = {} to Cache.", key);
-        rep.put(key, request);
-    }
-
-    @Override
-    public Optional<DeliveryRequestType> getDeliveryRequest(String appDeliveryID) {
-        DeliveryRequestType deliveryRequestType = rep.getIfPresent(appDeliveryID);
-        return Optional.ofNullable(deliveryRequestType);
-    }
-}
diff --git a/src/main/java/at/gv/egiz/moazs/RedisDeliveryRepository.java b/src/main/java/at/gv/egiz/moazs/RedisDeliveryRepository.java
deleted file mode 100644
index accae43..0000000
--- a/src/main/java/at/gv/egiz/moazs/RedisDeliveryRepository.java
+++ /dev/null
@@ -1,61 +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.context.annotation.Profile;
-import org.springframework.data.redis.core.HashOperations;
-import org.springframework.data.redis.core.RedisTemplate;
-import org.springframework.stereotype.Repository;
-
-import javax.xml.bind.JAXBElement;
-import java.util.Optional;
-
-@Repository
-@Profile("cluster")
-public class RedisDeliveryRepository implements DeliveryRepository {
-
-    private static final Logger logger = LoggerFactory.getLogger(RedisDeliveryRepository.class);
-
-    private static final String KEY = "MZS_DELIVERY_REQUEST";
-
-    private final RedisTemplate<String, Object> redisTemplate;
-    private final Marshaller marshaller;
-    private final HashOperations<String, String, String> hashOperations;
-    private final ObjectFactory factory = new ObjectFactory();
-
-    @Autowired
-    public RedisDeliveryRepository(RedisTemplate<String, Object> redisTemplate, Marshaller marshaller){
-        logger.info("RedisDeliveryRepository()");
-
-        this.redisTemplate = redisTemplate;
-        this.hashOperations = redisTemplate.opsForHash();
-        this.marshaller = marshaller;
-    }
-
-    @Override
-    public void add(DeliveryRequestType request) {
-        var hashKey = request.getMetaData().getAppDeliveryID();
-        var serializedRequest = marshaller.marshallXml(factory.createDeliveryRequest(request));
-
-        logger.info("Save DeliveryRequest with AppDeliveryId = {} to redis.", hashKey);
-        hashOperations.put(KEY, hashKey, serializedRequest);
-    }
-
-    @Override
-    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());
-    }
-
-}
diff --git a/src/main/java/at/gv/egiz/moazs/repository/DeliveryRepository.java b/src/main/java/at/gv/egiz/moazs/repository/DeliveryRepository.java
new file mode 100644
index 0000000..d5766b6
--- /dev/null
+++ b/src/main/java/at/gv/egiz/moazs/repository/DeliveryRepository.java
@@ -0,0 +1,15 @@
+package at.gv.egiz.moazs.repository;
+
+import at.gv.e_government.reference.namespace.zustellung.mzs.app2mzs_.DeliveryRequestType;
+import org.springframework.stereotype.Repository;
+
+import java.util.Optional;
+
+@Repository
+public interface DeliveryRepository {
+
+    void add(DeliveryRequestType request);
+
+    Optional<DeliveryRequestType> getDeliveryRequest(String appDeliveryID);
+
+}
diff --git a/src/main/java/at/gv/egiz/moazs/repository/InMemoryDeliveryRepository.java b/src/main/java/at/gv/egiz/moazs/repository/InMemoryDeliveryRepository.java
new file mode 100644
index 0000000..e5486d7
--- /dev/null
+++ b/src/main/java/at/gv/egiz/moazs/repository/InMemoryDeliveryRepository.java
@@ -0,0 +1,40 @@
+package at.gv.egiz.moazs.repository;
+
+import at.gv.e_government.reference.namespace.zustellung.mzs.app2mzs_.DeliveryRequestType;
+import com.google.common.cache.Cache;
+import com.google.common.cache.CacheBuilder;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.context.annotation.Profile;
+import org.springframework.stereotype.Repository;
+
+import java.util.Optional;
+import java.util.concurrent.TimeUnit;
+
+@Repository
+@Profile("!cluster")
+public class InMemoryDeliveryRepository implements DeliveryRepository {
+
+    private static final Logger logger = LoggerFactory.getLogger(InMemoryDeliveryRepository.class);
+
+    private static final Cache<String, DeliveryRequestType> rep = CacheBuilder.newBuilder()
+            .expireAfterWrite(30, TimeUnit.MINUTES)
+            .build();
+
+    public InMemoryDeliveryRepository() {
+        logger.info("InMemoryDeliveryRepository()");
+    }
+
+    @Override
+    public void add(DeliveryRequestType request) {
+        String key = request.getMetaData().getAppDeliveryID();
+        logger.info("Save DeliveryRequest with AppDeliveryId = {} to Cache.", key);
+        rep.put(key, request);
+    }
+
+    @Override
+    public Optional<DeliveryRequestType> getDeliveryRequest(String appDeliveryID) {
+        DeliveryRequestType deliveryRequestType = rep.getIfPresent(appDeliveryID);
+        return Optional.ofNullable(deliveryRequestType);
+    }
+}
diff --git a/src/main/java/at/gv/egiz/moazs/repository/RedisDeliveryRepository.java b/src/main/java/at/gv/egiz/moazs/repository/RedisDeliveryRepository.java
new file mode 100644
index 0000000..4f39f31
--- /dev/null
+++ b/src/main/java/at/gv/egiz/moazs/repository/RedisDeliveryRepository.java
@@ -0,0 +1,62 @@
+package at.gv.egiz.moazs.repository;
+
+import at.gv.e_government.reference.namespace.zustellung.mzs.app2mzs_.DeliveryRequestType;
+import at.gv.e_government.reference.namespace.zustellung.mzs.app2mzs_.ObjectFactory;
+import at.gv.egiz.moazs.Marshaller;
+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.context.annotation.Profile;
+import org.springframework.data.redis.core.HashOperations;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.stereotype.Repository;
+
+import javax.xml.bind.JAXBElement;
+import java.util.Optional;
+
+@Repository
+@Profile("cluster")
+public class RedisDeliveryRepository implements DeliveryRepository {
+
+    private static final Logger logger = LoggerFactory.getLogger(RedisDeliveryRepository.class);
+
+    private static final String KEY = "MZS_DELIVERY_REQUEST";
+
+    private final RedisTemplate<String, Object> redisTemplate;
+    private final Marshaller marshaller;
+    private final HashOperations<String, String, String> hashOperations;
+    private final ObjectFactory factory = new ObjectFactory();
+
+    @Autowired
+    public RedisDeliveryRepository(RedisTemplate<String, Object> redisTemplate, Marshaller marshaller){
+        logger.info("RedisDeliveryRepository()");
+
+        this.redisTemplate = redisTemplate;
+        this.hashOperations = redisTemplate.opsForHash();
+        this.marshaller = marshaller;
+    }
+
+    @Override
+    public void add(DeliveryRequestType request) {
+        var hashKey = request.getMetaData().getAppDeliveryID();
+        var serializedRequest = marshaller.marshallXml(factory.createDeliveryRequest(request));
+
+        logger.info("Save DeliveryRequest with AppDeliveryId = {} to redis.", hashKey);
+        hashOperations.put(KEY, hashKey, serializedRequest);
+    }
+
+    @Override
+    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());
+    }
+
+}
-- 
cgit v1.2.3