You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@shale.apache.org by gv...@apache.org on 2006/11/09 01:45:26 UTC

svn commit: r472721 - in /shale: framework/trunk/shale-clay/src/main/java/org/apache/shale/clay/utils/ framework/trunk/shale-clay/src/main/resources/org/apache/shale/clay/ framework/trunk/shale-clay/src/test/java/org/apache/shale/clay/utils/ maven/trun...

Author: gvanmatre
Date: Wed Nov  8 16:45:25 2006
New Revision: 472721

URL: http://svn.apache.org/viewvc?view=rev&rev=472721
Log:
Introducing a new Clay utility that will convert a JSF TLD into a corresponding Clay configuration file.  It is donated by Hermod Opstvedt (SHALE-324).  The tool jar project will be located in a top-level tools folder.  The maven plugin and testbed projects located under the existing maven folder.  This tools supersedes commit   (http://svn.apache.org/viewvc?view=rev&revision=468624).

Added:
    shale/maven/trunk/tld2claycfg/
    shale/maven/trunk/tld2claycfg/mojo/
    shale/maven/trunk/tld2claycfg/mojo/pom.xml   (with props)
    shale/maven/trunk/tld2claycfg/mojo/src/
    shale/maven/trunk/tld2claycfg/mojo/src/main/
    shale/maven/trunk/tld2claycfg/mojo/src/main/java/
    shale/maven/trunk/tld2claycfg/mojo/src/main/java/org/
    shale/maven/trunk/tld2claycfg/mojo/src/main/java/org/apache/
    shale/maven/trunk/tld2claycfg/mojo/src/main/java/org/apache/shale/
    shale/maven/trunk/tld2claycfg/mojo/src/main/java/org/apache/shale/Tld.java   (with props)
    shale/maven/trunk/tld2claycfg/mojo/src/main/java/org/apache/shale/Tld2ClayCfgMojo.java   (with props)
    shale/maven/trunk/tld2claycfg/test/
    shale/maven/trunk/tld2claycfg/test/pom.xml   (with props)
    shale/maven/trunk/tld2claycfg/test/src/
    shale/maven/trunk/tld2claycfg/test/src/main/
    shale/maven/trunk/tld2claycfg/test/src/main/java/
    shale/maven/trunk/tld2claycfg/test/src/main/java/org/
    shale/maven/trunk/tld2claycfg/test/src/main/java/org/apache/
    shale/maven/trunk/tld2claycfg/test/src/main/java/org/apache/shale/
    shale/maven/trunk/tld2claycfg/test/src/main/java/org/apache/shale/Something.java   (with props)
    shale/tools/
    shale/tools/trunk/
    shale/tools/trunk/tld2claycfg/
    shale/tools/trunk/tld2claycfg/pom.xml   (with props)
    shale/tools/trunk/tld2claycfg/src/
    shale/tools/trunk/tld2claycfg/src/main/
    shale/tools/trunk/tld2claycfg/src/main/java/
    shale/tools/trunk/tld2claycfg/src/main/java/org/
    shale/tools/trunk/tld2claycfg/src/main/java/org/apache/
    shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/
    shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/
    shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/
    shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/Messages.java   (with props)
    shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/TldToClayconfig.java   (with props)
    shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/
    shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Attribute.java   (with props)
    shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Listener.java   (with props)
    shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Tag.java   (with props)
    shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Taglib.java   (with props)
    shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Variable.java   (with props)
    shale/tools/trunk/tld2claycfg/src/main/resources/
    shale/tools/trunk/tld2claycfg/src/main/resources/messages.properties   (with props)
Removed:
    shale/framework/trunk/shale-clay/src/main/java/org/apache/shale/clay/utils/TldDigester.java
    shale/framework/trunk/shale-clay/src/test/java/org/apache/shale/clay/utils/TldDigesterTestCase.java
Modified:
    shale/framework/trunk/shale-clay/src/main/resources/org/apache/shale/clay/Bundle.properties

Modified: shale/framework/trunk/shale-clay/src/main/resources/org/apache/shale/clay/Bundle.properties
URL: http://svn.apache.org/viewvc/shale/framework/trunk/shale-clay/src/main/resources/org/apache/shale/clay/Bundle.properties?view=diff&rev=472721&r1=472720&r2=472721
==============================================================================
--- shale/framework/trunk/shale-clay/src/main/resources/org/apache/shale/clay/Bundle.properties (original)
+++ shale/framework/trunk/shale-clay/src/main/resources/org/apache/shale/clay/Bundle.properties Wed Nov  8 16:45:25 2006
@@ -158,8 +158,5 @@
 #org.apache.shale.clay.taglib.SymbolTag
 clayparent.notfound=The symbol tag must be nested under a clay tag.
 
-#org.apache.shale.clay.utils.TldParserUtil
-tag.load.error=Unable to load tag handler "{0}" with the class name of "{1}".
-
 #org.apache.shale.clay.convert.StringArrayConverter
-string.array.converter.invalid.type=Value is not a String[]
\ No newline at end of file
+string.array.converter.invalid.type=Value is not a String[]

Added: shale/maven/trunk/tld2claycfg/mojo/pom.xml
URL: http://svn.apache.org/viewvc/shale/maven/trunk/tld2claycfg/mojo/pom.xml?view=auto&rev=472721
==============================================================================
--- shale/maven/trunk/tld2claycfg/mojo/pom.xml (added)
+++ shale/maven/trunk/tld2claycfg/mojo/pom.xml Wed Nov  8 16:45:25 2006
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+/*
+ * 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.
+ *
+ * $Id$
+ */
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+	<modelVersion>4.0.0</modelVersion>
+	<groupId>org.apache.shale</groupId>
+	<artifactId>Tld2ClayCfgMojo</artifactId>
+	<packaging>maven-plugin</packaging>
+	<version>1.0-SNAPSHOT</version>
+	<name>Tld to Clay config converter</name>
+	<description>
+		A plugin that generates Clay config files from .tld files
+	</description>
+
+	<dependencies>
+		<dependency>
+			<groupId>org.apache.maven</groupId>
+			<artifactId>maven-project</artifactId>
+			<version>2.0.4</version>
+		</dependency>
+		<dependency>
+			<groupId>org.apache.maven</groupId>
+			<artifactId>maven-plugin-api</artifactId>
+			<version>2.0.4</version>
+		</dependency>
+		<dependency>
+			<groupId>org.apache.shale</groupId>
+			<artifactId>Tld2ClayCfg</artifactId>
+			<version>1.0-SNAPSHOT</version>
+		</dependency>
+	</dependencies>
+
+</project>
\ No newline at end of file

Propchange: shale/maven/trunk/tld2claycfg/mojo/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: shale/maven/trunk/tld2claycfg/mojo/pom.xml
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: shale/maven/trunk/tld2claycfg/mojo/src/main/java/org/apache/shale/Tld.java
URL: http://svn.apache.org/viewvc/shale/maven/trunk/tld2claycfg/mojo/src/main/java/org/apache/shale/Tld.java?view=auto&rev=472721
==============================================================================
--- shale/maven/trunk/tld2claycfg/mojo/src/main/java/org/apache/shale/Tld.java (added)
+++ shale/maven/trunk/tld2claycfg/mojo/src/main/java/org/apache/shale/Tld.java Wed Nov  8 16:45:25 2006
@@ -0,0 +1,55 @@
+package org.apache.shale;
+
+/*
+ * 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.
+ */
+
+public class Tld {
+
+    private String name;
+
+    private String version;
+
+    private String mbFilter;
+
+    public String getMbFilter() {
+        return mbFilter;
+    }
+
+    public void setMbFilter(String mbFilter) {
+        this.mbFilter = mbFilter;
+    }
+
+    public Tld() {
+
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getVersion() {
+        return version;
+    }
+
+    public void setVersion(String version) {
+        this.version = version;
+    }
+}

Propchange: shale/maven/trunk/tld2claycfg/mojo/src/main/java/org/apache/shale/Tld.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: shale/maven/trunk/tld2claycfg/mojo/src/main/java/org/apache/shale/Tld.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: shale/maven/trunk/tld2claycfg/mojo/src/main/java/org/apache/shale/Tld2ClayCfgMojo.java
URL: http://svn.apache.org/viewvc/shale/maven/trunk/tld2claycfg/mojo/src/main/java/org/apache/shale/Tld2ClayCfgMojo.java?view=auto&rev=472721
==============================================================================
--- shale/maven/trunk/tld2claycfg/mojo/src/main/java/org/apache/shale/Tld2ClayCfgMojo.java (added)
+++ shale/maven/trunk/tld2claycfg/mojo/src/main/java/org/apache/shale/Tld2ClayCfgMojo.java Wed Nov  8 16:45:25 2006
@@ -0,0 +1,139 @@
+package org.apache.shale;
+
+/*
+ * 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.
+ */
+import java.io.File;
+import java.net.URL;
+import java.net.URLClassLoader;
+import java.util.List;
+
+import org.apache.maven.plugin.AbstractMojo;
+import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugin.MojoFailureException;
+import org.apache.maven.project.MavenProject;
+import org.apache.shale.clay.util.TldToClayconfig;
+
+/**
+ * @requiresDependencyResolution runtime
+ * @phase generate-resources
+ * @goal convert
+ * @Description JSF Tld to Clay config converter.
+ */
+public class Tld2ClayCfgMojo extends AbstractMojo {
+
+    /**
+     * @parameter property="tlds"
+     * @required
+     * @description The typelibaries that shoul be converted
+     */
+    private List tlds;
+
+    /**
+     * @parameter default-value="${project.build.directory}"
+     * @description Where to place the generated Clay config files
+     */
+    private String buildDirectory;
+
+    /**
+     * @parameter expression="${project}"
+     * @description The Maven POM
+     */
+    private MavenProject project;
+
+    public void execute() throws MojoExecutionException, MojoFailureException {
+
+        ClassLoader classloader = null;
+        try {
+            classloader = initClassLoader();
+        } catch (Exception e) {
+            throw new MojoFailureException(e.getMessage());
+        }
+
+        getLog().info("Generate resources in " + buildDirectory);
+        getLog().info("Got: " + tlds.size() + " tlds");
+        TldToClayconfig converter = new TldToClayconfig();
+        TldToClayconfig.setLOGGER(getLog());
+        for (int i = 0; i < tlds.size(); i++) {
+            getLog().info("Converting: " + ((Tld) tlds.get(i)).getName());
+            converter.setFilename(((Tld) tlds.get(i)).getName());
+            converter.setVersion(((Tld) tlds.get(i)).getVersion());
+            converter.setMbFilter(((Tld) tlds.get(i)).getMbFilter());
+            converter.setDestPath(buildDirectory
+                    + System.getProperty("file.separator") + "classes"
+                    + System.getProperty("file.separator") + "META-INF");
+            converter.setClassloader(classloader);
+            try {
+                converter.convert();
+            } catch (Exception e) {
+                throw new MojoFailureException(e.getMessage());
+            }
+        }
+
+    }
+
+    public List getTlds() {
+        return tlds;
+    }
+
+    public void setTlds(List tlds) {
+        this.tlds = tlds;
+    }
+
+    public String getBuildDirectory() {
+        return buildDirectory;
+    }
+
+    public void setBuildDirectory(String buildDirectory) {
+        this.buildDirectory = buildDirectory;
+    }
+
+    public MavenProject getProject() {
+        return project;
+    }
+
+    public void setProject(MavenProject project) {
+        this.project = project;
+    }
+
+    // Private methods
+    private ClassLoader initClassLoader() throws Exception {
+        List classpathFiles = project.getCompileClasspathElements();
+
+        URL[] urls = new URL[classpathFiles.size() + 1];
+
+        if (getLog().isDebugEnabled()) {
+            getLog().debug(
+                    "Number of files in classpath: " + classpathFiles.size());
+        }
+
+        for (int i = 0; i < classpathFiles.size(); ++i) {
+            if (getLog().isDebugEnabled()) {
+                getLog().debug((String) classpathFiles.get(i));
+            }
+            urls[i] = new File((String) classpathFiles.get(i)).toURL();
+        }
+
+        urls[classpathFiles.size()] = new File(buildDirectory + "/classes")
+                .toURL();
+
+        URLClassLoader ucl = new URLClassLoader(urls, Thread.currentThread()
+                .getContextClassLoader());
+
+        return (ClassLoader) ucl;
+
+    }
+}

Propchange: shale/maven/trunk/tld2claycfg/mojo/src/main/java/org/apache/shale/Tld2ClayCfgMojo.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: shale/maven/trunk/tld2claycfg/mojo/src/main/java/org/apache/shale/Tld2ClayCfgMojo.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: shale/maven/trunk/tld2claycfg/test/pom.xml
URL: http://svn.apache.org/viewvc/shale/maven/trunk/tld2claycfg/test/pom.xml?view=auto&rev=472721
==============================================================================
--- shale/maven/trunk/tld2claycfg/test/pom.xml (added)
+++ shale/maven/trunk/tld2claycfg/test/pom.xml Wed Nov  8 16:45:25 2006
@@ -0,0 +1,106 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+/*
+ * 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.
+ *
+ * $Id$
+ */
+-->
+<project>
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>org.apache.shale</groupId>
+  <artifactId>TestMojo</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <description></description>
+  <build>
+    <resources>
+      <resource>
+        <targetPath>${project.build.outputDirectory}/META-INF</targetPath>
+        <directory>${project.build.outputDirectory}/src/main/resources/META-INF</directory>
+        <includes>
+          <include>**/*.xml</include>
+        </includes>
+      </resource>
+    </resources>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.shale</groupId>
+        <artifactId>Tld2ClayCfgMojo</artifactId>
+        <version>1.0-SNAPSHOT</version>
+        <executions>
+          <execution>
+            <id>convert tld</id>
+            <phase>generate-resources</phase>
+            <goals>
+              <goal>convert</goal>
+            </goals>
+          </execution>
+        </executions>
+        <configuration>
+          <tlds>
+            <tld implementation="org.apache.shale.Tld">
+              <name>META-INF/tomahawk.tld</name>
+              <version>1.1.3-SNAPSHOT</version>
+              <mbFilter>(?i).*Listener*,(?i).*validator*,(?i).*converter*,(?i).*action*</mbFilter>
+            </tld>
+            <tld implementation="org.apache.shale.Tld">
+              <name>META-INF/myfaces_sandbox.tld</name>
+              <version>1.1.4-SNAPSHOT</version>
+              <mbFilter>(?i).*Listener*,(?i).*validator*,(?i).*converter*,(?i).*action*</mbFilter>
+            </tld>
+            <tld implementation="org.apache.shale.Tld">
+              <name>META-INF/org/apache/myfaces/tobago/taglib/component/tobago.tld</name>
+              <version>1.1.9-SNAPSHOT</version>
+              <mbFilter>(?i).*Listener*,(?i).*validator*,(?i).*converter*,(?i).*action*</mbFilter>
+            </tld>
+            <tld implementation="org.apache.shale.Tld">
+              <name>META-INF/tr.tld</name>
+              <version>incubator-m1-SNAPSHOT</version>
+              <mbFilter>(?i).*Listener*,(?i).*validator*,(?i).*converter*,(?i).*action*</mbFilter>
+            </tld>
+            <tld implementation="org.apache.shale.Tld">
+              <name>META-INF/trh.tld</name>
+              <version>incubator-m1-SNAPSHOT</version>
+              <mbFilter>(?i).*Listener*,(?i).*validator*,(?i).*converter*,(?i).*action*</mbFilter>
+            </tld>
+          </tlds>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.myfaces.trinidad</groupId>
+      <artifactId>trinidad-impl</artifactId>
+      <version>incubator-m1-SNAPSHOT</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.myfaces.tomahawk</groupId>
+      <artifactId>tomahawk</artifactId>
+      <version>1.1.3-SNAPSHOT</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.myfaces.tomahawk</groupId>
+      <artifactId>tomahawk-sandbox</artifactId>
+      <version>1.1.4-SNAPSHOT</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.myfaces.tobago</groupId>
+      <artifactId>tobago-core</artifactId>
+      <version>1.0.8</version>
+    </dependency>
+  </dependencies>
+</project>

Propchange: shale/maven/trunk/tld2claycfg/test/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: shale/maven/trunk/tld2claycfg/test/pom.xml
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: shale/maven/trunk/tld2claycfg/test/src/main/java/org/apache/shale/Something.java
URL: http://svn.apache.org/viewvc/shale/maven/trunk/tld2claycfg/test/src/main/java/org/apache/shale/Something.java?view=auto&rev=472721
==============================================================================
--- shale/maven/trunk/tld2claycfg/test/src/main/java/org/apache/shale/Something.java (added)
+++ shale/maven/trunk/tld2claycfg/test/src/main/java/org/apache/shale/Something.java Wed Nov  8 16:45:25 2006
@@ -0,0 +1,9 @@
+package org.apache.shale;
+
+public class Something {
+
+    public Something() {
+
+    }
+
+}

Propchange: shale/maven/trunk/tld2claycfg/test/src/main/java/org/apache/shale/Something.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: shale/maven/trunk/tld2claycfg/test/src/main/java/org/apache/shale/Something.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: shale/tools/trunk/tld2claycfg/pom.xml
URL: http://svn.apache.org/viewvc/shale/tools/trunk/tld2claycfg/pom.xml?view=auto&rev=472721
==============================================================================
--- shale/tools/trunk/tld2claycfg/pom.xml (added)
+++ shale/tools/trunk/tld2claycfg/pom.xml Wed Nov  8 16:45:25 2006
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+/*
+ * 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.
+ *
+ * $Id:$
+ */
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+	<modelVersion>4.0.0</modelVersion>
+	<groupId>org.apache.shale</groupId>
+	<artifactId>Tld2ClayCfg</artifactId>
+	<version>1.0-SNAPSHOT</version>
+	<name>Tld to Clay config converter</name>
+	<description>Converts JSF tld's to Clay config files</description>
+
+	<dependencies>
+		<dependency>
+			<groupId>org.apache.maven</groupId>
+			<artifactId>maven-plugin-api</artifactId>
+			<version>2.0.4</version>
+		</dependency>
+		<dependency>
+			<groupId>stax</groupId>
+			<artifactId>stax</artifactId>
+			<version>1.2.0</version>
+		</dependency>
+		<dependency>
+			<groupId>stax</groupId>
+			<artifactId>stax-api</artifactId>
+			<version>1.0</version>
+		</dependency>
+		<dependency>
+			<groupId>org.apache.shale</groupId>
+			<artifactId>shale-clay</artifactId>
+			<version>1.0.4-SNAPSHOT</version>
+		</dependency>
+		<dependency>
+			<groupId>javax.servlet</groupId>
+			<artifactId>servlet-api</artifactId>
+			<version>2.4</version>
+		</dependency>
+		<dependency>
+			<groupId>javax.servlet.jsp</groupId>
+			<artifactId>jsp-api</artifactId>
+			<version>2.1</version>
+		</dependency>
+		<dependency>
+			<groupId>org.apache.myfaces.core</groupId>
+			<artifactId>myfaces-api</artifactId>
+			<version>1.1.4</version>
+			<scope>compile</scope>
+		</dependency>
+		<dependency>
+			<groupId>org.apache.myfaces.core</groupId>
+			<artifactId>myfaces-impl</artifactId>
+			<version>1.1.4</version>
+			<scope>compile</scope>
+		</dependency>
+
+	</dependencies>
+</project>

Propchange: shale/tools/trunk/tld2claycfg/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: shale/tools/trunk/tld2claycfg/pom.xml
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/Messages.java
URL: http://svn.apache.org/viewvc/shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/Messages.java?view=auto&rev=472721
==============================================================================
--- shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/Messages.java (added)
+++ shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/Messages.java Wed Nov  8 16:45:25 2006
@@ -0,0 +1,38 @@
+/*
+ * 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.shale.clay.util;
+
+import java.util.MissingResourceException;
+import java.util.ResourceBundle;
+
+public class Messages {
+    private static final String BUNDLE_NAME = "messages";
+
+    private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle
+            .getBundle(BUNDLE_NAME);
+
+    private Messages() {
+    }
+
+    public static String getString(String key) {
+        try {
+            return RESOURCE_BUNDLE.getString(key);
+        } catch (MissingResourceException e) {
+            return '!' + key + '!';
+        }
+    }
+}

Propchange: shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/Messages.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/Messages.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/TldToClayconfig.java
URL: http://svn.apache.org/viewvc/shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/TldToClayconfig.java?view=auto&rev=472721
==============================================================================
--- shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/TldToClayconfig.java (added)
+++ shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/TldToClayconfig.java Wed Nov  8 16:45:25 2006
@@ -0,0 +1,573 @@
+/*
+ * 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.shale.clay.util;
+
+import java.io.File;
+import java.io.FileWriter;
+import java.io.InputStream;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Enumeration;
+import java.util.Iterator;
+import java.util.List;
+
+import javax.faces.webapp.UIComponentTag;
+import javax.xml.stream.XMLInputFactory;
+import javax.xml.stream.XMLOutputFactory;
+import javax.xml.stream.XMLStreamConstants;
+import javax.xml.stream.XMLStreamReader;
+import javax.xml.stream.XMLStreamWriter;
+
+import org.apache.maven.plugin.logging.Log;
+import org.apache.maven.plugin.logging.SystemStreamLog;
+import org.apache.shale.clay.util.beans.Attribute;
+import org.apache.shale.clay.util.beans.Listener;
+import org.apache.shale.clay.util.beans.Tag;
+import org.apache.shale.clay.util.beans.Taglib;
+import org.apache.shale.clay.util.beans.Variable;
+
+public class TldToClayconfig {
+
+    private static Log LOGGER;
+
+    private static final String TAG = "tag";
+
+    private static final String LISTENER = "listener";
+
+    private static final String TAGLIB = "taglib";
+
+    private static final String ATTRIBUTE = "attribute";
+
+    private static final String ATTRIBUTES = "attributes";
+
+    private static final String VARIABLE = "variable";
+
+    private static final String TLIBVERSION = "tlib-version";
+
+    private static final String TLIBVERSION_C = "version";
+
+    private static final String JSPVERSION = "jsp-version";
+
+    private static final String JSPVERSION_C = "jspVersion";
+
+    private static final String SHORTNAME = "short-name";
+
+    private static final String SHORTNAME_C = "shortName";
+
+    private static final String TAGCLASS = "tag-class";
+
+    private static final String TAGCLASS_C = "tagClass";
+
+    private static final String TEICLASS = "tei-class";
+
+    private static final String TEICLASS_C = "teiClass";
+
+    private static final String BODYCONTENT = "body-content";
+
+    private static final String BODYCONTENT_C = "bodyContent";
+
+    private static final String DISPLAYNAME = "display-name";
+
+    private static final String DISPLAYNAME_C = "displayName";
+
+    private static final String LISTENERCLASS = "listener-class";
+
+    private static final String LISTENERCLASS_C = "listenerClass";
+
+    private static final String VIEW = "view";
+
+    private static final String COMPONENT = "component";
+
+    private static final String JSFID = "jsfid";
+
+    private static final String COMPONENTTYPE = "componentType";
+
+    private static final String EXTENDS = "extends";
+
+    private static final String BASECOMPONENT = "baseComponent";
+
+    private static final String SET = "set";
+
+    private static final String RENDERED = "rendered";
+
+    private static final String BINDING = "binding";
+
+    private static final String VB = "VB";
+
+    private static final String MB = "MB";
+
+    private static final String NAME = "name";
+
+    private static final String BINDINGTYPE = "bindingType";
+
+    private Taglib tagLib;
+
+    private Tag tag;
+
+    private Listener listener;
+
+    private Attribute attribute;
+
+    private Variable variable;
+
+    private String filename;
+
+    private String version;
+
+    private String destPath;
+
+    private String mbFilter;
+
+    private String[] mbfMap;
+
+    private ClassLoader classloader;
+
+    // Public methods
+    public void convert() throws Exception {
+
+        try {
+
+            URL url = findResource();
+            if (url == null) {
+                throw new IllegalArgumentException(Messages
+                        .getString("TldToClayconfig.exception.fnfe")
+                        + ": " + filename);
+            }
+
+            InputStream is = url.openStream();
+            XMLInputFactory factory = XMLInputFactory.newInstance();
+            XMLStreamReader parser = factory.createXMLStreamReader(is);
+
+            int tagCount = 0;
+            int attributeCount = 0;
+            int variableCount = 0;
+            int listenerCount = 0;
+            for (int event = parser.next(); event != XMLStreamConstants.END_DOCUMENT; event = parser
+                    .next()) {
+                switch (event) {
+                case XMLStreamConstants.START_DOCUMENT:
+                    break;
+
+                case XMLStreamConstants.START_ELEMENT:
+                    if (isVariable(parser.getLocalName())) {
+                        variable = createVariable();
+                        variableCount++;
+                        break;
+                    }
+                    if (isAttribute(parser.getLocalName())) {
+                        attribute = createAttribute();
+                        attributeCount++;
+                        break;
+                    }
+                    if (isListener(parser.getLocalName())) {
+                        listener = createListener();
+                        listenerCount++;
+                        break;
+                    }
+                    if (isTag(parser.getLocalName())) {
+                        tag = createTag();
+                        tagCount++;
+                        break;
+                    }
+                    if (isTaglib(parser.getLocalName())) {
+                        tagLib = createTagLib();
+                        break;
+                    }
+                    if (tagCount == 0 && listenerCount == 0) {
+                        addToTagLib(tagLib, parser);
+                        break;
+                    } else if (listenerCount > 0) {
+                        addToListener(listener, parser);
+                        break;
+                    } else if (attributeCount > 0) {
+                        addToAttribute(attribute, parser);
+                        break;
+                    } else {
+                        addToTag(tag, parser);
+                    }
+                    break;
+                case XMLStreamConstants.END_ELEMENT:
+                    if (isVariable(parser.getLocalName())) {
+                        closeVariable(tag, variable);
+                        variable = null;
+                        variableCount = 0;
+                        break;
+                    }
+                    if (isAttribute(parser.getLocalName())) {
+                        closeAttribute(tag, attribute);
+                        attribute = null;
+                        attributeCount = 0;
+                        break;
+                    }
+                    if (isTag(parser.getLocalName())) {
+                        closeTag(tagLib, tag);
+                        tag = null;
+                        tagCount = 0;
+                        break;
+                    }
+                    if (isListener(parser.getLocalName())) {
+                        closeListener(tagLib, listener);
+                        listener = null;
+                        listenerCount = 0;
+                        break;
+                    }
+                    if (isTaglib(parser.getLocalName())) {
+                        closeTaglib(tagLib);
+                        break;
+                    }
+                    break;
+                case XMLStreamConstants.CHARACTERS:
+                    if (tagCount == 0)
+                        break;
+                case XMLStreamConstants.CDATA:
+                    if (tagCount == 0)
+                        break;
+                }
+            }
+            parser.close();
+            writeConfigFile(tagLib, url.getPath().substring(
+                    url.getPath().lastIndexOf("/") + 1,
+                    url.getPath().lastIndexOf(".")));
+        } catch (Exception e) {
+            throw new Exception(Messages.getString("TldToClayconfig.exception")
+                    + e.getMessage());
+        }
+
+        if (LOGGER.isDebugEnabled()) {
+            LOGGER.debug("Done parsing taglib");
+        }
+    }
+
+    public String getMbFilter() {
+        return mbFilter;
+    }
+
+    public void setMbFilter(String mbFilter) {
+        this.mbFilter = mbFilter;
+        mbfMap = mbFilter.split(",");
+
+    }
+
+    public String getFilename() {
+        return filename;
+    }
+
+    public void setFilename(String filename) {
+        if (LOGGER.isDebugEnabled()) {
+            LOGGER.debug("Setting filename:" + filename);
+        }
+        this.filename = filename;
+    }
+
+    public String getVersion() {
+        return version;
+    }
+
+    public void setVersion(String version) {
+        if (LOGGER.isDebugEnabled()) {
+            LOGGER.debug("Setting version:" + version);
+        }
+        this.version = version;
+    }
+
+    public String getDestPath() {
+        return destPath;
+    }
+
+    public void setDestPath(String destPath) {
+        if (LOGGER.isDebugEnabled()) {
+            LOGGER.debug("Setting destination path:" + destPath);
+        }
+        this.destPath = destPath;
+    }
+
+    public static Log getLOGGER() {
+        return LOGGER;
+    }
+
+    public static void setLOGGER(Log logger) {
+        LOGGER = logger;
+    }
+
+    public ClassLoader getClassloader() {
+        return classloader;
+    }
+
+    public void setClassloader(ClassLoader classloader) {
+        this.classloader = classloader;
+    }
+
+    // Private methods
+
+    private URL findResource() throws Exception {
+        if (LOGGER.isDebugEnabled()) {
+            LOGGER.debug("Looking for: " + filename);
+        }
+        List urls = new ArrayList();
+        for (Enumeration ui = classloader.getResources(filename); ui
+                .hasMoreElements();) {
+            urls.add(ui.nextElement());
+        }
+        if (urls.size() > 0) {
+            return (URL) urls.get(0);
+        }
+        return null;
+
+    }
+
+    private void closeVariable(Tag tag, Variable variable) {
+        tag.addVariable(variable);
+    }
+
+    private Variable createVariable() {
+        return new Variable();
+    }
+
+    private boolean isVariable(String localName) {
+        return localName != null ? localName.equals(VARIABLE) : false;
+    }
+
+    private Attribute createAttribute() {
+        return new Attribute();
+    }
+
+    private void addToAttribute(Attribute attribute, XMLStreamReader parser)
+            throws Exception {
+        String item = coerce(parser.getLocalName());
+        attribute.getClass().getDeclaredField(item).set(attribute,
+                parser.getElementText());
+    }
+
+    private void closeAttribute(Tag tag, Attribute attribute) {
+        tag.addAttribute(attribute);
+    }
+
+    private boolean isAttribute(String localName) {
+        return localName != null ? localName.equals(ATTRIBUTE) : false;
+    }
+
+    private void addToTag(Tag tag, XMLStreamReader parser) throws Exception {
+
+        String item = coerce(parser.getLocalName());
+        tag.getClass().getDeclaredField(item).set(tag, parser.getElementText());
+    }
+
+    private void addToTagLib(Taglib tagLib, XMLStreamReader parser)
+            throws Exception {
+
+        String item = coerce(parser.getLocalName());
+        tagLib.getClass().getDeclaredField(item).set(tagLib,
+                parser.getElementText());
+    }
+
+    private void addToListener(Listener listener, XMLStreamReader parser)
+            throws Exception {
+
+        String item = coerce(parser.getLocalName());
+        listener.getClass().getDeclaredField(item).set(listener,
+                parser.getElementText());
+    }
+
+    private Taglib createTagLib() {
+        return new Taglib();
+    }
+
+    private void closeTaglib(Taglib tagLib) {
+    }
+
+    private void writeConfigFile(Taglib tagLib, String filename)
+            throws Exception {
+
+        XMLOutputFactory xof = XMLOutputFactory.newInstance();
+        XMLStreamWriter xtw = null;
+        File f = new File(destPath, filename + "-" + version + "-config.xml");
+        if (!f.exists()) {
+            f.getParentFile().mkdirs();
+            f.createNewFile();
+        }
+        xtw = xof.createXMLStreamWriter(new FileWriter(f));
+        xtw.writeStartDocument("utf-8", "1.0");
+        xtw.writeComment(Messages.getString("TldToClayconfig.doc.license"));
+        xtw.writeDTD(Messages.getString("TldToClayconfig.doc.dtd"));
+        xtw.writeStartElement(VIEW);
+        List tags = tagLib.getTags();
+        List attributes = null;
+        Tag tag = null;
+        Attribute attribute = null;
+        for (int i = 0; i < tags.size(); i++) {
+            tag = (Tag) tags.get(i);
+            if (isUIComponentTag(tag.getTagClass())) {
+                xtw.writeStartElement(COMPONENT);
+                xtw.writeAttribute(JSFID, tagLib.getShortName() + ":"
+                        + tag.getName());
+                xtw.writeAttribute(COMPONENTTYPE, getComponentType(tag
+                        .getTagClass()));
+                xtw.writeAttribute(EXTENDS, BASECOMPONENT);
+                attributes = tag.getAttributes();
+                if (attributes != null && attributes.size() > 0) {
+                    removeBaseActionAttributes(attributes);
+                }
+                if (attributes != null && attributes.size() > 0) {
+                    xtw.writeStartElement(ATTRIBUTES);
+                    for (int j = 0; j < attributes.size(); j++) {
+                        attribute = (Attribute) attributes.get(j);
+                        xtw.writeStartElement(SET);
+                        xtw.writeAttribute(NAME, attribute.getName());
+                        if (isValueReference(attribute.getName())) {
+                            xtw.writeAttribute(BINDINGTYPE, VB);
+                        } else {
+                            xtw.writeAttribute(BINDINGTYPE, MB);
+                        }
+                        xtw.writeEndElement();
+                    }
+                    xtw.writeEndElement();
+                }
+                xtw.writeEndElement();
+            }
+        }
+        xtw.writeEndDocument();
+        xtw.flush();
+        xtw.close();
+    }
+
+    private void removeBaseActionAttributes(List attributes) {
+        Attribute attribute = null;
+        List dummy = (List) ((ArrayList) attributes).clone();
+        Iterator it = dummy.iterator();
+        while (it.hasNext()) {
+            attribute = (Attribute) it.next();
+            if (attribute != null
+                    && (attribute.getName().equals(RENDERED) || attribute
+                            .getName().equals(BINDING))) {
+                attributes.remove(attribute);
+            }
+        }
+    }
+
+    private String getComponentType(String clazz) throws Exception {
+
+        clazz = clazz.trim();
+        Object cTag = (Object) classloader.loadClass(clazz).newInstance();
+        if (cTag instanceof UIComponentTag) {
+            return ((UIComponentTag) cTag).getComponentType();
+        }
+        return null;
+    }
+
+    private boolean isValueReference(String name) {
+
+        for (int i = 0; i < mbfMap.length; i++) {
+            if (name.matches(mbfMap[i])) {
+                return false;
+            }
+        }
+        return true;
+
+    }
+
+    private boolean isUIComponentTag(String clazz) throws Exception {
+
+        clazz = clazz.trim();
+        Object cTag = (Object) classloader.loadClass(clazz).newInstance();
+        if (cTag instanceof UIComponentTag) {
+            return true;
+        }
+        return false;
+    }
+
+    private void closeTag(Taglib tagLib, Tag tag) {
+        tagLib.addTag(tag);
+    }
+
+    private void closeListener(Taglib tagLib, Listener listener) {
+        tagLib.setListener(listener);
+    }
+
+    private boolean isTag(String name) {
+        return name != null ? name.equals(TAG) : false;
+    }
+
+    private boolean isListener(String name) {
+        return name != null ? name.equals(LISTENER) : false;
+    }
+
+    private boolean isTaglib(String name) {
+        return name != null ? name.equals(TAGLIB) : false;
+    }
+
+    private Tag createTag() {
+        return new Tag();
+    }
+
+    private Listener createListener() {
+        return new Listener();
+    }
+
+    // Take care of non-standard javanames for attributes
+    private String coerce(String localName) {
+
+        if (localName.equals(TLIBVERSION)) {
+            return TLIBVERSION_C;
+        } else if (localName.equals(JSPVERSION)) {
+            return JSPVERSION_C;
+        } else if (localName.equals(SHORTNAME)) {
+            return SHORTNAME_C;
+        } else if (localName.equals(TAGCLASS)) {
+            return TAGCLASS_C;
+        } else if (localName.equals(TEICLASS)) {
+            return TEICLASS_C;
+        } else if (localName.equals(BODYCONTENT)) {
+            return BODYCONTENT_C;
+        } else if (localName.equals(DISPLAYNAME)) {
+            return DISPLAYNAME_C;
+        } else if (localName.equals(LISTENERCLASS)) {
+            return LISTENERCLASS_C;
+        }
+
+        return localName;
+    }
+
+    // Utility method for running converter as a standalone
+    public static void main(String[] args) {
+        setLOGGER(new SystemStreamLog());
+        if (args.length < 4) {
+            LOGGER.error(Messages.getString("TldToClayconfig.info"));
+            return;
+        }
+
+        try {
+            ClassLoader classloader = Thread.currentThread()
+                    .getContextClassLoader();
+            String fn = args[0];
+            String v = args[1];
+            String d = args[2];
+            String mbf = args[3];
+            TldToClayconfig me = new TldToClayconfig();
+            me.setFilename(fn);
+            me.setVersion(v);
+            me.setDestPath(d);
+            me.setClassloader(classloader);
+            me.setMbFilter(mbf);
+            me.convert();
+        } catch (Exception e) {
+            e.printStackTrace();
+            LOGGER.error(Messages.getString("TldToClayconfig.exception"));
+            System.exit(0);
+        }
+    }
+
+}

Propchange: shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/TldToClayconfig.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/TldToClayconfig.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Attribute.java
URL: http://svn.apache.org/viewvc/shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Attribute.java?view=auto&rev=472721
==============================================================================
--- shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Attribute.java (added)
+++ shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Attribute.java Wed Nov  8 16:45:25 2006
@@ -0,0 +1,71 @@
+/*
+ * 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.shale.clay.util.beans;
+
+public class Attribute {
+
+    public String name;
+
+    public String required;
+
+    public String rtexprvalue;
+
+    public String type;
+
+    public String description;
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getRequired() {
+        return required;
+    }
+
+    public void setRequired(String required) {
+        this.required = required;
+    }
+
+    public String getRtexprvalue() {
+        return rtexprvalue;
+    }
+
+    public void setRtexprvalue(String rtexprvalue) {
+        this.rtexprvalue = rtexprvalue;
+    }
+
+    public String getType() {
+        return type;
+    }
+
+    public void setType(String type) {
+        this.type = type;
+    }
+
+    public String getDescription() {
+        return description;
+    }
+
+    public void setDescription(String description) {
+        this.description = description;
+    }
+
+}

Propchange: shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Attribute.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Attribute.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Listener.java
URL: http://svn.apache.org/viewvc/shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Listener.java?view=auto&rev=472721
==============================================================================
--- shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Listener.java (added)
+++ shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Listener.java Wed Nov  8 16:45:25 2006
@@ -0,0 +1,35 @@
+/*
+ * 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.shale.clay.util.beans;
+
+public class Listener {
+
+    public String listenerClass;
+
+    public Listener() {
+
+    }
+
+    public String getListenerClass() {
+        return listenerClass;
+    }
+
+    public void setListenerClass(String listenerClass) {
+        this.listenerClass = listenerClass;
+    }
+
+}

Propchange: shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Listener.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Listener.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Tag.java
URL: http://svn.apache.org/viewvc/shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Tag.java?view=auto&rev=472721
==============================================================================
--- shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Tag.java (added)
+++ shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Tag.java Wed Nov  8 16:45:25 2006
@@ -0,0 +1,157 @@
+/*
+ * 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.shale.clay.util.beans;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class Tag {
+
+    public String name;
+
+    public String tagClass;
+
+    public String teiClass;
+
+    public String bodyContent;
+
+    public String description;
+
+    public String displayName;
+
+    public String smallIcon;
+
+    public String largeIcon;
+
+    public List variables;
+
+    public List attributes;
+
+    public String example;
+
+    public Tag() {
+        super();
+    }
+
+    public Tag(String name) {
+        this.name = name;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public List getAttributes() {
+        return attributes;
+    }
+
+    public void setAttributes(List attributes) {
+        this.attributes = attributes;
+    }
+
+    public void addAttribute(Attribute attribute) {
+        if (attributes == null) {
+            attributes = new ArrayList();
+        }
+        if (attribute != null)
+            attributes.add(attribute);
+    }
+
+    public String getBodyContent() {
+        return bodyContent;
+    }
+
+    public void setBodyContent(String bodyContent) {
+        this.bodyContent = bodyContent;
+    }
+
+    public String getDescription() {
+        return description;
+    }
+
+    public void setDescription(String description) {
+        this.description = description;
+    }
+
+    public String getDisplayName() {
+        return displayName;
+    }
+
+    public void setDisplayName(String displayName) {
+        this.displayName = displayName;
+    }
+
+    public String getExample() {
+        return example;
+    }
+
+    public void setExample(String example) {
+        this.example = example;
+    }
+
+    public String getLargeIcon() {
+        return largeIcon;
+    }
+
+    public void setLargeIcon(String largeIcon) {
+        this.largeIcon = largeIcon;
+    }
+
+    public String getSmallIcon() {
+        return smallIcon;
+    }
+
+    public void setSmallIcon(String smallIcon) {
+        this.smallIcon = smallIcon;
+    }
+
+    public String getTagClass() {
+        return tagClass;
+    }
+
+    public void setTagClass(String tagClass) {
+        this.tagClass = tagClass;
+    }
+
+    public String getTeiClass() {
+        return teiClass;
+    }
+
+    public void setTeiClass(String teiClass) {
+        this.teiClass = teiClass;
+    }
+
+    public List getVariables() {
+        return variables;
+    }
+
+    public void setVariables(List variables) {
+        this.variables = variables;
+    }
+
+    public void addVariable(Variable variable) {
+        if (variables == null) {
+            variables = new ArrayList();
+        }
+        if (variable != null)
+            variables.add(variable);
+    }
+}

Propchange: shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Tag.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Tag.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Taglib.java
URL: http://svn.apache.org/viewvc/shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Taglib.java?view=auto&rev=472721
==============================================================================
--- shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Taglib.java (added)
+++ shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Taglib.java Wed Nov  8 16:45:25 2006
@@ -0,0 +1,147 @@
+/*
+ * 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.shale.clay.util.beans;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class Taglib {
+
+    public List tags;
+
+    public String version;
+
+    public String jspVersion;
+
+    public String shortName;
+
+    public String uri;
+
+    public String description;
+
+    public String displayName;
+
+    public String smallIcon;
+
+    public String largeIcon;
+
+    public String validator;
+
+    public Listener listener;
+
+    public String getDisplayName() {
+        return displayName;
+    }
+
+    public void setDisplayName(String displayName) {
+        this.displayName = displayName;
+    }
+
+    public String getLargeIcon() {
+        return largeIcon;
+    }
+
+    public void setLargeIcon(String largeIcon) {
+        this.largeIcon = largeIcon;
+    }
+
+    public Listener getListener() {
+        return listener;
+    }
+
+    public void setListener(Listener listener) {
+        this.listener = listener;
+    }
+
+    public String getSmallIcon() {
+        return smallIcon;
+    }
+
+    public void setSmallIcon(String smallIcon) {
+        this.smallIcon = smallIcon;
+    }
+
+    public String getValidator() {
+        return validator;
+    }
+
+    public void setValidator(String validator) {
+        this.validator = validator;
+    }
+
+    public String getShortName() {
+        return shortName;
+    }
+
+    public void setShortName(String shortName) {
+        this.shortName = shortName;
+    }
+
+    public Taglib() {
+        super();
+    }
+
+    public List getTags() {
+        return tags;
+    }
+
+    public void setTags(List tags) {
+        this.tags = tags;
+    }
+
+    public void addTag(Tag tag) {
+        if (tag != null) {
+            if (tags == null) {
+                tags = new ArrayList();
+            }
+            tags.add(tag);
+        }
+    }
+
+    public String getVersion() {
+        return version;
+    }
+
+    public void setVersion(String version) {
+        this.version = version;
+    }
+
+    public String getJspVersion() {
+        return jspVersion;
+    }
+
+    public void setJspVersion(String jspVersion) {
+        this.jspVersion = jspVersion;
+    }
+
+    public String getUri() {
+        return uri;
+    }
+
+    public void setTlibUri(String uri) {
+        this.uri = uri;
+    }
+
+    public String getDescription() {
+        return description;
+    }
+
+    public void setDescription(String description) {
+        this.description = description;
+    }
+
+}

Propchange: shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Taglib.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Taglib.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Variable.java
URL: http://svn.apache.org/viewvc/shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Variable.java?view=auto&rev=472721
==============================================================================
--- shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Variable.java (added)
+++ shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Variable.java Wed Nov  8 16:45:25 2006
@@ -0,0 +1,85 @@
+/*
+ * 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.shale.clay.util.beans;
+
+public class Variable {
+
+    public String nameGiven;
+
+    public String nameFromAttribute;
+
+    public String variableClass;
+
+    public String declare;
+
+    public String scope;
+
+    public String description;
+
+    public Variable() {
+        super();
+    }
+
+    public String getDeclare() {
+        return declare;
+    }
+
+    public void setDeclare(String declare) {
+        this.declare = declare;
+    }
+
+    public String getDescription() {
+        return description;
+    }
+
+    public void setDescription(String description) {
+        this.description = description;
+    }
+
+    public String getNameFromAttribute() {
+        return nameFromAttribute;
+    }
+
+    public void setNameFromAttribute(String nameFromAttribute) {
+        this.nameFromAttribute = nameFromAttribute;
+    }
+
+    public String getNameGiven() {
+        return nameGiven;
+    }
+
+    public void setNameGiven(String nameGiven) {
+        this.nameGiven = nameGiven;
+    }
+
+    public String getScope() {
+        return scope;
+    }
+
+    public void setScope(String scope) {
+        this.scope = scope;
+    }
+
+    public String getVariableClass() {
+        return variableClass;
+    }
+
+    public void setVariableClass(String variableClass) {
+        this.variableClass = variableClass;
+    }
+
+}

Propchange: shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Variable.java
------------------------------------------------------------------------------
    svn:executable = *

Propchange: shale/tools/trunk/tld2claycfg/src/main/java/org/apache/shale/clay/util/beans/Variable.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: shale/tools/trunk/tld2claycfg/src/main/resources/messages.properties
URL: http://svn.apache.org/viewvc/shale/tools/trunk/tld2claycfg/src/main/resources/messages.properties?view=auto&rev=472721
==============================================================================
--- shale/tools/trunk/tld2claycfg/src/main/resources/messages.properties (added)
+++ shale/tools/trunk/tld2claycfg/src/main/resources/messages.properties Wed Nov  8 16:45:25 2006
@@ -0,0 +1,38 @@
+#
+# 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.
+#
+TldToClayconfig.info=Usage: java TldToClayconfig filename version destPath methodbinding-filter
+TldToClayconfig.exception=Exception occurred while converting : 
+TldToClayconfig.exception.io=IOException while converting : 
+TldToClayconfig.exception.fnfe=Tld file not found : 
+TldToClayconfig.directory.creation.error=Could not create destination directory : 
+TldToClayconfig.doc.license=Licensed to the Apache Software Foundation (ASF) under one or more\n\
+ contributor license agreements.  See the NOTICE file distributed with\n\
+ this work for additional information regarding copyright ownership.\n\
+ The ASF licenses this file to you under the Apache License, Version 2.0\n\
+ (the "License"); you may not use this file except in compliance with\n\
+ the License.  You may obtain a copy of the License at\n\
+\n\
+     http://www.apache.org/licenses/LICENSE-2.0\n\
+\n\
+ Unless required by applicable law or agreed to in writing, software\n\
+ distributed under the License is distributed on an "AS IS" BASIS,\n\
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n\
+ See the License for the specific language governing permissions and\n\
+ limitations under the License.\n
+TldToClayconfig.doc.dtd=<!DOCTYPE view PUBLIC\n\
+      "-//Apache Software Foundation//DTD Shale Clay View Configuration 1.0//EN"\n\
+      "http://struts.apache.org/dtds/shale-clay-config_1_0.dtd">

Propchange: shale/tools/trunk/tld2claycfg/src/main/resources/messages.properties
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: shale/tools/trunk/tld2claycfg/src/main/resources/messages.properties
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL