You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by gp...@apache.org on 2010/10/26 18:57:42 UTC

svn commit: r1027649 [1/2] - in /myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator: core/el/ core/factory/ core/initializer/component/ core/initializer/configuration/ core/interceptor/ c...

Author: gpetracek
Date: Tue Oct 26 16:57:41 2010
New Revision: 1027649

URL: http://svn.apache.org/viewvc?rev=1027649&view=rev
Log:
EXTVAL-29

Modified:
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/el/ValueBindingExpression.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/factory/NameMapperAwareFactory.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/component/AbstractHtmlCoreComponentsComponentInitializer.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticConfiguration.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticConfigurationEntry.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticConfigurationNames.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticInMemoryConfiguration.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticResourceBundleConfiguration.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/AbstractValidationInterceptor.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/MetaDataExtractionInterceptor.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/PropertyValidationInterceptor.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/RendererInterceptor.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/ValidationExceptionInterceptor.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/ViolationExceptionInterceptor.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/mapper/NameMapper.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/mapper/SubMapperAwareNameMapper.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/metadata/MetaDataEntry.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/metadata/extractor/MetaDataExtractor.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/metadata/transformer/MetaDataTransformer.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/property/PropertyInformation.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/proxy/ProxyHelper.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/recorder/ProcessedInformationRecorder.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/renderkit/exception/SkipAfterInterceptorsException.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/renderkit/exception/SkipBeforeInterceptorsException.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/renderkit/exception/SkipRendererDelegationException.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/storage/MetaDataStorageFilter.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/storage/StorageManager.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/storage/StorageManagerHolder.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/storage/ViolationSeverityInterpreterStorage.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/NullValueAwareValidationStrategy.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/SkipValidationEvaluator.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/TargetProperty.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/TargetPropertyId.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/exception/RequiredValidatorException.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/message/resolver/MessageResolver.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/parameter/ParameterKey.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/parameter/ParameterValue.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/parameter/ValidationParameter.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/parameter/ValidationParameterExtractor.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/parameter/ValidationParameterExtractorFactory.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/AbstractValidationStrategy.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/ValidationStrategy.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/util/ExtValAnnotationUtils.java

Modified: myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/el/ValueBindingExpression.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/el/ValueBindingExpression.java?rev=1027649&r1=1027648&r2=1027649&view=diff
==============================================================================
--- myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/el/ValueBindingExpression.java (original)
+++ myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/el/ValueBindingExpression.java Tue Oct 26 16:57:41 2010
@@ -25,7 +25,8 @@ import org.apache.myfaces.extensions.val
 import org.apache.myfaces.extensions.validator.util.ExtValUtils;
 
 /**
- * Object that stores the different parts of an expression string.
+ * An instance of this class stores the different parts of an expression string and
+ * allows an easier usage of value-bindings.
  *
  * @author Gerhard Petracek
  * @since 1.x.1
@@ -42,12 +43,15 @@ public class ValueBindingExpression
     private static final ELHelper EL_HELPER = ExtValUtils.getELHelper();
 
     /**
-     * Replace the property of the expression by the new property specified as parameter or add the property when
-     * expression has no property yet.  When the expression doesn't have a property (like {#bean}), the property is
-     * added to the base expression.
-     * @param valueBindingExpression The valueBindingExpression where we want to replace or add the property.
+     * The given property is used as new property of the expression.
+     * Examples for 'newProperty':<br/>
+     * #{bean} -> #{bean.newProperty}
+     * <p/>
+     * #{bean.property} -> #{bean.newProperty}
+     *
+     * @param valueBindingExpression The target instance of {@link ValueBindingExpression}
      * @param newProperty The property to use.
-     * @return The resulting valueBindingExpression where property is replaced or added.
+     * @return The resulting {@link ValueBindingExpression} (with the new property)
      */
     public static ValueBindingExpression replaceOrAddProperty(ValueBindingExpression valueBindingExpression,
                                                               String newProperty)
@@ -63,11 +67,11 @@ public class ValueBindingExpression
     }
 
     /**
-     * Replace the property in the expression string by the property specified as parameter.
+     * Replace the property in the expression string with the given property.
      *
      * @param valueBindingExpression The valueBindingExpression where we want to replace the property
-     * @param newProperty The property to use.
-     * @return The resulting valueBindingExpression where property is replaced.
+     * @param newProperty The new property which should replace the existing one.
+     * @return The resulting {@link ValueBindingExpression} (with the new property)
      */
     public static ValueBindingExpression replaceProperty(ValueBindingExpression valueBindingExpression,
                                                          String newProperty)
@@ -89,11 +93,11 @@ public class ValueBindingExpression
     }
 
     /**
-     * Add the property to the expression string.
+     * Adds the property to the given {@link ValueBindingExpression}.
      *
      * @param valueBindingExpression The valueBindingExpression where we want to add the property
      * @param newProperty The property to add.
-     * @return The resulting valueBindingExpression where property is added.
+     * @return The resulting {@link ValueBindingExpression} (with the new property)
      */
     public static ValueBindingExpression addProperty(ValueBindingExpression valueBindingExpression, String newProperty)
     {
@@ -112,9 +116,8 @@ public class ValueBindingExpression
     }
 
     /**
-     * Creates an instance of a ValueBindingExpression based on a well formed EL expression. The creation is a recursive
-     * process that extracts the last property, the token the property is separated from the rest (. or [/[') and the
-     * text before the token as a new (ValueBinding)Expression.  see the tests for some
+     * Creates an instance of a ValueBindingExpression based on a well formed EL expression.
+     *
      * @param expression The EL expression
      */
     public ValueBindingExpression(String expression)

Modified: myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/factory/NameMapperAwareFactory.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/factory/NameMapperAwareFactory.java?rev=1027649&r1=1027648&r2=1027649&view=diff
==============================================================================
--- myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/factory/NameMapperAwareFactory.java (original)
+++ myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/factory/NameMapperAwareFactory.java Tue Oct 26 16:57:41 2010
@@ -23,9 +23,7 @@ import org.apache.myfaces.extensions.val
 import org.apache.myfaces.extensions.validator.core.mapper.NameMapper;
 
 /**
- * Factory that works with NameMappers to define what should be created. The factory ask each name mapper for a possible
- * candidate for creation (name mappers can be ordered) and return the result of the first that answers with a non null
- * value.
+ * Interface for factories which are using {@link NameMapper}s for creating instances.
  *
  * @author Gerhard Petracek
  * @since 1.x.2
@@ -34,22 +32,23 @@ import org.apache.myfaces.extensions.val
 public interface NameMapperAwareFactory<T extends NameMapper>
 {
     /**
-     * Register the NameMapper for usage. When nameMapper is used in a call to the deny method, it isn't registered
-     * and there is no further trace of this deny action.
-     * 
-     * @param classToAdd nameMapper to add.
+     * Registers a new {@link NameMapper} which should be used for the mapping process.
+     * It will be used if it isn't denied.
+     *
+     * @param classToAdd {@link NameMapper} to add
      */
     void register(T classToAdd);
 
     /**
-     * Removes the nameMapper from the list.
+     * Removes all {@link NameMapper}s of the given type.
      * @param classToDeregister nameMapper to remove.
      */
     void deregister(Class<? extends NameMapper> classToDeregister);
 
     /**
-     * Deregister the nameMapper and makes sure that the nameMapper can't be registered in the future..
-     * @param classToDeny nameMapper to deny, this is, deregister and doesn't allow registration in the future.
+     * Deregisters existing {@link NameMapper}s of the given type and deny the type for {@link NameMapper} which
+     * might be added later on.
+     * @param classToDeny {@link NameMapper} to deny
      */
     void deny(Class<? extends NameMapper> classToDeny);
 }

