You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by vo...@apache.org on 2016/09/08 14:46:30 UTC

[48/50] ignite git commit: Minor adjustments.

Minor adjustments.


Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/bd11c1e7
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/bd11c1e7
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/bd11c1e7

Branch: refs/heads/ignite-3199-1
Commit: bd11c1e7d37eafff5185d3fb32c83fb1a3466255
Parents: 7b48837
Author: vozerov-gridgain <vo...@gridgain.com>
Authored: Thu Sep 8 16:58:57 2016 +0300
Committer: vozerov-gridgain <vo...@gridgain.com>
Committed: Thu Sep 8 16:58:57 2016 +0300

----------------------------------------------------------------------
 .../platform/websession/SessionStateData.java   | 51 +++++++++++---------
 .../websession/SetAndUnlockEntryProcessor.java  |  5 +-
 .../websession/UnlockEntryProcessor.java        |  2 +-
 3 files changed, 29 insertions(+), 29 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/bd11c1e7/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/websession/SessionStateData.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/websession/SessionStateData.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/websession/SessionStateData.java
index 4586c49..59c161c 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/websession/SessionStateData.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/websession/SessionStateData.java
@@ -25,6 +25,7 @@ import org.apache.ignite.binary.BinaryWriter;
 import org.apache.ignite.binary.Binarylizable;
 import org.apache.ignite.internal.util.tostring.GridToStringExclude;
 import org.apache.ignite.internal.util.typedef.internal.S;
+import org.jetbrains.annotations.Nullable;
 
 import java.sql.Timestamp;
 import java.util.UUID;
@@ -89,7 +90,7 @@ public class SessionStateData implements Binarylizable {
     public SessionStateData lock(SessionStateLockInfo lock) {
         assert !isLocked();
 
-        SessionStateData res = getCopy();
+        SessionStateData res = copyWithoutLockInfo();
 
         res.lockId = lock.id();
         res.lockNodeId = lock.nodeId();
@@ -99,26 +100,40 @@ public class SessionStateData implements Binarylizable {
     }
 
     /**
-     * Clear lock info.
+     * Update session state and release the lock.
+     *
+     * @param update Updated data.
+     * @return Result.
      */
-    public SessionStateData unlock() {
+    public SessionStateData updateAndUnlock(@Nullable SessionStateData update) {
         assert isLocked();
 
-        return getCopy();
+        SessionStateData res = copyWithoutLockInfo();
+
+        if (update != null) {
+            assert items != null;
+
+            res.timeout = update.timeout;
+            res.staticObjects = update.staticObjects;
+            res.items.applyChanges(update.items);
+        }
+
+        return res;
     }
 
     /**
-     * Apply changes from another instance.
+     * Gets a copy of this instance with non-lock properties set.
      *
-     * @param other Data.
+     * @return Copied state data.
      */
-    public void applyChanges(SessionStateData other) {
-        assert other != null;
-        assert items != null;
+    private SessionStateData copyWithoutLockInfo() {
+        SessionStateData res = new SessionStateData();
+
+        res.staticObjects = staticObjects;
+        res.items = items;
+        res.timeout = timeout;
 
-        timeout = other.timeout;
-        staticObjects = other.staticObjects;
-        items.applyChanges(other.items);
+        return res;
     }
 
     /** {@inheritDoc} */
@@ -149,16 +164,4 @@ public class SessionStateData implements Binarylizable {
     @Override public String toString() {
         return S.toString(SessionStateData.class, this);
     }
-
-    /**
-     * Gets a copy of this instance with non-lock properties set.
-     */
-    private SessionStateData getCopy() {
-        SessionStateData res = new SessionStateData();
-
-        res.staticObjects = staticObjects;
-        res.items = items;
-        res.timeout = timeout;
-        return res;
-    }
 }

http://git-wip-us.apache.org/repos/asf/ignite/blob/bd11c1e7/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/websession/SetAndUnlockEntryProcessor.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/websession/SetAndUnlockEntryProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/websession/SetAndUnlockEntryProcessor.java
index 62d05cb..1efdb45 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/websession/SetAndUnlockEntryProcessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/websession/SetAndUnlockEntryProcessor.java
@@ -49,10 +49,7 @@ public class SetAndUnlockEntryProcessor implements CacheEntryProcessor<String, S
             throw new IllegalStateException("Can not unlock session data: lock id check failed.");
 
         // Unlock.
-        data = data.unlock();
-
-        // Update values.
-        data.applyChanges(newData);
+        data = data.updateAndUnlock(newData);
 
         // Apply.
         entry.setValue(data);

http://git-wip-us.apache.org/repos/asf/ignite/blob/bd11c1e7/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/websession/UnlockEntryProcessor.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/websession/UnlockEntryProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/websession/UnlockEntryProcessor.java
index a22c8a2..a6d1ba1 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/websession/UnlockEntryProcessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/websession/UnlockEntryProcessor.java
@@ -49,7 +49,7 @@ public class UnlockEntryProcessor implements CacheEntryProcessor<String, Session
             throw new IllegalStateException("Can not unlock session data: lock id check failed.");
 
         // Unlock.
-        data = data.unlock();
+        data = data.updateAndUnlock(null);
 
         entry.setValue(data);