Author: apetrelli
Date: Tue Feb 12 11:24:20 2008
New Revision: 627046
URL: http://svn.apache.org/viewvc?rev=627046&view=rev
Log:
TILES-208
Added support in DigesterDefinitionsReader.
Added:
tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/config/tiles-defs-2-1.xml
(with props)
Modified:
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/definition/digester/DigesterDefinitionsReader.java
tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/definition/digester/TestDigesterDefinitionsReader.java
Modified:
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/definition/digester/DigesterDefinitionsReader.java
URL:
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/definition/digester/DigesterDefinitionsReader.java?rev=627046&r1=627045&r2=627046&view=diff
==============================================================================
---
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/definition/digester/DigesterDefinitionsReader.java
(original)
+++
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/definition/digester/DigesterDefinitionsReader.java
Tue Feb 12 11:24:20 2008
@@ -176,7 +176,8 @@
throws Exception {
Attribute attribute = (Attribute) digester.peek(0);
Definition definition = (Definition) digester.peek(1);
- definition.putAttribute(attributes.getValue("name"), attribute);
+ definition.putAttribute(attributes.getValue("name"), attribute,
+ "true".equals(attributes.getValue("cascade")));
}
}
Added:
tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/config/tiles-defs-2-1.xml
URL:
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/config/tiles-defs-2-1.xml?rev=627046&view=auto
==============================================================================
---
tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/config/tiles-defs-2-1.xml
(added)
+++
tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/config/tiles-defs-2-1.xml
Tue Feb 12 11:24:20 2008
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!--
+/*
+ * $Id$
+ *
+ * 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.
+ */
+-->
+
+ <!DOCTYPE tiles-definitions PUBLIC
+ "-//Apache Software Foundation//DTD Tiles Configuration 2.1//EN"
+ "http://tiles.apache.org/dtds/tiles-config_2_1.dtd">
+
+<!-- Definitions for Tiles documentation -->
+
+<tiles-definitions>
+ <definition name="doc.cascaded.test" template="/layout/classicLayout.jsp">
+ <put-attribute name="title" value="Test title" cascade="false" />
+ <put-attribute name="title2" value="Test title two" cascade="true" />
+ </definition>
+
+</tiles-definitions>
Propchange:
tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/config/tiles-defs-2-1.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/config/tiles-defs-2-1.xml
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Modified:
tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/definition/digester/TestDigesterDefinitionsReader.java
URL:
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/definition/digester/TestDigesterDefinitionsReader.java?rev=627046&r1=627045&r2=627046&view=diff
==============================================================================
---
tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/definition/digester/TestDigesterDefinitionsReader.java
(original)
+++
tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/definition/digester/TestDigesterDefinitionsReader.java
Tue Feb 12 11:24:20 2008
@@ -113,6 +113,37 @@
}
}
+
+ /**
+ * Tests the read method under normal conditions for the new features in
2.1
+ * version of the DTD.
+ */
+ public void testRead21Version() {
+ try {
+ DefinitionsReader reader = new DigesterDefinitionsReader();
+ reader.init(new HashMap<String, String>());
+
+ URL configFile = this.getClass().getClassLoader().getResource(
+ "org/apache/tiles/config/tiles-defs-2-1.xml");
+ assertNotNull("Config file not found", configFile);
+
+ InputStream source = configFile.openStream();
+ Map<String, Definition> definitions = reader.read(source);
+
+ assertNotNull("Definitions not returned.", definitions);
+ Definition def = definitions.get("doc.cascaded.test");
+
+ assertNotNull("Couldn't find doc.role.test tile.", def);
+ Attribute attribute = def.getLocalAttribute("title");
+ assertNotNull("Couldn't Find title local attribute.", attribute);
+ attribute = def.getCascadedAttribute("title2");
+ assertNotNull("Couldn't Find title2 cascaded attribute.",
attribute);
+ } catch (Exception e) {
+ fail("Exception reading configuration." + e);
+ e.printStackTrace();
+ }
+ }
+
/**
* Tests calling read without calling init.
*/