Author: bpapez
Date: Mon Dec  3 19:43:08 2007
New Revision: 19333

URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D19333&repname=
=3Djahia
Log:
simplified container and containerlist activation, all job is already done =
by workflowservice (backport of rev.18023)

Modified:
    branches/JAHIA-VODAFONE-5-0-2-SP BRANCH/core/src/java/org/jahia/service=
s/containers/JahiaContainersBaseService.java

Modified: branches/JAHIA-VODAFONE-5-0-2-SP BRANCH/core/src/java/org/jahia/s=
ervices/containers/JahiaContainersBaseService.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-VODAFO=
NE-5-0-2-SP%20BRANCH/core/src/java/org/jahia/services/containers/JahiaConta=
inersBaseService.java&rev=3D19333&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-VODAFONE-5-0-2-SP BRANCH/core/src/java/org/jahia/service=
s/containers/JahiaContainersBaseService.java (original)
+++ branches/JAHIA-VODAFONE-5-0-2-SP BRANCH/core/src/java/org/jahia/service=
s/containers/JahiaContainersBaseService.java Mon Dec  3 19:43:08 2007
@@ -1269,86 +1269,6 @@
 =

         activationResults.merge (contentContainer.isPickedValidForActivati=
on(languageCodes, stateModifContext));
 =

-        // in the case of a container, if any field isn't activated we don=
't
-        // activate the full container.
-
-        EntryLoadRequest entryLoadRequest =3D new EntryLoadRequest(EntryLo=
adRequest.STAGING_WORKFLOW_STATE,
-                                                                 0, new Ar=
rayList());
-        entryLoadRequest.setWithMarkedForDeletion(true);
-        entryLoadRequest.setWithDeleted(false);
-        entryLoadRequest.getLocales().add(LanguageCodeConverters.languageC=
odeToLocale(ContentObject.
-                                                                          =
            SHARED_LANGUAGE));
-        Vector fieldIDs =3D getFieldIDsInContainer(contentContainer.getID(=
),
-                                                 entryLoadRequest);
-        boolean hasStagingField =3D false;
-        int size =3D fieldIDs.size();
-        Integer fieldID =3D null;
-        WorkflowService workflowService =3D ServicesRegistry.getInstance()=
.getWorkflowService();
-        for (int i =3D 0; i < size; i++) {
-            fieldID =3D (Integer) fieldIDs.get(i);
-            ContentField contentField =3D ContentField.getField(fieldID.in=
tValue());
-            if (workflowService.getInheritedMode(contentField)!=3D Workflo=
wService.INACTIVE &&
-                contentField.hasStagingEntries()) {
-                hasStagingField =3D true;
-                break;
-            }
-        }
-
-        // We only activate a container that is marked for delete if all i=
ts fields
-        // are themselve deleted ( no staging fields left )
-        if ((hasStagingField && contentContainer.isMarkedForDelete())
-            || (activationResults.getStatus() =3D=3D
-                ActivationTestResults.FAILED_OPERATION_STATUS)) {
-            activationResults.setStatus(ActivationTestResults.
-                                        PARTIAL_OPERATION_STATUS);
-            try {
-                final EngineMessage msg =3D new EngineMessage(
-                        "org.jahia.services.containers.JahiaContainersBase=
Service.invalidFieldsWarning");
-                activationResults
-                        .appendWarning(new IsValidForActivationResults(
-                                ContentContainerKey.CONTAINER_TYPE, id, jP=
arams
-                                        .getLocale().toString(), msg));
-            } catch (ClassNotFoundException cnfe) {
-                logger.debug("Error while creating activation test node re=
sult", cnfe);
-            }
-            if (stateModified) {
-                stateModifContext.popAllLanguages();
-            }
-            return activationResults;
-        }
-
-        JahiaContainer theContainer =3D loadContainerInfo(id,
-                                                        EntryLoadRequest.S=
TAGED);
-
-        if (theContainer =3D=3D null) {
-            // dont know what's happening there
-            return activationResults;
-        }
-        /*
-                if (activationResults.getStatus() !=3D ActivationTestResul=
ts.COMPLETED_OPERATION_STATUS) {
-                    return activationResults;
-                }
-         */
-        // we check if the VersionID =3D -1, which mean we should delete t=
he container. to see if we have rights for
-        // this container, we load the ACTIVE version, and if the guy has =
write&admin access on it, or if
-        // the ACTIVE version doesn't even exist, it's ok.
-        boolean isDeleteAllowed =3D false;
-        if (theContainer.getVersionID() =3D=3D -1) {
-            JahiaContainer tempContainer =3D null;
-            try {
-                tempContainer =3D loadContainerInfo(id, EntryLoadRequest.C=
URRENT);
-            } catch (JahiaException je) {
-            }
-            if (tempContainer =3D=3D null) {
-                isDeleteAllowed =3D true;
-            } else if (tempContainer.checkAdminAccess(user) &&
-                       tempContainer.checkWriteAccess(user)) {
-                isDeleteAllowed =3D true;
-            }
-        }
-//        if ((theContainer.checkAdminAccess (user) &&
-//                theContainer.checkWriteAccess (user)) || isDeleteAllowed=
) {
-        // yes user has access, we can stage this field
         // fire event
         JahiaEvent theEvent =3D new JahiaEvent(saveVersion, jParams, conte=
ntContainer);
         ServicesRegistry.getInstance().getJahiaEventService()
@@ -1360,11 +1280,7 @@
         ServicesRegistry.getInstance().getJahiaSearchService().indexContai=
ner(id, user);
 =

         // invalidate corresponding cache entry
-//        containerInfoCache.remove(this.getCacheContainerOrContainerListA=
ctiveEntryKey(id));
-//        containerInfoCache.remove(this.getCacheContainerOrContainerListS=
tagingEntryKey(id));
-        ContentContainer.invalidateContainerCache(theContainer.getID());
-//            c_utils.invalidateCtnIdsByCtnListCache(theContainer.getListI=
D());
-//        }
+        ContentContainer.invalidateContainerCache(id);
 =

         if (stateModified) {
             stateModifContext.popAllLanguages();
@@ -2005,14 +1921,6 @@
             return activationResults;
         }
         containerListManager.validateStagedContainerList(containerListID, =
saveVersion);
-        ContentContainerList theContainerList =3D ContentContainerList.get=
ContainerList(containerListID);
-        ArrayList childs =3D theContainerList.getChilds(user, EntryLoadReq=
uest.STAGED);
-        for (int i =3D 0; i < childs.size(); i++) {
-            ContentContainer contentObject =3D (ContentContainer) childs.g=
et(i);
-            if(contentObject.hasActiveEntries() && !contentObject.isMarked=
ForDelete()) {
-                contentObject.activate(languageCodes, saveVersion.isVersio=
ned(),saveVersion, user, jParams, stateModifContext);
-            }
-        }
         ServicesRegistry.getInstance().getJahiaSearchService().indexContai=
nerList(containerListID, user);
 =

         logger.debug("VALIDATION CONTAINER LIST #" + containerListID);

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

Reply via email to