You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by si...@apache.org on 2011/02/11 21:38:15 UTC
svn commit: r1069949 -
/commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/internal/rulesbinder/LinkedRuleBuilderImpl.java
Author: simonetripodi
Date: Fri Feb 11 20:38:15 2011
New Revision: 1069949
URL: http://svn.apache.org/viewvc?rev=1069949&view=rev
Log:
cached rule providers that allow aliases definition, so system that generate rule bindings dynamically don't need to take care of collecting aliases first
Modified:
commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/internal/rulesbinder/LinkedRuleBuilderImpl.java
Modified: commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/internal/rulesbinder/LinkedRuleBuilderImpl.java
URL: http://svn.apache.org/viewvc/commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/internal/rulesbinder/LinkedRuleBuilderImpl.java?rev=1069949&r1=1069948&r2=1069949&view=diff
==============================================================================
--- commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/internal/rulesbinder/LinkedRuleBuilderImpl.java (original)
+++ commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/internal/rulesbinder/LinkedRuleBuilderImpl.java Fri Feb 11 20:38:15 2011
@@ -134,6 +134,12 @@ final class LinkedRuleBuilderImpl implem
* {@inheritDoc}
*/
public NestedPropertiesBuilder setNestedProperties() {
+ // that would be useful when adding rules via automatically generated rules binding (such annotations)
+ NestedPropertiesBuilder nestedPropertiesBuilder = this.providersRegistry.getProvider(this.keyPattern, NestedPropertiesBuilder.class);
+ if (nestedPropertiesBuilder != null) {
+ return nestedPropertiesBuilder;
+ }
+
return this.addProvider(new NestedPropertiesBuilderImpl(this.keyPattern, this.namespaceURI, this.mainBinder, this));
}
@@ -153,6 +159,12 @@ final class LinkedRuleBuilderImpl implem
* {@inheritDoc}
*/
public SetPropertiesBuilder setProperties() {
+ // that would be useful when adding rules via automatically generated rules binding (such annotations)
+ SetPropertiesBuilder setPropertiesBuilder = this.providersRegistry.getProvider(this.keyPattern, SetPropertiesBuilder.class);
+ if (setPropertiesBuilder != null) {
+ return setPropertiesBuilder;
+ }
+
return this.addProvider(new SetPropertiesBuilderImpl(this.keyPattern, this.namespaceURI, this.mainBinder, this));
}