Modified: myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/component/AbstractHtmlCoreComponentsComponentInitializer.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/component/AbstractHtmlCoreComponentsComponentInitializer.java?rev=1027649&r1=1027648&r2=1027649&view=diff
==============================================================================
--- myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/component/AbstractHtmlCoreComponentsComponentInitializer.java (original)
+++ myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/component/AbstractHtmlCoreComponentsComponentInitializer.java Tue Oct 26 16:57:41 2010
@@ -41,8 +41,8 @@ import javax.faces.component.html.HtmlIn
 import java.util.Map;
 
 /**
- * Basic implementation of a ComponentInitializer that could be used for concrete versions in the validation modules or
- * custom made ComponentInitializer.
+ * Basic implementation of a {@link ComponentInitializer} which allows an easier handling of required validations and
+ * provides a default implementation for standard components.
  *
  * @author Gerhard Petracek
  * @since x.x.3
@@ -51,19 +51,18 @@ import java.util.Map;
 public abstract class AbstractHtmlCoreComponentsComponentInitializer implements ComponentInitializer
 {
     /**
-     * When the component is one of the standard input components, the max length attribute is configured and the
-     * required attribute is configured when empty fields need to be validated and required initialization is active
-     * by the configuration.
+     * If the component is one of the standard input components, the max length attribute is configured and the
+     * required attribute is configured (if empty field validation and required initialization is activated)
      *
      * @param facesContext The JSF Context
-     * @param uiComponent The component that should be initialised
-     * @param metaData Information from the MetaDataEntry in the abstract form.
+     * @param uiComponent The component which should be initialised
+     * @param metaData map which contains the transformed meta-data
      */
     public void configureComponent(FacesContext facesContext, UIComponent uiComponent, Map<String, Object> metaData)
     {
         if(processComponent(uiComponent))
         {
-            if(validateEmptyFields() && ExtValUtils.isRequiredInitializationActive())
+            if(validateEmptyFields() && isRequiredInitializationActive())
             {
                 configureRequiredAttribute(facesContext, uiComponent, metaData);
             }
@@ -73,9 +72,10 @@ public abstract class AbstractHtmlCoreCo
     }
 
     /**
-     * Checks if in the configuration is set that empty fields should be validated.
+     * Uses the config introduced by JSF 2 for specifying if
+     * fields without content should be available for required validation.
      *
-     * @return  Do we need to validate empty fields.
+     * @return true if fields with empty values should be validated, false otherwise.
      */
     protected boolean validateEmptyFields()
     {
@@ -83,20 +83,31 @@ public abstract class AbstractHtmlCoreCo
     }
 
     /**
-     * Concrete implementation need to determine if they set the required attribute based on the supplied information.
-     * Be aware that this method is only called when certain conditions are met, see configureComponent method.
+     * Uses the config introduced by prev. ExtVal versions for specifying if
+     * required initialization should be used
+     * (it's useful e.g. for client-side validations provided by libs like trinidad).
+     *
+     * @return true if ExtVal should transfer meta-data for required fields to the component
+     */
+    protected boolean isRequiredInitializationActive()
+    {
+        return ExtValUtils.isRequiredInitializationActive();
+    }
+
+    /**
+     * The concrete implementation has to initialize the component based on the given meta-data map.
+     * This method is only called if all pre-conditions are fulfilled.
      *
      * @param facesContext The JSF Context
      * @param uiComponent The UIComponent which should be configured.
-     * @param metaData Information from the MetaDataEntry in the abstract form.
+     * @param metaData map which contains the transformed meta-data
      */
     protected abstract void configureRequiredAttribute(FacesContext facesContext,
-                                              UIComponent uiComponent,
-                                              Map<String, Object> metaData);
+                                                       UIComponent uiComponent,
+                                                       Map<String, Object> metaData);
 
     /**
-     * When the component is an editableValueHolder which is supported, the method returns true so that component
-     * initialization can take place.
+     * Activates the implementation for special components (-> other components will be ignored).
      *
      * @param uiComponent The UIComponent which should be configured.
      * @return Should the component be initialized.
@@ -104,15 +115,15 @@ public abstract class AbstractHtmlCoreCo
     protected boolean processComponent(UIComponent uiComponent)
     {
         return uiComponent instanceof HtmlInputText ||
-                uiComponent instanceof HtmlInputSecret ||
-                uiComponent instanceof HtmlSelectBooleanCheckbox ||
-                uiComponent instanceof HtmlSelectOneListbox ||
-                uiComponent instanceof HtmlSelectOneMenu ||
-                uiComponent instanceof HtmlSelectOneRadio ||
-                uiComponent instanceof HtmlSelectManyCheckbox ||
-                uiComponent instanceof HtmlSelectManyListbox ||
-                uiComponent instanceof HtmlSelectManyMenu ||
-                uiComponent instanceof HtmlInputTextarea;
+               uiComponent instanceof HtmlInputSecret ||
+               uiComponent instanceof HtmlSelectBooleanCheckbox ||
+               uiComponent instanceof HtmlSelectOneListbox ||
+               uiComponent instanceof HtmlSelectOneMenu ||
+               uiComponent instanceof HtmlSelectOneRadio ||
+               uiComponent instanceof HtmlSelectManyCheckbox ||
+               uiComponent instanceof HtmlSelectManyListbox ||
+               uiComponent instanceof HtmlSelectManyMenu ||
+               uiComponent instanceof HtmlInputTextarea;
     }
 
     /**
@@ -134,17 +145,17 @@ public abstract class AbstractHtmlCoreCo
     }
 
     /**
-     * Set the max length specified in the validation constraints, if any, as value of the maxLength attribute of the
-     * component. The length is searched with the value CommonMetaDataKeys.MAX_LENGTH as key and is only set when the
-     * component is a HtmlInputText or a HtmlInputSecret.
+     * This default implementation uses the transformed meta-data stored via the ({@link CommonMetaDataKeys#MAX_LENGTH}
+     * key for initializing e.g. the maxLength attribute of the current component
+     * (of type {@link HtmlInputText} or {@link HtmlInputSecret}.
      *
      * @param facesContext The JSF Context
      * @param uiComponent  The component to configure.
-     * @param metaData Information from the MetaDataEntry in the abstract form.
+     * @param metaData map which contains the transformed meta-data
      */
     protected void configureMaxLengthAttribute(FacesContext facesContext,
-                                             UIComponent uiComponent,
-                                             Map<String, Object> metaData)
+                                               UIComponent uiComponent,
+                                               Map<String, Object> metaData)
     {
         if(metaData.containsKey(CommonMetaDataKeys.MAX_LENGTH))
         {

Modified: myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticConfiguration.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticConfiguration.java?rev=1027649&r1=1027648&r2=1027649&view=diff
==============================================================================
--- myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticConfiguration.java (original)
+++ myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticConfiguration.java Tue Oct 26 16:57:41 2010
@@ -24,9 +24,9 @@ import org.apache.myfaces.extensions.val
 import java.util.List;
 
 /**
- * Mechanism to define some implementation classes of ExtVal concept.  The configuration resembles the services
- * approach.
- *
+ * Allows to provide static configurations (mappings).
+ * The config format depends on the implementation.
+ * 
  * @author Gerhard Petracek
  * @since 1.x.1
  */
@@ -34,16 +34,16 @@ import java.util.List;
 public interface StaticConfiguration<T, R>
 {
     /**
-     * Specify the file location where configuration can be found.
+     * Specify the location where the configuration can be found.
      *
      * @param path file location of the configuration.
      */
     void setSourceOfMapping(String path);
 
     /**
-     * Retrieves the information.  The return result can be cached for performance reasons. The method should always
-     * return an object and never null.
+     * Returns all config entries found in the specified config.
+     *
      * @return List of configuration entries.
      */
     List<StaticConfigurationEntry<T, R>> getMapping();
-}
\ No newline at end of file
+}

Modified: myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticConfigurationEntry.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticConfigurationEntry.java?rev=1027649&r1=1027648&r2=1027649&view=diff
==============================================================================
--- myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticConfigurationEntry.java (original)
+++ myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticConfigurationEntry.java Tue Oct 26 16:57:41 2010
@@ -22,7 +22,7 @@ import org.apache.myfaces.extensions.val
 import org.apache.myfaces.extensions.validator.internal.UsageInformation;
 
 /**
- * POJO data class to store the mapping between source and target by using generics.
+ * Configuration entry for easier handling of key/value pairs.
  *
  * @author Gerhard Petracek
  * @since 1.x.1

Modified: myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticConfigurationNames.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticConfigurationNames.java?rev=1027649&r1=1027648&r2=1027649&view=diff
==============================================================================
--- myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticConfigurationNames.java (original)
+++ myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticConfigurationNames.java Tue Oct 26 16:57:41 2010
@@ -22,7 +22,7 @@ import org.apache.myfaces.extensions.val
 import org.apache.myfaces.extensions.validator.internal.UsageCategory;
 
 /**
- * List of all concepts where a StaticConfiguration is/can be defined for.
+ * List of all artifacts which can be configured via static mappings ({@link StaticConfiguration}).
  *
  * @author Gerhard Petracek
  * @since 1.x.1
@@ -37,4 +37,4 @@ public enum StaticConfigurationNames
 
     SKIP_VALIDATION_SUPPORT_CONFIG,
     VALIDATION_PARAMETER_CONFIG
-}
\ No newline at end of file
+}

Modified: myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticInMemoryConfiguration.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticInMemoryConfiguration.java?rev=1027649&r1=1027648&r2=1027649&view=diff
==============================================================================
--- myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticInMemoryConfiguration.java (original)
+++ myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticInMemoryConfiguration.java Tue Oct 26 16:57:41 2010
@@ -25,10 +25,9 @@ import java.util.List;
 import java.util.ArrayList;
 
 /**
- * Implementation of the StaticConfiguration interface that can be used to programmatically add some implementation
- * entries.
- * See for an example org.apache.myfaces.extensions.validator.PropertyValidationModuleStartupListener
- * #addSkipValidationSupport().
+ * Implementation of the {@link StaticConfiguration} interface for in-memory configs.
+ * It's an implementation which helps to create custom config approaches easily.
+ * 
  * @author Gerhard Petracek
  * @since 1.x.1
  */

Modified: myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticResourceBundleConfiguration.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticResourceBundleConfiguration.java?rev=1027649&r1=1027648&r2=1027649&view=diff
==============================================================================
--- myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticResourceBundleConfiguration.java (original)
+++ myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/initializer/configuration/StaticResourceBundleConfiguration.java Tue Oct 26 16:57:41 2010
@@ -27,7 +27,7 @@ import java.util.Enumeration;
 import java.util.ArrayList;
 
 /**
- * Implementation of the StaticConfiguration interface that uses resource bundles to load the information.
+ * Default implementation of the {@link StaticConfiguration} interface for property-file based configs.
  *
  * @author Gerhard Petracek
  * @since 1.x.1

Modified: myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/AbstractValidationInterceptor.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/AbstractValidationInterceptor.java?rev=1027649&r1=1027648&r2=1027649&view=diff
==============================================================================
--- myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/AbstractValidationInterceptor.java (original)
+++ myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/AbstractValidationInterceptor.java Tue Oct 26 16:57:41 2010
@@ -47,12 +47,13 @@ import java.util.HashMap;
 import java.util.logging.Level;
 
 /**
- * A basic implementation of a RendererInterceptor for validating fields.  It adds some extension point for subclasses
- * and performs tasks like : <br/>
- * - storing field values (recordProcessedInformation) <br/>
+ * A basic implementation of {@link RendererInterceptor} for validating fields.
+ * It adds some extension point for subclasses and performs tasks like : <br/>
+ * - storing field values ({@link #recordProcessedInformation}) <br/>
  * - resetting required information property UIComponent <br/>
  * - calling before and after Validation interceptors <br/>
  * - etc ...
+ *
  * @author Gerhard Petracek
  * @since x.x.3
  */
@@ -62,27 +63,25 @@ public abstract class AbstractValidation
     private ELHelper elHelper;
 
     /**
-     * Defines if the required option of UIComponents need to be set to false after a decode.  It is one of the
-     * conditions that determine if the false is set.  see afterDecode method in this class.
+     * In case of required initialization
+     * it's needed for some use-cases to reset the (required-)state of the components.
+     * Such a reset is just needed if required initialization is activated.
      *
-     * @return false when required property should not be reset to false.
+     * @return true if required initialization is supported by the current implementation, false otherwise
      */
     protected boolean isRequiredInitializationSupported()
     {
         return false;
     }
 
-    @Override
     /**
-     * Sets required property of UIComponent to false after decoding when the isRequiredResetActivated and
-     * isRequiredInitializationActive methods of ExtValUtils indicate that required property should be set and reset.
+     * Sets required property of UIComponent to false after decoding.
+     * It's needed for special use-cases if required initialization is supported.
+     * The final required validation will be done by the corresponding constraint validator.
      *
-     * @param facesContext The JSF Context
-     * @param uiComponent  The component which is processed
-     * @param renderer The renderer that will be called for the apply request values JSF phase.
-     * @throws SkipAfterInterceptorsException Can be thrown to stop the execution of the afterDecode
-     * methods of the registered interceptors.
+     * {@inheritDoc}
      */
+    @Override
     public void afterDecode(FacesContext facesContext, UIComponent uiComponent, Renderer wrapped)
             throws SkipAfterInterceptorsException
     {
@@ -98,20 +97,13 @@ public abstract class AbstractValidation
         }
     }
 
