[cvs] expresso commit by lhamel: change method name

JCorporate Ltd jcorp at jcorporate.com
Mon Feb 21 17:30:26 UTC 2005


Log Message:
-----------
change method name

Modified Files:
--------------
    expresso/expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dbobj:
        CacheUtils.java

Revision Data
-------------
Index: CacheUtils.java
===================================================================
RCS file: /home/javacorp/.cvs/expresso/expresso/expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dbobj/CacheUtils.java,v
retrieving revision 1.14
retrieving revision 1.15
diff -Lexpresso-web/WEB-INF/src/com/jcorporate/expresso/core/dbobj/CacheUtils.java -Lexpresso-web/WEB-INF/src/com/jcorporate/expresso/core/dbobj/CacheUtils.java -u -r1.14 -r1.15
--- expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dbobj/CacheUtils.java
+++ expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dbobj/CacheUtils.java
@@ -69,6 +69,7 @@
 import com.jcorporate.expresso.core.cache.CacheSystem;
 import com.jcorporate.expresso.core.dataobjects.jdbc.JDBCObjectMetaData;
 import com.jcorporate.expresso.core.db.DBException;
+import com.jcorporate.expresso.core.registry.RequestRegistry;
 import org.apache.log4j.Logger;
 
 
@@ -333,14 +334,16 @@
 
 
     /**
-     * get actual cached object, which is flagged to be immutable.  efficient for read-only
-     * situations where you want to avoid making a new copy of the object.
+     * get object which which is flagged to be immutable (read-only).  efficient for read-only
+     * uses because the actual cached item is returned without making a copy. will retrieve
+     * record from database if necessary.
+     * All PK (primary keys) must be provided in a single parameter, in format like "getKey()".
      *
      * @see DBObject#getKey()
      * @param dbobjClass class of desired DBObject
      * @param keyValues String combination of all PK values (see getKey())
      */
-    public DBObject getImmutableCachedObject(Class dbobjClass, String keyValues) {
+    public DBObject fetchImmutable(Class dbobjClass, String keyValues) {
 
         DBObject result = null;
         if ( keyValues == null || keyValues.length() == 0 ) {
@@ -356,6 +359,9 @@
         if ( result == null ) {
             try {
                 DBObject o = (DBObject) dbobjClass.newInstance();
+                if ( o instanceof SecuredDBObject ) {
+                    ((SecuredDBObject)o).setRequestingUid(RequestRegistry.getUser().getUid());
+                }
                 o.setKey(keyValues);
                 if ( o.find() ) {
                     // find will automatically cache a new object; that cached value is what we want


More information about the cvs mailing list