moved model binding and validation related code into model module-level package; separated out ui concerns into ui subpackage

This commit is contained in:
Keith Donald
2009-07-25 04:07:21 +00:00
parent de5528840d
commit 934d4a5fe0
83 changed files with 187 additions and 186 deletions
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.alert;
package org.springframework.model.alert;
/**
* Communicates an event of interest to the user.
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.alert;
package org.springframework.model.alert;
import java.util.List;
import java.util.Map;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.alert;
package org.springframework.model.alert;
/**
* A static factory for conveniently constructing Alerts.
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.alert;
package org.springframework.model.alert;
/**
* The set of alert severities.
@@ -0,0 +1,5 @@
/**
* A general-purpose Alerting API to communicate events of interest.
*/
package org.springframework.model.alert;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.alert.support;
package org.springframework.model.alert.support;
import java.util.ArrayList;
import java.util.Collections;
@@ -22,8 +22,8 @@ import java.util.List;
import java.util.Map;
import org.springframework.core.style.ToStringCreator;
import org.springframework.ui.alert.Alert;
import org.springframework.ui.alert.AlertContext;
import org.springframework.model.alert.Alert;
import org.springframework.model.alert.AlertContext;
import org.springframework.util.CachingMapDecorator;
/**
@@ -0,0 +1,5 @@
/**
* AlertContext implementation suitable for use in most environments.
*/
package org.springframework.model.alert.support;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.binder;
package org.springframework.model.binder;
import java.util.Map;
@@ -13,9 +13,9 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.binder;
package org.springframework.model.binder;
import org.springframework.ui.alert.Alert;
import org.springframework.model.alert.Alert;
/**
* The result of a bind operation.
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.binder;
package org.springframework.model.binder;
import java.util.List;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.binder;
package org.springframework.model.binder;
import java.util.List;
import java.util.Map;
@@ -0,0 +1,5 @@
/**
* API for binding submitted field values in a single batch operation.
*/
package org.springframework.model.binder;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.message;
package org.springframework.model.message;
import java.util.Locale;
import java.util.Map;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.message;
package org.springframework.model.message;
import java.util.Locale;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.message;
package org.springframework.model.message;
/**
* Runtime exception thrown by a {@link MessageResolver} if a message resolution fails.
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.message;
package org.springframework.model.message;
import java.util.Locale;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.message;
package org.springframework.model.message;
import java.util.LinkedHashMap;
import java.util.LinkedHashSet;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.message;
package org.springframework.model.message;
import org.springframework.context.MessageSource;
import org.springframework.context.MessageSourceResolvable;
@@ -0,0 +1,5 @@
/**
* An API for creating localized messages.
*/
package org.springframework.model.message;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding;
package org.springframework.model.ui;
/**
* FieldModel binding states.
@@ -13,10 +13,9 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding;
package org.springframework.model.ui;
import org.springframework.ui.alert.Alert;
import org.springframework.ui.alert.Severity;
import org.springframework.model.alert.Alert;
/**
* A model for a single data field containing dynamic information to display in the view.
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding;
package org.springframework.model.ui;
/**
* Thrown when a PresentationModel field cannot be found.
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding;
package org.springframework.model.ui;
/**
* Represents the state and behavior of a presentation independently of the GUI controls used in the interface.
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding;
package org.springframework.model.ui;
/**
* A factory for domain object PresentationModels.
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding;
package org.springframework.model.ui;
/**
* FieldModel Validation states.
@@ -13,12 +13,15 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.binder;
package org.springframework.model.ui.binder;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import org.springframework.model.binder.BindingResult;
import org.springframework.model.binder.BindingResults;
class ArrayListBindingResults implements BindingResults {
private List<BindingResult> results;
@@ -13,9 +13,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.binder;
package org.springframework.model.ui.binder;
import org.springframework.ui.binding.config.FieldModelConfiguration;
import org.springframework.model.binder.Binder;
import org.springframework.model.binder.BindingResults;
import org.springframework.model.ui.config.FieldModelConfiguration;
/**
* A SPI interface that lets you configure a {@link Binder}, then execute it.
@@ -13,10 +13,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.binder;
package org.springframework.model.ui.binder;
import org.springframework.ui.alert.Alert;
import org.springframework.ui.alert.Severity;
import org.springframework.model.alert.Alert;
import org.springframework.model.alert.Severity;
import org.springframework.model.binder.BindingResult;
class BindingStatusResult implements BindingResult {
@@ -13,14 +13,15 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.binder;
package org.springframework.model.ui.binder;
import org.springframework.context.MessageSource;
import org.springframework.core.style.StylerUtils;
import org.springframework.ui.alert.Alert;
import org.springframework.ui.alert.Severity;
import org.springframework.ui.message.MessageBuilder;
import org.springframework.ui.message.ResolvableArgument;
import org.springframework.model.alert.Alert;
import org.springframework.model.alert.Severity;
import org.springframework.model.binder.BindingResult;
import org.springframework.model.message.MessageBuilder;
import org.springframework.model.message.ResolvableArgument;
class FieldNotEditableResult implements BindingResult {
@@ -13,14 +13,15 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.binder;
package org.springframework.model.ui.binder;
import org.springframework.context.MessageSource;
import org.springframework.core.style.StylerUtils;
import org.springframework.ui.alert.Alert;
import org.springframework.ui.alert.Severity;
import org.springframework.ui.message.MessageBuilder;
import org.springframework.ui.message.ResolvableArgument;
import org.springframework.model.alert.Alert;
import org.springframework.model.alert.Severity;
import org.springframework.model.binder.BindingResult;
import org.springframework.model.message.MessageBuilder;
import org.springframework.model.message.ResolvableArgument;
class FieldNotFoundResult implements BindingResult {
@@ -13,17 +13,21 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.binder;
package org.springframework.model.ui.binder;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.springframework.context.MessageSource;
import org.springframework.ui.binding.BindingStatus;
import org.springframework.ui.binding.FieldModel;
import org.springframework.ui.binding.FieldNotFoundException;
import org.springframework.ui.binding.PresentationModel;
import org.springframework.model.binder.Binder;
import org.springframework.model.binder.BindingResult;
import org.springframework.model.binder.BindingResults;
import org.springframework.model.binder.MissingFieldException;
import org.springframework.model.ui.BindingStatus;
import org.springframework.model.ui.FieldModel;
import org.springframework.model.ui.FieldNotFoundException;
import org.springframework.model.ui.PresentationModel;
import org.springframework.util.Assert;
/**
@@ -13,13 +13,13 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.binder;
package org.springframework.model.ui.binder;
import java.util.LinkedHashMap;
import java.util.Map;
import org.springframework.ui.binding.FieldModel;
import org.springframework.ui.binding.PresentationModel;
import org.springframework.model.ui.FieldModel;
import org.springframework.model.ui.PresentationModel;
/**
* A binder designed for use in HTTP (web) environments.
@@ -0,0 +1,5 @@
/**
* Binder implementation that binds to PresentationModels.
*/
package org.springframework.model.ui.binder;
@@ -13,9 +13,9 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.config;
package org.springframework.model.ui.config;
import org.springframework.ui.binding.FieldModel;
import org.springframework.model.ui.FieldModel;
/**
* A FieldModel condition.
@@ -13,10 +13,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.config;
package org.springframework.model.ui.config;
import org.springframework.ui.binding.FieldModel;
import org.springframework.ui.format.Formatter;
import org.springframework.model.ui.FieldModel;
import org.springframework.model.ui.format.Formatter;
/**
* A fluent interface for configuring a {@link FieldModel}.
@@ -0,0 +1,5 @@
/**
* PresentationModel configuration SPI.
*/
package org.springframework.model.ui.config;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.format;
package org.springframework.model.ui.format;
import java.lang.annotation.Annotation;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.format;
package org.springframework.model.ui.format;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.format;
package org.springframework.model.ui.format;
import java.text.ParseException;
import java.util.Locale;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.format.date;
package org.springframework.model.ui.format.date;
import java.text.DateFormat;
import java.text.ParseException;
@@ -23,7 +23,7 @@ import java.util.Locale;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.ui.format.Formatter;
import org.springframework.model.ui.format.Formatter;
/**
* A formatter for {@link Date} types.
@@ -0,0 +1,5 @@
/**
* Formatters for <code>java.util.Date</code> fields.
*/
package org.springframework.model.ui.format.date;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.format.number;
package org.springframework.model.ui.format.number;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.format.number;
package org.springframework.model.ui.format.number;
import java.math.BigDecimal;
import java.math.RoundingMode;
@@ -22,7 +22,7 @@ import java.text.ParseException;
import java.text.ParsePosition;
import java.util.Locale;
import org.springframework.ui.format.Formatter;
import org.springframework.model.ui.format.Formatter;
/**
* A BigDecimal formatter for currency values.
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.format.number;
package org.springframework.model.ui.format.number;
import java.math.RoundingMode;
import java.text.DecimalFormat;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.format.number;
package org.springframework.model.ui.format.number;
import java.math.BigDecimal;
import java.text.NumberFormat;
@@ -21,7 +21,7 @@ import java.text.ParseException;
import java.text.ParsePosition;
import java.util.Locale;
import org.springframework.ui.format.Formatter;
import org.springframework.model.ui.format.Formatter;
/**
* A BigDecimal formatter for decimal values.
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.format.number;
package org.springframework.model.ui.format.number;
import java.text.DecimalFormat;
import java.text.NumberFormat;
@@ -13,14 +13,14 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.format.number;
package org.springframework.model.ui.format.number;
import java.text.NumberFormat;
import java.text.ParseException;
import java.text.ParsePosition;
import java.util.Locale;
import org.springframework.ui.format.Formatter;
import org.springframework.model.ui.format.Formatter;
/**
* A Long formatter for whole integer values.
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.format.number;
package org.springframework.model.ui.format.number;
import java.text.NumberFormat;
import java.util.Locale;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.format.number;
package org.springframework.model.ui.format.number;
import java.text.NumberFormat;
import java.util.Locale;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.format.number;
package org.springframework.model.ui.format.number;
import java.math.BigDecimal;
import java.text.NumberFormat;
@@ -21,7 +21,7 @@ import java.text.ParseException;
import java.text.ParsePosition;
import java.util.Locale;
import org.springframework.ui.format.Formatter;
import org.springframework.model.ui.format.Formatter;
/**
* A BigDecimal formatter for percent values.
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.format.number;
package org.springframework.model.ui.format.number;
import java.text.DecimalFormat;
import java.text.NumberFormat;
@@ -0,0 +1,5 @@
/**
* Formatters for <code>java.lang.Number</code> properties.
*/
package org.springframework.model.ui.format.number;
@@ -0,0 +1,5 @@
/**
* A SPI for defining Formatters to format field model values for display in a UI.
*/
package org.springframework.model.ui.format;
@@ -0,0 +1,5 @@
/**
* Spring's PresentationModel public API.
*/
package org.springframework.model.ui;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.support;
package org.springframework.model.ui.support;
import org.springframework.util.Assert;
import org.springframework.util.ObjectUtils;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.support;
package org.springframework.model.ui.support;
import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
@@ -32,14 +32,14 @@ import org.springframework.core.convert.ConversionFailedException;
import org.springframework.core.convert.TypeConverter;
import org.springframework.core.convert.TypeDescriptor;
import org.springframework.core.style.StylerUtils;
import org.springframework.ui.alert.Alert;
import org.springframework.ui.alert.Severity;
import org.springframework.ui.binding.BindingStatus;
import org.springframework.ui.binding.FieldModel;
import org.springframework.ui.binding.ValidationStatus;
import org.springframework.ui.format.Formatter;
import org.springframework.ui.message.MessageBuilder;
import org.springframework.ui.message.ResolvableArgument;
import org.springframework.model.alert.Alert;
import org.springframework.model.alert.Severity;
import org.springframework.model.message.MessageBuilder;
import org.springframework.model.message.ResolvableArgument;
import org.springframework.model.ui.BindingStatus;
import org.springframework.model.ui.FieldModel;
import org.springframework.model.ui.ValidationStatus;
import org.springframework.model.ui.format.Formatter;
/**
* Default FieldModel implementation suitable for use in most environments.
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.support;
package org.springframework.model.ui.support;
import java.beans.BeanInfo;
import java.beans.IntrospectionException;
@@ -29,12 +29,12 @@ import org.springframework.context.MessageSource;
import org.springframework.core.GenericCollectionTypeResolver;
import org.springframework.core.convert.TypeConverter;
import org.springframework.core.convert.support.DefaultTypeConverter;
import org.springframework.ui.binding.FieldModel;
import org.springframework.ui.binding.FieldNotFoundException;
import org.springframework.ui.binding.PresentationModel;
import org.springframework.ui.binding.config.Condition;
import org.springframework.ui.binding.config.FieldModelConfiguration;
import org.springframework.ui.format.Formatter;
import org.springframework.model.ui.FieldModel;
import org.springframework.model.ui.FieldNotFoundException;
import org.springframework.model.ui.PresentationModel;
import org.springframework.model.ui.config.Condition;
import org.springframework.model.ui.config.FieldModelConfiguration;
import org.springframework.model.ui.format.Formatter;
import org.springframework.util.Assert;
/**
@@ -13,13 +13,13 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.support;
package org.springframework.model.ui.support;
import java.util.IdentityHashMap;
import java.util.Map;
import org.springframework.ui.binding.PresentationModel;
import org.springframework.ui.binding.PresentationModelFactory;
import org.springframework.model.ui.PresentationModel;
import org.springframework.model.ui.PresentationModelFactory;
/**
* Default PresentationModelFactory implementation that uses a {@link IdentityHashMap} to map domain models to PresentationModels.
@@ -13,13 +13,13 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.support;
package org.springframework.model.ui.support;
import org.springframework.context.MessageSource;
import org.springframework.core.convert.TypeConverter;
import org.springframework.ui.binding.FieldModel;
import org.springframework.ui.binding.config.Condition;
import org.springframework.ui.format.Formatter;
import org.springframework.model.ui.FieldModel;
import org.springframework.model.ui.config.Condition;
import org.springframework.model.ui.format.Formatter;
/**
* A context that allows a FieldModel to access its external configuration.
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.support;
package org.springframework.model.ui.support;
import java.util.ArrayList;
import java.util.Collections;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.support;
package org.springframework.model.ui.support;
class FieldPathElement {
@@ -13,12 +13,12 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.support;
package org.springframework.model.ui.support;
import java.beans.PropertyDescriptor;
import org.springframework.ui.format.AnnotationFormatterFactory;
import org.springframework.ui.format.Formatter;
import org.springframework.model.ui.format.AnnotationFormatterFactory;
import org.springframework.model.ui.format.Formatter;
/**
* A centralized registry of Formatters indexed by property types.
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.support;
package org.springframework.model.ui.support;
import java.beans.PropertyDescriptor;
import java.lang.annotation.Annotation;
@@ -37,9 +37,9 @@ import org.springframework.core.convert.TypeConverter;
import org.springframework.core.convert.TypeDescriptor;
import org.springframework.core.convert.support.ConversionUtils;
import org.springframework.core.convert.support.DefaultTypeConverter;
import org.springframework.ui.format.AnnotationFormatterFactory;
import org.springframework.ui.format.Formatted;
import org.springframework.ui.format.Formatter;
import org.springframework.model.ui.format.AnnotationFormatterFactory;
import org.springframework.model.ui.format.Formatted;
import org.springframework.model.ui.format.Formatter;
import org.springframework.util.Assert;
import org.springframework.util.StringUtils;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.support;
package org.springframework.model.ui.support;
import java.util.List;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.support;
package org.springframework.model.ui.support;
import java.util.Map;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.support;
package org.springframework.model.ui.support;
import java.beans.PropertyDescriptor;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.support;
package org.springframework.model.ui.support;
class ValueBuffer {
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.binding.support;
package org.springframework.model.ui.support;
import org.springframework.core.convert.TypeDescriptor;
@@ -0,0 +1,5 @@
/**
* Default implementation of a PresentationModel usable in most environments.
*/
package org.springframework.model.ui.support;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.validation;
package org.springframework.model.validation;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
@@ -21,7 +21,7 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import org.springframework.ui.alert.Severity;
import org.springframework.model.alert.Severity;
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.validation;
package org.springframework.model.validation;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.ui.validation;
package org.springframework.model.validation;
public interface ValidationConstraint<T> {
boolean validate(T value);
@@ -0,0 +1,5 @@
/**
* Model ValidationConstraint SPI.
*/
package org.springframework.model.validation;
@@ -1,7 +0,0 @@
<html>
<body>
<p>
An API for alerts to display in a user interface.
</p>
</body>
</html>
@@ -1,7 +0,0 @@
<html>
<body>
<p>
Support implementation of the Alert API.
</p>
</body>
</html>
@@ -1,7 +0,0 @@
<html>
<body>
<p>
A system for binding submitted values to a PresentationModel in a single batch operation.
</p>
</body>
</html>
@@ -1,7 +0,0 @@
<html>
<body>
<p>
PresentationModel configuration SPI.
</p>
</body>
</html>
@@ -1,7 +0,0 @@
<html>
<body>
<p>
Spring's PresentationModel public API.
</p>
</body>
</html>
@@ -1,7 +0,0 @@
<html>
<body>
<p>
Default implementation of a PresentationModel usable in most environments.
</p>
</body>
</html>
@@ -1,7 +0,0 @@
<html>
<body>
<p>
Formatters for <code>java.util.Date</code>c properties.
</p>
</body>
</html>
@@ -1,7 +0,0 @@
<html>
<body>
<p>
Formatters for <code>java.lang.Number</code> properties.
</p>
</body>
</html>
@@ -1,7 +0,0 @@
<html>
<body>
<p>
A SPI for defining Formatters to format property values for display in a user interface.
</p>
</body>
</html>
@@ -1,7 +0,0 @@
<html>
<body>
<p>
An API for creating localized messages to display in a user interface.
</p>
</body>
</html>