[jboss-cvs] JBossCache/src/org/jboss/cache/interceptors ...
Manik Surtani
msurtani at jboss.com
Wed Sep 13 06:38:23 EDT 2006
User: msurtani
Date: 06/09/13 06:38:23
Modified: src/org/jboss/cache/interceptors Tag:
Branch_JBossCache_1_4_0
OptimisticNodeInterceptor.java
Log:
JBCACHE-767
Revision Changes Path
No revision
No revision
1.21.2.2 +312 -295 JBossCache/src/org/jboss/cache/interceptors/OptimisticNodeInterceptor.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: OptimisticNodeInterceptor.java
===================================================================
RCS file: /cvsroot/jboss/JBossCache/src/org/jboss/cache/interceptors/OptimisticNodeInterceptor.java,v
retrieving revision 1.21.2.1
retrieving revision 1.21.2.2
diff -u -b -r1.21.2.1 -r1.21.2.2
--- OptimisticNodeInterceptor.java 9 Aug 2006 12:30:12 -0000 1.21.2.1
+++ OptimisticNodeInterceptor.java 13 Sep 2006 10:38:22 -0000 1.21.2.2
@@ -6,14 +6,20 @@
*/
package org.jboss.cache.interceptors;
-import org.jboss.cache.*;
+import org.jboss.cache.CacheException;
+import org.jboss.cache.DataNode;
+import org.jboss.cache.Fqn;
+import org.jboss.cache.GlobalTransaction;
+import org.jboss.cache.InvocationContext;
+import org.jboss.cache.TreeCache;
+import org.jboss.cache.TreeNode;
import org.jboss.cache.config.Option;
import org.jboss.cache.factories.NodeFactory;
-import org.jboss.cache.marshall.MethodDeclarations;
import org.jboss.cache.marshall.JBCMethodCall;
+import org.jboss.cache.marshall.MethodDeclarations;
+import org.jboss.cache.optimistic.DataVersion;
import org.jboss.cache.optimistic.TransactionWorkspace;
import org.jboss.cache.optimistic.WorkspaceNode;
-import org.jboss.cache.optimistic.DataVersion;
import org.jgroups.blocks.MethodCall;
import javax.transaction.Transaction;
@@ -63,9 +69,19 @@
// use explicit versioning
if (ctx.getOptionOverrides() != null && ctx.getOptionOverrides().getDataVersion() != null)
{
- workspace.setVersioningImplicit( false );
+ workspace.setVersioningImplicit(false);
DataVersion version = ctx.getOptionOverrides().getDataVersion();
- workspaceNode.setVersion( version );
+ // "fail-more-silently" patch thanks to Owen Taylor - JBCACHE-767
+ if (workspaceNode != null)
+ {
+ workspaceNode.setVersion(version);
+ }
+ else
+ {
+ if (ctx.getOptionOverrides() == null || !ctx.getOptionOverrides().isFailSilently())
+ throw new CacheException("Unable to set node version for " + getFqn(args) + ", node is null.");
+ }
+
}
switch (m.getMethodId())
@@ -106,7 +122,7 @@
}
else
{
- switch(m.getMethodId())
+ switch (m.getMethodId())
{
case MethodDeclarations.getKeyValueMethodLocal_id:
result = getValueForKey(args, workspace);
@@ -125,7 +141,8 @@
result = super.invoke(m);
break;
default:
- if (log.isInfoEnabled()) log.info("read Method " + m + " called - don't know how to handle, passing on!");
+ if (log.isInfoEnabled())
+ log.info("read Method " + m + " called - don't know how to handle, passing on!");
result = super.invoke(m);
break;
}
@@ -142,7 +159,7 @@
TransactionWorkspace workspace, WorkspaceNode workspaceNode)
{
- Map data = (Map)args[2];
+ Map data = (Map) args[2];
if (workspaceNode == null)
return;
workspaceNode.put(data, eraseExisitng);
@@ -317,7 +334,7 @@
DataNode node = cache.peek(fqn);
if (node == null)
return null; // seems to happen quite a bit
- workspaceNode = NodeFactory.getInstance().createWorkspaceNode( node, workspace );
+ workspaceNode = NodeFactory.getInstance().createWorkspaceNode(node, workspace);
}
// the node has been deleted dude!
if (workspaceNode.isDeleted())
More information about the jboss-cvs-commits
mailing list