taylor      2004/02/23 21:34:01

  Modified:    components/cm/src/java/org/apache/jetspeed/components
                        ComponentAwareTestSuite.java
               components/registry maven.xml
               portal   maven.xml
               portal/src/java/org/apache/jetspeed/page/impl
                        CastorXmlPageManager.java
               portal/src/test/org/apache/jetspeed/cache/file
                        TestFileCache.java
               portal/src/test/org/apache/jetspeed/page
                        TestCastorXmlPageManager.java
               portal/src/webapp/WEB-INF/assembly jetspeed.groovy
               portal/src/webapp/WEB-INF/db/hsql Registry.script
               portal/test/assembly TestCastorXmlPageManager.groovy
                        TestDatabasePageManager.groovy
  Added:       portal/src/java/org/apache/jetspeed/cache/file
                        filecache.container.groovy
               portal/src/java/org/apache/jetspeed/page/impl
                        page-mapping.xml
  Log:
  - converted file cache to component, added groovy test container
  - added component dependency on FileCache to CastorXmlPageManager
  - fixed bug in ComponentAwareTestSuite causing npr when script not found
  - move CastorXMLPageManager's Castor page mapping to jar file as a resource
  - fixed bug in Registry where OJB files were not being populated causing build to 
fail
  
  Revision  Changes    Path
  1.2       +73 -11    
