Author: cmailleux
Date: Mon Sep 24 14:25:46 2007
New Revision: 18628

URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D18628&repname=
=3Djahia
Log:
Correct MIN-354 By checking that the object associated with the object is h=
ere (why do we have a categoryupdated event for a new category and without =
any category associated?)

Modified:
    branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/services/esi/EsiIn=
validationEventListener.java

Modified: branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/services/esi=
/EsiInvalidationEventListener.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-SP=
-BRANCH/core/src/java/org/jahia/services/esi/EsiInvalidationEventListener.j=
ava&rev=3D18628&repname=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-5-0-SP-BRANCH/core/src/java/org/jahia/services/esi/EsiIn=
validationEventListener.java (original)
+++ branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/services/esi/EsiIn=
validationEventListener.java Mon Sep 24 14:25:46 2007
@@ -582,50 +582,53 @@
 =

     public void categoryUpdated(JahiaEvent je) {
         try {
-            List list =3D ((Category) je.getObject()).getChildContentObjec=
ts();
-            for (int i =3D 0; i < list.size(); i++) {
-                ContentObject contentObject =3D (ContentObject) list.get(i=
);
-                if (contentObject instanceof ContentContainer) {
-                    ContentContainer container =3D (ContentContainer) cont=
entObject;
-                    esiService.pageRequiresInvalidation(container.getPageI=
D(),
-                                                        new ContentInfo(Es=
iService.CONTAINER,
-                                                                        co=
ntainer.getPageID(),
-                                                                        Es=
iInvalidationEventListener.ACL_CHANGE_EVENT));
-                    esiService.ctnListRequiresInvalidation(container.getPa=
rentContainerListID(),
-                                                           new ContentInfo=
(EsiService.CONTAINER,
-                                                                          =
 container.getParentContainerListID(),
-                                                                          =
 EsiInvalidationEventListener.ACL_CHANGE_EVENT));
-                }
-                else if (contentObject instanceof ContentContainerList) {
-                    ContentContainerList contentContainerList =3D (Content=
ContainerList) contentObject;
-                    esiService.pageRequiresInvalidation(contentContainerLi=
st.getPageID(),
-                                                        new ContentInfo(Es=
iService.CONTAINER,
-                                                                        co=
ntentContainerList.getPageID(),
-                                                                        Es=
iInvalidationEventListener.ACL_CHANGE_EVENT));
-                    esiService.ctnListRequiresInvalidation(contentContaine=
rList.getID(),
-                                                           new ContentInfo=
(EsiService.CONTAINERLIST,
-                                                                          =
 contentContainerList.getID(),
-                                                                          =
 EsiInvalidationEventListener.ACL_CHANGE_EVENT));
-                }
-                if (contentObject instanceof ContentPage) {
-                    ContentPage contentPage =3D (ContentPage) contentObjec=
t;
-                    try {
-                        ContentObject object =3D contentPage.getParent(Ent=
ryLoadRequest.STAGED);
-                        if (object !=3D null) {
-                            int id =3D object.getParent(EntryLoadRequest.S=
TAGED)
-                                    .getID() + 1000;
-                            esiService.ctnRequiresInvalidation(id,
-                                                               new Content=
Info(EsiService.FIELD,
-                                                                          =
     id,
+            if(je.getObject()!=3Dnull) {
+                List list =3D ((Category) je.getObject()).getChildContentO=
bjects();
+                for (int i =3D 0; i < list.size(); i++) {
+                    ContentObject contentObject =3D (ContentObject) list.g=
et(i);
+                    if (contentObject instanceof ContentContainer) {
+                        ContentContainer container =3D (ContentContainer) =
contentObject;
+                        esiService.pageRequiresInvalidation(container.getP=
ageID(),
+                                                            new ContentInf=
o(EsiService.CONTAINER,
+                                                                          =
  container.getPageID(),
+                                                                          =
  EsiInvalidationEventListener.ACL_CHANGE_EVENT));
+                        esiService.ctnListRequiresInvalidation(container.g=
etParentContainerListID(),
+                                                               new Content=
Info(EsiService.CONTAINER,
+                                                                          =
     container.getParentContainerListID(),
                                                                           =
     EsiInvalidationEventListener.ACL_CHANGE_EVENT));
-                            ContentContainer container =3D (ContentContain=
er) object.getParent(EntryLoadRequest.STAGED);
-                            esiService.ctnListRequiresInvalidation(contain=
er.getParentContainerListID(),
-                                                                   new Con=
tentInfo(EsiService.CONTAINERLIST,
-                                                                          =
         container.getParentContainerListID(),
+                    }
+                    else if (contentObject instanceof ContentContainerList=
) {
+                        ContentContainerList contentContainerList =3D (Con=
tentContainerList) contentObject;
+                        esiService.pageRequiresInvalidation(contentContain=
erList.getPageID(),
+                                                            new ContentInf=
o(EsiService.CONTAINER,
+                                                                          =
  contentContainerList.getPageID(),
+                                                                          =
  EsiInvalidationEventListener.ACL_CHANGE_EVENT));
+                        esiService.ctnListRequiresInvalidation(contentCont=
ainerList.getID(),
+                                                               new Content=
Info(EsiService.CONTAINERLIST,
+                                                                          =
     contentContainerList.getID(),
+                                                                          =
     EsiInvalidationEventListener.ACL_CHANGE_EVENT));
+                    }
+                    if (contentObject instanceof ContentPage) {
+                        ContentPage contentPage =3D (ContentPage) contentO=
bject;
+                        try {
+                            ContentObject object =3D contentPage.getParent=
(EntryLoadRequest.STAGED);
+                            if (object !=3D null) {
+                                int id =3D object.getParent(EntryLoadReque=
st.STAGED)
+                                        .getID() + 1000;
+                                esiService.ctnRequiresInvalidation(id,
+                                                                   new Con=
tentInfo(EsiService.FIELD,
+                                                                          =
         id,
                                                                           =
         EsiInvalidationEventListener.ACL_CHANGE_EVENT));
+                                ContentContainer container =3D
+                                        (ContentContainer) object.getParen=
t(EntryLoadRequest.STAGED);
+                                esiService.ctnListRequiresInvalidation(con=
tainer.getParentContainerListID(),
+                                                                       new=
 ContentInfo(EsiService.CONTAINERLIST,
+                                                                          =
             container.getParentContainerListID(),
+                                                                          =
             EsiInvalidationEventListener.ACL_CHANGE_EVENT));
+                            }
+                        } catch (JahiaException e) {
+                            logger.warn("Could not found the page parent f=
ield");
                         }
-                    } catch (JahiaException e) {
-                        logger.warn("Could not found the page parent field=
");
                     }
                 }
             }

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

Reply via email to