-    @Override
     /**
-     * When the component should be processed and component initialization is not deactivated, the initialization of
-     * the UIComponent is performed.  The initialization can be that the required and length properties are set based
-     * on the annotations found on the property of the target property.
+     * Before the component gets rendered the interceptor initializes the component based on the meta-data
+     * which is provided by the referenced property (if component initialization is activated).
      *
-     * @param facesContext The JSF Context
-     * @param uiComponent The component which is processed
-     * @param renderer The renderer that will be called for the render response JSF phase.
-     * @throws IOException  In case the response writer is accessed and there was an IO problem.
-     * @throws SkipBeforeInterceptorsException Can be thrown to stop the execution of the beforeEncodeBegin methods of
-     * the registered interceptors.
-     * @throws SkipRendererDelegationException Can be thrown to stop the execution of the beforeEncodeBegin method.
+     * {@inheritDoc}
      */
+    @Override
     public void beforeEncodeBegin(FacesContext facesContext, UIComponent uiComponent, Renderer wrapped)
             throws IOException, SkipBeforeInterceptorsException, SkipRendererDelegationException
     {
@@ -122,20 +114,19 @@ public abstract class AbstractValidation
     }
 
     /**
-     * Initialize the component based on the annotations found on the property of the target property. The properties
-     * that can be set are for instance the length and required attribute of the Component.
+     * Initialize the component based on the meta-data which is provided by the referenced property.
      *
      * @param facesContext The JSF Context
      * @param uiComponent The component which is processed
      */
     protected abstract void initComponent(FacesContext facesContext, UIComponent uiComponent);
 
-    @Override
     /**
      * The method performs the validation of the field and calls the registered interceptors regarding the validation.
+     *
      * The main steps are :<br/>
      * - Get the converted value from the renderer (possibly cached by the RendererProxy)<br/>
-     * - Store the value for use in the cross validation options <br/>
+     * - Record the value (e.g. for cross validation)<br/>
      * - Adjust the converted value for interpret empty values as null.<br/>
      * - Execute the beforeValidation method of the registered PropertyValidationInterceptor's. <br/>
      * - Perform the validation when the PropertyValidationInterceptor have indicate it that it should be performed.
@@ -144,17 +135,10 @@ public abstract class AbstractValidation
      *  exception <br/>
      * - Execute the afterValidation method of the registered PropertyValidationInterceptor's. (when validation actually
      *  tooks place)
-     * @param facesContext The JSF Context
-     * @param uiComponent  The component which is processed
-     * @param submittedValue The submitted value
-     * @param renderer The renderer that will be called for the apply request values JSF phase.
-     * @throws ConverterException ExtVal validation strategies can throw ValidationExceptions which are converted by
-     * AbstractValidationInterceptor
-     * @throws SkipBeforeInterceptorsException Can be thrown to stop the execution of the beforeGetConvertedValue
-     * methods of the registered interceptors.
-     * @throws SkipRendererDelegationException Can be thrown to stop the execution of the beforeGetConvertedValue
-     * method.
+     *
+     * {@inheritDoc}
      */
+    @Override
     public void beforeGetConvertedValue(FacesContext facesContext, UIComponent uiComponent, Object o, Renderer wrapped)
             throws ConverterException, SkipBeforeInterceptorsException, SkipRendererDelegationException
     {
@@ -256,11 +240,11 @@ public abstract class AbstractValidation
     }
 
     /**
-     * Get the property information of the UIComponent from the MetaDataExtractor.
+     * Extrancts the {@link PropertyInformation} for the given component.
      *
      * @param facesContext The JSF Context
      * @param uiComponent The UIComponent which is processed.
-     * @return All the information about the UIComponent (like annotations, custom info from Extractor, etc)
+     * @return the information of the referenced property (e.g. base object, property name, meta-data, ...)
      */
     protected PropertyInformation getPropertyInformation(FacesContext facesContext, UIComponent uiComponent)
     {
@@ -272,28 +256,9 @@ public abstract class AbstractValidation
     }
 
     /**
-     * Create the properties which will be used by the selection of the MetaDataExtractor.  By default it adds the
-     * ModuleKey (if available) and the UIComponent.
-     *
-     * @param uiComponent  The UIComponent which is processed.
-     * @return properties used by the selection of the MetaDataExtractor
-     */
-    protected Map<String, Object> getPropertiesForComponentMetaDataExtractor(UIComponent uiComponent)
-    {
-        Map<String, Object> properties = new HashMap<String, Object>();
-
-        if(getModuleKey() != null)
-        {
-            properties.put(ValidationModuleKey.class.getName(), getModuleKey());
-        }
-        properties.put(UIComponent.class.getName(), uiComponent);
-        return properties;
-    }
-
-    /**
      * Implementations must return the MetaDataExtractor that will perform the extraction of the meta data from the
-     * component.  The component itself is present in the properties map when it would influence the type of Extractor
-     * which is returned.
+     * component. The component itself is present in the properties map (it might influence the type of the returned
+     * {@link MetaDataExtractor}.
      *
      * @param properties Properties that can be used to determine the extractor which is returned.
      * @return The MetaDataExtractor used for performing the xtraction of the meta data from the component.
@@ -317,12 +282,11 @@ public abstract class AbstractValidation
     }
 
     /**
-     * Determines if the value should be validated in case it is empty (null or no characters in string). If it happens
-     * to be empty and the configuration indicates that we don't need to validate such values, the method return false
-     * and no ExtVal validations will be performed.
+     * Evaluates if the value should be validated in case it is empty (null or no characters).
+     * ExtVal also uses a config parameter introduced by JSF 2 which allows to skip the validation of empty fields.
      *
      * @param convertedObject The converted value.
-     * @return Should the value be converted?
+     * @return true if the given value should be validated, false otherwise
      */
     protected boolean validateValue(Object convertedObject)
     {
@@ -339,8 +303,9 @@ public abstract class AbstractValidation
 
     /**
      * Defines if a value is empty. The definition of empty is that it is null or has no characters in the String value.
+     *
      * @param convertedObject The converted value.
-     * @return is the value empty?
+     * @return true if the given value is the representation of an empty value
      */
     protected boolean isValueToValidateEmpty(Object convertedObject)
     {
@@ -348,8 +313,10 @@ public abstract class AbstractValidation
     }
 
     /**
-     * Check if empty fields should be validated based on the configuration parameter javax.faces.VALIDATE_EMPTY_FIELDS.
-     * @return  Do we need to validate empty fields.
+     * Uses a config parameter (javax.faces.VALIDATE_EMPTY_FIELDS) which was introduced by JSF 2 for deactivating
+     * the validation of empty fields.
+     * 
+     * @return true if the validation of empty fields is enabled, false otherwise
      */
     protected boolean validateEmptyFields()
     {
@@ -357,10 +324,10 @@ public abstract class AbstractValidation
     }
 
     /**
-     * Check if empty string values should be interpret as null based on the configuration parameter
-     * javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL.
+     * Uses a config parameter (javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL)
+     * which was introduced by JSF 2 for converting empty strings to null.
      *
-     * @return Do we need to interpret empty String values as null.
+     * @return true if an empty string should be replaced with null (for the validation process), false otherwise
      */
     protected boolean interpretEmptyStringValuesAsNull()
     {
@@ -368,21 +335,20 @@ public abstract class AbstractValidation
     }
 
     /**
-     * Perform the actual validation of the value.
+     * A concrete implementation has to perform the actual validation of the value.
      *
      * @param facesContext The JSF Context
      * @param uiComponent The UIComponent which is processed.
-     * @param convertedObject The adjusted converted value.
+     * @param convertedObject The (adjusted) converted value.
      */
     protected abstract void processValidation(
             FacesContext facesContext, UIComponent uiComponent, Object convertedObject);
 
     /**
-     * Determines if the value of the UIComponent needs to be processed.  By default it is so when the component is a
-     * EditableValueHolder and the value binding can be interpreted.
+     * Based on basic rules the method checks if the current component should be processed.
      *
      * @param uiComponent The UIComponent which is processed.
-     * @return Do we need to process the UIComponent
+     * @return true if the given component should be processed by the current interceptor, false otherwise
      */
     protected boolean processComponent(UIComponent uiComponent)
     {
@@ -402,12 +368,6 @@ public abstract class AbstractValidation
         return this.elHelper;
     }
 
-    /**
-     * Determines if the value binding of the component is valid. That is, it can be processed by the ELHelper.
-     * {@see org.apache.myfaces.extensions.validator.core.el.ELHelper#getPropertyDetailsOfValueBinding(javax.faces.component.UIComponent)}
-     * @param uiComponent The UIComponent which is processed.
-     * @return Is the value binding correct, interpretable by ExtVal.
-     */
     private boolean isValueBindingOfComponentValid(UIComponent uiComponent)
     {
         try
@@ -420,18 +380,14 @@ public abstract class AbstractValidation
         }
     }
 
-    /**
-     * Checks from the configuration if the component initialization is deactivated.
-     * @return Is the component initialization deactivated.
-     */
     private boolean isComponentInitializationDeactivated()
     {
         return ExtValCoreConfiguration.get().deactivateComponentInitialization();
     }
 
     /**
-     * Will the converted value be stored for the cross validation feature. By default it is not stored.
-     * @return will the the converted value be stored.
+     * Signals if the converted value should be stored e.g. for the cross-validation process.
+     * @return true if the converted value should be recorded, false otherwise
      */
     protected boolean recordProcessedInformation()
     {
@@ -440,7 +396,9 @@ public abstract class AbstractValidation
     }
 
     /**
-     * Identification of the validation module.  By default it returns null so no module is assigned.
+     * Identification of the validation module.
+     * A key is just needed if other implementations should be restricted to 1-n special validation modules.
+     * 
      * @return Identification of the validation module.
      */
     protected Class getModuleKey()
@@ -450,6 +408,20 @@ public abstract class AbstractValidation
     }
 
     /**
+     * Create the properties which can be used by a {@link MetaDataExtractor}.
+     * By default it adds a key which identifies the current validation-module
+     * and the current component (to avoid changes of the api for quite special use-cases).
+     *
+     * @param uiComponent  The UIComponent which is processed.
+     * @return properties used by the selection of the MetaDataExtractor
+     */
+    protected Map<String, Object> getPropertiesForComponentMetaDataExtractor(UIComponent uiComponent)
+    {
+        return createProperties(uiComponent);
+    }
+
+    /**
+     * Create the properties which can be used by a {@link MetaDataExtractor}.
      * Returns the properties which will be made available to interceptors. By default the moduleKey and the UIComponent
      * itself is added.
      *
@@ -458,6 +430,11 @@ public abstract class AbstractValidation
      */
     protected Map<String, Object> getInterceptorProperties(UIComponent uiComponent)
     {
+        return createProperties(uiComponent);
+    }
+
+    private Map<String, Object> createProperties(UIComponent uiComponent)
+    {
         Map<String, Object> result = new HashMap<String, Object>();
 
         if(getModuleKey() != null)
@@ -470,7 +447,7 @@ public abstract class AbstractValidation
     }
 
     /**
-     * Store the interceptor properties in the RendererInterceptorPropertyStorage.
+     * Stores additional properties for the current process (to avoid api changes).
      *
      * @param uiComponent The UIComponent which is processed.
      */
@@ -485,10 +462,6 @@ public abstract class AbstractValidation
         }
     }
 
-    /**
-     * remove the interceptor properties from the RendererInterceptorPropertyStorage.
-     * @param uiComponent The UIComponent which is processed.
-     */
     private void resetRendererInterceptorProperties(UIComponent uiComponent)
     {
         RendererInterceptorPropertyStorage interceptorPropertyStorage = getRendererInterceptorPropertyStorage();
@@ -499,11 +472,6 @@ public abstract class AbstractValidation
         }
     }
 
-    /**
-     * Retrieves the RendererInterceptorPropertyStorage defined in the ExtVal system.
-     *
-     * @return The RendererInterceptorPropertyStorage
-     */
     private RendererInterceptorPropertyStorage getRendererInterceptorPropertyStorage()
     {
         return ExtValUtils.getStorage(RendererInterceptorPropertyStorage.class,

Modified: myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/MetaDataExtractionInterceptor.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/MetaDataExtractionInterceptor.java?rev=1027649&r1=1027648&r2=1027649&view=diff
==============================================================================
--- myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/MetaDataExtractionInterceptor.java (original)
+++ myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/MetaDataExtractionInterceptor.java Tue Oct 26 16:57:41 2010
@@ -24,8 +24,8 @@ import org.apache.myfaces.extensions.val
 import org.apache.myfaces.extensions.validator.core.InvocationOrderSupport;
 
 /**
- * Allows to intercept into the work of the
- * {@link org.apache.myfaces.extensions.validator.core.metadata.extractor.MetaDataExtractor}
+ * Allows to post-process the result of the meta-data extraction process (see
+ * {@link org.apache.myfaces.extensions.validator.core.metadata.extractor.MetaDataExtractor})
  *
  * @author Gerhard Petracek
  * @since 1.x.2
@@ -35,7 +35,9 @@ import org.apache.myfaces.extensions.val
 public interface MetaDataExtractionInterceptor
 {
     /**
-     * Perform any additional actions on the PropertyInformation data after the extraction is performed and before it is
+     * Allows to execute additional actions on the
+     * {@link org.apache.myfaces.extensions.validator.core.property.PropertyInformation}
+     * data after the extraction is performed and before it is
      * used to determine validation strategies or UIComponent adjustments.
      *  
      * @param propertyInformation the information entry which contains information about the property

Modified: myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/PropertyValidationInterceptor.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/PropertyValidationInterceptor.java?rev=1027649&r1=1027648&r2=1027649&view=diff
==============================================================================
--- myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/PropertyValidationInterceptor.java (original)
+++ myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/PropertyValidationInterceptor.java Tue Oct 26 16:57:41 2010
@@ -28,7 +28,11 @@ import javax.faces.component.UIComponent
 import java.util.Map;
 
 /**
- * Interface to define interceptors that can perform logic before and after the validations are executed.
+ * Property-validation interceptors allow to intercept the validation of a property. It's possible to register a
+ * global interceptor which intercepts the validation process of all properties or a local interceptor
+ * (= a {@link org.apache.myfaces.extensions.validator.core.validation.parameter.ValidationParameter} which allows
+ * to intercept the validation of the constraint which hosts the interceptor as
+ * {@link org.apache.myfaces.extensions.validator.core.validation.parameter.ValidationParameter}.
  *
  * @author Gerhard Petracek
  * @since x.x.3
@@ -38,12 +42,14 @@ import java.util.Map;
 public interface PropertyValidationInterceptor extends ValidationParameter
 {
     /**
-     * Executed before the RendererInterceptor calls the validation Strategies to validate the converted value.
+     * Executed before the {@link org.apache.myfaces.extensions.validator.core.validation.strategy.ValidationStrategy
+     * validation strategies} are invoked to validate the converted value.
      *
      * @param facesContext The JSF Context
      * @param uiComponent The component which is processed
      * @param convertedObject  The converted object
-     * @param properties Additional information of interest. Contains the PropertyInformation object.
+     * @param properties Additional information of interest. Contains e.g. the
+     * {@link org.apache.myfaces.extensions.validator.core.property.PropertyInformation} extracted from the component.
      * @return false if the validation process should be bypassed
      */
     boolean beforeValidation(FacesContext facesContext,
@@ -52,12 +58,14 @@ public interface PropertyValidationInter
                              Map<String, Object> properties);
 
     /**
-     * Processed if validation was executed
-     * in contrast to ValidationExceptionInterceptor it gets executed in any case.
+     * Processed if validation was executed.
+     * In contrast to a {@link org.apache.myfaces.extensions.validator.core.interceptor.ValidationExceptionInterceptor
+     * ValidationExceptionInterceptor} it gets executed in any case.
      * @param facesContext The JSF Context
      * @param uiComponent The component which is processed
      * @param convertedObject The converted object
-     * @param properties Additional information of interest. Contains the PropertyInformation object.
+     * @param properties Additional information of interest. Contains e.g. the
+     * {@link org.apache.myfaces.extensions.validator.core.property.PropertyInformation} extracted from the component.
      */
     void afterValidation(FacesContext facesContext,
                          UIComponent uiComponent,

Modified: myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/RendererInterceptor.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/RendererInterceptor.java?rev=1027649&r1=1027648&r2=1027649&view=diff
==============================================================================
--- myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/RendererInterceptor.java (original)
+++ myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/RendererInterceptor.java Tue Oct 26 16:57:41 2010
@@ -32,7 +32,8 @@ import java.io.IOException;
 
 /**
  * Allows to intercept renderer methods.<br/>
- * Base mechanism of extval. It allows to add custom infrastructures.
+ * It's the base mechanism of ExtVal which enables most of the concepts provided by the framework.
+ * Furthermore, it allows to add custom concepts.
  *
  * @author Gerhard Petracek
  * @since 1.x.1
@@ -43,11 +44,11 @@ public interface RendererInterceptor
     String getInterceptorId();
 
     /**
-     * Defines the value for the converted value that should be returned by the getConvertedValue method of the
-     * Renderer in case the there was a SkipRendererDelegationException thrown.
-     * @param skipRendererDelegationException The exception thrown to abort RendererInterceptor execution.
-     * @param currentReturnValue The converted value that is defined at this time.  This can be null also when the
-     * user has inputted some text in case of an Exception during the beforeConvertedValue 'phase'
+     * In case of the converted value it defines the value that should be returned by the getConvertedValue method
+     * in case there was a {@link SkipRendererDelegationException}.
+     *
+     * @param skipRendererDelegationException The exception thrown to abort further {@link RendererInterceptor}s.
+     * @param currentReturnValue The converted value that is defined at this time.
      * @return value that should be used as converted value.
      */
     Object getReturnValueOnSkipRendererDelegationException(
@@ -58,75 +59,74 @@ public interface RendererInterceptor
      */
 
     /**
-     * The "before decode phase" of ExtVal.  The code is executed before the decode method is executed of the Renderer.
-     * @param facesContext The JSF Context
-     * @param uiComponent The component which is processed
-     * @param renderer The renderer that will be called for the apply request values JSF phase.
-     * @throws SkipBeforeInterceptorsException Can be thrown to stop the execution of the beforeDecode methods of the
-     * registered interceptors.
-     * @throws SkipRendererDelegationException Can be thrown to stop the execution of the beforeDecode method and allows
-     *  additional interceptors to run and change the converted value.
+     * Intercepts a method of the renderer. The name of the intercepted method is the name of this method without the
+     * prefix ('before').
+     *  
+     * @param facesContext The JSF Context
+     * @param uiComponent The current component
+     * @param renderer The intercepted renderer
+     * @throws SkipBeforeInterceptorsException can be thrown to stop the execution of the subsequent interceptors
+     * @throws SkipRendererDelegationException can be thorwn to skip the invocation of the intercepted renderer method.
      */
     void beforeDecode(FacesContext facesContext, UIComponent uiComponent, Renderer renderer)
         throws SkipBeforeInterceptorsException, SkipRendererDelegationException;
 
     /**
-     * The "before encode phase" of ExtVal.  The code is executed before the encodeBegin method is executed of the
-     * Renderer.
+     * Intercepts a method of the renderer. The name of the intercepted method is the name of this method without the
+     * prefix ('before').
+     *
      * @param facesContext The JSF Context
-     * @param uiComponent The component which is processed
-     * @param renderer The renderer that will be called for the render response JSF phase.
+     * @param uiComponent The current component
+     * @param renderer The intercepted renderer
      * @throws IOException  In case the response writer is accessed and there was an IO problem.
-     * @throws SkipBeforeInterceptorsException Can be thrown to stop the execution of the beforeEncodeBegin methods of
-     * the registered interceptors.
-     * @throws SkipRendererDelegationException Can be thrown to stop the execution of the beforeEncodeBegin method.
+     * @throws SkipBeforeInterceptorsException can be thrown to stop the execution of the subsequent interceptors
+     * @throws SkipRendererDelegationException can be thorwn to skip the invocation of the intercepted renderer method.
      */
     void beforeEncodeBegin(FacesContext facesContext, UIComponent uiComponent, Renderer renderer)
         throws IOException, SkipBeforeInterceptorsException, SkipRendererDelegationException;
 
     /**
-     * The "before encode children phase" of ExtVal.  The code is executed before the encodeChildren method is executed
-     * of the Renderer.
+     * Intercepts a method of the renderer. The name of the intercepted method is the name of this method without the
+     * prefix ('before').
+     *
      * @param facesContext The JSF Context
-     * @param uiComponent  The component which is processed
-     * @param renderer The renderer that will be called for the render response JSF phase.
+     * @param uiComponent The current component
+     * @param renderer The intercepted renderer
      * @throws IOException In case the response writer is accessed and there was an IO problem.
-     * @throws SkipBeforeInterceptorsException Can be thrown to stop the execution of the beforeEncodeChildren methods
-     * of the registered interceptors.
-     * @throws SkipRendererDelegationException Can be thrown to stop the execution of the beforeEncodeChildren method.
+     * @throws SkipBeforeInterceptorsException can be thrown to stop the execution of the subsequent interceptors
+     * @throws SkipRendererDelegationException can be thorwn to skip the invocation of the intercepted renderer method.
      */
     void beforeEncodeChildren(FacesContext facesContext, UIComponent uiComponent, Renderer renderer)
         throws IOException, SkipBeforeInterceptorsException, SkipRendererDelegationException;
 
     /**
-     * The "before encode end phase" of ExtVal.  The code is executed before the encodeEnd method is executed
-     * of the Renderer.
+     * Intercepts a method of the renderer. The name of the intercepted method is the name of this method without the
+     * prefix ('before').
      *
      * @param facesContext The JSF Context
-     * @param uiComponent  The component which is processed
-     * @param renderer The renderer that will be called for the render response JSF phase.
+     * @param uiComponent The current component
+     * @param renderer The intercepted renderer
      * @throws IOException In case the response writer is accessed and there was an IO problem.
-     * @throws SkipBeforeInterceptorsException Can be thrown to stop the execution of the beforeEncodeEnd methods of the
-     * registered interceptors.
-     * @throws SkipRendererDelegationException Can be thrown to stop the execution of the beforeEncodeEnd method.
+     * @throws SkipBeforeInterceptorsException can be thrown to stop the execution of the subsequent interceptors
+     * @throws SkipRendererDelegationException can be thorwn to skip the invocation of the intercepted renderer method.
      */
     void beforeEncodeEnd(FacesContext facesContext, UIComponent uiComponent, Renderer renderer)
         throws IOException, SkipBeforeInterceptorsException, SkipRendererDelegationException;
 
     /**
-     * The "before get converted value phase" of ExtVal.  The code is executed before the getConvertedValue method is
-     * executed of the Renderer.
+     * Intercepts a method of the renderer. The name of the intercepted method is the name of this method without the
+     * prefix ('before').
      *
      * @param facesContext The JSF Context
-     * @param uiComponent  The component which is processed
+     * @param uiComponent The current component
      * @param submittedValue The submitted value
-     * @param renderer The renderer that will be called for the apply request values JSF phase.
-     * @throws ConverterException ExtVal validation strategies can throw ValidationExceptions which are converted by
-     * AbstractValidationInterceptor
-     * @throws SkipBeforeInterceptorsException Can be thrown to stop the execution of the beforeGetConvertedValue
-     * methods of the registered interceptors.
-     * @throws SkipRendererDelegationException Can be thrown to stop the execution of the beforeGetConvertedValue
-     * method.
+     * @param renderer The intercepted renderer
+     * @throws ConverterException ExtVal validation strategies can throw
+     * {@link javax.faces.validator.ValidatorException}s.
+     * Due to the trick used by ExtVal it has to be converted to a {@link ConverterException}
+     * (see {@link AbstractValidationInterceptor}).
+     * @throws SkipBeforeInterceptorsException can be thrown to stop the execution of the subsequent interceptors
+     * @throws SkipRendererDelegationException can be thorwn to skip the invocation of the intercepted renderer method.
      */
     void beforeGetConvertedValue(FacesContext facesContext, UIComponent uiComponent, Object submittedValue,
                                  Renderer renderer)
@@ -137,72 +137,69 @@ public interface RendererInterceptor
      */
 
     /**
-     * The "after decode phase" of ExtVal.  The code is executed after the decode method is executed
-     * of the Renderer.
+     * Intercepts a method of the renderer. The name of the intercepted method is the name of this method without the
+     * prefix ('after').
      *
      * @param facesContext The JSF Context
-     * @param uiComponent  The component which is processed
-     * @param renderer The renderer that will be called for the apply request values JSF phase.
-     * @throws SkipAfterInterceptorsException Can be thrown to stop the execution of the afterDecode
-     * methods of the registered interceptors.
+     * @param uiComponent The current component
+     * @param renderer The intercepted renderer
+     * @throws SkipAfterInterceptorsException Can be thrown to stop the execution of the subsequent interceptors.
      */
     void afterDecode(FacesContext facesContext, UIComponent uiComponent, Renderer renderer)
         throws SkipAfterInterceptorsException;
 
     /**
-     * The "after encode begin phase" of ExtVal.  The code is executed after the encodeBegin method is executed
-     * of the Renderer.
+     * Intercepts a method of the renderer. The name of the intercepted method is the name of this method without the
+     * prefix ('after').
      *
      * @param facesContext The JSF context
-     * @param uiComponent In case the response writer is accessed and there was an IO problem.
-     * @param renderer The renderer that will be called for the render response JSF phase.
+     * @param uiComponent The current component
+     * @param renderer The intercepted renderer
      * @throws IOException In case the response writer is accessed and there was an IO problem.
-     * @throws SkipAfterInterceptorsException Can be thrown to stop the execution of the afterEncodeBegin
-     * methods of the registered interceptors.
+     * @throws SkipAfterInterceptorsException Can be thrown to stop the execution of the subsequent interceptors.
      */
     void afterEncodeBegin(FacesContext facesContext, UIComponent uiComponent, Renderer renderer)
         throws IOException, SkipAfterInterceptorsException;
 
     /**
-     * The "after encode children phase" of ExtVal.  The code is executed after the encodeChildren method is executed
-     * of the Renderer.
+     * Intercepts a method of the renderer. The name of the intercepted method is the name of this method without the
+     * prefix ('after').
      *
      * @param facesContext The JSF Context
-     * @param uiComponent  The component which is processed
-     * @param renderer The renderer that will be called for the render response JSF phase.
+     * @param uiComponent The current component
+     * @param renderer The intercepted renderer
      * @throws IOException In case the response writer is accessed and there was an IO problem.
-     * @throws SkipAfterInterceptorsException Can be thrown to stop the execution of the afterEncodeChildren
-     * methods of the registered interceptors.
+     * @throws SkipAfterInterceptorsException Can be thrown to stop the execution of the subsequent interceptors.
      */
     void afterEncodeChildren(FacesContext facesContext, UIComponent uiComponent, Renderer renderer)
         throws IOException, SkipAfterInterceptorsException;
 
     /**
-     * The "after encode end phase" of ExtVal.  The code is executed after the encodeEnd method is executed
-     * of the Renderer.
+     * Intercepts a method of the renderer. The name of the intercepted method is the name of this method without the
+     * prefix ('after').
      *
      * @param facesContext The JSF Context
-     * @param uiComponent  The component which is processed
-     * @param renderer The renderer that will be called for the render response JSF phase.
+     * @param uiComponent The current component
+     * @param renderer The intercepted renderer
      * @throws IOException In case the response writer is accessed and there was an IO problem.
-     * @throws SkipAfterInterceptorsException Can be thrown to stop the execution of the afterEncodeEnd
-     * methods of the registered interceptors.
+     * @throws SkipAfterInterceptorsException Can be thrown to stop the execution of the subsequent interceptors.
      */
     void afterEncodeEnd(FacesContext facesContext, UIComponent uiComponent, Renderer renderer)
         throws IOException, SkipAfterInterceptorsException;
 
     /**
-     * The "after get converted value phase" of ExtVal.  The code is executed after the getConvertedValue method is
-     * executed of the Renderer.
+     * Intercepts a method of the renderer. The name of the intercepted method is the name of this method without the
+     * prefix ('after').
      *
      * @param facesContext The JSF Context
-     * @param uiComponent  The component which is processed
+     * @param uiComponent The current component
      * @param submittedValue The submitted value
-     * @param renderer The renderer that will be called for the render response JSF phase.
-     * @throws ConverterException ExtVal validation strategies can throw ValidationExceptions which are converted by
-     * AbstractValidationInterceptor
-     * @throws SkipAfterInterceptorsException Can be thrown to stop the execution of the afterGetConvertedValue
-     * methods of the registered interceptors.
+     * @param renderer The intercepted renderer
+     * @throws ConverterException ExtVal validation strategies can throw
+     * {@link javax.faces.validator.ValidatorException}s.
+     * Due to the trick used by ExtVal it has to be converted to a {@link ConverterException}
+     * (see {@link AbstractValidationInterceptor}).
+     * @throws SkipAfterInterceptorsException Can be thrown to stop the execution of the subsequent interceptors.
      */
     void afterGetConvertedValue(FacesContext facesContext, UIComponent uiComponent, Object submittedValue, Renderer
             renderer)

Modified: myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/ValidationExceptionInterceptor.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/ValidationExceptionInterceptor.java?rev=1027649&r1=1027648&r2=1027649&view=diff
==============================================================================
--- myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/ValidationExceptionInterceptor.java (original)
+++ myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/ValidationExceptionInterceptor.java Tue Oct 26 16:57:41 2010
@@ -28,7 +28,7 @@ import javax.faces.component.UIComponent
 import javax.faces.validator.ValidatorException;
 
 /**
- * Allows to intercept validator exceptions.
+ * Allows to intercept {@link javax.faces.validator.ValidatorException}.
  *
  * @author Gerhard Petracek
  * @since 1.x.1
@@ -38,7 +38,6 @@ import javax.faces.validator.ValidatorEx
 public interface ValidationExceptionInterceptor
 {
     /**
-     *
      * @param uiComponent the current component
      * @param metaDataEntry the meta data entry which contains the meta data of the property
      * @param convertedObject the converted user input

Modified: myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/ViolationExceptionInterceptor.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/ViolationExceptionInterceptor.java?rev=1027649&r1=1027648&r2=1027649&view=diff
==============================================================================
--- myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/ViolationExceptionInterceptor.java (original)
+++ myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/interceptor/ViolationExceptionInterceptor.java Tue Oct 26 16:57:41 2010
@@ -31,7 +31,8 @@ import javax.faces.validator.ValidatorEx
 import javax.faces.context.FacesContext;
 
 /**
- * A validation interceptor that sets the valid property of the uiComponent to false.
+ * This validation-exception interceptor sets the valid property of the uiComponent to false,
+ * if it is a blocking severity.
  * 
  * @author Gerhard Petracek
  * @since x.x.3

Modified: myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/mapper/NameMapper.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/mapper/NameMapper.java?rev=1027649&r1=1027648&r2=1027649&view=diff
==============================================================================
--- myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/mapper/NameMapper.java (original)
+++ myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/mapper/NameMapper.java Tue Oct 26 16:57:41 2010
@@ -24,9 +24,10 @@ import org.apache.myfaces.extensions.val
 
 /**
  * Interface for name mappers.
- * A name mapper calculates a name for a given source object.
- * e.g. Meta-Data Key (e.g.: annotation class name) -> ValidationStrategy
- * NameMappers are stateless.
+ * A name mapper calculates a name of the resource which is linked to the given source.
+ * e.g. constraints are mapped to the corresponding
+ * {@link org.apache.myfaces.extensions.validator.core.validation.strategy.ValidationStrategy}.
+ * NameMappers have to be stateless.
  * 
  * @author Gerhard Petracek
  * @since 1.x.1
@@ -36,9 +37,11 @@ import org.apache.myfaces.extensions.val
 public interface NameMapper<T>
 {
     /**
-     * Returns the name for the source or null when this name mapper doesn't support the type of source.
+     * Returns the name of the target resource for the given source or null if the implementations isn't responsible
+     * to map the given instance.
+     *
      * @param source Object for which the name must be created.
-     * @return name or null when source isn't supported.
+     * @return name of the target resource or null if the source isn't supported.
      */
     String createName(T source);
-}
+}
\ No newline at end of file

Modified: myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/mapper/SubMapperAwareNameMapper.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/mapper/SubMapperAwareNameMapper.java?rev=1027649&r1=1027648&r2=1027649&view=diff
==============================================================================
--- myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/mapper/SubMapperAwareNameMapper.java (original)
+++ myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/mapper/SubMapperAwareNameMapper.java Tue Oct 26 16:57:41 2010
@@ -31,8 +31,8 @@ import org.apache.myfaces.extensions.val
 public interface SubMapperAwareNameMapper<T> extends NameMapper<T>
 {
     /**
-     * Add a (sub-)name mapper to list to delegate to.
-     * @param nameMapper nameMapper to add
+     * Add a (sub-)name mapper
+     * @param nameMapper sub-nameMapper to add
      */
     void addNameMapper(NameMapper<T> nameMapper);
 }
\ No newline at end of file

Modified: myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/metadata/MetaDataEntry.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/metadata/MetaDataEntry.java?rev=1027649&r1=1027648&r2=1027649&view=diff
==============================================================================
--- myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/metadata/MetaDataEntry.java (original)
+++ myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/metadata/MetaDataEntry.java Tue Oct 26 16:57:41 2010
@@ -26,7 +26,7 @@ import java.util.HashMap;
 import java.util.logging.Logger;
 
 /**
- * Data holder which stores the meta-data and some information where the meta-data was around.
+ * Data holder which stores the meta-data and some information where the meta-data was found.
  *
  * @author Gerhard Petracek
  * @since 1.x.1
@@ -41,7 +41,7 @@ public class MetaDataEntry
     private Map<String, Object> properties = new HashMap<String, Object>();
 
     /**
-     * Returns the key of the meta-data.
+     * Returns the key which identifies the meta-data.
      *
      * @return key of the meta-data.
      */
@@ -51,9 +51,10 @@ public class MetaDataEntry
     }
 
     /**
-     * Sets the key of the meta-data.  The standard modules of ExtVal uses the name of the annotation as key.
+     * Sets the key of the meta-data.
+     * It's suggested to use the fully qualified name of a constraint.
      *
-     * @param key value to set as key of the meta-data.
+     * @param key value identifies the the meta-data stored in the instance.
      */
     public void setKey(String key)
     {
@@ -63,9 +64,9 @@ public class MetaDataEntry
     }
 
     /**
-     * Returns the object that lead to the creation of this instance.
+     * Returns the meta-data or a data-structure which represents the meta-data.
      *
-     * @return main object for the meta-data instance.
+     * @return the meta-data or a data-structure which represents the meta-data.
      */
     public Object getValue()
     {
@@ -73,12 +74,11 @@ public class MetaDataEntry
     }
 
     /**
-     * Returns the object that lead to the creation of this instance casted to the specified type.  Is useful for
-     * meta-data created for Bean Validation annotations, since the main object there is a ConstraintDescriptor.
+     * Returns the meta-data or a data-structure which represents the meta-data.
      *
      * @param targetClass Type to which the return value must be casted.
      * @param <T> generic type
-     * @return main object for the meta-data instance.
+     * @return the meta-data or a data-structure which represents the meta-data.
      */
     public <T> T getValue(Class<T> targetClass)
     {
@@ -86,10 +86,9 @@ public class MetaDataEntry
     }
 
     /**
-     * Sets the object that lead to the creation of this meta-data instance. The standard modules stores the annotation
-     * or the ConstraintDescriptor that lead to the creation of this instance.
+     * Sets the object which represents the meta-data hold by this instance.
      *
-     * @param value main object for the meta-data instance.
+     * @param value the object which represents the meta-data hold by this instance.
      */
     public void setValue(Object value)
     {
@@ -99,9 +98,9 @@ public class MetaDataEntry
     }
 
     /**
-     * Sets the map instance where the additional properties are stored of the meta-data.
+     * Sets the map which contains further properties which are linked to the meta-data.
      *
-     * @param properties Map with properties of the meta-data.
+     * @param properties properties which are linked to the meta-data.
      */
     public void setProperties(Map<String, Object> properties)
     {
@@ -109,8 +108,7 @@ public class MetaDataEntry
     }
 
     /**
-     * Returns the value defined in the additional properties identified by the key value.  When there is no value
-     * defined for the key, returns null.
+     * Returns the property-value for the given property-key.
      *
      * @param key key value used to identify the property value.
      * @return property value for the specified key.
@@ -121,9 +119,9 @@ public class MetaDataEntry
     }
 
     /**
-     * Returns the value defined in the additional properties identified by the key value casted to the specified type.
+     * Returns the property-value for the given property-key.
      *
-     * @param key key value used to identify the property value.
+     * @param key key which identifies a property
      * @param targetClass Type to which the return value must be casted.
      * @param <T> Generic type
      * @return property value for the specified key.
@@ -134,8 +132,9 @@ public class MetaDataEntry
     }
 
     /**
-     * Adds the property value with the key to the list of properties.  The constants defined in PropertyInformationKeys
-     *  can be used as key for the storage.
+     * Sets the property-value for the given property-key.
+     * {@link org.apache.myfaces.extensions.validator.core.property.PropertyInformationKeys}
+     * contains the keys used by ExtVal.
      *
      * @param key key value used to identify the property value.
      * @param value property value to set.

Modified: myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/metadata/extractor/MetaDataExtractor.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/metadata/extractor/MetaDataExtractor.java?rev=1027649&r1=1027648&r2=1027649&view=diff
==============================================================================
--- myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/metadata/extractor/MetaDataExtractor.java (original)
+++ myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/metadata/extractor/MetaDataExtractor.java Tue Oct 26 16:57:41 2010
@@ -25,8 +25,10 @@ import org.apache.myfaces.extensions.val
 import javax.faces.context.FacesContext;
 
 /**
- * A meta-data extractor is responsible to analyze an object (UIComponent)
+ * A meta-data extractor is responsible to analyze an object (e.g. UIComponent)
  * and returns all available meta-data information.
+ * An implementation should provide the possibility to filter the found meta-data e.g. via
+ * {@link org.apache.myfaces.extensions.validator.core.storage.MetaDataStorageFilter}
  * 
  * @author Gerhard Petracek
  * @since 1.x.1
@@ -35,12 +37,12 @@ import javax.faces.context.FacesContext;
 public interface MetaDataExtractor
 {
     /**
-     * Returns all information about the object. Important remark: The default implementation,
-     * DefaultComponentMetaDataExtractor, uses a MetaDataStorageFilter that can decide to not include some meta data.
+     * Returns all information about the object.
      *
      * @param facesContext The JSF Faces Context
-     * @param object The UIComponent from which we need all available information.
-     * @return  All information related to the UIComponent.
+     * @param object e.g. an instance of {@link javax.faces.component.UIComponent} which should be used to extract
+     * the information of the bound property.
+     * @return  All the essential information about the bound property.
      */
     PropertyInformation extract(FacesContext facesContext, Object object);
 }