jakarta-jetspeed-2/components/cm/src/java/org/apache/jetspeed/components/ComponentAwareTestSuite.java
  
  Index: ComponentAwareTestSuite.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jetspeed-2/components/cm/src/java/org/apache/jetspeed/components/ComponentAwareTestSuite.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ComponentAwareTestSuite.java      24 Feb 2004 00:46:26 -0000      1.1
  +++ ComponentAwareTestSuite.java      24 Feb 2004 05:34:01 -0000      1.2
  @@ -1,10 +1,59 @@
  -/*
  - * Created on Feb 23, 2004
  +/* ====================================================================
  + * The Apache Software License, Version 1.1
    *
  - * To change the template for this generated file go to
  - * Window - Preferences - Java - Code Generation - Code and Comments
  + * Copyright (c) 2000-2003 The Apache Software Foundation.  All rights
  + * reserved.
  + *
  + * Redistribution and use in source and binary forms, with or without
  + * modification, are permitted provided that the following conditions
  + * are met:
  + *
  + * 1. Redistributions of source code must retain the above copyright
  + *    notice, this list of conditions and the following disclaimer.
  + *
  + * 2. Redistributions in binary form must reproduce the above copyright
  + *    notice, this list of conditions and the following disclaimer in
  + *    the documentation and/or other materials provided with the
  + *    distribution.
  + *
  + * 3. The end-user documentation included with the redistribution,
  + *    if any, must include the following acknowledgment:
  + *       "This product includes software developed by the
  + *        Apache Software Foundation (http://www.apache.org/)."
  + *    Alternately, this acknowledgment may appear in the software itself,
  + *    if and wherever such third-party acknowledgments normally appear.
  + *
  + * 4. The names "Apache" and "Apache Software Foundation" and
  + *    "Apache Jetspeed" must not be used to endorse or promote products
  + *    derived from this software without prior written permission. For
  + *    written permission, please contact [EMAIL PROTECTED]
  + *
  + * 5. Products derived from this software may not be called "Apache",
  + *    "Apache Jetspeed", nor may "Apache" appear in their name, without
  + *    prior written permission of the Apache Software Foundation.
  + *
  + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  + * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
  + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  + * SUCH DAMAGE.
  + * ====================================================================
  + *
  + * This software consists of voluntary contributions made by many
  + * individuals on behalf of the Apache Software Foundation.  For more
  + * information on the Apache Software Foundation, please see
  + * <http://www.apache.org/>.
    */
   package org.apache.jetspeed.components;
  +
  +import java.io.InputStream;
   import java.io.InputStreamReader;
   import java.io.Reader;
   import junit.framework.Test;
  @@ -15,10 +64,10 @@
   import org.picocontainer.defaults.SimpleReference;
   
   /**
  - * @author Sweaver
    * 
  - * To change the template for this generated type comment go to Window -
  - * Preferences - Java - Code Generation - Code and Comments
  + * @author <a href="mailto:[EMAIL PROTECTED]">Scott T. Weaver </a>
  + * @version $Id$
  + *  
    */
   public class ComponentAwareTestSuite extends TestSuite
   {
  @@ -44,6 +93,7 @@
       {
           super(arg0, arg1);
           // TODO Auto-generated constructor stub
  +        
       }
   
       /**
  @@ -63,15 +113,25 @@
           super(arg0);
           // TODO Auto-generated constructor stub
       }
  -    protected void buildConainer(String script) throws ClassNotFoundException
  +    
  +    protected void buildContainer(String script) throws ClassNotFoundException
       {
           ClassLoader cl = Thread.currentThread().getContextClassLoader();
  -        Reader scriptReader = new InputStreamReader(cl.getResourceAsStream(script));
  +        InputStream is = cl.getResourceAsStream(script);
  +        if (is == null)
  +        {
  +            throw new ClassNotFoundException("script not found: " + script);
  +        }
  +        Reader scriptReader = new InputStreamReader(is);
  +        
           cm = new ComponentManager(scriptReader, ComponentManager.GROOVY);
  +        
           ObjectReference containerRef = new SimpleReference();
           cm.getContainerBuilder().buildContainer(containerRef, null, 
"TEST_REGISTRY");
           container = (MutablePicoContainer) containerRef.get();
  +                
       }
  +        
       /*
        * (non-Javadoc)
        * 
  @@ -81,7 +141,8 @@
       {
           try
           {
  -            buildConainer(script);
  +            
  +            buildContainer(script);
               super.run(arg0);
               if (container != null)
               {
  @@ -96,7 +157,8 @@
               }
               
               e.printStackTrace();
  -            throw new RuntimeException(e.toString());            
  +            
  +             throw new RuntimeException(e);            
           }
       }
   
  
  
  
  1.4       +2 -0      jakarta-jetspeed-2/components/registry/maven.xml
  
  Index: maven.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-jetspeed-2/components/registry/maven.xml,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- maven.xml 24 Feb 2004 01:04:36 -0000      1.3
  +++ maven.xml 24 Feb 2004 05:34:01 -0000      1.4
  @@ -42,6 +42,8 @@
     <goal name="db.create">
       <j:set var="database.arg.script" 
value="${basedir}/src/sql/${database.default.name}/create-db.sql" />
       <attainGoal name="db.execute" />
  +    <j:set var="database.arg.script" 
value="${basedir}/../../portal/src/sql/${database.default.name}/create-db-phase3-ojb.sql"
 />
  +    <attainGoal name="db.execute" />
     </goal>
   
     <!-- ================================================================ -->
  
  
  
  1.43      +1 -1      jakarta-jetspeed-2/portal/maven.xml
  
  Index: maven.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-jetspeed-2/portal/maven.xml,v
  retrieving revision 1.42
  retrieving revision 1.43
  diff -u -r1.42 -r1.43
  --- maven.xml 24 Feb 2004 00:49:45 -0000      1.42
  +++ maven.xml 24 Feb 2004 05:34:01 -0000      1.43
  @@ -4,7 +4,7 @@
            xmlns:reactor="reactor">
   
     <!-- Target of maven test:single test -->
  -<property name='testcase' 
value='org.apache.jetspeed.page.TestCastorXmlPageManager'/>
  +<property name='testcase' value='org.apache.jetspeed.cache.file.TestFileCache'/>
   
     <!-- ================================================================ -->
     <!-- Set System properties for junit                                  -->
  
  
  
  1.1                  
jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/cache/file/filecache.container.groovy
  
  Index: filecache.container.groovy
  ===================================================================
  import org.picocontainer.defaults.DefaultPicoContainer
  import org.apache.jetspeed.cache.file.FileCache
  
  // create the root container
  container = new DefaultPicoContainer()
  
  Long scanRate = 10
  cacheSize = 20
  container.registerComponentInstance(FileCache, new FileCache(scanRate, cacheSize))
  
  return container
  
  
  1.2       +33 -52    
jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/page/impl/CastorXmlPageManager.java
  
  Index: CastorXmlPageManager.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/page/impl/CastorXmlPageManager.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- CastorXmlPageManager.java 21 Feb 2004 09:01:30 -0000      1.1
  +++ CastorXmlPageManager.java 24 Feb 2004 05:34:01 -0000      1.2
  @@ -60,6 +60,7 @@
   import java.io.FileWriter;
   import java.io.FilenameFilter;
   import java.io.IOException;
  +import java.io.InputStream;
   import java.util.ArrayList;
   import java.util.List;
   
  @@ -120,48 +121,35 @@
       /** the output format for pretty printing when saving registries */
       protected OutputFormat format = null;
   
  -    /** the base refresh rate for pages */
  -    protected long scanRate = 1000 * 60; // every minute
  -
  -    /** the default cache size */
  -    protected int cacheSize = 100;
  -
       // castor mapping
  -    public static final String DEFAULT_MAPPING = "page-mapping.xml";
  -    protected String mapFile = null;
  +    protected String mapFileResource = 
"org/apache/jetspeed/page/impl/page-mapping.xml";
   
       /** the Castor mapping file name */
       protected Mapping mapping = null;
   
  -    public CastorXmlPageManager(IdGenerator generator, String mapFile, String root)
  +    public CastorXmlPageManager(IdGenerator generator, FileCache fileCache, String 
root)
       {    
           super(generator);
  -        this.mapFile = mapFile;
  -        this.rootDir = new File(root);        
  +        this.rootDir = new File(root);
  +        this.pages = fileCache;        
       }
       
  -    public CastorXmlPageManager(IdGenerator generator, String mapFile, String root, 
List modelClasses)
  +    public CastorXmlPageManager(IdGenerator generator, FileCache fileCache, String 
root, List modelClasses)
       {
           super(generator, modelClasses);
  -        this.mapFile = mapFile;
  -        this.rootDir = new File(root);        
  +        this.rootDir = new File(root);
  +        this.pages = fileCache;        
       }
   
  -    public CastorXmlPageManager(IdGenerator generator, 
  -                                       String mapFile,
  -                                       String root,                                 
       
  -                                       List modelClasses,
  -                                       String extension, 
  -                                       long scanRate, 
  -                                       int cacheSize)
  +    public CastorXmlPageManager(IdGenerator generator,
  +                                FileCache fileCache, 
  +                                String root,                                        
  +                                List modelClasses,
  +                                String extension) 
                                          
       {
  -        super(generator, modelClasses);
  -        this.mapFile = mapFile;        
  -        this.rootDir = new File(root);
  +        this(generator, fileCache, root, modelClasses);
           this.ext = extension;
  -        this.scanRate = scanRate;
  -        this.cacheSize = cacheSize;
       }
   
   
  @@ -203,7 +191,6 @@
           // psml castor mapping file
           loadMapping();
   
  -        pages = new FileCache(this.scanRate, this.cacheSize);
           pages.addListener(this);
           pages.startFileScanner();
   
  @@ -447,34 +434,28 @@
   
       protected void loadMapping() 
       {
  -        // test the mapping file and create the mapping object
  -
  -        if (mapFile != null)
  -        {
  -            File map = new File(mapFile);
  +        try
  +        {            
  +            InputStream stream = 
Thread.currentThread().getContextClassLoader().getResourceAsStream(mapFileResource);
  +                        
               if (log.isDebugEnabled())
               {
  -                log.debug("Loading psml mapping file " + mapFile);
  -            }
  -            if (map.exists() && map.isFile() && map.canRead())
  -            {
  -                try
  -                {
  -                    mapping = new Mapping();
  -                    InputSource is = new InputSource(new FileReader(map));
  -                    is.setSystemId(mapFile);
  -                    mapping.loadMapping(is);
  -                }
  -                catch (Exception e)
  -                {
  -                    log.error("Error in psml mapping creation", e);
  -                }
  -            }
  -            else
  -            {
  -                log.error("PSML Mapping not found or not a file or unreadable: " + 
mapFile);
  +                log.debug("Loading psml mapping file " + mapFileResource);
               }
  +            
  +            mapping = new Mapping();
  +                    
  +                    
  +            InputSource is = new InputSource(stream);
  +            is.setSystemId(mapFileResource);
  +                   
  +            mapping.loadMapping(is);
           }
  +        catch (Exception e)
  +        {
  +            log.error("Error in psml mapping creation", e);            
  +        }
  +        
       }
   
       /**
  
  
  
  1.1                  
jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/page/impl/page-mapping.xml
  
  Index: page-mapping.xml
  ===================================================================
  <?xml version="1.0"?>
  <mapping>
    <class name="org.apache.jetspeed.om.page.psml.PageImpl">
      <map-to xml="page"/>
  
      <field name="id" type="java.lang.String">
        <bind-xml name="id" node="attribute"/>
      </field>
  
      <field name="acl" type="java.lang.String">
        <bind-xml name="acl" node="attribute"/>
      </field>
  
      <field name="title" type="java.lang.String">
        <bind-xml name="title"/>
      </field>
  
      <field name="defaults"
             type="org.apache.jetspeed.om.page.psml.Defaults">
        <bind-xml name="defaults"/>
      </field>
  
      <field name="rootFragment"
             type="org.apache.jetspeed.om.page.psml.FragmentImpl">
        <bind-xml name="fragment"/>
      </field>             
    </class>
  
    <class name="org.apache.jetspeed.om.page.psml.FragmentImpl">
      <map-to xml="fragment"/>
  
      <field name="id" type="java.lang.String">
        <bind-xml name="id" node="attribute"/>
      </field>
  
      <field name="acl" type="java.lang.String">
        <bind-xml name="acl" node="attribute"/>
      </field>
  
      <field name="type" type="java.lang.String">
        <bind-xml name="type" node="attribute"/>
      </field>
  
      <field name="name" type="java.lang.String">
        <bind-xml name="name" node="attribute"/>
      </field>
  
      <field name="skin" type="java.lang.String">
        <bind-xml name="skin" node="attribute"/>
      </field>
  
      <field name="state" type="java.lang.String">
        <bind-xml name="state" node="attribute"/>
      </field>
  
      <field name="decorator" type="java.lang.String">
        <bind-xml name="decorator" node="attribute"/>
      </field>
  
      <field name="title" type="java.lang.String">
        <bind-xml name="title"/>
      </field>
  
      <field name="fragments"
             type="org.apache.jetspeed.om.page.psml.FragmentImpl" 
             collection="vector">
        <bind-xml name="fragment"/>
      </field>
  
      <field name="properties"
             type="org.apache.jetspeed.om.page.psml.PropertyImpl" collection="vector">
        <bind-xml name="property"/>
      </field>
    </class>
  
    <class name="org.apache.jetspeed.om.page.psml.Defaults">
      <map-to xml="defaults"/>
  
      <field name="skin" type="java.lang.String">
        <bind-xml name="skin" node="attribute"/>
      </field>
  
      <field name="layoutDecorator" type="java.lang.String">
        <bind-xml name="layout-decorator" node="attribute"/>
      </field>
      
      <field name="portletDecorator" type="java.lang.String">
        <bind-xml name="portlet-decorator" node="attribute"/>
      </field>
   </class>
  
    <class name="org.apache.jetspeed.om.page.psml.PropertyImpl">
      <map-to xml="property"/>
  
      <field name="name" type="java.lang.String">
        <bind-xml name="name" node="attribute"/>
      </field>
  
      <field name="value" type="java.lang.String">
        <bind-xml name="value" node="attribute"/>
      </field>
  
      <field name="layout" type="java.lang.String">
        <bind-xml name="layout" node="attribute"/>
      </field>
   </class>
  
  </mapping>
  
  
  1.3       +33 -21    
jakarta-jetspeed-2/portal/src/test/org/apache/jetspeed/cache/file/TestFileCache.java
  
  Index: TestFileCache.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jetspeed-2/portal/src/test/org/apache/jetspeed/cache/file/TestFileCache.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- TestFileCache.java        4 Feb 2004 21:35:25 -0000       1.2
  +++ TestFileCache.java        24 Feb 2004 05:34:01 -0000      1.3
  @@ -61,13 +61,13 @@
   import java.util.Iterator;
   
   import junit.framework.Test;
  -import junit.framework.TestSuite;
   
   import org.apache.commons.io.StreamUtils;
   import org.apache.commons.lang.exception.ExceptionUtils;
  -import org.apache.jetspeed.test.JetspeedTest;
  -import org.apache.jetspeed.test.JetspeedTestSuite;
  +import org.apache.jetspeed.components.AbstractComponentAwareTestCase;
  +import org.apache.jetspeed.components.ComponentAwareTestSuite;
   import org.apache.jetspeed.util.FileCopy;
  +import org.picocontainer.MutablePicoContainer;
   
   /**
    * Unit test for FileCache 
  @@ -76,7 +76,7 @@
    * @version $Id$
    */
   
  -public class TestFileCache extends JetspeedTest implements FileCacheEventListener
  +public class TestFileCache extends AbstractComponentAwareTestCase implements 
FileCacheEventListener
   {    
       String refreshedEntry = null;
   
  @@ -85,19 +85,11 @@
        *
        * @param name the testcase's name.
        */
  -    public TestFileCache( String name ) {
  +    public TestFileCache( String name ) 
  +    {
           super( name );
       }
       
  -    /**
  -     * Start the tests.
  -     *
  -     * @param args the arguments. Not used
  -     */
  -    public static void main(String args[]) 
  -    {
  -        junit.awtui.TestRunner.main( new String[] { TestFileCache.class.getName() } 
);
  -    }
    
       /**
        * Creates the test suite.
  @@ -107,8 +99,27 @@
        */
       public static Test suite() 
       {
  -        // All methods starting with "test" will be executed in the test suite.
  -        return new JetspeedTestSuite( TestFileCache.class );
  +        ComponentAwareTestSuite suite = new 
ComponentAwareTestSuite(TestFileCache.class);
  +        
suite.setScript("org/apache/jetspeed/cache/file/filecache.container.groovy");
  +        return suite;
  +    }
  +    
  +    private MutablePicoContainer container = null;
  +    
  +    private FileCache cache = null;
  +    
  +    protected void setUp() throws Exception
  +    {
  +        super.setUp();
  +        container = (MutablePicoContainer) getContainer();
  +        cache = (FileCache) container.getComponentInstance(FileCache.class);
  +    }    
  +    
  +    public void testComponent()
  +    throws Exception
  +    {
  +        assertNotNull("container failed to load", container);
  +        assertNotNull("component failed to load", cache);        
       }
   
       /**
  @@ -117,7 +128,7 @@
        */
   
       public void testLoadCache() throws Exception 
  -    {
  +    {        
           String templateFile = "./test/testdata/psml/user/cachetest/default.psml";
           try
           {
  @@ -127,7 +138,7 @@
               createTestFiles(templateFile);
   
               // create the Cache  wake up after 10 seconds, cache size 20
  -            FileCache cache = new FileCache(10, 20);
  +            // FileCache cache = new FileCache(10, 20);
   
               // load the Cache
               File directory = new File("./test/testdata/psml/user/cachetest/");
  @@ -150,7 +161,7 @@
               // start the cache's scanner
               cache.startFileScanner();
   
  -            Thread.currentThread().sleep(2000);
  +            Thread.sleep(2000);
   
               assertTrue(cache.getSize() == 20);
   
  @@ -162,7 +173,7 @@
               files[18].setLastModified(new Date().getTime());
   
   
  -            Thread.currentThread().sleep(9000);
  +            Thread.sleep(9000);
   
               assertNotNull(refreshedEntry);
               System.out.println("refreshed entry = " + refreshedEntry);
  @@ -240,6 +251,7 @@
               System.out.println(entry.getFile().getName());
           }
       }
  +            
   }
   
   
  
  
  
  1.2       +8 -2      
jakarta-jetspeed-2/portal/src/test/org/apache/jetspeed/page/TestCastorXmlPageManager.java
  
  Index: TestCastorXmlPageManager.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jetspeed-2/portal/src/test/org/apache/jetspeed/page/TestCastorXmlPageManager.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- TestCastorXmlPageManager.java     21 Feb 2004 09:01:30 -0000      1.1
  +++ TestCastorXmlPageManager.java     24 Feb 2004 05:34:01 -0000      1.2
  @@ -60,6 +60,8 @@
   import junit.framework.TestSuite;
   
   import org.apache.jetspeed.PortalComponentAssemblyTestCase;
  +import org.apache.jetspeed.components.ComponentAwareTestSuite;
  +import org.apache.jetspeed.components.ComponentManager;
   import org.apache.jetspeed.om.page.Fragment;
   import org.apache.jetspeed.om.page.Page;
   import org.apache.jetspeed.om.page.Property;
  @@ -73,6 +75,7 @@
   public class TestCastorXmlPageManager extends PortalComponentAssemblyTestCase
   {
       private String testId = "test002";
  +    private ComponentManager componentManager;
   
       /**
        * Defines the testcase name for JUnit.
  @@ -103,7 +106,10 @@
       public static Test suite()
       {
           // All methods starting with "test" will be executed in the test suite.
  -        return new TestSuite(TestCastorXmlPageManager.class);
  +        //return new TestSuite(TestCastorXmlPageManager.class);
  +        ComponentAwareTestSuite suite = new 
ComponentAwareTestSuite(TestCastorXmlPageManager.class);
  +        suite.setScript("org/apache/jetspeed/page/impl/registry.container.groovy");
  +        return suite ;      
       }
   
       public void testNewPage()
  
  
  
  1.10      +8 -5      
jakarta-jetspeed-2/portal/src/webapp/WEB-INF/assembly/jetspeed.groovy
  
  Index: jetspeed.groovy
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jetspeed-2/portal/src/webapp/WEB-INF/assembly/jetspeed.groovy,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- jetspeed.groovy   24 Feb 2004 00:50:24 -0000      1.9
  +++ jetspeed.groovy   24 Feb 2004 05:34:01 -0000      1.10
  @@ -30,6 +30,8 @@
   import org.apache.jetspeed.components.portletentity.PortletEntityAccessComponent
   import org.apache.jetspeed.components.portletentity.PortletEntityAccessComponentImpl
   
  +import org.apache.jetspeed.cache.file.FileCache
  +
   
   // WARNING!!!!!!
   // DO NOT use {Class}.class as it appears to be broken in Groovy
  @@ -61,17 +63,18 @@
   Long counterStart = 65536
   peidPrefix = "P-"
   peidSuffix = ""
  -container.registerComponentInstance("IdGenerator", new 
JetspeedIdGenerator(counterStart, peidPrefix, peidSuffix))
  +idgenerator = new JetspeedIdGenerator(counterStart, peidPrefix, peidSuffix)
  +container.registerComponentInstance("IdGenerator", idgenerator)
   
   //
   // Page Manager
   //
   root = applicationRoot + "/WEB-INF/pages"
  -// TODO: move this into a class loader resource
  -mapping = applicationRoot + "/WEB-INF/conf/page-mapping.xml"
  -// TODO: modelclasses, extension, scanrate, cachesize
  +Long scanRate = 120
  +cacheSize = 100
  +fileCache = new FileCache(scanRate, cacheSize)
   container.registerComponentInstance("CastorXmlPageManager", 
  -                                     new CastorXmlPageManager(idgenerator, mapping, 
root))
  +                                     new CastorXmlPageManager(idgenerator, 
fileCache, root))
   
   //
   // HSQL Server 
  
  
  
  1.26      +14 -14    
jakarta-jetspeed-2/portal/src/webapp/WEB-INF/db/hsql/Registry.script
  
  Index: Registry.script
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jetspeed-2/portal/src/webapp/WEB-INF/db/hsql/Registry.script,v
  retrieving revision 1.25
  retrieving revision 1.26
  diff -u -r1.25 -r1.26
  --- Registry.script   21 Feb 2004 04:02:06 -0000      1.25
  +++ Registry.script   24 Feb 2004 05:34:01 -0000      1.26
  @@ -1,17 +1,3 @@
  -CREATE TABLE PORTLET_APPLICATION_DUBLIN_CORE(ID INTEGER NOT NULL PRIMARY KEY)
  -CREATE TABLE PORTLET_APPLICATION_DUBLIN_CORE_FIELDS(ID INTEGER NOT NULL PRIMARY 
KEY,OBJECT_ID INTEGER NOT NULL,VALUE LONGVARCHAR NOT NULL,LOCALE_STRING VARCHAR(50) 
NOT NULL)
  -CREATE TABLE PORTLET_APPLICATION(APPLICATION_ID INTEGER NOT NULL PRIMARY 
KEY,APP_NAME VARCHAR(80) NOT NULL,APP_IDENTIFIER VARCHAR(80),VERSION 
VARCHAR(80),APP_TYPE INTEGER,DESCRIPTION VARCHAR(80),WEB_APP_ID INTEGER NOT 
NULL,DUBLIN_CORE_ID INTEGER NOT NULL,CONSTRAINT UK_APPLICATION UNIQUE(APP_NAME))
  -CREATE TABLE WEB_APPLICATION(ID INTEGER NOT NULL PRIMARY KEY,CONTEXT_ROOT 
VARCHAR(255) NOT NULL)
  -CREATE TABLE PORTLET_DEFINITION(ID INTEGER NOT NULL PRIMARY KEY,NAME 
VARCHAR(80),CLASS_NAME VARCHAR(100),APPLICATION_ID INTEGER NOT NULL,PORTLET_IDENTIFIER 
VARCHAR(80),EXPIRATION_CACHE VARCHAR(30),PREFERENCE_VALIDATOR VARCHAR(255),CONSTRAINT 
SYS_CT_2 UNIQUE(APPLICATION_ID,NAME))
  -CREATE TABLE LANGUAGE(ID INTEGER NOT NULL PRIMARY KEY,PORTLET_ID INTEGER NOT 
NULL,TITLE VARCHAR(100),SHORT_TITLE VARCHAR(50),LOCALE_STRING VARCHAR(50) NOT 
NULL,KEYWORDS LONGVARCHAR)
  -CREATE TABLE PORTLET_CONTENT_TYPE(CONTENT_TYPE_ID INTEGER NOT NULL PRIMARY 
KEY,PORTLET_ID INTEGER NOT NULL,CONTENT_TYPE VARCHAR(30) NOT NULL,MODES LONGVARCHAR)
  -CREATE TABLE PARAMETER(PARAMETER_ID INTEGER NOT NULL PRIMARY KEY,PARENT_ID INTEGER 
NOT NULL,CLASS_NAME VARCHAR(30) NOT NULL,NAME VARCHAR(80) NOT NULL,PARAMETER_VALUE 
LONGVARCHAR NOT NULL)
  -CREATE TABLE PORTLET_PREFERENCE(ID INTEGER NOT NULL PRIMARY KEY,PARENT_ID INTEGER 
NOT NULL,NAME VARCHAR(80) NOT NULL,CLASS_NAME VARCHAR(50) NOT NULL,READ_ONLY CHAR(1) 
DEFAULT '1')
  -CREATE TABLE PREFERENCE_VALUE(ID INTEGER NOT NULL PRIMARY KEY,PREFERENCE_ID 
INTEGER,VALUE LONGVARCHAR)
  -CREATE TABLE PORTLET_ENTITY(ID INTEGER NOT NULL PRIMARY KEY,PORTLET_DEFINITION_ID 
INTEGER NOT NULL,GUID VARCHAR(255) NOT NULL)
  -CREATE TABLE SECURITY_ROLE_REFERENCE(ID INTEGER NOT NULL PRIMARY 
KEY,PORTLET_DEFINITION_ID INTEGER NOT NULL,ROLE_NAME VARCHAR(150),ROLE_LINK 
VARCHAR(150))
  -CREATE TABLE LOCALIZED_DESCRIPTION(ID INTEGER NOT NULL PRIMARY KEY,OBJECT_ID 
INTEGER NOT NULL,CLASS_NAME VARCHAR(255) NOT NULL,DESCRIPTION LONGVARCHAR NOT 
NULL,LOCALE_STRING VARCHAR(50) NOT NULL)
  -CREATE TABLE LOCALIZED_DISPLAY_NAME(ID INTEGER NOT NULL PRIMARY KEY,OBJECT_ID 
INTEGER NOT NULL,CLASS_NAME VARCHAR(255),DISPLAY_NAME LONGVARCHAR NOT 
NULL,LOCALE_STRING VARCHAR(50) NOT NULL)
   CREATE TABLE SECURITY_PRINCIPAL(PRINCIPAL_ID INTEGER NOT NULL PRIMARY KEY,CLASSNAME 
VARCHAR(254) NOT NULL,FULL_PATH VARCHAR(254) NOT NULL,CREATION_DATE TIMESTAMP NOT 
NULL,MODIFIED_DATE TIMESTAMP NOT NULL)
   CREATE TABLE SECURITY_CREDENTIAL(CREDENTIAL_ID INTEGER NOT NULL PRIMARY 
KEY,PRINCIPAL_ID INTEGER NOT NULL,VALUE VARCHAR(254) NOT NULL,TYPE SMALLINT NOT 
NULL,CLASSNAME VARCHAR(254),CREATION_DATE TIMESTAMP NOT NULL,MODIFIED_DATE TIMESTAMP 
NOT NULL,CONSTRAINT SECURITY_CREDENTIAL_FK1 FOREIGN KEY(PRINCIPAL_ID) REFERENCES 
SECURITY_PRINCIPAL(PRINCIPAL_ID))
   CREATE TABLE SECURITY_USER_ROLE(USER_ID INTEGER NOT NULL,ROLE_ID INTEGER NOT 
NULL,CONSTRAINT SYS_PK_SECURITY_USER_ROLE PRIMARY KEY(USER_ID,ROLE_ID),CONSTRAINT 
SECURITY_USER_ROLE_FK1 FOREIGN KEY(USER_ID) REFERENCES 
SECURITY_PRINCIPAL(PRINCIPAL_ID),CONSTRAINT SECURITY_USER_ROLE_FK2 FOREIGN 
KEY(ROLE_ID) REFERENCES SECURITY_PRINCIPAL(PRINCIPAL_ID))
  @@ -63,6 +49,20 @@
   CREATE TABLE PREF_NODE(NODE_ID INTEGER NOT NULL PRIMARY KEY,PARENT_NODE_ID 
INTEGER,PROPERTY_SET_DEF_ID INTEGER,NODE_NAME VARCHAR(100),NODE_TYPE 
SMALLINT,FULL_PATH VARCHAR(254),CREATION_DATE TIMESTAMP,MODIFIED_DATE 
TIMESTAMP,CONSTRAINT PREF_NODE_FK1 FOREIGN KEY(PARENT_NODE_ID) REFERENCES 
PREF_NODE(NODE_ID),CONSTRAINT PREF_NODE_FK_2 FOREIGN KEY(PROPERTY_SET_DEF_ID) 
REFERENCES PREF_PROPERTY_SET_DEF(PROPERTY_SET_DEF_ID))
   CREATE TABLE PREF_PROPERTY_VALUE(PROPERTY_VALUE_ID INTEGER NOT NULL PRIMARY 
KEY,PROPERTY_KEY_ID INTEGER,NODE_ID INTEGER,BOOLEAN_VALUE BIT,DATETIME_VALUE 
TIMESTAMP,LONG_VALUE INTEGER,DOUBLE_VALUE DOUBLE,TEXT_VALUE VARCHAR(254),CREATION_DATE 
TIMESTAMP,MODIFIED_DATE TIMESTAMP,CONSTRAINT PREF_PROPERTY_VALUE_FK_1 FOREIGN 
KEY(NODE_ID) REFERENCES PREF_NODE(NODE_ID))
   CREATE TABLE PREF_PROPERTY_KEY(PROPERTY_KEY_ID INTEGER NOT NULL PRIMARY 
KEY,PROPERTY_SET_DEF_ID INTEGER,PROPERTY_NAME VARCHAR(100),PROPERTY_TYPE 
SMALLINT,CREATION_DATE TIMESTAMP,MODIFIED_DATE TIMESTAMP,CONSTRAINT 
PREF_PROPERTY_KEY_FK_1 FOREIGN KEY(PROPERTY_SET_DEF_ID) REFERENCES 
PREF_PROPERTY_SET_DEF(PROPERTY_SET_DEF_ID))
  +CREATE TABLE PORTLET_APPLICATION_DUBLIN_CORE(ID INTEGER NOT NULL PRIMARY KEY)
  +CREATE TABLE PORTLET_APPLICATION_DUBLIN_CORE_FIELDS(ID INTEGER NOT NULL PRIMARY 
KEY,OBJECT_ID INTEGER NOT NULL,VALUE LONGVARCHAR NOT NULL,LOCALE_STRING VARCHAR(50) 
NOT NULL)
  +CREATE TABLE PORTLET_APPLICATION(APPLICATION_ID INTEGER NOT NULL PRIMARY 
KEY,APP_NAME VARCHAR(80) NOT NULL,APP_IDENTIFIER VARCHAR(80),VERSION 
VARCHAR(80),APP_TYPE INTEGER,DESCRIPTION VARCHAR(80),WEB_APP_ID INTEGER NOT 
NULL,DUBLIN_CORE_ID INTEGER NOT NULL,CONSTRAINT UK_APPLICATION UNIQUE(APP_NAME))
  +CREATE TABLE WEB_APPLICATION(ID INTEGER NOT NULL PRIMARY KEY,CONTEXT_ROOT 
VARCHAR(255) NOT NULL)
  +CREATE TABLE PORTLET_DEFINITION(ID INTEGER NOT NULL PRIMARY KEY,NAME 
VARCHAR(80),CLASS_NAME VARCHAR(100),APPLICATION_ID INTEGER NOT NULL,PORTLET_IDENTIFIER 
VARCHAR(80),EXPIRATION_CACHE VARCHAR(30),PREFERENCE_VALIDATOR VARCHAR(255),CONSTRAINT 
SYS_CT_2 UNIQUE(APPLICATION_ID,NAME))
  +CREATE TABLE LANGUAGE(ID INTEGER NOT NULL PRIMARY KEY,PORTLET_ID INTEGER NOT 
NULL,TITLE VARCHAR(100),SHORT_TITLE VARCHAR(50),LOCALE_STRING VARCHAR(50) NOT 
NULL,KEYWORDS LONGVARCHAR)
  +CREATE TABLE PORTLET_CONTENT_TYPE(CONTENT_TYPE_ID INTEGER NOT NULL PRIMARY 
KEY,PORTLET_ID INTEGER NOT NULL,CONTENT_TYPE VARCHAR(30) NOT NULL,MODES LONGVARCHAR)
  +CREATE TABLE PARAMETER(PARAMETER_ID INTEGER NOT NULL PRIMARY KEY,PARENT_ID INTEGER 
NOT NULL,CLASS_NAME VARCHAR(30) NOT NULL,NAME VARCHAR(80) NOT NULL,PARAMETER_VALUE 
LONGVARCHAR NOT NULL)
  +CREATE TABLE PORTLET_PREFERENCE(ID INTEGER NOT NULL PRIMARY KEY,PARENT_ID INTEGER 
NOT NULL,NAME VARCHAR(80) NOT NULL,CLASS_NAME VARCHAR(50) NOT NULL,READ_ONLY CHAR(1) 
DEFAULT '1')
  +CREATE TABLE PREFERENCE_VALUE(ID INTEGER NOT NULL PRIMARY KEY,PREFERENCE_ID 
INTEGER,VALUE LONGVARCHAR)
  +CREATE TABLE PORTLET_ENTITY(ID INTEGER NOT NULL PRIMARY KEY,PORTLET_DEFINITION_ID 
INTEGER NOT NULL,GUID VARCHAR(255) NOT NULL)
  +CREATE TABLE SECURITY_ROLE_REFERENCE(ID INTEGER NOT NULL PRIMARY 
KEY,PORTLET_DEFINITION_ID INTEGER NOT NULL,ROLE_NAME VARCHAR(150),ROLE_LINK 
VARCHAR(150))
  +CREATE TABLE LOCALIZED_DESCRIPTION(ID INTEGER NOT NULL PRIMARY KEY,OBJECT_ID 
INTEGER NOT NULL,CLASS_NAME VARCHAR(255) NOT NULL,DESCRIPTION LONGVARCHAR NOT 
NULL,LOCALE_STRING VARCHAR(50) NOT NULL)
  +CREATE TABLE LOCALIZED_DISPLAY_NAME(ID INTEGER NOT NULL PRIMARY KEY,OBJECT_ID 
INTEGER NOT NULL,CLASS_NAME VARCHAR(255),DISPLAY_NAME LONGVARCHAR NOT 
NULL,LOCALE_STRING VARCHAR(50) NOT NULL)
   ALTER TABLE PREF_PROPERTY_VALUE ADD CONSTRAINT PREF_PROPERTY_VALUE_FK_2 FOREIGN 
KEY(PROPERTY_KEY_ID) REFERENCES PREF_PROPERTY_KEY(PROPERTY_KEY_ID)
   GRANT ALL ON CLASS "org.hsqldb.Library" TO PUBLIC
   GRANT ALL ON CLASS "java.lang.Math" TO PUBLIC
  
  
  
  1.2       +5 -3      
jakarta-jetspeed-2/portal/test/assembly/TestCastorXmlPageManager.groovy
  
  Index: TestCastorXmlPageManager.groovy
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jetspeed-2/portal/test/assembly/TestCastorXmlPageManager.groovy,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- TestCastorXmlPageManager.groovy   21 Feb 2004 09:01:30 -0000      1.1
  +++ TestCastorXmlPageManager.groovy   24 Feb 2004 05:34:01 -0000      1.2
  @@ -2,6 +2,7 @@
   import org.apache.jetspeed.idgenerator.JetspeedIdGenerator
   import org.apache.jetspeed.page.impl.CastorXmlPageManager
   import org.apache.jetspeed.components.ComponentAssemblyTestCase
  +import org.apache.jetspeed.cache.file.FileCache
   
   // create the root container
   container = new DefaultPicoContainer()
  @@ -17,10 +18,11 @@
   //
   // Page Manager
   //
  -println("app root = " + applicationRoot)
  +Long scanRate = 120
  +cacheSize = 100
  +fileCache = new FileCache(scanRate, cacheSize)
   root = applicationRoot + "/testdata/pages"
  -mapping = applicationRoot + "/../src/webapp/WEB-INF/conf/page-mapping.xml"
   container.registerComponentInstance("CastorXmlPageManager", 
  -                                     new CastorXmlPageManager(idgenerator, mapping, 
root))
  +                                     new CastorXmlPageManager(idgenerator, 
fileCache, root))
   
   return container
  
  
  
  1.3       +0 -2      
jakarta-jetspeed-2/portal/test/assembly/TestDatabasePageManager.groovy
  
  Index: TestDatabasePageManager.groovy
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jetspeed-2/portal/test/assembly/TestDatabasePageManager.groovy,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- TestDatabasePageManager.groovy    23 Feb 2004 16:13:56 -0000      1.2
  +++ TestDatabasePageManager.groovy    24 Feb 2004 05:34:01 -0000      1.3
  @@ -6,8 +6,6 @@
   // create the root container
   container = new DefaultPicoContainer()
   
  -applicationRoot = ComponentAssemblyTestCase.getApplicationRoot("portal", "test")
  -
   //
   // ID Generator
   //
  
  
  

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

Reply via email to