Author: ssmiweve Date: 2008-09-24 18:59:53 +0200 (Wed, 24 Sep 2008) New Revision: 6834
Modified: trunk/core-api/src/main/java/no/sesat/search/view/velocity/URLResourceLoader.java trunk/core-api/src/main/java/no/sesat/search/view/velocity/VelocityEngineFactory.java trunk/generic.sesam/war/src/test/resources/core.properties trunk/pom.xml Log: testing works again Modified: trunk/core-api/src/main/java/no/sesat/search/view/velocity/URLResourceLoader.java =================================================================== --- trunk/core-api/src/main/java/no/sesat/search/view/velocity/URLResourceLoader.java 2008-09-24 16:57:55 UTC (rev 6833) +++ trunk/core-api/src/main/java/no/sesat/search/view/velocity/URLResourceLoader.java 2008-09-24 16:59:53 UTC (rev 6834) @@ -1,4 +1,4 @@ -/* Copyright (2007) Schibsted Søk AS +/* Copyright (2007-2008) Schibsted Søk AS * This file is part of SESAT. * * SESAT is free software: you can redistribute it and/or modify @@ -30,9 +30,7 @@ import org.apache.velocity.exception.ResourceNotFoundException; import org.apache.commons.collections.ExtendedProperties; -/** XXX This source file needs to be published to the internet as it is open-source code. - * - * +/** * This is a simple URL-based loader. * ORIGINAL FROM http://svn.apache.org/repos/asf/jakarta/velocity/engine/trunk/whiteboard/geir/URLResourceLoader.java * @@ -85,6 +83,12 @@ // Constructors -------------------------------------------------- + public URLResourceLoader(){} + + public URLResourceLoader(final Site site){ + this.site= site; + } + // Public -------------------------------------------------------- /** [EMAIL PROTECTED] Modified: trunk/core-api/src/main/java/no/sesat/search/view/velocity/VelocityEngineFactory.java =================================================================== --- trunk/core-api/src/main/java/no/sesat/search/view/velocity/VelocityEngineFactory.java 2008-09-24 16:57:55 UTC (rev 6833) +++ trunk/core-api/src/main/java/no/sesat/search/view/velocity/VelocityEngineFactory.java 2008-09-24 16:59:53 UTC (rev 6834) @@ -22,6 +22,7 @@ package no.sesat.search.view.velocity; +import java.io.IOException; import java.util.HashMap; import java.util.Map; import java.util.Properties; @@ -47,6 +48,7 @@ import no.sesat.search.site.config.Spi; import no.sesat.search.site.config.UrlResourceLoader; +import no.sesat.search.view.FindResource; import no.sesat.search.view.navigation.NavigationHelper; import org.apache.log4j.Level; import org.apache.log4j.Logger; @@ -312,10 +314,15 @@ engine.setProperty("userdirective", directives.toString()); engine.setProperty( "velocimacro.library", + // sesat provides VM_sesat_library.vm -- should not be overridden site.getTemplateDir() + "/VM_sesat_library.vm," - + site.getTemplateDir() + "/VM_global_library.vm," - + site.getTemplateDir() + "/VM_site_library.vm," - + site.getTemplateDir() + "/VM_map_library.vm"); //XXX not happy with this. it isn't SESAT. + // VM_global_library is optional library a skin can provide (and/or override) + + (isResourceAvailable(site, site.getTemplateDir() + "/VM_global_library.vm") + ? site.getTemplateDir() + "/VM_global_library.vm," : "") + // VM_site_library is secondary optional library a skin can provide (and/or override) + + (isResourceAvailable(site, site.getTemplateDir() + "/VM_site_library.vm") + ? site.getTemplateDir() + "/VM_site_library.vm," : "") + ); final SiteClassLoaderFactory.Context classContext = ContextWrapper.wrap( SiteClassLoaderFactory.Context.class, @@ -361,12 +368,25 @@ } } - // Package protected --------------------------------------------- + // Package protected --------------------------------------------- - // Protected ----------------------------------------------------- + // Protected ----------------------------------------------------- - // Private ------------------------------------------------------- + // Private ------------------------------------------------------- + private boolean isResourceAvailable(final Site site, final String resource){ + try { + final URLResourceLoader loader = new URLResourceLoader(site); + loader.getResourceStream(resource).close(); + return true; + + } catch (Exception ex) { + LOG.error("Resource not available: " + resource, ex); + return false; + } + } + + // Inner classes ------------------------------------------------- } Modified: trunk/generic.sesam/war/src/test/resources/core.properties =================================================================== --- trunk/generic.sesam/war/src/test/resources/core.properties 2008-09-24 16:57:55 UTC (rev 6833) +++ trunk/generic.sesam/war/src/test/resources/core.properties 2008-09-24 16:59:53 UTC (rev 6834) @@ -1,5 +1,5 @@ ## These properties are needed beyond the SiteSearch architecture -## Everything else should be loaded (overrided) from the search-front-config's configuration.properties +## Everything else should be loaded (overrided) from the skin's configuration.properties # The server's port. Can be 0 for development. [EMAIL PROTECTED]@ Modified: trunk/pom.xml =================================================================== --- trunk/pom.xml 2008-09-24 16:57:55 UTC (rev 6833) +++ trunk/pom.xml 2008-09-24 16:59:53 UTC (rev 6834) @@ -172,7 +172,7 @@ <suiteXmlFiles> <suiteXmlFile>src/test/resources/testng.xml</suiteXmlFile> </suiteXmlFiles> - <forkedProcessTimeoutInSeconds>600</forkedProcessTimeoutInSeconds> + <!--forkedProcessTimeoutInSeconds>600</forkedProcessTimeoutInSeconds--> </configuration> </plugin> <plugin> @@ -215,8 +215,8 @@ <version.quote>The acquisition of wealth is no longer the driving force in our lives. </version.quote> <!-- We must hardcode the version to sesat artifacts so child skins can themselves be a different version. --> <!-- We cannot use ${pom.version} as it is interpretted as the current's pom's version not this pom's version.--> - <!-- maven-release-plugin will not update this version: it must be manually updated after any version bump. --> - <sesat.version>2.18-SNAPSHOT</sesat.version> + <!-- maven-release-plugin will not update this version: it must be manually updated after any version bump. --> + <sesat.version>2.18-SNAPSHOT</sesat.version> </properties> <profiles> _______________________________________________ Kernel-commits mailing list [email protected] http://sesat.no/mailman/listinfo/kernel-commits
