aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/at/gv/egiz/moazs/config/RepositoryConfig.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/at/gv/egiz/moazs/config/RepositoryConfig.java')
-rw-r--r--src/main/java/at/gv/egiz/moazs/config/RepositoryConfig.java32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/main/java/at/gv/egiz/moazs/config/RepositoryConfig.java b/src/main/java/at/gv/egiz/moazs/config/RepositoryConfig.java
new file mode 100644
index 0000000..ee73b9e
--- /dev/null
+++ b/src/main/java/at/gv/egiz/moazs/config/RepositoryConfig.java
@@ -0,0 +1,32 @@
+package at.gv.egiz.moazs.config;
+
+import at.gv.egiz.moazs.repository.BinaryRepository;
+import at.gv.egiz.moazs.repository.InMemoryBinaryRepository;
+import at.gv.egiz.moazs.scheme.NameSpace;
+import at.gv.egiz.moazs.scheme.NotificationResponse;
+import at.gv.egiz.moazs.scheme.RequestStatusResponse;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Profile;
+
+import java.util.Map;
+
+@Configuration
+@Profile("!cluster")
+public class RepositoryConfig {
+
+ @Value("${repository.expiresAfterWrite}")
+ private int expiresAfterWrite;
+
+ @Bean
+ public BinaryRepository binaryRepository() {
+ return new InMemoryBinaryRepository(expiresAfterWrite);
+ }
+
+ @Bean
+ public Map<String, String> idSuffixes() {
+ return Map.of(NameSpace.MSG_DELIVERY_REQUEST_STATUS, RequestStatusResponse.getIdSuffix(),
+ NameSpace.MSG_DELIVERY_NOTIFICATION, NotificationResponse.getIdSuffix());
+ }
+}