tdraier     2005/10/19 11:47:21 CEST

  Modified files:
    core/src/java/org/jahia/services/importexport 
                                                  ImportExportBaseService.java 
  Log:
  make copies (clipboard/simple/linked) as root
  
  Revision  Changes    Path
  1.34      +12 -2     
jahia/core/src/java/org/jahia/services/importexport/ImportExportBaseService.java
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/jahia/core/src/java/org/jahia/services/importexport/ImportExportBaseService.java.diff?r1=1.33&r2=1.34&f=h
  
  
  
  Index: ImportExportBaseService.java
  ===================================================================
  RCS file: 
/home/cvs/repository/jahia/core/src/java/org/jahia/services/importexport/ImportExportBaseService.java,v
  retrieving revision 1.33
  retrieving revision 1.34
  diff -u -r1.33 -r1.34
  --- ImportExportBaseService.java      12 Oct 2005 15:50:16 -0000      1.33
  +++ ImportExportBaseService.java      19 Oct 2005 09:47:20 -0000      1.34
  @@ -724,7 +724,12 @@
       }
   
       public ContentObject copy(ContentObject source, ContentObject 
parentDest, Set languages, ProcessingContext jParams, EntryLoadRequest 
loadRequest, boolean link) {
  +        JahiaUser oldUser = jParams.getUser();
           try {
  +            JahiaSite destSite = 
ServicesRegistry.getInstance().getJahiaSitesService().getSite(parentDest.getSiteID());
  +            JahiaGroup admins = 
ServicesRegistry.getInstance().getJahiaGroupManagerService().lookupGroup(destSite.getID(),
 JahiaGroupManagerService.ADMINISTRATORS_GROUPNAME);
  +            JahiaUser user = (JahiaUser) admins.members().nextElement();
  +            jParams.setUser(user);
               Iterator iterator = languages.iterator();
               String lang = (String) iterator.next();
   
  @@ -741,7 +746,6 @@
                   export(source, nextLang, handler, files, jParams, null, 
loadRequest, null, link);
               }
   
  -            JahiaSite destSite = 
ServicesRegistry.getInstance().getJahiaSitesService().getSite(parentDest.getSiteID());
               if (source.getSiteID() != parentDest.getSiteID()) {
                   for (Iterator fiterator = files.iterator(); 
fiterator.hasNext();) {
                       DAVFileAccess file = (DAVFileAccess) fiterator.next();
  @@ -749,8 +753,14 @@
                   }
               }
               return main;
  -        } catch (Exception e) {
  +        } catch (Throwable e) {
               logger.error("Error during copying",e);
  +        } finally {
  +            try {
  +                jParams.setUser(oldUser);
  +            } catch (JahiaException e) {
  +                // is never thrown ..
  +            }
           }
           return null;
       }
  

Reply via email to