Author: bpapez
Date: Fri Nov 16 18:53:43 2007
New Revision: 19206

URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D19206&repname=
=3Djahia
Log:
Add option reverseXRefIteratingActivated

Modified:
    branches/JAHIA-4-1-BRANCH/src/java/org/jahia/content/CrossReferenceMana=
ger.java
    branches/JAHIA-4-1-BRANCH/src/java/org/jahia/settings/SettingsBean.java

Modified: branches/JAHIA-4-1-BRANCH/src/java/org/jahia/content/CrossReferen=
ceManager.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-4-1-BR=
ANCH/src/java/org/jahia/content/CrossReferenceManager.java&rev=3D19206&repn=
ame=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-4-1-BRANCH/src/java/org/jahia/content/CrossReferenceMana=
ger.java (original)
+++ branches/JAHIA-4-1-BRANCH/src/java/org/jahia/content/CrossReferenceMana=
ger.java Fri Nov 16 18:53:43 2007
@@ -51,6 +51,7 @@
 import java.util.TreeSet;
 =

 import org.apache.log4j.Logger;
+import org.jahia.bin.Jahia;
 import org.jahia.exceptions.JahiaException;
 import org.jahia.exceptions.JahiaInitializationException;
 import org.jahia.services.cache.Cache;
@@ -168,17 +169,18 @@
             throws JahiaException
     {
         Set objectSourceKeys =3D new HashSet ();
-
-        Object[] keys =3D crossRefTable.keys();
-        for (int i=3D0; i<keys.length;i++) {
-            if (keys[i] instanceof ObjectKey) {
-                Set curXRefSet =3D (Set)crossRefTable.get (keys[i]);
-                if (curXRefSet !=3D null) {
-                    if (curXRefSet.contains (objectXRef)) {
-                        // we found a reference that corresponds to the on=
e we want
-                        // to lookup source object for, let's add the sour=
ce object
-                        // key to the result set.
-                        objectSourceKeys.add (keys[i]);
+        if (Jahia.getSettings().isReverseXRefIteratingActivated()) {
+            Object[] keys =3D crossRefTable.keys();
+            for (int i =3D 0; i < keys.length; i++) {
+                if (keys[i] instanceof ObjectKey) {
+                    Set curXRefSet =3D (Set) crossRefTable.get(keys[i]);
+                    if (curXRefSet !=3D null) {
+                        if (curXRefSet.contains(objectXRef)) {
+                            // we found a reference that corresponds to th=
e one we want
+                            // to lookup source object for, let's add the =
source object
+                            // key to the result set.
+                            objectSourceKeys.add(keys[i]);
+                        }
                     }
                 }
             }
@@ -189,7 +191,7 @@
         //       desired ObjectKey. Some might not have been loaded yet fr=
om the DB
         //       and will not be considered by the next if statment!
 =

-        if (objectSourceKeys.size () =3D=3D 0) {
+        if (objectSourceKeys.isEmpty()) {
             // this could be because the keys were not yet loaded from the
             // database, let's make sure we do so if necessary.
             ArrayList rightLinks =3D ObjectLinkDB.getInstance ().

Modified: branches/JAHIA-4-1-BRANCH/src/java/org/jahia/settings/SettingsBea=
n.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-4-1-BR=
ANCH/src/java/org/jahia/settings/SettingsBean.java&rev=3D19206&repname=3Dja=
hia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-4-1-BRANCH/src/java/org/jahia/settings/SettingsBean.java=
 (original)
+++ branches/JAHIA-4-1-BRANCH/src/java/org/jahia/settings/SettingsBean.java=
 Fri Nov 16 18:53:43 2007
@@ -137,7 +137,10 @@
     final public static String OUTPUT_CACHE_ACTIVATED =3D "outputCacheActi=
vated";
     =

     // Maximum parallel heavy processing threads
-    final public static String PRELOAD_HOMEPAGE_FIELDS_ACTIVATED =3D "prel=
oadHomepageFieldsActivated";    =

+    final public static String PRELOAD_HOMEPAGE_FIELDS_ACTIVATED =3D "prel=
oadHomepageFieldsActivated";
+    =

+    // Reverse XRef Iterating through cache activation flag    =

+    final public static String REVERSE_XREF_ITERATING_ACTIVATED =3D "rever=
seXRefIteratingActivated";
 =

     // Output cache expiration delay in milliseconds
     private long outputCacheDefaultExpirationDelay;
@@ -223,6 +226,7 @@
 =

     private boolean pageCounterIncrementActivated =3D true;
     private boolean preloadHomepageFieldsActivated =3D true;
+    private boolean reverseXRefIteratingActivated =3D true;    =

 =

     // Core engine page generation queue configuration parameters
     private int maxParallelProcessings =3D 10;
@@ -383,6 +387,7 @@
             pageGenerationWaitTime =3D getLong("pageGenerationWaitTime", p=
ageGenerationWaitTime);
             =

             preloadHomepageFieldsActivated =3D getBoolean(PRELOAD_HOMEPAGE=
_FIELDS_ACTIVATED, true);
+            reverseXRefIteratingActivated =3D getBoolean(REVERSE_XREF_ITER=
ATING_ACTIVATED, true);
             =

             // output cache default expiration delay
             outputCacheDefaultExpirationDelay =3D getLong ("outputCacheDef=
aultExpirationDelay", -1);
@@ -1360,7 +1365,11 @@
     public boolean isPreloadHomepageFieldsActivated() {
         return preloadHomepageFieldsActivated;
     }
-
+    =

+    public boolean isReverseXRefIteratingActivated() {
+        return reverseXRefIteratingActivated;
+    }
+    =

     public long getPageGenerationWaitTime() {
         return pageGenerationWaitTime;
     }

_______________________________________________
cvs_list mailing list
[email protected]
http://lists.jahia.org/cgi-bin/mailman/listinfo/cvs_list

Reply via email to