diff src/main/java/de/intevation/lada/rest/ProbeService.java @ 595:746e03da9fad

Use timestamp locker in REST services.
author Raimund Renkert <raimund.renkert@intevation.de>
date Wed, 25 Mar 2015 16:20:01 +0100
parents 54a95a587093
children 31c4bd94d74e
line wrap: on
line diff
--- a/src/main/java/de/intevation/lada/rest/ProbeService.java	Wed Mar 25 16:18:34 2015 +0100
+++ b/src/main/java/de/intevation/lada/rest/ProbeService.java	Wed Mar 25 16:20:01 2015 +0100
@@ -8,7 +8,9 @@
 package de.intevation.lada.rest;
 
 import java.io.StringReader;
+import java.sql.Timestamp;
 import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
 import java.util.Map;
 
@@ -36,6 +38,9 @@
 
 import org.apache.log4j.Logger;
 
+import de.intevation.lada.lock.LockConfig;
+import de.intevation.lada.lock.LockType;
+import de.intevation.lada.lock.ObjectLocker;
 import de.intevation.lada.model.land.LProbe;
 import de.intevation.lada.model.land.ProbeTranslation;
 import de.intevation.lada.query.QueryTools;
@@ -77,6 +82,10 @@
     private Authorization authorization;
 
     @Inject
+    @LockConfig(type=LockType.TIMESTAMP)
+    private ObjectLocker lock;
+
+    @Inject
     @ValidationConfig(type="Probe")
     private Validator validator;
 
@@ -243,6 +252,9 @@
         ) {
             return new Response(false, 699, null);
         }
+        if (lock.isLocked(probe)) {
+            return new Response(false, 697, null);
+        }
         Violation violation = validator.validate(probe);
         if (violation.hasErrors()) {
             Response response = new Response(false, 604, null);
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)