[Yanel-commits] rev 23490 - in
public/yanel/trunk/src/resources/navigation: . src/build
src/java/org/wyona/yanel/impl/resources
michi at wyona.com
michi at wyona.com
Thu Mar 29 10:37:05 CEST 2007
Author: michi
Date: 2007-03-29 10:37:03 +0200 (Thu, 29 Mar 2007)
New Revision: 23490
Modified:
public/yanel/trunk/src/resources/navigation/build.xml
public/yanel/trunk/src/resources/navigation/src/build/dependencies.xml
public/yanel/trunk/src/resources/navigation/src/java/org/wyona/yanel/impl/resources/NavigationResource.java
Log:
language dependent source implemented
Modified: public/yanel/trunk/src/resources/navigation/build.xml
===================================================================
--- public/yanel/trunk/src/resources/navigation/build.xml 2007-03-29 08:35:14 UTC (rev 23489)
+++ public/yanel/trunk/src/resources/navigation/build.xml 2007-03-29 08:37:03 UTC (rev 23490)
@@ -15,6 +15,7 @@
<path id="classpath">
<pathelement path="${maven2.cp}"/>
+ <pathelement path="${maven2.resource.cp}"/>
</path>
<property name="resource.build.dir" value="${resource.home.dir}/build"/>
<property name="resource.classes.dir" value="${resource.build.dir}/classes"/>
Modified: public/yanel/trunk/src/resources/navigation/src/build/dependencies.xml
===================================================================
--- public/yanel/trunk/src/resources/navigation/src/build/dependencies.xml 2007-03-29 08:35:14 UTC (rev 23489)
+++ public/yanel/trunk/src/resources/navigation/src/build/dependencies.xml 2007-03-29 08:37:03 UTC (rev 23490)
@@ -15,9 +15,12 @@
<artifact:dependencies pathId="maven2.resource.classpath" filesetId="maven2.resource.fileset">
<remoteRepository refid="wyona.remote.repository"/>
<!-- No resource specific libs yet -->
+ <dependency groupId="avalon-framework" artifactId="avalon-framework-api" version="4.3"/>
+ <dependency groupId="avalon-framework" artifactId="avalon-framework-impl" version="4.3"/>
</artifact:dependencies>
<property name="maven2.cp" refid="maven2.classpath"/>
+ <property name="maven2.resource.cp" refid="maven2.resource.classpath"/>
<!--<echo>Maven2 classpath: ${maven2.cp}</echo>-->
</target>
Modified: public/yanel/trunk/src/resources/navigation/src/java/org/wyona/yanel/impl/resources/NavigationResource.java
===================================================================
--- public/yanel/trunk/src/resources/navigation/src/java/org/wyona/yanel/impl/resources/NavigationResource.java 2007-03-29 08:35:14 UTC (rev 23489)
+++ public/yanel/trunk/src/resources/navigation/src/java/org/wyona/yanel/impl/resources/NavigationResource.java 2007-03-29 08:37:03 UTC (rev 23490)
@@ -16,6 +16,7 @@
package org.wyona.yanel.impl.resources;
+import org.w3c.dom.Document;
import org.wyona.yanel.core.Path;
import org.wyona.yanel.core.Resource;
import org.wyona.yanel.core.ResourceConfiguration;
@@ -80,6 +81,9 @@
import org.apache.xml.resolver.tools.CatalogResolver;
import org.apache.xml.serializer.Serializer;
+import org.apache.avalon.framework.configuration.Configuration;
+import org.apache.avalon.framework.configuration.ConfigurationUtil;
+
/**
*
*/
@@ -118,10 +122,38 @@
String mimeType = getMimeType(viewId);
defaultView.setMimeType(mimeType);
- String siteTreePath = getResourceConfigProperty("sitetree");
- String currentPath = (String)getParameters().get("path");
+ String siteTreePath = null;
+ String language = null;
+ String currentPath = null;
+ if (getParameters() != null) {
+ currentPath = (String)getParameters().get("path");
+ language = (String)getParameters().get("language");
+ }
if (currentPath == null) currentPath = getPath();
+ if (language == null) {
+ language = getLanguage();
+ }
+
+ ResourceConfiguration rc = getConfiguration();
+ Document customConfigDoc = rc.getCustomConfiguration();
+ if (customConfigDoc != null) {
+ Configuration config = ConfigurationUtil.toConfiguration(customConfigDoc.getDocumentElement());
+ Configuration[] sourceConfigs = config.getChildren("source");
+ for (int i = 0; i < sourceConfigs.length; i++) {
+ if (sourceConfigs[i].getAttribute("lang").equals(language)) {
+ siteTreePath = sourceConfigs[i].getAttribute("src");
+ }
+ }
+ if ((siteTreePath == null) && sourceConfigs.length > 0) {
+ siteTreePath = sourceConfigs[0].getAttribute("src");
+ }
+ }
+
+ if (siteTreePath == null) {
+ siteTreePath = getResourceConfigProperty("sitetree");
+ }
+
try {
Repository repo = getRealm().getRepository();
@@ -210,8 +242,7 @@
if(language != null && language.length() > 0) return language;
return getRealm().getDefaultLanguage();
}
-
-
+
/**
*
*/
More information about the Yanel-commits
mailing list