Author: hlship
Date: Mon Nov 14 04:55:12 2005
New Revision: 344110
URL: http://svn.apache.org/viewcvs?rev=344110&view=rev
Log:
Make default binding prefix configurable
Added:
jakarta/tapestry/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/index.xml
jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/pageload/PageLoaderTest.java
- copied, changed from r332813,
jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/pageload/TestPageLoader.java
Removed:
jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/pageload/TestPageLoader.java
Modified:
jakarta/tapestry/trunk/framework/src/descriptor/META-INF/tapestry.page.xml
jakarta/tapestry/trunk/framework/src/descriptor/META-INF/tapestry.props.xml
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/TapestryConstants.java
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/AbstractBindingFactory.java
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/AssetBindingFactory.java
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/BeanBindingFactory.java
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/BindingFactory.java
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/ComponentBindingFactory.java
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/HiveMindBindingFactory.java
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/ListenerBindingFactory.java
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/ListenerMethodBinding.java
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/LiteralBindingFactory.java
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/MessageBindingFactory.java
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/OGNLBindingFactory.java
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/StateBinding.java
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/StateBindingFactory.java
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/translator/TranslatorBindingFactory.java
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/validator/ValidatorsBindingFactory.java
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/pageload/PageLoader.java
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/services/impl/ComponentPropertySourceImpl.java
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/valid/ValidatorBindingFactory.java
jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/BaseComponentTestCase.java
jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/binding/TestListenerMethodBinding.java
jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/pageload/TestNamespaceClassSearchComponentClassProvider.java
jakarta/tapestry/trunk/portlet/src/java/org/apache/tapestry/portlet/bindings/UserAttributeBinding.java
jakarta/tapestry/trunk/portlet/src/java/org/apache/tapestry/portlet/bindings/UserAttributeBindingFactory.java
jakarta/tapestry/trunk/src/documentation/content/xdocs/QuickStart/index.xml
jakarta/tapestry/trunk/src/documentation/content/xdocs/UsersGuide/bindings.xml
jakarta/tapestry/trunk/src/documentation/content/xdocs/UsersGuide/configuration.xml
jakarta/tapestry/trunk/status.xml
Modified:
jakarta/tapestry/trunk/framework/src/descriptor/META-INF/tapestry.page.xml
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/descriptor/META-INF/tapestry.page.xml?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
--- jakarta/tapestry/trunk/framework/src/descriptor/META-INF/tapestry.page.xml
(original)
+++ jakarta/tapestry/trunk/framework/src/descriptor/META-INF/tapestry.page.xml
Mon Nov 14 04:55:12 2005
@@ -45,6 +45,7 @@
<set-service property="assetSource"
service-id="tapestry.asset.AssetSource"/>
<set-service property="pageClassProvider"
service-id="PageClassProvider"/>
<set-service property="componentClassProvider"
service-id="ComponentClassProvider"/>
+ <set-object property="componentPropertySource"
value="infrastructure:componentPropertySource"/>
<set-service property="threadLocale"
service-id="hivemind.ThreadLocale"/>
</construct>
</invoke-factory>
Modified:
jakarta/tapestry/trunk/framework/src/descriptor/META-INF/tapestry.props.xml
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/descriptor/META-INF/tapestry.props.xml?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
--- jakarta/tapestry/trunk/framework/src/descriptor/META-INF/tapestry.props.xml
(original)
+++ jakarta/tapestry/trunk/framework/src/descriptor/META-INF/tapestry.props.xml
Mon Nov 14 04:55:12 2005
@@ -188,7 +188,8 @@
<default
symbol="org.apache.tapestry.enhance.disable-abstract-method-validation"
value="false"/>
<default symbol="org.apache.tapestry.default-page-class"
value="org.apache.tapestry.html.BasePage"/>
<default symbol="org.apache.tapestry.template-extension" value="html"/>
- <default symbol="org.apache.tapestry.jwcid-attribute-name" value="jwcid"/>
+ <default symbol="org.apache.tapestry.jwcid-attribute-name" value="jwcid"/>
+ <default symbol="org.apache.tapestry.default-binding-prefix"
value="ognl"/>
</contribution>
<!-- This may need to be converted into an IPropertySource and injected into
the ApplicationPropertySources
Added:
jakarta/tapestry/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/index.xml
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/index.xml?rev=344110&view=auto
==============================================================================
---
jakarta/tapestry/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/index.xml
(added)
+++
jakarta/tapestry/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/index.xml
Mon Nov 14 04:55:12 2005
@@ -0,0 +1,35 @@
+<?xml version="1.0"?>
+<!--
+ Copyright 2005 The Apache Software Foundation
+
+ Licensed 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 document PUBLIC "-//APACHE//DTD Documentation V1.2//EN"
"./dtd/document-v12.dtd"
+[
+ <!ENTITY projectroot '../../'>
+ <!ENTITY % links.ent SYSTEM "../../links.ent">
+ %links.ent;
+ ]>
+<document>
+ <header>
+ <title>Framework Component Reference</title>
+ </header>
+ <body>
+ <p> The menu to the left lists all the components provided with the
Tapestry framework. </p>
+ <p> Such components may always be referenced without any library
prefix; in cases where an application or
+ library provides a component with the same name, the special
prefix "framework:" may be used. That is,
+ "DirectLink" and "framework:DirectLink" are equivalent, unless
your application (or library) includes a
+ component <em>also</em> named "DirectLink". </p>
+ </body>
+</document>
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/TapestryConstants.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/TapestryConstants.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/TapestryConstants.java
(original)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/TapestryConstants.java
Mon Nov 14 04:55:12 2005
@@ -32,6 +32,13 @@
public static final String PAGE_CLASS_NAME =
"org.apache.tapestry.default-page-class";
+ /**
+ * Name of meta-data property used to determine the default binding
prefix. The meta default for
+ * this is "ognl".
+ */
+
+ public static final String DEFAULT_BINDING_PREFIX_NAME =
"org.apache.tapestry.default-binding-prefix";
+
private TapestryConstants()
{
}
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/AbstractBindingFactory.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/AbstractBindingFactory.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/AbstractBindingFactory.java
(original)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/AbstractBindingFactory.java
Mon Nov 14 04:55:12 2005
@@ -17,11 +17,15 @@
import org.apache.tapestry.coerce.ValueConverter;
/**
+ * Base class for [EMAIL PROTECTED]
org.apache.tapestry.binding.BindingFactory}s. Manages a
+ * [EMAIL PROTECTED] #getValueConverter() valueConverter property}, as all
binding instances will need such a
+ * value injected.
+ *
* @author Howard M. Lewis Ship
+ * @since 4.0
*/
public abstract class AbstractBindingFactory implements BindingFactory
{
-
private ValueConverter _valueConverter;
public ValueConverter getValueConverter()
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/AssetBindingFactory.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/AssetBindingFactory.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/AssetBindingFactory.java
(original)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/AssetBindingFactory.java
Mon Nov 14 04:55:12 2005
@@ -26,10 +26,9 @@
*/
public class AssetBindingFactory extends AbstractBindingFactory
{
- public IBinding createBinding(IComponent root, String description, String
path,
+ public IBinding createBinding(IComponent root, String description, String
expression,
Location location)
{
-
- return new AssetBinding(description, getValueConverter(), location,
root, path);
+ return new AssetBinding(description, getValueConverter(), location,
root, expression);
}
}
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/BeanBindingFactory.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/BeanBindingFactory.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/BeanBindingFactory.java
(original)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/BeanBindingFactory.java
Mon Nov 14 04:55:12 2005
@@ -25,9 +25,9 @@
public class BeanBindingFactory extends AbstractBindingFactory
{
- public IBinding createBinding(IComponent root, String description, String
path,
+ public IBinding createBinding(IComponent root, String description, String
expression,
Location location)
{
- return new BeanBinding(description, getValueConverter(), location,
root, path);
+ return new BeanBinding(description, getValueConverter(), location,
root, expression);
}
}
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/BindingFactory.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/BindingFactory.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/BindingFactory.java
(original)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/BindingFactory.java
Mon Nov 14 04:55:12 2005
@@ -34,15 +34,16 @@
* path is "evaluated", the root component provides a context.
* @param description
* The [EMAIL PROTECTED] IBinding#getDescription()
description}of the binding.
- * @param path
- * The path used to get (or update) a value for the path. This
may be an OGNL
- * expression, a message key, a literal value, or otherwise
defined by the type of
- * binding. It is the value of the binding reference with the
prefix (used to
- * identify the factory) stripped off.
+ * @param expression
+ * The expression used to get (or update) a value. The
interpretation of this
+ * expression is determined by the type of [EMAIL PROTECTED]
IBinding} created by this factory.
+ * In some cases, it is simple the name of an object contained
by the root component.
+ * For the common "ognl:" binding prefix, it is an OGNL
expression to be evaluated on
+ * the root object.
* @param location
* The location of the binding, used to report any errors
related to the binding, or
* to the component parameter the binding is bound to.
*/
- public IBinding createBinding(IComponent root, String bindingDescription,
String path,
+ public IBinding createBinding(IComponent root, String bindingDescription,
String expression,
Location location);
}
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/ComponentBindingFactory.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/ComponentBindingFactory.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/ComponentBindingFactory.java
(original)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/ComponentBindingFactory.java
Mon Nov 14 04:55:12 2005
@@ -27,9 +27,9 @@
*/
public class ComponentBindingFactory extends AbstractBindingFactory
{
- public IBinding createBinding(IComponent root, String description, String
path,
+ public IBinding createBinding(IComponent root, String description, String
expression,
Location location)
{
- return new ComponentBinding(description, getValueConverter(),
location, root, path);
+ return new ComponentBinding(description, getValueConverter(),
location, root, expression);
}
}
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/HiveMindBindingFactory.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/HiveMindBindingFactory.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/HiveMindBindingFactory.java
(original)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/HiveMindBindingFactory.java
Mon Nov 14 04:55:12 2005
@@ -29,10 +29,10 @@
{
private InjectedValueProvider _injectedValueProvider;
- public IBinding createBinding(IComponent root, String bindingDescription,
String path,
+ public IBinding createBinding(IComponent root, String bindingDescription,
String expression,
Location location)
{
- return new HiveMindBinding(bindingDescription, getValueConverter(),
location, path,
+ return new HiveMindBinding(bindingDescription, getValueConverter(),
location, expression,
_injectedValueProvider);
}
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/ListenerBindingFactory.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/ListenerBindingFactory.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/ListenerBindingFactory.java
(original)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/ListenerBindingFactory.java
Mon Nov 14 04:55:12 2005
@@ -28,10 +28,11 @@
public class ListenerBindingFactory extends AbstractBindingFactory
{
- public IBinding createBinding(IComponent root, String description, String
path,
+ public IBinding createBinding(IComponent root, String description, String
expression,
Location location)
{
- return new ListenerMethodBinding(root, path, description,
getValueConverter(), location);
+ return new ListenerMethodBinding(description, getValueConverter(),
location, root,
+ expression);
}
}
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/ListenerMethodBinding.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/ListenerMethodBinding.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/ListenerMethodBinding.java
(original)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/ListenerMethodBinding.java
Mon Nov 14 04:55:12 2005
@@ -41,8 +41,8 @@
private IActionListener _listener;
- public ListenerMethodBinding(IComponent component, String methodName,
String description,
- ValueConverter valueConverter, Location location)
+ public ListenerMethodBinding(String description, ValueConverter
valueConverter, Location location,
+ IComponent component, String methodName)
{
super(description, valueConverter, location);
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/LiteralBindingFactory.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/LiteralBindingFactory.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/LiteralBindingFactory.java
(original)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/LiteralBindingFactory.java
Mon Nov 14 04:55:12 2005
@@ -28,10 +28,10 @@
public class LiteralBindingFactory extends AbstractBindingFactory
{
- public IBinding createBinding(IComponent root, String description, String
path,
+ public IBinding createBinding(IComponent root, String description, String
expression,
Location location)
{
- return new LiteralBinding(description, getValueConverter(), location,
path);
+ return new LiteralBinding(description, getValueConverter(), location,
expression);
}
}
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/MessageBindingFactory.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/MessageBindingFactory.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/MessageBindingFactory.java
(original)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/MessageBindingFactory.java
Mon Nov 14 04:55:12 2005
@@ -26,9 +26,9 @@
*/
public class MessageBindingFactory extends AbstractBindingFactory
{
- public IBinding createBinding(IComponent root, String description, String
path,
+ public IBinding createBinding(IComponent root, String description, String
expression,
Location location)
{
- return new MessageBinding(description, getValueConverter(), location,
root, path);
+ return new MessageBinding(description, getValueConverter(), location,
root, expression);
}
}
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/OGNLBindingFactory.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/OGNLBindingFactory.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/OGNLBindingFactory.java
(original)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/OGNLBindingFactory.java
Mon Nov 14 04:55:12 2005
@@ -33,10 +33,10 @@
private ExpressionCache _expressionCache;
- public IBinding createBinding(IComponent root, String description, String
path,
+ public IBinding createBinding(IComponent root, String description, String
expression,
Location location)
{
- return new ExpressionBinding(description, location,
getValueConverter(), root, path,
+ return new ExpressionBinding(description, location,
getValueConverter(), root, expression,
_expressionEvaluator, _expressionCache);
}
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/StateBinding.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/StateBinding.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/StateBinding.java
(original)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/StateBinding.java
Mon Nov 14 04:55:12 2005
@@ -29,9 +29,9 @@
*/
public class StateBinding extends AbstractBinding
{
- private ApplicationStateManager _applicationStateManager;
+ private final ApplicationStateManager _applicationStateManager;
- private String _objectName;
+ private final String _objectName;
public StateBinding(String description, ValueConverter valueConverter,
Location location,
ApplicationStateManager applicationStateManager, String objectName)
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/StateBindingFactory.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/StateBindingFactory.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/StateBindingFactory.java
(original)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/binding/StateBindingFactory.java
Mon Nov 14 04:55:12 2005
@@ -32,11 +32,11 @@
_applicationStateManager = applicationStateManager;
}
- public IBinding createBinding(IComponent root, String bindingDescription,
String path,
+ public IBinding createBinding(IComponent root, String bindingDescription,
String expression,
Location location)
{
return new StateBinding(bindingDescription, getValueConverter(),
location,
- _applicationStateManager, path);
+ _applicationStateManager, expression);
}
}
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/translator/TranslatorBindingFactory.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/translator/TranslatorBindingFactory.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/translator/TranslatorBindingFactory.java
(original)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/translator/TranslatorBindingFactory.java
Mon Nov 14 04:55:12 2005
@@ -28,17 +28,19 @@
*
* @author Howard Lewis Ship
* @since 4.0
+ * @deprecated Support for the translator: will be removed in release 4.1,
along with
+ * [EMAIL PROTECTED] org.apache.tapestry.valid.ValidField}.
*/
public class TranslatorBindingFactory extends AbstractBindingFactory
{
private BeanFactory _translatorBeanFactory;
- public IBinding createBinding(IComponent root, String bindingDescription,
String path,
+ public IBinding createBinding(IComponent root, String bindingDescription,
String expression,
Location location)
{
try
{
- Translator translator = (Translator)
_translatorBeanFactory.get(path);
+ Translator translator = (Translator)
_translatorBeanFactory.get(expression);
return new TranslatorBinding(bindingDescription,
getValueConverter(), location,
translator);
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/validator/ValidatorsBindingFactory.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/validator/ValidatorsBindingFactory.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/validator/ValidatorsBindingFactory.java
(original)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/validator/ValidatorsBindingFactory.java
Mon Nov 14 04:55:12 2005
@@ -31,12 +31,12 @@
_validatorFactory = validatorFactory;
}
- public IBinding createBinding(IComponent root, String bindingDescription,
String path,
+ public IBinding createBinding(IComponent root, String bindingDescription,
String expression,
Location location)
{
try
{
- List validators = _validatorFactory.constructValidatorList(root,
path);
+ List validators = _validatorFactory.constructValidatorList(root,
expression);
return new ValidatorsBinding(bindingDescription,
getValueConverter(), location,
validators);
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/pageload/PageLoader.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/pageload/PageLoader.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/pageload/PageLoader.java
(original)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/pageload/PageLoader.java
Mon Nov 14 04:55:12 2005
@@ -37,6 +37,7 @@
import org.apache.tapestry.IPage;
import org.apache.tapestry.IRequestCycle;
import org.apache.tapestry.ITemplateComponent;
+import org.apache.tapestry.TapestryConstants;
import org.apache.tapestry.asset.AssetSource;
import org.apache.tapestry.binding.BindingConstants;
import org.apache.tapestry.binding.BindingSource;
@@ -47,6 +48,7 @@
import org.apache.tapestry.resolver.ComponentSpecificationResolver;
import org.apache.tapestry.services.ComponentConstructor;
import org.apache.tapestry.services.ComponentConstructorFactory;
+import org.apache.tapestry.services.ComponentPropertySource;
import org.apache.tapestry.services.ComponentTemplateLoader;
import org.apache.tapestry.spec.BindingType;
import org.apache.tapestry.spec.ContainedComponent;
@@ -58,7 +60,8 @@
import org.apache.tapestry.web.WebContextResource;
/**
- * Runs the process of building the component hierarchy for an entire page.
+ * Implementation of tapestry.page.PageLoader. Runs the process of building
the component hierarchy
+ * for an entire page.
* <p>
* This implementation is not threadsafe, therefore the pooled service model
must be used.
*
@@ -120,6 +123,14 @@
private ComponentClassProvider _componentClassProvider;
/**
+ * Used to resolve meta-data properties related to a component.
+ *
+ * @since 4.0
+ */
+
+ private ComponentPropertySource _componentPropertySource;
+
+ /**
* Tracks the current locale into which pages are loaded.
*
* @since 4.0
@@ -187,7 +198,8 @@
* [EMAIL PROTECTED] IComponentSpecification}).
*/
- void bind(IComponent container, IComponent component, IContainedComponent
contained)
+ void bind(IComponent container, IComponent component, IContainedComponent
contained,
+ String defaultBindingPrefix)
{
IComponentSpecification spec = component.getSpecification();
boolean formalOnly = !spec.getAllowInformalParameters();
@@ -281,7 +293,7 @@
String description = PageloadMessages.parameterName(name);
- IBinding binding = convert(container, description,
BindingConstants.OGNL_PREFIX, bspec);
+ IBinding binding = convert(container, description,
defaultBindingPrefix, bspec);
addBindingToComponent(component, parameterName, binding);
}
@@ -358,6 +370,10 @@
if (_depth > _maxDepth)
_maxDepth = _depth;
+ String defaultBindingPrefix =
_componentPropertySource.getComponentProperty(
+ container,
+ TapestryConstants.DEFAULT_BINDING_PREFIX_NAME);
+
List ids = new ArrayList(containerSpec.getComponentIds());
int count = ids.size();
@@ -398,7 +414,7 @@
// Set up any bindings in the IContainedComponent specification
- bind(container, component, contained);
+ bind(container, component, contained, defaultBindingPrefix);
// Now construct the component recusively; it gets its chance
// to create its subcomponents and set their bindings.
@@ -764,5 +780,11 @@
public void setThreadLocale(ThreadLocale threadLocale)
{
_threadLocale = threadLocale;
+ }
+
+ /** @since 4.0 */
+ public void setComponentPropertySource(ComponentPropertySource
componentPropertySource)
+ {
+ _componentPropertySource = componentPropertySource;
}
}
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/services/impl/ComponentPropertySourceImpl.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/services/impl/ComponentPropertySourceImpl.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/services/impl/ComponentPropertySourceImpl.java
(original)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/services/impl/ComponentPropertySourceImpl.java
Mon Nov 14 04:55:12 2005
@@ -31,6 +31,8 @@
import org.apache.tapestry.util.PropertyHolderPropertySource;
/**
+ * Implementation of tapestry.props.ComponentPropertySource.
+ * <p>
* TODO: Figure out a testing strategy for this beast!
*
* @author Howard M. Lewis Ship
Modified:
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/valid/ValidatorBindingFactory.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/valid/ValidatorBindingFactory.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/valid/ValidatorBindingFactory.java
(original)
+++
jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/valid/ValidatorBindingFactory.java
Mon Nov 14 04:55:12 2005
@@ -19,8 +19,7 @@
import org.apache.hivemind.lib.BeanFactory;
import org.apache.tapestry.IBinding;
import org.apache.tapestry.IComponent;
-import org.apache.tapestry.binding.BindingFactory;
-import org.apache.tapestry.coerce.ValueConverter;
+import org.apache.tapestry.binding.AbstractBindingFactory;
/**
* Uses the tapestry.valid.ValidatorBeanFactory service to obtain
configuration IValidator
@@ -30,41 +29,34 @@
* @since 4.0
* @see org.apache.tapestry.valid.ValidatorBinding
*/
-public class ValidatorBindingFactory implements BindingFactory
+public class ValidatorBindingFactory extends AbstractBindingFactory
{
private BeanFactory _validatorBeanFactory;
- private ValueConverter _valueConverter;
-
public void setValidatorBeanFactory(BeanFactory validatorBeanFactory)
{
_validatorBeanFactory = validatorBeanFactory;
}
- public void setValueConverter(ValueConverter valueConverter)
- {
- _valueConverter = valueConverter;
- }
-
/**
* Creates and returns a [EMAIL PROTECTED] ValidatorBinding}. Interprets
the path as a bean initializer,
* used to locate a particular type of validator and a particular
configuration of its
* properties.
*/
- public IBinding createBinding(IComponent root, String bindingDescription,
String path,
+ public IBinding createBinding(IComponent root, String bindingDescription,
String expression,
Location location)
{
try
{
- IValidator validator = (IValidator)
_validatorBeanFactory.get(path);
+ IValidator validator = (IValidator)
_validatorBeanFactory.get(expression);
- return new ValidatorBinding(bindingDescription, _valueConverter,
location, validator);
+ return new ValidatorBinding(bindingDescription,
getValueConverter(), location,
+ validator);
}
catch (Exception ex)
{
throw new ApplicationRuntimeException(ex.getMessage(), location,
ex);
}
}
-
}
Modified:
jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/BaseComponentTestCase.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/BaseComponentTestCase.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/BaseComponentTestCase.java
(original)
+++
jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/BaseComponentTestCase.java
Mon Nov 14 04:55:12 2005
@@ -17,6 +17,7 @@
import java.io.CharArrayWriter;
import java.io.PrintWriter;
+import org.apache.commons.logging.Log;
import org.apache.hivemind.ClassResolver;
import org.apache.hivemind.Locatable;
import org.apache.hivemind.Location;
@@ -24,7 +25,6 @@
import org.apache.hivemind.test.AggregateArgumentsMatcher;
import org.apache.hivemind.test.ArgumentMatcher;
import org.apache.hivemind.test.HiveMindTestCase;
-import org.apache.hivemind.test.TypeMatcher;
import org.apache.tapestry.components.ILinkComponent;
import org.apache.tapestry.engine.IEngineService;
import org.apache.tapestry.engine.ILink;
@@ -164,11 +164,9 @@
protected IBinding newBinding(Location location)
{
- MockControl control = newControl(IBinding.class);
- IBinding binding = (IBinding) control.getMock();
+ IBinding binding = newBinding();
- binding.getLocation();
- control.setReturnValue(location);
+ trainGetLocation(binding, location);
return binding;
}
@@ -475,5 +473,22 @@
link.getParameterNames();
setReturnValue(link, names);
+ }
+
+ protected void trainGetSpecification(IComponent component,
IComponentSpecification spec)
+ {
+ component.getSpecification();
+ setReturnValue(component, spec);
+ }
+
+ protected void trainGetBinding(IComponent component, String name, IBinding
binding)
+ {
+ component.getBinding(name);
+ setReturnValue(component, binding);
+ }
+
+ protected Log newLog()
+ {
+ return (Log) newMock(Log.class);
}
}
Modified:
jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/binding/TestListenerMethodBinding.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/binding/TestListenerMethodBinding.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/binding/TestListenerMethodBinding.java
(original)
+++
jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/binding/TestListenerMethodBinding.java
Mon Nov 14 04:55:12 2005
@@ -48,7 +48,7 @@
replayControls();
- ListenerMethodBinding b = new ListenerMethodBinding(component, "foo",
"param", vc, l);
+ ListenerMethodBinding b = new ListenerMethodBinding("param", vc, l,
component, "foo");
assertSame(b, b.getObject());
assertSame(component, b.getComponent());
@@ -68,7 +68,7 @@
replayControls();
- ListenerMethodBinding b = new ListenerMethodBinding(component, "foo",
"param", vc, l);
+ ListenerMethodBinding b = new ListenerMethodBinding("param", vc, l,
component, "foo");
String toString = b.toString();
String description = toString.substring(toString.indexOf('[') + 1,
toString.length() - 1);
@@ -99,7 +99,7 @@
replayControls();
- ListenerMethodBinding b = new ListenerMethodBinding(component, "foo",
"param", vc, l);
+ ListenerMethodBinding b = new ListenerMethodBinding("param", vc, l,
component, "foo");
try
{
@@ -133,7 +133,7 @@
replayControls();
- ListenerMethodBinding b = new ListenerMethodBinding(component, "foo",
"param", vc, l);
+ ListenerMethodBinding b = new ListenerMethodBinding("param", vc, l,
component, "foo");
try
{
@@ -169,7 +169,7 @@
replayControls();
- ListenerMethodBinding b = new ListenerMethodBinding(component, "foo",
"param", vc, l);
+ ListenerMethodBinding b = new ListenerMethodBinding("param", vc, l,
component, "foo");
try
{
Copied:
jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/pageload/PageLoaderTest.java
(from r332813,
jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/pageload/TestPageLoader.java)
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/pageload/PageLoaderTest.java?p2=jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/pageload/PageLoaderTest.java&p1=jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/pageload/TestPageLoader.java&r1=332813&r2=344110&rev=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/pageload/TestPageLoader.java
(original)
+++
jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/pageload/PageLoaderTest.java
Mon Nov 14 04:55:12 2005
@@ -17,17 +17,17 @@
import org.apache.commons.logging.Log;
import org.apache.hivemind.ApplicationRuntimeException;
import org.apache.hivemind.Location;
-import org.apache.hivemind.test.HiveMindTestCase;
+import org.apache.tapestry.BaseComponentTestCase;
import org.apache.tapestry.IBinding;
import org.apache.tapestry.IComponent;
import org.apache.tapestry.binding.BindingSource;
+import org.apache.tapestry.services.ComponentPropertySource;
import org.apache.tapestry.spec.BindingSpecification;
import org.apache.tapestry.spec.BindingType;
import org.apache.tapestry.spec.ComponentSpecification;
import org.apache.tapestry.spec.ContainedComponent;
import org.apache.tapestry.spec.IComponentSpecification;
import org.apache.tapestry.spec.ParameterSpecification;
-import org.easymock.MockControl;
/**
* Additional tests for [EMAIL PROTECTED]
org.apache.tapestry.pageload.PageLoader}. Ultimately, testing this
@@ -36,48 +36,18 @@
* @author Howard M. Lewis Ship
* @since 4.0
*/
-public class TestPageLoader extends HiveMindTestCase
+public class PageLoaderTest extends BaseComponentTestCase
{
- public IComponent newComponent(IComponentSpecification spec)
- {
- MockControl control = newControl(IComponent.class);
- IComponent component = (IComponent) control.getMock();
-
- component.getSpecification();
- control.setReturnValue(spec);
-
- return component;
- }
-
- private IBinding newBinding()
- {
- return (IBinding) newMock(IBinding.class);
- }
-
- private IBinding newBinding(Location l)
- {
- MockControl control = newControl(IBinding.class);
- IBinding binding = (IBinding) control.getMock();
-
- binding.getLocation();
- control.setReturnValue(l);
-
- return binding;
- }
public void testAddDuplicateBindingFails()
{
- MockControl componentc = newControl(IComponent.class);
- IComponent component = (IComponent) componentc.getMock();
-
+ IComponent component = newComponent();
Location l1 = newLocation();
Location l2 = newLocation();
-
IBinding oldBinding = newBinding(l1);
IBinding newBinding = newBinding(l2);
- component.getBinding("dupe");
- componentc.setReturnValue(oldBinding);
+ trainGetBinding(component, "dupe", oldBinding);
replayControls();
@@ -89,7 +59,7 @@
catch (ApplicationRuntimeException ex)
{
assertEquals(
- "A binding for parameter dupe conflicts with a previous
binding (at classpath:/org/apache/tapestry/pageload/TestPageLoader, line 1).",
+ "A binding for parameter dupe conflicts with a previous
binding (at classpath:/org/apache/tapestry/pageload/PageLoaderTest, line 1).",
ex.getMessage());
assertSame(component, ex.getComponent());
assertSame(l2, ex.getLocation());
@@ -98,11 +68,11 @@
public void testBindAlias()
{
- MockControl containerc = newControl(IComponent.class);
- IComponent container = (IComponent) containerc.getMock();
-
- MockControl componentc = newControl(IComponent.class);
- IComponent component = (IComponent) componentc.getMock();
+ IComponent container = newComponent();
+ IComponent component = newComponent();
+ Log log = newLog();
+ IBinding binding = newBinding();
+ BindingSource source = newBindingSource();
ParameterSpecification pspec = new ParameterSpecification();
pspec.setParameterName("fred");
@@ -122,23 +92,21 @@
IComponentSpecification spec = new ComponentSpecification();
spec.addParameter(pspec);
- component.getSpecification();
- componentc.setReturnValue(spec);
-
- Log log = (Log) newMock(Log.class);
+ trainGetSpecification(component, spec);
log
- .warn("Parameter barney (for component FredComponent, at
classpath:/org/apache/tapestry/pageload/TestPageLoader, line 1) was bound; this
parameter has been deprecated, bind parameter fred instead.");
+ .warn("Parameter barney (for component FredComponent, at
classpath:/org/apache/tapestry/pageload/PageLoaderTest, line 1) was bound; this
parameter has been deprecated, bind parameter fred instead.");
- IBinding binding = newBinding();
- MockControl sourcec = newControl(BindingSource.class);
- BindingSource source = (BindingSource) sourcec.getMock();
-
- source.createBinding(container, "parameter barney", "an-expression",
"ognl", l);
- sourcec.setReturnValue(binding);
+ trainCreateBinding(
+ source,
+ container,
+ "parameter barney",
+ "an-expression",
+ "ognl",
+ l,
+ binding);
- component.getBinding("fred");
- componentc.setReturnValue(null);
+ trainGetBinding(component, "fred", null);
component.setBinding("fred", binding);
@@ -148,18 +116,30 @@
loader.setLog(log);
loader.setBindingSource(source);
- loader.bind(container, component, contained);
+ loader.bind(container, component, contained, "ognl");
verifyControls();
}
- public void testBindDeprecated()
+ private void trainCreateBinding(BindingSource source, IComponent
container, String description,
+ String expression, String defaultBindingPrefix, Location l,
IBinding binding)
+ {
+ source.createBinding(container, description, expression,
defaultBindingPrefix, l);
+ setReturnValue(source, binding);
+ }
+
+ protected BindingSource newBindingSource()
{
- MockControl containerc = newControl(IComponent.class);
- IComponent container = (IComponent) containerc.getMock();
+ return (BindingSource) newMock(BindingSource.class);
+ }
- MockControl componentc = newControl(IComponent.class);
- IComponent component = (IComponent) componentc.getMock();
+ public void testBindDeprecated()
+ {
+ IComponent container = newComponent();
+ IComponent component = newComponent();
+ IBinding binding = newBinding();
+ BindingSource source = newBindingSource();
+ Log log = newLog();
ParameterSpecification pspec = new ParameterSpecification();
pspec.setParameterName("fred");
@@ -179,25 +159,16 @@
IComponentSpecification spec = new ComponentSpecification();
spec.addParameter(pspec);
- component.getSpecification();
- componentc.setReturnValue(spec);
-
- Log log = (Log) newMock(Log.class);
+ trainGetSpecification(component, spec);
log
- .warn("Parameter fred (at
classpath:/org/apache/tapestry/pageload/TestPageLoader, line 1) has been
deprecated, "
+ .warn("Parameter fred (at
classpath:/org/apache/tapestry/pageload/PageLoaderTest, line 1) has been
deprecated, "
+ "and may be removed in a future release. Consult the
documentation for component FredComponent to "
+ "determine an appropriate replacement.");
- IBinding binding = newBinding();
- MockControl sourcec = newControl(BindingSource.class);
- BindingSource source = (BindingSource) sourcec.getMock();
-
- source.createBinding(container, "parameter fred", "an-expression",
"ognl", l);
- sourcec.setReturnValue(binding);
+ trainCreateBinding(source, container, "parameter fred",
"an-expression", "ognl", l, binding);
- component.getBinding("fred");
- componentc.setReturnValue(null);
+ trainGetBinding(component, "fred", null);
component.setBinding("fred", binding);
@@ -207,8 +178,13 @@
loader.setLog(log);
loader.setBindingSource(source);
- loader.bind(container, component, contained);
+ loader.bind(container, component, contained, "ognl");
verifyControls();
+ }
+
+ protected ComponentPropertySource newPropertySource()
+ {
+ return (ComponentPropertySource)
newMock(ComponentPropertySource.class);
}
}
Modified:
jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/pageload/TestNamespaceClassSearchComponentClassProvider.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/pageload/TestNamespaceClassSearchComponentClassProvider.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/pageload/TestNamespaceClassSearchComponentClassProvider.java
(original)
+++
jakarta/tapestry/trunk/framework/src/test/org/apache/tapestry/pageload/TestNamespaceClassSearchComponentClassProvider.java
Mon Nov 14 04:55:12 2005
@@ -61,7 +61,7 @@
ClassFinder finder = newClassFinder(
"org.apache.tapestry.pageload",
"bar.Baz",
- TestPageLoader.class);
+ PageLoaderTest.class);
IComponentSpecification spec = newSpec();
@@ -74,7 +74,7 @@
provider.setClassFinder(finder);
provider.setPackagesName("zip");
- assertEquals(TestPageLoader.class.getName(),
provider.provideComponentClassName(context));
+ assertEquals(PageLoaderTest.class.getName(),
provider.provideComponentClassName(context));
verifyControls();
}
Modified:
jakarta/tapestry/trunk/portlet/src/java/org/apache/tapestry/portlet/bindings/UserAttributeBinding.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/portlet/src/java/org/apache/tapestry/portlet/bindings/UserAttributeBinding.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/portlet/src/java/org/apache/tapestry/portlet/bindings/UserAttributeBinding.java
(original)
+++
jakarta/tapestry/trunk/portlet/src/java/org/apache/tapestry/portlet/bindings/UserAttributeBinding.java
Mon Nov 14 04:55:12 2005
@@ -32,9 +32,9 @@
*/
public class UserAttributeBinding extends AbstractBinding
{
- private PortletRequest _request;
+ private final PortletRequest _request;
- private String _attributeName;
+ private final String _attributeName;
public UserAttributeBinding(String description, ValueConverter
valueConverter,
Location location, PortletRequest request, String attributeName)
Modified:
jakarta/tapestry/trunk/portlet/src/java/org/apache/tapestry/portlet/bindings/UserAttributeBindingFactory.java
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/portlet/src/java/org/apache/tapestry/portlet/bindings/UserAttributeBindingFactory.java?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/portlet/src/java/org/apache/tapestry/portlet/bindings/UserAttributeBindingFactory.java
(original)
+++
jakarta/tapestry/trunk/portlet/src/java/org/apache/tapestry/portlet/bindings/UserAttributeBindingFactory.java
Mon Nov 14 04:55:12 2005
@@ -19,8 +19,10 @@
import org.apache.hivemind.Location;
import org.apache.tapestry.IBinding;
import org.apache.tapestry.IComponent;
+import org.apache.tapestry.binding.AbstractBindingFactory;
import org.apache.tapestry.binding.BindingFactory;
import org.apache.tapestry.coerce.ValueConverter;
+import org.apache.tapestry.form.validator.AbstractValidatorWrapper;
/**
* Factory used to create [EMAIL PROTECTED]
org.apache.tapestry.portlet.bindings.UserAttributeBinding}s.
@@ -28,30 +30,23 @@
* @author Howard M. Lewis Ship
* @since 4.0
*/
-public class UserAttributeBindingFactory implements BindingFactory
+public class UserAttributeBindingFactory extends AbstractBindingFactory
{
private PortletRequest _request;
- private ValueConverter _valueConverter;
-
/**
* Interprets the path as the Portlet user attribute name.
*/
- public IBinding createBinding(IComponent root, String bindingDescription,
String path,
+ public IBinding createBinding(IComponent root, String bindingDescription,
String expression,
Location location)
{
- return new UserAttributeBinding(bindingDescription, _valueConverter,
location, _request,
- path);
+ return new UserAttributeBinding(bindingDescription,
getValueConverter(), location,
+ _request, expression);
}
public void setRequest(PortletRequest request)
{
_request = request;
- }
-
- public void setValueConverter(ValueConverter valueConverter)
- {
- _valueConverter = valueConverter;
}
}
Modified:
jakarta/tapestry/trunk/src/documentation/content/xdocs/QuickStart/index.xml
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/src/documentation/content/xdocs/QuickStart/index.xml?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
--- jakarta/tapestry/trunk/src/documentation/content/xdocs/QuickStart/index.xml
(original)
+++ jakarta/tapestry/trunk/src/documentation/content/xdocs/QuickStart/index.xml
Mon Nov 14 04:55:12 2005
@@ -32,7 +32,7 @@
<p>
This is the Tapestry Quick Start; basic documentation to get your started
using Tapestry.
-The <link href="../UsersGuide/">Users Guide</link> is conceptual; it provides
the gritty details.
+The <link href="../UsersGuide/index.html">Users Guide</link> is conceptual; it
provides the gritty details.
This Quick Start is about getting you running with Tapestry.
</p>
Modified:
jakarta/tapestry/trunk/src/documentation/content/xdocs/UsersGuide/bindings.xml
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/src/documentation/content/xdocs/UsersGuide/bindings.xml?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/src/documentation/content/xdocs/UsersGuide/bindings.xml
(original)
+++
jakarta/tapestry/trunk/src/documentation/content/xdocs/UsersGuide/bindings.xml
Mon Nov 14 04:55:12 2005
@@ -39,7 +39,7 @@
When binding a component parameter, the value to be bound may be just a
literal string, or
it could be an &OGNL; expression, or subject to any of a number of other
interpretations. Tapestry
uses a <em>prefix</em> value, such as "ognl:", or "message:", to identify
how the rest of the
-value is to be interprted. The prefix identifies the <em>binding type</em>:
+value is to be interpreted. The prefix identifies the <em>binding type</em>:
</p>
@@ -148,7 +148,8 @@
<p>
What happens when you omit a binding prefix? In a page or component
<em>template</em>, the value it is assumed to be a literal string, as with the
"literal:" prefix.
-In a page or component specification, or inside a Java annotation, the value
is assumed to be an &OGNL; expression, as with the "ognl:" prefix. You will
occasionally have
+In a page or component specification, or inside a Java annotation, the value
is assumed to be an &OGNL; expression, as with the "ognl:" prefix
+(but even this can be configured). You will occasionally have
to use an explicit "literal:" prefix inside such files.
</p>
Modified:
jakarta/tapestry/trunk/src/documentation/content/xdocs/UsersGuide/configuration.xml
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/src/documentation/content/xdocs/UsersGuide/configuration.xml?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
---
jakarta/tapestry/trunk/src/documentation/content/xdocs/UsersGuide/configuration.xml
(original)
+++
jakarta/tapestry/trunk/src/documentation/content/xdocs/UsersGuide/configuration.xml
Mon Nov 14 04:55:12 2005
@@ -354,6 +354,16 @@
</tr>
<tr>
+ <td>org.apache.tapestry.default-binding-prefix</td>
+ <td>
+ The default binding to use when no explicit binding prefix is provided.
This is typically set inside a page or
+ component specification, or within an application specification or
library specification (to provide the default
+ for all pages and components). If not otherwise specified,
+ the default binding prefix is "ognl".
+ </td>
+ </tr>
+
+ <tr>
<td>org.apache.tapestry.default-cookie-max-age</td>
<td>
The default max age (in seconds) for cookies written by Tapestry,
including the cookie used
Modified: jakarta/tapestry/trunk/status.xml
URL:
http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/status.xml?rev=344110&r1=344109&r2=344110&view=diff
==============================================================================
--- jakarta/tapestry/trunk/status.xml (original)
+++ jakarta/tapestry/trunk/status.xml Mon Nov 14 04:55:12 2005
@@ -37,6 +37,10 @@
<action context="code" dev="open">Handle change of locale correctly, by
reloading new instance of page in proper locale</action>
<action context="code" dev="open">Intersertials</action>
<action context="code" dev="open">POJO page and component
classes</action>
+ <action context="documentation" dev="open">Extend the QuickStart
tutorial</action>
+ <action context="code" dev="open">Proper management of page/component
specification and template caches with
+ automatic invalidation</action>
+ <action context="code" dev="open">Integration testing framework</action>
</actions>
<!-- Add todo items. @context is an arbitrary string. Eg:
<actions priority="high">
@@ -51,7 +55,7 @@
</todo>
<changes>
<release version="4.0-beta-14" date="unreleased">
-
+ <action type="update" dev="HLS">Make default binding prefix
configurable</action>
</release>
<release version="4.0-beta-13" date="Nov 12 2005">
<action type="update" dev="HLS">Switch to HiveMind 1.1 (final)</action>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]