Author: ate
Date: Thu Apr 17 02:14:50 2008
New Revision: 649015

URL: http://svn.apache.org/viewvc?rev=649015&view=rev
Log:
starting refactoring/reimplementing of the PageImporter (now called 
PageSerializer) 

Added:
    
portals/jetspeed-2/portal/trunk/components/jetspeed-cm/src/main/java/org/apache/jetspeed/components/util/CommonsToolsLogger.java
   (contents, props changed)
      - copied, changed from r648030, 
portals/jetspeed-2/portal/trunk/components/jetspeed-serializer/src/main/java/org/apache/jetspeed/serializer/CommonsToolsLogger.java
    
portals/jetspeed-2/portal/trunk/components/jetspeed-page-manager/src/main/java/org/apache/jetspeed/page/PageSerializerImpl.java
   (contents, props changed)
      - copied, changed from r648030, 
portals/jetspeed-2/portal/trunk/components/jetspeed-page-manager/src/main/java/org/apache/jetspeed/page/PageImporter.java
    
portals/jetspeed-2/portal/trunk/jetspeed-api/src/main/java/org/apache/jetspeed/page/PageSerializer.java
   (with props)
Removed:
    
portals/jetspeed-2/portal/trunk/components/jetspeed-page-manager/src/main/java/org/apache/jetspeed/page/PageImporter.java
    
portals/jetspeed-2/portal/trunk/components/jetspeed-serializer/src/main/java/org/apache/jetspeed/serializer/CommonsToolsLogger.java
Modified:
    
portals/jetspeed-2/portal/trunk/components/jetspeed-db-tools/src/main/java/org/apache/jetspeed/tools/db/serializer/JetspeedSerializerApplicationImpl.java

Copied: 
portals/jetspeed-2/portal/trunk/components/jetspeed-cm/src/main/java/org/apache/jetspeed/components/util/CommonsToolsLogger.java
 (from r648030, 
portals/jetspeed-2/portal/trunk/components/jetspeed-serializer/src/main/java/org/apache/jetspeed/serializer/CommonsToolsLogger.java)
URL: 
http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-cm/src/main/java/org/apache/jetspeed/components/util/CommonsToolsLogger.java?p2=portals/jetspeed-2/portal/trunk/components/jetspeed-cm/src/main/java/org/apache/jetspeed/components/util/CommonsToolsLogger.java&p1=portals/jetspeed-2/portal/trunk/components/jetspeed-serializer/src/main/java/org/apache/jetspeed/serializer/CommonsToolsLogger.java&r1=648030&r2=649015&rev=649015&view=diff
==============================================================================
--- 
portals/jetspeed-2/portal/trunk/components/jetspeed-serializer/src/main/java/org/apache/jetspeed/serializer/CommonsToolsLogger.java
 (original)
+++ 
portals/jetspeed-2/portal/trunk/components/jetspeed-cm/src/main/java/org/apache/jetspeed/components/util/CommonsToolsLogger.java
 Thu Apr 17 02:14:50 2008
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.jetspeed.serializer;
+package org.apache.jetspeed.components.util;
 
 import org.apache.commons.logging.Log;
 import org.apache.jetspeed.tools.ToolsLogger;

Propchange: 
portals/jetspeed-2/portal/trunk/components/jetspeed-cm/src/main/java/org/apache/jetspeed/components/util/CommonsToolsLogger.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
portals/jetspeed-2/portal/trunk/components/jetspeed-cm/src/main/java/org/apache/jetspeed/components/util/CommonsToolsLogger.java
------------------------------------------------------------------------------
    svn:keywords = Id

Propchange: 
portals/jetspeed-2/portal/trunk/components/jetspeed-cm/src/main/java/org/apache/jetspeed/components/util/CommonsToolsLogger.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: 
portals/jetspeed-2/portal/trunk/components/jetspeed-db-tools/src/main/java/org/apache/jetspeed/tools/db/serializer/JetspeedSerializerApplicationImpl.java
URL: 
http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-db-tools/src/main/java/org/apache/jetspeed/tools/db/serializer/JetspeedSerializerApplicationImpl.java?rev=649015&r1=649014&r2=649015&view=diff
==============================================================================
--- 
portals/jetspeed-2/portal/trunk/components/jetspeed-db-tools/src/main/java/org/apache/jetspeed/tools/db/serializer/JetspeedSerializerApplicationImpl.java
 (original)
+++ 
portals/jetspeed-2/portal/trunk/components/jetspeed-db-tools/src/main/java/org/apache/jetspeed/tools/db/serializer/JetspeedSerializerApplicationImpl.java
 Thu Apr 17 02:14:50 2008
@@ -27,7 +27,7 @@
 import org.apache.commons.logging.LogFactory;
 import org.apache.jetspeed.components.JetspeedBeanDefinitionFilter;
 import org.apache.jetspeed.components.SpringComponentManager;
-import org.apache.jetspeed.serializer.CommonsToolsLogger;
+import org.apache.jetspeed.components.util.CommonsToolsLogger;
 import org.apache.jetspeed.serializer.JetspeedSerializer;
 import org.apache.jetspeed.serializer.JetspeedSerializerApplication;
 import org.apache.jetspeed.serializer.SerializerException;

Copied: 
portals/jetspeed-2/portal/trunk/components/jetspeed-page-manager/src/main/java/org/apache/jetspeed/page/PageSerializerImpl.java
 (from r648030, 
portals/jetspeed-2/portal/trunk/components/jetspeed-page-manager/src/main/java/org/apache/jetspeed/page/PageImporter.java)
URL: 
http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-page-manager/src/main/java/org/apache/jetspeed/page/PageSerializerImpl.java?p2=portals/jetspeed-2/portal/trunk/components/jetspeed-page-manager/src/main/java/org/apache/jetspeed/page/PageSerializerImpl.java&p1=portals/jetspeed-2/portal/trunk/components/jetspeed-page-manager/src/main/java/org/apache/jetspeed/page/PageImporter.java&r1=648030&r2=649015&rev=649015&view=diff
==============================================================================
--- 
portals/jetspeed-2/portal/trunk/components/jetspeed-page-manager/src/main/java/org/apache/jetspeed/page/PageImporter.java
 (original)
+++ 
portals/jetspeed-2/portal/trunk/components/jetspeed-page-manager/src/main/java/org/apache/jetspeed/page/PageSerializerImpl.java
 Thu Apr 17 02:14:50 2008
