Revision: 10514
Author: [email protected]
Date: Tue Aug 9 06:06:40 2011
Log: Add constructor to GwtMessageInterpolator that accepts a
UserValidationMessagesResolver so applications can use more that one
MessageInterploator.
Review at http://gwt-code-reviews.appspot.com/1515803
Review by: [email protected]
http://code.google.com/p/google-web-toolkit/source/detail?r=10514
Modified:
/trunk/user/src/com/google/gwt/validation/client/BaseMessageInterpolator.java
/trunk/user/src/com/google/gwt/validation/client/GwtMessageInterpolator.java
/trunk/user/src/com/google/gwt/validation/super/com/google/gwt/validation/client/GwtMessageInterpolator.java
=======================================
---
/trunk/user/src/com/google/gwt/validation/client/BaseMessageInterpolator.java
Fri May 6 07:35:25 2011
+++
/trunk/user/src/com/google/gwt/validation/client/BaseMessageInterpolator.java
Tue Aug 9 06:06:40 2011
@@ -36,7 +36,7 @@
/**
* Implementation of {@link Context}.
*/
- public static class ContextImpl implements Context {
+ public static final class ContextImpl implements Context {
private final ConstraintDescriptor<?> constraintDescriptor;
private final Object value;
@@ -55,7 +55,7 @@
}
}
- // local version because guava is included.
+ // local version because guava is not included.
private static interface Function<F, T> {
T apply(F from);
}
@@ -98,15 +98,18 @@
/**
* Replaces keys using the Validation User custom properties.
*/
- private final Function<String, String> userReplacer =
- createReplacer((ValidationMessageResolver)
- GWT.create(UserValidationMessagesResolver.class));
-
- public String interpolate(String messageTemplate, Context context) {
+ private final Function<String, String> userReplacer;
+
+ protected BaseMessageInterpolator(
+ UserValidationMessagesResolver userValidationMessagesResolver) {
+ userReplacer = createReplacer(userValidationMessagesResolver);
+ }
+
+ public final String interpolate(String messageTemplate, Context context)
{
return gwtInterpolate(messageTemplate, context, null);
}
- protected String gwtInterpolate(String message, Context context,
+ protected final String gwtInterpolate(String message, Context context,
GwtLocale locale) {
// see Section 4.3.1.1
String resolvedMessage = message;
@@ -140,7 +143,7 @@
return resolvedMessage;
}
- protected String replaceParameters(String message,
+ protected final String replaceParameters(String message,
Function<String, String> replacer) {
StringBuffer sb = new StringBuffer();
int index = 0;
@@ -159,7 +162,7 @@
return sb.toString();
}
- private String removeCurlyBrace(String parameter) {
+ private final String removeCurlyBrace(String parameter) {
return parameter.substring(1, parameter.length() - 1);
}
}
=======================================
---
/trunk/user/src/com/google/gwt/validation/client/GwtMessageInterpolator.java
Fri May 6 07:35:25 2011
+++
/trunk/user/src/com/google/gwt/validation/client/GwtMessageInterpolator.java
Tue Aug 9 06:06:40 2011
@@ -15,6 +15,8 @@
*/
package com.google.gwt.validation.client;
+import com.google.gwt.core.client.GWT;
+
import java.util.Locale;
/**
@@ -26,8 +28,31 @@
public class GwtMessageInterpolator extends BaseMessageInterpolator {
// This class only has the parts the need to overridden for GWT
- public String interpolate(String messageTemplate, Context context,
+ /**
+ * Creates a {@link javax.validation.MessageInterpolator
MessageInterpolator}
+ * MessageInterpolator that uses the default
+ * {@link UserValidationMessagesResolver}.
+ */
+ public GwtMessageInterpolator() {
+ this((UserValidationMessagesResolver) GWT
+ .create(UserValidationMessagesResolver.class));
+ }
+
+ /**
+ * Creates a {@link javax.validation.MessageInterpolator
MessageInterpolator}
+ * using the supplie{@link UserValidationMessagesResolver}.
+ *
+ * @param userValidationMessagesResolver
+ */
+ public GwtMessageInterpolator(
+ UserValidationMessagesResolver userValidationMessagesResolver) {
+ super(userValidationMessagesResolver);
+ }
+
+ public final String interpolate(String messageTemplate, Context context,
Locale locale) {
+ // The super sourced GWT version of this calls
+ // gwtInterpolate
return messageTemplate;
}
}
=======================================
---
/trunk/user/src/com/google/gwt/validation/super/com/google/gwt/validation/client/GwtMessageInterpolator.java
Mon Dec 20 11:43:41 2010
+++
/trunk/user/src/com/google/gwt/validation/super/com/google/gwt/validation/client/GwtMessageInterpolator.java
Tue Aug 9 06:06:40 2011
@@ -15,17 +15,42 @@
*/
package com.google.gwt.validation.client;
+import com.google.gwt.core.client.GWT;
import com.google.gwt.i18n.shared.GwtLocale;
import javax.validation.MessageInterpolator.Context;
/**
+ * <strong>EXPERIMENTAL</strong> and subject to change. Do not use this in
+ * production code.
+ * <p>
* Simple GWT {@link javax.validation.MessageInterpolator}.
*/
public class GwtMessageInterpolator extends BaseMessageInterpolator {
// This class only has the parts the need to overridden for GWT
- public String interpolate(String messageTemplate, Context context,
+ /**
+ * Creates a {@link javax.validation.MessageInterpolator
MessageInterpolator}
+ * MessageInterpolator that uses the default
+ * {@link UserValidationMessagesResolver}.
+ */
+ public GwtMessageInterpolator() {
+ this((UserValidationMessagesResolver) GWT
+ .create(UserValidationMessagesResolver.class));
+ }
+
+ /**
+ * Creates a {@link javax.validation.MessageInterpolator
MessageInterpolator}
+ * using the supplie{@link UserValidationMessagesResolver}.
+ *
+ * @param userValidationMessagesResolver
+ */
+ public GwtMessageInterpolator(
+ UserValidationMessagesResolver userValidationMessagesResolver) {
+ super(userValidationMessagesResolver);
+ }
+
+ public final String interpolate(String messageTemplate, Context context,
GwtLocale locale) {
return gwtInterpolate(messageTemplate,context,locale);
}
--
http://groups.google.com/group/Google-Web-Toolkit-Contributors