Author: apetrelli
Date: Mon Nov 16 20:11:22 2009
New Revision: 880940
URL: http://svn.apache.org/viewvc?rev=880940&view=rev
Log:
TILES-486
Added factory method in Attribute and used into InsertDefinitionModel and
InsertTemplateModel.
Modified:
tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles/Attribute.java
tiles/framework/trunk/tiles-api/src/test/java/org/apache/tiles/AttributeTest.java
tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/InsertDefinitionModel.java
tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/InsertTemplateModel.java
Modified:
tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles/Attribute.java
URL:
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles/Attribute.java?rev=880940&r1=880939&r2=880940&view=diff
==============================================================================
---
tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles/Attribute.java
(original)
+++
tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles/Attribute.java
Mon Nov 16 20:11:22 2009
@@ -578,4 +578,17 @@
public Attribute clone() {
return new Attribute(this);
}
+
+ public static Attribute createTemplateAttribute(String template,
+ String templateExpression, String templateType, String role) {
+ Attribute templateAttribute = createTemplateAttribute(template);
+ templateAttribute.setRole(role);
+ if (templateType != null) {
+ templateAttribute.setRenderer(templateType);
+ }
+ templateAttribute
+ .setExpressionObject(Expression
+
.createExpressionFromDescribedExpression(templateExpression));
+ return templateAttribute;
+ }
}
Modified:
tiles/framework/trunk/tiles-api/src/test/java/org/apache/tiles/AttributeTest.java
URL:
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-api/src/test/java/org/apache/tiles/AttributeTest.java?rev=880940&r1=880939&r2=880940&view=diff
==============================================================================
---
tiles/framework/trunk/tiles-api/src/test/java/org/apache/tiles/AttributeTest.java
(original)
+++
tiles/framework/trunk/tiles-api/src/test/java/org/apache/tiles/AttributeTest.java
Mon Nov 16 20:11:22 2009
@@ -20,6 +20,8 @@
*/
package org.apache.tiles;
+import java.util.Set;
+
import junit.framework.TestCase;
/**
@@ -51,4 +53,19 @@
assertEquals("myrole", attribute.getRole());
assertEquals("myrenderer", attribute.getRenderer());
}
+
+ /**
+ * Tests {...@link Attribute#createTemplateAttribute(String, String,
String, String)}.
+ */
+ public void testCreateTemplateAttribute() {
+ Attribute attribute = Attribute.createTemplateAttribute("myTemplate",
+ "MYLANG:myExpression", "myType", "myRole");
+ assertEquals("myTemplate", attribute.getValue());
+ assertEquals("MYLANG", attribute.getExpressionObject().getLanguage());
+ assertEquals("myExpression",
attribute.getExpressionObject().getExpression());
+ assertEquals("myType", attribute.getRenderer());
+ Set<String> roles = attribute.getRoles();
+ assertEquals(1, roles.size());
+ assertTrue(roles.contains("myRole"));
+ }
}
Modified:
tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/InsertDefinitionModel.java
URL:
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/InsertDefinitionModel.java?rev=880940&r1=880939&r2=880940&view=diff
==============================================================================
---
tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/InsertDefinitionModel.java
(original)
+++
tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/InsertDefinitionModel.java
Mon Nov 16 20:11:22 2009
@@ -97,9 +97,8 @@
try {
AttributeContext attributeContext = container
.getAttributeContext(requestItems);
- Attribute templateAttribute = Attribute
- .createTemplateAttribute(template);
- templateAttribute.setRole(role);
+ Attribute templateAttribute =
Attribute.createTemplateAttribute(template,
+ templateExpression, templateType, role);
attributeContext.setPreparer(preparer);
attributeContext.setTemplateAttribute(templateAttribute);
container.render(definitionName, requestItems);
Modified:
tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/InsertTemplateModel.java
URL:
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/InsertTemplateModel.java?rev=880940&r1=880939&r2=880940&view=diff
==============================================================================
---
tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/InsertTemplateModel.java
(original)
+++
tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/InsertTemplateModel.java
Mon Nov 16 20:11:22 2009
@@ -23,7 +23,6 @@
import org.apache.tiles.Attribute;
import org.apache.tiles.AttributeContext;
-import org.apache.tiles.Expression;
import org.apache.tiles.TilesContainer;
/**
@@ -95,15 +94,8 @@
try {
AttributeContext attributeContext = container
.getAttributeContext(requestItems);
- Attribute templateAttribute = Attribute
- .createTemplateAttribute(template);
- templateAttribute.setRole(role);
- if (templateType != null) {
- templateAttribute.setRenderer(templateType);
- }
- templateAttribute
- .setExpressionObject(Expression
-
.createExpressionFromDescribedExpression(templateExpression));
+ Attribute templateAttribute =
Attribute.createTemplateAttribute(template,
+ templateExpression, templateType, role);
attributeContext.setPreparer(preparer);
attributeContext.setTemplateAttribute(templateAttribute);
container.renderContext(requestItems);