You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by sk...@apache.org on 2008/03/26 21:16:29 UTC
svn commit: r641541 - in
/myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src:
main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/
test/java/org/apache/myfaces/buildtools/maven2/plugin/builder/
Author: skitching
Date: Wed Mar 26 13:16:27 2008
New Revision: 641541
URL: http://svn.apache.org/viewvc?rev=641541&view=rev
Log:
Fix reading of myfaces-metadata.xml files.
Added:
myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/test/java/org/apache/myfaces/buildtools/maven2/plugin/builder/IOUtilsTest.java (with props)
Modified:
myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ComponentMeta.java
myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ConverterMeta.java
myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/PropertyMeta.java
myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ValidatorMeta.java
Modified: myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ComponentMeta.java
URL: http://svn.apache.org/viewvc/myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ComponentMeta.java?rev=641541&r1=641540&r2=641541&view=diff
==============================================================================
--- myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ComponentMeta.java (original)
+++ myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ComponentMeta.java Wed Mar 26 13:16:27 2008
@@ -86,6 +86,7 @@
String newPrefix = prefix + "/component";
digester.addObjectCreate(newPrefix, ComponentMeta.class);
+ digester.addSetNext(newPrefix, "addComponent");
ClassMeta.addXmlRules(digester, newPrefix);
Modified: myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ConverterMeta.java
URL: http://svn.apache.org/viewvc/myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ConverterMeta.java?rev=641541&r1=641540&r2=641541&view=diff
==============================================================================
--- myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ConverterMeta.java (original)
+++ myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ConverterMeta.java Wed Mar 26 13:16:27 2008
@@ -71,6 +71,7 @@
String newPrefix = prefix + "/converter";
digester.addObjectCreate(newPrefix, ConverterMeta.class);
+ digester.addSetNext(newPrefix, "addConverter");
ClassMeta.addXmlRules(digester, newPrefix);
Modified: myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/PropertyMeta.java
URL: http://svn.apache.org/viewvc/myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/PropertyMeta.java?rev=641541&r1=641540&r2=641541&view=diff
==============================================================================
--- myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/PropertyMeta.java (original)
+++ myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/PropertyMeta.java Wed Mar 26 13:16:27 2008
@@ -61,6 +61,8 @@
String newPrefix = prefix + "/property";
digester.addObjectCreate(newPrefix, PropertyMeta.class);
+ digester.addSetNext(newPrefix, "addProperty");
+
digester.addBeanPropertySetter(newPrefix + "/name");
digester.addBeanPropertySetter(newPrefix + "/className");
digester.addBeanPropertySetter(newPrefix + "/required");
Modified: myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ValidatorMeta.java
URL: http://svn.apache.org/viewvc/myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ValidatorMeta.java?rev=641541&r1=641540&r2=641541&view=diff
==============================================================================
--- myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ValidatorMeta.java (original)
+++ myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ValidatorMeta.java Wed Mar 26 13:16:27 2008
@@ -64,6 +64,7 @@
String newPrefix = prefix + "/validator";
digester.addObjectCreate(newPrefix, ValidatorMeta.class);
+ digester.addSetNext(newPrefix, "addValidator");
ClassMeta.addXmlRules(digester, newPrefix);
Added: myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/test/java/org/apache/myfaces/buildtools/maven2/plugin/builder/IOUtilsTest.java
URL: http://svn.apache.org/viewvc/myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/test/java/org/apache/myfaces/buildtools/maven2/plugin/builder/IOUtilsTest.java?rev=641541&view=auto
==============================================================================
--- myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/test/java/org/apache/myfaces/buildtools/maven2/plugin/builder/IOUtilsTest.java (added)
+++ myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/test/java/org/apache/myfaces/buildtools/maven2/plugin/builder/IOUtilsTest.java Wed Mar 26 13:16:27 2008
@@ -0,0 +1,124 @@
+/*
+ * 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.myfaces.buildtools.maven2.plugin.builder;
+
+import java.io.BufferedReader;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.Reader;
+import java.io.StringReader;
+import java.io.StringWriter;
+
+import junit.framework.TestCase;
+
+import org.apache.myfaces.buildtools.maven2.plugin.builder.model.Model;
+
+/**
+ * Tests saving and loading models from xml.
+ */
+public class IOUtilsTest extends TestCase
+{
+ /**
+ * Load the "goodfile.xml" from the complex test case and build a Model
+ * object from it, then save it again and compare to the original.
+ */
+ public void testComplex() throws Exception
+ {
+ ClassLoader classLoader = this.getClass().getClassLoader();
+
+ InputStream is = classLoader
+ .getResourceAsStream("builder/complex/goodfile.xml");
+ String src = readAll(is);
+ is.close();
+
+ StringReader srcReader = new StringReader(src);
+ Model model = IOUtils.readModel(srcReader);
+
+ StringWriter dstWriter = new StringWriter();
+ IOUtils.writeModel(model, dstWriter);
+ String dst = dstWriter.toString();
+ writeAll("target/outfile-ioutils.xml", dst);
+
+ srcReader = new StringReader(src);
+ StringReader dstReader = new StringReader(dst);
+ compareData(srcReader, dstReader);
+ }
+
+ /**
+ * Read the contents of an input stream into a string.
+ */
+ private String readAll(InputStream is) throws IOException
+ {
+ InputStreamReader reader = new InputStreamReader(is);
+ StringBuffer out = new StringBuffer(4096);
+ char[] buf = new char[1024];
+ while (true)
+ {
+ int nchars = reader.read(buf);
+ if (nchars <= 0)
+ {
+ break;
+ }
+ out.append(buf, 0, nchars);
+ }
+ return out.toString();
+ }
+
+ private void writeAll(String dstFile, String src) throws Exception
+ {
+ FileWriter fw = new FileWriter(dstFile);
+ fw.write(src);
+ fw.close();
+ }
+
+ /**
+ * Compare the contents of two Reader objects line-by-line.
+ */
+ private void compareData(Reader src1, Reader src2) throws IOException
+ {
+ BufferedReader in1 = new BufferedReader(src1);
+ BufferedReader in2 = new BufferedReader(src2);
+
+ int line = 0;
+ for (;;)
+ {
+ ++line;
+ String line1 = in1.readLine();
+ String line2 = in2.readLine();
+
+ if ((line1 == null) && (line2 == null))
+ {
+ // success
+ return;
+ }
+ else if (line1 == null)
+ {
+ fail("input 2 has more lines than input 1");
+ }
+ else if (line2 == null)
+ {
+ fail("input 1 has more lines than input 2");
+ }
+
+ assertEquals("Inputs differ on line " + line, line1, line2);
+ }
+ }
+}
Propchange: myfaces/myfaces-build-tools/branches/skitching/myfaces-builder-plugin/src/test/java/org/apache/myfaces/buildtools/maven2/plugin/builder/IOUtilsTest.java
------------------------------------------------------------------------------
svn:eol-style = native