You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by iv...@apache.org on 2008/08/28 18:31:41 UTC
svn commit: r689871 -
/wicket/trunk/wicket/src/main/java/org/apache/wicket/request/target/basic/StringRequestTarget.java
Author: ivaynberg
Date: Thu Aug 28 09:31:40 2008
New Revision: 689871
URL: http://svn.apache.org/viewvc?rev=689871&view=rev
Log:
WICKET-1805
Modified:
wicket/trunk/wicket/src/main/java/org/apache/wicket/request/target/basic/StringRequestTarget.java
Modified: wicket/trunk/wicket/src/main/java/org/apache/wicket/request/target/basic/StringRequestTarget.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/request/target/basic/StringRequestTarget.java?rev=689871&r1=689870&r2=689871&view=diff
==============================================================================
--- wicket/trunk/wicket/src/main/java/org/apache/wicket/request/target/basic/StringRequestTarget.java (original)
+++ wicket/trunk/wicket/src/main/java/org/apache/wicket/request/target/basic/StringRequestTarget.java Thu Aug 28 09:31:40 2008
@@ -17,6 +17,7 @@
package org.apache.wicket.request.target.basic;
import java.io.OutputStream;
+import java.nio.charset.Charset;
import org.apache.wicket.IRequestTarget;
import org.apache.wicket.RequestCycle;
@@ -40,27 +41,35 @@
/** content type for the string */
private final String contentType;
+ /** charset of the string */
+ private final Charset charset;
+
+
/**
- * Constructor
+ * Creates a string request target with content type <code>text/plain</code> and default charset
+ * (usually UTF-8)
*
* @param string
* the string for the response
*/
public StringRequestTarget(String string)
{
- this("text/plain", string);
+ this("text/plain", Charset.defaultCharset(), string);
}
+
/**
* Constructor
*
* @param contentType
* content type of the data the string represents eg
* <code>text/html; charset=utf-8</code>
+ * @param charset
+ * charset to use
* @param string
* string for the response
*/
- public StringRequestTarget(String contentType, String string)
+ public StringRequestTarget(String contentType, Charset charset, String string)
{
if (string == null)
{
@@ -70,8 +79,13 @@
{
throw new IllegalArgumentException("Argument contentType must not be null or empty");
}
+ if (charset == null)
+ {
+ throw new IllegalArgumentException("Argument charset must not be null");
+ }
this.contentType = contentType;
this.string = string;
+ this.charset = charset;
}
@@ -86,6 +100,7 @@
final Response response = requestCycle.getResponse();
response.setContentType(contentType);
final StringBufferResourceStream stream = new StringBufferResourceStream(contentType);
+ stream.setCharset(charset);
stream.append(string);
// Respond with resource
@@ -128,6 +143,7 @@
/**
* @see java.lang.Object#equals(java.lang.Object)
*/
+ @Override
public boolean equals(Object obj)
{
if (obj instanceof StringRequestTarget)
@@ -141,6 +157,7 @@
/**
* @see java.lang.Object#hashCode()
*/
+ @Override
public int hashCode()
{
int result = "StringRequestTarget".hashCode();
@@ -151,6 +168,7 @@
/**
* @see java.lang.Object#toString()
*/
+ @Override
public String toString()
{
return "[StringRequestTarget@" + hashCode() + " " + string + "]";