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);