summaryrefslogtreecommitdiff
path: root/java/src
diff options
context:
space:
mode:
authorBernard Normier <bernard@zeroc.com>2006-07-27 01:47:43 +0000
committerBernard Normier <bernard@zeroc.com>2006-07-27 01:47:43 +0000
commit6d1e32eebbbe320b3a1fe33552824a3f8982b6a0 (patch)
treeec67ad494b59bd2e8028f5b7e5b886394cb4e3b9 /java/src
parentMinor fix (diff)
downloadice-6d1e32eebbbe320b3a1fe33552824a3f8982b6a0.tar.bz2
ice-6d1e32eebbbe320b3a1fe33552824a3f8982b6a0.tar.xz
ice-6d1e32eebbbe320b3a1fe33552824a3f8982b6a0.zip
Partial fix for bug #1257: deprecating nonmutating
Diffstat (limited to 'java/src')
-rw-r--r--java/src/Freeze/EvictorI.java7
-rw-r--r--java/src/Ice/Object.java2
-rw-r--r--java/src/Ice/ObjectImpl.java5
-rw-r--r--java/src/IceInternal/PropertyNames.java8
4 files changed, 19 insertions, 3 deletions
diff --git a/java/src/Freeze/EvictorI.java b/java/src/Freeze/EvictorI.java
index 33023c98337..fa82125434b 100644
--- a/java/src/Freeze/EvictorI.java
+++ b/java/src/Freeze/EvictorI.java
@@ -243,6 +243,8 @@ class EvictorI extends Ice.LocalObjectImpl implements Evictor, Runnable
_trace = _communicator.getProperties().getPropertyAsInt("Freeze.Trace.Evictor");
_txTrace = _communicator.getProperties().getPropertyAsInt("Freeze.Trace.Transaction");
_deadlockWarning = _communicator.getProperties().getPropertyAsInt("Freeze.Warn.Deadlocks") != 0;
+ _useNonmutating = _communicator.getProperties().getPropertyAsInt("Freeze.Evictor.UseNonmutating") != 0;
+
_errorPrefix = "Freeze Evictor DbEnv(\"" + envName + "\") Db(\"" + _filename + "\"): ";
@@ -1351,7 +1353,8 @@ class EvictorI extends Ice.LocalObjectImpl implements Evictor, Runnable
boolean enqueue = false;
- if(current.mode != Ice.OperationMode.Nonmutating)
+ if((_useNonmutating && current.mode != Ice.OperationMode.Nonmutating) ||
+ (servant.ice_operationAttributes(current.operation) & 0x1) != 0)
{
synchronized(element)
{
@@ -2222,5 +2225,7 @@ class EvictorI extends Ice.LocalObjectImpl implements Evictor, Runnable
private boolean _deadlockWarning;
+ private boolean _useNonmutating;
+
private Ice.Object _pingObject = new PingObject();
}
diff --git a/java/src/Ice/Object.java b/java/src/Ice/Object.java
index 2b2df7795f9..ec852a1857e 100644
--- a/java/src/Ice/Object.java
+++ b/java/src/Ice/Object.java
@@ -29,6 +29,8 @@ public interface Object
String ice_id();
String ice_id(Current current);
+ int ice_operationAttributes(String operation);
+
void ice_preMarshal();
void ice_postUnmarshal();
diff --git a/java/src/Ice/ObjectImpl.java b/java/src/Ice/ObjectImpl.java
index 81b9b02a8da..ccf13feb362 100644
--- a/java/src/Ice/ObjectImpl.java
+++ b/java/src/Ice/ObjectImpl.java
@@ -132,6 +132,11 @@ public abstract class ObjectImpl implements Object, java.lang.Cloneable
return __ids[0];
}
+ public int ice_operationAttributes(String operation)
+ {
+ return 0;
+ }
+
public void
ice_preMarshal()
{
diff --git a/java/src/IceInternal/PropertyNames.java b/java/src/IceInternal/PropertyNames.java
index 38347b14a78..5d1147362a4 100644
--- a/java/src/IceInternal/PropertyNames.java
+++ b/java/src/IceInternal/PropertyNames.java
@@ -7,7 +7,7 @@
//
// **********************************************************************
-// Generated by makeprops.py from file `../config/PropertyNames.def', Wed Jul 5 13:10:25 2006
+// Generated by makeprops.py from file `./PropertyNames.def', Wed Jul 26 17:13:49 2006
// IMPORTANT: Do not edit this file -- any edits made here will be lost!
@@ -121,8 +121,9 @@ public final class PropertyNames
"^IceGrid\\.Node\\.ThreadPool\\.StackSize$",
"^IceGrid\\.Node\\.Trace\\.Activator$",
"^IceGrid\\.Node\\.Trace\\.Adapter$",
- "^IceGrid\\.Node\\.Trace\\.Server$",
"^IceGrid\\.Node\\.Trace\\.Patch$",
+ "^IceGrid\\.Node\\.Trace\\.Replica$",
+ "^IceGrid\\.Node\\.Trace\\.Server$",
"^IceGrid\\.Node\\.UserAccounts$",
"^IceGrid\\.Node\\.UserAccountMapper$",
"^IceGrid\\.Node\\.WaitTime$",
@@ -163,6 +164,7 @@ public final class PropertyNames
"^IceGrid\\.Registry\\.Internal\\.ThreadPool\\.StackSize$",
"^IceGrid\\.Registry\\.NodeSessionTimeout$",
"^IceGrid\\.Registry\\.PermissionsVerifier$",
+ "^IceGrid\\.Registry\\.ReplicaName$",
"^IceGrid\\.Registry\\.Server\\.AdapterId$",
"^IceGrid\\.Registry\\.Server\\.ReplicaGroupId$",
"^IceGrid\\.Registry\\.Server\\.Endpoints$",
@@ -180,6 +182,7 @@ public final class PropertyNames
"^IceGrid\\.Registry\\.Trace\\.Node$",
"^IceGrid\\.Registry\\.Trace\\.Object$",
"^IceGrid\\.Registry\\.Trace\\.Patch$",
+ "^IceGrid\\.Registry\\.Trace\\.Replica$",
"^IceGrid\\.Registry\\.Trace\\.Server$",
"^IceGrid\\.Registry\\.Trace\\.Session$",
"^IceGrid\\.Registry\\.UserAccounts$",
@@ -343,6 +346,7 @@ public final class PropertyNames
"^Freeze\\.Evictor\\.[^\\s.]+\\.[^\\s.]+\\.SaveSizeTrigger$",
"^Freeze\\.Evictor\\.[^\\s.]+\\.[^\\s.]+\\.StreamTimeout$",
"^Freeze\\.Evictor\\.[^\\s.]+\\.[^\\s.]+\\.PopulateEmptyIndices$",
+ "^Freeze\\.Evictor\\.UseNonmutating$",
"^Freeze\\.Trace\\.DbEnv$",
"^Freeze\\.Trace\\.Evictor$",
"^Freeze\\.Trace\\.Map$",