tdraier     2005/07/08 19:22:04 CEST

  Modified files:
    core/src/java/org/jahia/services/importexport 
                                                  ContentPickerListener.java 
  Log:
  fixed subpages content picking
  
  Revision  Changes    Path
  1.3       +17 -14    
jahia/core/src/java/org/jahia/services/importexport/ContentPickerListener.java
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/jahia/core/src/java/org/jahia/services/importexport/ContentPickerListener.java.diff?r1=1.2&r2=1.3&f=h
  
  
  
  Index: ContentPickerListener.java
  ===================================================================
  RCS file: 
/home/cvs/repository/jahia/core/src/java/org/jahia/services/importexport/ContentPickerListener.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- ContentPickerListener.java        8 Jul 2005 13:00:44 -0000       1.2
  +++ ContentPickerListener.java        8 Jul 2005 17:22:04 -0000       1.3
  @@ -36,26 +36,29 @@
           ContentObject object = event.getContentObject();
           Set languages = event.getLanguageCodes();
           ProcessingContext jParams = event.getProcessingContext();
  +        ImportExportService ie = ImportExportBaseService.getInstance();
           try {
               ContentObject current = object;
  +            Set done = new HashSet();
               while (current != null) {
  -                List objects = 
WorkflowService.getInstance().getLinkedContentObjects(current, false);
  -                ImportExportService ie = 
ImportExportBaseService.getInstance();
  +                if (!done.contains(current.getObjectKey())) {
  +                    List objects = 
WorkflowService.getInstance().getLinkedContentObjects(current, false);
   
  -                for (Iterator iterator = objects.iterator(); 
iterator.hasNext();) {
  -                    ContentObject contentObject = (ContentObject) 
iterator.next();
  -
  -                    Set pickers = contentObject.getPickerObjects();
  -                    Set files = new HashSet();
  -                    for (Iterator iterator2 = pickers.iterator(); 
iterator2.hasNext();) {
  -                        ContentObject picker = (ContentObject) 
iterator2.next();
  -                        DiffImportHandler handler = new 
DiffImportHandler(picker,jParams);
  -                        ie.export(contentObject, languages, handler, files, 
jParams, true,EntryLoadRequest.STAGED, EntryLoadRequest.CURRENT);
  +                    for (Iterator iterator = objects.iterator(); 
iterator.hasNext();) {
  +                        ContentObject contentObject = (ContentObject) 
iterator.next();
  +                        if (!done.contains(contentObject.getObjectKey())) {
  +                            done.add(contentObject.getObjectKey());
  +                            Set pickers = contentObject.getPickerObjects();
  +                            Set files = new HashSet();
  +                            for (Iterator iterator2 = pickers.iterator(); 
iterator2.hasNext();) {
  +                                ContentObject picker = (ContentObject) 
iterator2.next();
  +                                DiffImportHandler handler = new 
DiffImportHandler(picker,jParams);
  +                                ie.export(contentObject, languages, handler, 
files, jParams, true,EntryLoadRequest.STAGED, EntryLoadRequest.CURRENT);
  +                            }
  +                        }
                       }
                   }
  -                do {
  -                    current = current.getParent(null);
  -                } while (current != null && 
WorkflowService.getInstance().getWorkflowMode(current)==WorkflowService.LINKED);
  +                current = current.getParent(null);
               }
           } catch (Exception e) {
               e.printStackTrace();  //To change body of catch statement use 
File | Settings | File Templates.
  

Reply via email to