Modified: myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/metadata/transformer/MetaDataTransformer.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/metadata/transformer/MetaDataTransformer.java?rev=1027649&r1=1027648&r2=1027649&view=diff
==============================================================================
--- myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/metadata/transformer/MetaDataTransformer.java (original)
+++ myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/metadata/transformer/MetaDataTransformer.java Tue Oct 26 16:57:41 2010
@@ -25,9 +25,19 @@ import org.apache.myfaces.extensions.val
 import java.util.Map;
 
 /**
- * Allows to transform concrete meta-data to a more abstract form.<br/>
- * e.g.: @Required, @Column(nullable = false,...), @Length(minimum = 1), ... -> required = true  <br/>
- * For the keys of the map the constants in the CommonMetaDataKeys can be used.
+ * {@link org.apache.myfaces.extensions.validator.core.metadata.transformer.MetaDataTransformer MetaDataTransformers}
+ * are used to convert specific information of constraints to a generic representation.
+ * So it's possible to transform different meta-data implementations to an independent representation.
+ * E.g. @Length and @Size specifies the same information.
+ * {@link org.apache.myfaces.extensions.validator.core.metadata.transformer.MetaDataTransformer MetaDataTransformers}
+ * are aware of the concrete meta-data implementation but they aren't aware of JSF components.
+ *
+ * The result of the transformation is used by
+ * {@link org.apache.myfaces.extensions.validator.core.initializer.component.ComponentInitializer ComponentInitializers}
+ * to initialize JSF components based on the found meta-data.
+ *
+ * {@link org.apache.myfaces.extensions.validator.core.metadata.CommonMetaDataKeys} provides the keys used by ExtVal.
+ *
  * @author Gerhard Petracek
  * @since 1.x.1
  */
@@ -36,9 +46,10 @@ import java.util.Map;
 public interface MetaDataTransformer
 {
     /**
-     * Convert the information from MetaDataEntry into the abstract format.
-     * @param metaData The MetaDataEntry to process.
-     * @return Map with the information abstract format. 
+     * Converts the information of a {@link MetaDataEntry} into an independent format.
+     *
+     * @param metaData The meta-data which should be converted.
+     * @return Map with the converted information.
      */
     Map<String, Object> convertMetaData(MetaDataEntry metaData);
 }