@@ -1,387 +1,275 @@
-/*
+/*
  * Licensed to the Apache Software Foundation (ASF) under one or more
  * contributor license agreements.  See the NOTICE file distributed with
  * this work for additional information regarding copyright ownership.
  * The ASF licenses this file to You under the Apache License, Version 2.0
  * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.jetspeed.page;
-
-import java.util.Iterator;
-
-import org.apache.commons.configuration.PropertiesConfiguration;
-import org.apache.jetspeed.exception.JetspeedException;
-import org.apache.jetspeed.om.folder.Folder;
-import org.apache.jetspeed.om.page.Link;
-import org.apache.jetspeed.om.page.Page;
-import org.apache.jetspeed.om.page.PageSecurity;
-import org.apache.jetspeed.page.document.DocumentNotFoundException;
-import org.springframework.context.ApplicationContext;
-import org.springframework.context.support.ClassPathXmlApplicationContext;
-
-/**
- * DelegatingPageManager
- * 
- * @author <a href="mailto:[EMAIL PROTECTED]">David Sean Taylor</a>
- * @version $Id: $
- */
-
-public class PageImporter
-{
-    /* source page manager impl */
-    private PageManager sourceManager;
-    /* destination page manager impl */
-    private PageManager destManager;    
-    /* rootFolder to start importing from */
-    private String rootFolder;
-    /* flag: overwrite folders during import */
-    private boolean overwriteFolders = false;
-    /* flag: overwrite pages during import */ 
-    private boolean overwritePages = true;
-    /* count of total folders imported */    
-    private int folderCount = 0;    
-    /* count of total pages imported */
-    private int pageCount = 0;
-    /* count of total links imported */
-    private int linkCount = 0;
-    
-    public static void main(String args[])
-    {
-        String fileName = 
System.getProperty("org.apache.jetspeed.page.import.configuration", 
"import.properties");
-        PropertiesConfiguration configuration = new PropertiesConfiguration();
-        try
-        {
-            configuration.load(fileName);        
-            String [] bootAssemblies = 
configuration.getStringArray("boot.assemblies");
-            String [] assemblies = configuration.getStringArray("assemblies");
-            ClassPathXmlApplicationContext ctx;            
-            
-            if (bootAssemblies != null)
-            {
-                ApplicationContext bootContext = new 
ClassPathXmlApplicationContext(bootAssemblies, true);
-                ctx = new ClassPathXmlApplicationContext(assemblies, true, 
bootContext);
-            }
-            else
-            {
-                ctx = new ClassPathXmlApplicationContext(assemblies, true);
-            }
-            
-            String rootFolder = configuration.getString("root.folder", "/");
-            boolean overwriteFolders = 
configuration.getBoolean("overwrite.folders", true);
-            boolean overwritePages = 
configuration.getBoolean("overwrite.pages", true);
-            boolean fullImport = configuration.getBoolean("full.import", true);
-            String sourcePageManager = 
configuration.getString("source.page.manager", "castorPageManager");
-            String destPageManager = 
configuration.getString("dest.page.manager", "dbPageManager");
-            
-            PageManager srcManager = 
(PageManager)ctx.getBean(sourcePageManager);
-            PageManager dstManager = (PageManager)ctx.getBean(destPageManager);
-            PageImporter importer = new PageImporter(srcManager, dstManager, 
rootFolder, overwriteFolders, overwritePages);
-            if (fullImport)
-            {
-                importer.fullImport();
-            }
-            else
-            {
-                importer.folderTreeImport();
-            }
-        }
-        catch (Exception e)
-        {
-            System.err.println("Failed to import: " + e);
-            e.printStackTrace();
-        }
-        
-    }
-    
-    public PageImporter(PageManager sourceManager, 
-                        PageManager destManager, 
-                        String rootFolder,
-                        boolean overwriteFolders,
-                        boolean overwritePages)
-    {
-        this.sourceManager = sourceManager;
-        this.destManager = destManager;
-        this.rootFolder = rootFolder;
-        this.overwriteFolders = overwriteFolders;
-        this.overwritePages = overwritePages;
-    }
-        
-    public void fullImport()
-    throws JetspeedException
-    {
-        Folder fsRoot = sourceManager.getFolder(rootFolder);                
-        importFolder(fsRoot);
-        
-        
-        // create the root page security
-        PageSecurity sourcePageSecurity = null;
-        try
-        {
-            sourcePageSecurity = sourceManager.getPageSecurity();
-        }
-        catch (DocumentNotFoundException e)
-        {
-            // skip over it, not found
-        }
-        
-        if (sourcePageSecurity != null)
-        {
-            PageSecurity rootSecurity = 
destManager.copyPageSecurity(sourcePageSecurity);        
-            destManager.updatePageSecurity(rootSecurity);
-        }
-    }
-
-    public void folderTreeImport()
-    throws JetspeedException
-    {
-        Folder fsRoot = sourceManager.getFolder(rootFolder);                
-        importFolder(fsRoot);                            
-    }
-    
-    private Folder importFolder(Folder srcFolder)
-    throws JetspeedException
-    {
-        Folder dstFolder = lookupFolder(srcFolder.getPath());        
-        if (null != dstFolder)
-        {
-            if (isOverwriteFolders())
-            {
-                System.out.println("overwriting folder " + 
srcFolder.getPath());
-                destManager.removeFolder(dstFolder);
-                dstFolder = destManager
-                        .copyFolder(srcFolder, srcFolder.getPath());
-                destManager.updateFolder(dstFolder);
-                folderCount++;
-
-            } else
-                System.out.println("skipping folder " + srcFolder.getPath());
-        } else
-        {
-            System.out.println("importing new folder " + srcFolder.getPath());
-            dstFolder = destManager.copyFolder(srcFolder, srcFolder.getPath());
-            destManager.updateFolder(dstFolder);
-            folderCount++;
-        }
-        Iterator pages = srcFolder.getPages().iterator();
-        while (pages.hasNext())
-        {
-            Page srcPage = (Page)pages.next();
-            Page dstPage = lookupPage(srcPage.getPath());
-            if (null != dstPage)
-            {
-                if (isOverwritePages())
-                {
-                    System.out.println("overwriting page " + 
srcPage.getPath());                            
-                    destManager.removePage(dstPage);
-                    dstPage = destManager.copyPage(srcPage, srcPage.getPath());
-                    destManager.updatePage(dstPage);
-                    pageCount++;                    
-                }
-                else
-                    System.out.println("skipping page " + srcPage.getPath());  
              
-            }
-            else            
-            {
-                System.out.println("importing new page " + srcPage.getPath());
-                dstPage = destManager.copyPage(srcPage, srcPage.getPath());
-                destManager.updatePage(dstPage);
-                pageCount++;
-            }
-        }
-
-        Iterator links = srcFolder.getLinks().iterator();
-        while (links.hasNext())
-        {
-            Link srcLink = (Link)links.next();
-            Link dstLink = lookupLink(srcLink.getPath());
-            if (null != dstLink)
-            {
-                if (isOverwritePages())
-                {
-                    System.out.println("overwriting link " + 
srcLink.getPath());                            
-                    destManager.removeLink(dstLink);
-                    dstLink = destManager.copyLink(srcLink, srcLink.getPath());
-                    destManager.updateLink(dstLink);
-                    linkCount++;                    
-                }
-                else
-                    System.out.println("skipping link " + srcLink.getPath());  
              
-            }
-            else            
-            {
-                System.out.println("importing new link " + srcLink.getPath());
-                dstLink = destManager.copyLink(srcLink, srcLink.getPath());
-                destManager.updateLink(dstLink);
-                linkCount++;
-            }
-        }
-        
-        Iterator folders = srcFolder.getFolders().iterator();
-        while (folders.hasNext())
-        {
-            Folder folder = (Folder)folders.next();
-            importFolder(folder);
-        }
-        
-        return dstFolder;
-    }
-    
-    private Page lookupPage(String path)
-    {
-        try
-        {
-            return destManager.getPage(path);
-        }
-        catch (Exception e)
-        {
-            return null;
-        }
-    }
-    
-    private Link lookupLink(String path)
-    {
-        try
-        {
-            return destManager.getLink(path);
-        }
-        catch (Exception e)
-        {
-            return null;
-        }
-    }
-    
-    private Folder lookupFolder(String path)
-    {
-        try
-        {
-            return destManager.getFolder(path);
-        }
-        catch (Exception e)
-        {
-            return null;
-        }
-    }
-    
-    /**
-     * @return Returns the overwrite.
-     */
-    public boolean isOverwriteFolders()
-    {
-        return overwriteFolders;
-    }
-    /**
-     * @param overwrite The overwrite to set.
-     */
-    public void setOverwriteFolders(boolean overwrite)
-    {
-        this.overwriteFolders = overwrite;
-    }
-    
-    /**
-     * @return Returns the destManager.
-     */
-    public PageManager getDestManager()
-    {
-        return destManager;
-    }
-    /**
-     * @param destManager The destManager to set.
-     */
-    public void setDestManager(PageManager destManager)
-    {
-        this.destManager = destManager;
-    }
-    /**
-     * @return Returns the folderCount.
-     */
-    public int getFolderCount()
-    {
-        return folderCount;
-    }
-    /**
-     * @param folderCount The folderCount to set.
-     */
-    public void setFolderCount(int folderCount)
-    {
-        this.folderCount = folderCount;
-    }
-    /**
-     * @return Returns the overwritePages.
-     */
-    public boolean isOverwritePages()
-    {
-        return overwritePages;
-    }
-    /**
-     * @param overwritePages The overwritePages to set.
-     */
-    public void setOverwritePages(boolean overwritePages)
-    {
-        this.overwritePages = overwritePages;
-    }
-    /**
-     * @return Returns the pageCount.
-     */
-    public int getPageCount()
-    {
-        return pageCount;
-    }
-    /**
-     * @param pageCount The pageCount to set.
-     */
-    public void setPageCount(int pageCount)
-    {
-        this.pageCount = pageCount;
-    }
-    /**
-     * @return Returns the linkCount.
-     */
-    public int getLinkCount()
-    {
-        return linkCount;
-    }
-    /**
-     * @param linkCount The linkCount to set.
-     */
-    public void setLinkCount(int linkCount)
-    {
-        this.linkCount = linkCount;
-    }
-    /**
-     * @return Returns the rootFolder.
-     */
-    public String getRootFolder()
-    {
-        return rootFolder;
-    }
-    /**
-     * @param rootFolder The rootFolder to set.
-     */
-    public void setRootFolder(String rootFolder)
-    {
-        this.rootFolder = rootFolder;
-    }
-    /**
-     * @return Returns the sourceManager.
-     */
-    public PageManager getSourceManager()
-    {
-        return sourceManager;
-    }
-    /**
-     * @param sourceManager The sourceManager to set.
-     */
-    public void setSourceManager(PageManager sourceManager)
-    {
-        this.sourceManager = sourceManager;
-    }
-}
+ * the License.  You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.jetspeed.page;
+
+import java.util.Iterator;
+
+import org.apache.jetspeed.exception.JetspeedException;
+import org.apache.jetspeed.om.folder.Folder;
+import org.apache.jetspeed.om.page.Link;
+import org.apache.jetspeed.om.page.Page;
+import org.apache.jetspeed.om.page.PageSecurity;
+import org.apache.jetspeed.page.document.DocumentNotFoundException;
+import org.apache.jetspeed.tools.ToolsLogger;
+
+/**
+ * PageSerializerImpl
+ * 
+ * @author <a href="mailto:[EMAIL PROTECTED]">David Sean Taylor</a>
+ * @author <a href="mailto:[EMAIL PROTECTED]">Ate Douma</a>
+ * @version $Id$
+ */
+
+public class PageSerializerImpl implements PageSerializer
+{
+    public static class Context implements Result
+    {
+        protected String folder;
+        
+        protected int folderCount;
+
+        protected int pageCount;
+
+        protected int linkCount;
+
+        protected boolean overwritePages;
+
+        protected boolean overwriteFolders;
+
+        protected transient ToolsLogger logger;
+        
+        public String getFolder()
+        {
+            return folder;
+        }
+
+        public int getFolderCount()
+        {
+            return folderCount;
+        }
+
+        public int getPageCount()
+        {
+            return pageCount;
+        }
+
+        public int getLinkCount()
+        {
+            return linkCount;
+        }
+
+        public boolean isOverwritePages()
+        {
+            return overwritePages;
+        }
+
+        public boolean isOverwriteFolders()
+        {
+            return overwriteFolders;
+        }
+        
+        public Context(String folder, boolean overwritePages, boolean 
overwriteFolders, ToolsLogger logger)
+        {
+            this.folder = folder;
+            this.overwritePages = overwritePages;
+            this.overwriteFolders = overwriteFolders;
+            this.logger = logger;
+        }
+    }
+
+    /* source page manager impl */
+    private PageManager sourceManager;
+
+    /* destination page manager impl */
+    private PageManager destManager;
+
+    public PageSerializerImpl(PageManager sourceManager, PageManager 
destManager)
+    {
+        this.sourceManager = sourceManager;
+        this.destManager = destManager;
+    }
+
+    /* (non-Javadoc)
+     * @see 
org.apache.jetspeed.page.PageSerializer#importPages(java.lang.String, boolean, 
boolean, boolean, org.apache.commons.logging.Log)
+     */
+    public Result importPages(ToolsLogger logger, String rootFolder, boolean 
overwriteFolders, boolean overwritePages, boolean fullImport) throws 
JetspeedException
+    {
+        Context context = new Context(rootFolder, overwritePages, 
overwriteFolders, logger);
+        context.logger.info("Starting " + (fullImport ? "full" : "") + " 
import of folder: " + rootFolder
+                + " (overwriting folders: " + overwriteFolders + ", pages: " + 
overwritePages + ")");
+        importFolder(sourceManager.getFolder(rootFolder), context);
+
+        if (fullImport)
+        {
+            // create the root page security
+            PageSecurity sourcePageSecurity = null;
+            try
+            {
+                sourcePageSecurity = sourceManager.getPageSecurity();
+            }
+            catch (DocumentNotFoundException e)
+            {
+                // skip over it, not found
+            }
+
+            if (sourcePageSecurity != null)
+            {
+                context.logger.info("Importing page security");
+                PageSecurity rootSecurity = 
destManager.copyPageSecurity(sourcePageSecurity);
+                destManager.updatePageSecurity(rootSecurity);
+            }
+            else
+            {
+                context.logger.info("Skipping page security: not found");
+            }
+        }
+        context.logger.info("Import finished: processed " + 
context.folderCount + " folder(s), " + context.pageCount
+                + " page(s), " + context.linkCount + " link(s).");
+        context.logger = null;
+        return context;
+    }
+
+    private Folder importFolder(Folder srcFolder, Context context) throws 
JetspeedException
+    {
+        Folder dstFolder = lookupFolder(srcFolder.getPath());
+        if (null != dstFolder)
+        {
+            if (context.overwriteFolders)
+            {
+                context.logger.info("overwriting folder " + 
srcFolder.getPath());
+                destManager.removeFolder(dstFolder);
+                dstFolder = destManager.copyFolder(srcFolder, 
srcFolder.getPath());
+                destManager.updateFolder(dstFolder);
+                context.folderCount++;
+
+            }
+            else
+            {
+                context.logger.info("skipping folder " + srcFolder.getPath());
+            }
+        }
+        else
+        {
+            context.logger.info("importing new folder " + srcFolder.getPath());
+            dstFolder = destManager.copyFolder(srcFolder, srcFolder.getPath());
+            destManager.updateFolder(dstFolder);
+            context.folderCount++;
+        }
+        Iterator pages = srcFolder.getPages().iterator();
+        while (pages.hasNext())
+        {
+            Page srcPage = (Page) pages.next();
+            Page dstPage = lookupPage(srcPage.getPath());
+            if (null != dstPage)
+            {
+                if (context.overwritePages)
+                {
+                    context.logger.info("overwriting page " + 
srcPage.getPath());
+                    destManager.removePage(dstPage);
+                    dstPage = destManager.copyPage(srcPage, srcPage.getPath());
+                    destManager.updatePage(dstPage);
+                    context.pageCount++;
+                }
+                else
+                {
+                    context.logger.info("skipping page " + srcPage.getPath());
+                }
+            }
+            else
+            {
+                context.logger.info("importing new page " + srcPage.getPath());
+                dstPage = destManager.copyPage(srcPage, srcPage.getPath());
+                destManager.updatePage(dstPage);
+                context.pageCount++;
+            }
+        }
+
+        Iterator links = srcFolder.getLinks().iterator();
+        while (links.hasNext())
+        {
+            Link srcLink = (Link) links.next();
+            Link dstLink = lookupLink(srcLink.getPath());
+            if (null != dstLink)
+            {
+                if (context.overwritePages)
+                {
+                    context.logger.info("overwriting link " + 
srcLink.getPath());
+                    destManager.removeLink(dstLink);
+                    dstLink = destManager.copyLink(srcLink, srcLink.getPath());
+                    destManager.updateLink(dstLink);
+                    context.linkCount++;
+                }
+                else
+                {
+                    context.logger.info("skipping link " + srcLink.getPath());
+                }
+            }
+            else
+            {
+                context.logger.info("importing new link " + srcLink.getPath());
+                dstLink = destManager.copyLink(srcLink, srcLink.getPath());
+                destManager.updateLink(dstLink);
+                context.linkCount++;
+            }
+        }
+
+        Iterator folders = srcFolder.getFolders().iterator();
+        while (folders.hasNext())
+        {
+            Folder folder = (Folder) folders.next();
+            importFolder(folder, context);
+        }
+
+        return dstFolder;
+    }
+
+    private Page lookupPage(String path)
+    {
+        try
+        {
+            return destManager.getPage(path);
+        }
+        catch (Exception e)
+        {
+            return null;
+        }
+    }
+
+    private Link lookupLink(String path)
+    {
+        try
+        {
+            return destManager.getLink(path);
+        }
+        catch (Exception e)
+        {
+            return null;
+        }
+    }
+
+    private Folder lookupFolder(String path)
+    {
+        try
+        {
+            return destManager.getFolder(path);
+        }
+        catch (Exception e)
+        {
+            return null;
+        }
+    }
+}

Propchange: 
portals/jetspeed-2/portal/trunk/components/jetspeed-page-manager/src/main/java/org/apache/jetspeed/page/PageSerializerImpl.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
portals/jetspeed-2/portal/trunk/components/jetspeed-page-manager/src/main/java/org/apache/jetspeed/page/PageSerializerImpl.java
------------------------------------------------------------------------------
    svn:keywords = Id

Added: 
portals/jetspeed-2/portal/trunk/jetspeed-api/src/main/java/org/apache/jetspeed/page/PageSerializer.java
URL: 
http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/jetspeed-api/src/main/java/org/apache/jetspeed/page/PageSerializer.java?rev=649015&view=auto
==============================================================================
--- 
portals/jetspeed-2/portal/trunk/jetspeed-api/src/main/java/org/apache/jetspeed/page/PageSerializer.java
 (added)
+++ 
portals/jetspeed-2/portal/trunk/jetspeed-api/src/main/java/org/apache/jetspeed/page/PageSerializer.java
 Thu Apr 17 02:14:50 2008
@@ -0,0 +1,43 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.jetspeed.page;
+
+import java.io.Serializable;
+
+import org.apache.jetspeed.exception.JetspeedException;
+import org.apache.jetspeed.tools.ToolsLogger;
+
+/**
+ * PageSerializer
+ *
+ * @version $Id$
+ */
+public interface PageSerializer
+{
+    public interface Result extends Serializable
+    {
+        String getFolder();
+        int getFolderCount();
+        int getPageCount();
+        int getLinkCount();
+        boolean isOverwritePages();
+        boolean isOverwriteFolders();
+    }
+    
+    Result importPages(ToolsLogger logger, String rootFolder, boolean 
overwriteFolders, boolean overwritePages, boolean fullImport) throws 
JetspeedException;
+}
\ No newline at end of file

Propchange: 
portals/jetspeed-2/portal/trunk/jetspeed-api/src/main/java/org/apache/jetspeed/page/PageSerializer.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
portals/jetspeed-2/portal/trunk/jetspeed-api/src/main/java/org/apache/jetspeed/page/PageSerializer.java
------------------------------------------------------------------------------
    svn:keywords = Id

Propchange: 
portals/jetspeed-2/portal/trunk/jetspeed-api/src/main/java/org/apache/jetspeed/page/PageSerializer.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to