You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@click.apache.org by sa...@apache.org on 2010/06/21 10:52:10 UTC
svn commit: r956498 -
/click/trunk/click/framework/src/org/apache/click/Partial.java
Author: sabob
Date: Mon Jun 21 08:52:10 2010
New Revision: 956498
URL: http://svn.apache.org/viewvc?rev=956498&view=rev
Log:
Removed headers from Partial. CLK-697
Modified:
click/trunk/click/framework/src/org/apache/click/Partial.java
Modified: click/trunk/click/framework/src/org/apache/click/Partial.java
URL: http://svn.apache.org/viewvc/click/trunk/click/framework/src/org/apache/click/Partial.java?rev=956498&r1=956497&r2=956498&view=diff
==============================================================================
--- click/trunk/click/framework/src/org/apache/click/Partial.java (original)
+++ click/trunk/click/framework/src/org/apache/click/Partial.java Mon Jun 21 08:52:10 2010
@@ -75,10 +75,10 @@ public class Partial {
public static final String XML = "text/xml";
/** The Partial writer buffer size. */
- private static final int WRITER_BUFFER_SIZE = 256;
+ private static final int WRITER_BUFFER_SIZE = 256; // For text assume a small response
/** The Partial output buffer size. */
- private static final int OUTPUT_BUFFER_SIZE = 4 * 1024;
+ private static final int OUTPUT_BUFFER_SIZE = 4 * 1024; // For binary assume a large response
// -------------------------------------------------------- Variables
@@ -97,9 +97,6 @@ public class Partial {
/** The resposne character encoding. */
private String characterEncoding;
- /** The response headers. */
- private Map headers;
-
/** Indicates whether the Partial should be cached by browser. */
private boolean cachePartial = false;
@@ -268,65 +265,6 @@ public class Partial {
}
/**
- * Returns a boolean indicating whether the named response header has
- * already been set.
- *
- * @param name the header name
- * @return true if the named response header has already been set, false
- * otherwise
- */
- public boolean containsHeader(String name) {
- return getHeaders().containsKey(name);
- }
-
- /**
- * Return the map of response header values.
- *
- * @return the map of response header values
- */
- public Map getHeaders() {
- if (headers == null) {
- return new HashMap();
- }
- return headers;
- }
-
- /**
- * Sets a response header with the given name and value. If the header had
- * already been set, the new value overwrites the previous one.
- *
- * @param name the name of the header
- * @param value the header value
- */
- public void setHeader(String name, String value) {
- getHeaders().put(name, value);
- }
-
- /**
- * Adds a response header with the given name and value. This method allows
- * response headers to have multiple values.
- *
- * @param name the name of the header
- * @param value the header value
- */
- public void addHeader(String name, String value) {
- Map<String, Object> headersMap = getHeaders();
- Object currValue = headersMap.get(name);
- if (currValue == null) {
- headersMap.put(name, value);
-
- } else if (currValue instanceof List) {
- ((List) currValue).add(value);
-
- } else {
- List list = new ArrayList();
- list.add(currValue);
- list.add(value);
- headersMap.put(name, list);
- }
- }
-
- /**
* Set the content to stream back to the client.
*
* @param content the content to stream back to the client
@@ -487,59 +425,16 @@ public class Partial {
// -------------------------------------------------------- Private Methods
- private void applyHeaders(HttpServletResponse response) {
+ private void prepare(Context context) {
+ HttpServletResponse response = context.getResponse();
if (!cachePartial) {
+ // Set headers to disable cache
response.setHeader("Pragma", "no-cache");
response.setHeader("Cache-Control", "no-store, no-cache, must-revalidate, post-check=0, pre-check=0");
response.setDateHeader("Expires", new Date(1L).getTime());
}
- if (headers != null) {
- setResponseHeaders(response, getHeaders());
- }
- }
-
- private void setResponseHeaders(HttpServletResponse response, Map<String, Object> headers) {
-
- for (Map.Entry<String, Object> entry : headers.entrySet()) {
- String name = entry.getKey();
- Object value = entry.getValue();
-
- if (value instanceof List) {
- for (Object obj : (List) value) {
- setResponseHeader(response, name, obj);
- }
-
- } else {
- setResponseHeader(response, name, value);
- }
- }
- }
-
- private void setResponseHeader(HttpServletResponse response, String name,
- Object value) {
-
- if (value instanceof String) {
- String strValue = (String) value;
- if (!strValue.equalsIgnoreCase("Content-Encoding")) {
- response.setHeader(name, strValue);
- }
-
- } else if (value instanceof Date) {
- long time = ((Date) value).getTime();
- response.setDateHeader(name, time);
-
- } else {
- int intValue = ((Integer) value).intValue();
- response.setIntHeader(name, intValue);
- }
- }
-
- private void prepare(Context context) {
- HttpServletResponse response = context.getResponse();
- applyHeaders(response);
-
if (getCharacterEncoding() == null) {
// Fallback to request character encoding
@@ -554,4 +449,4 @@ public class Partial {
response.setContentType(getContentType() + "; charset=" + getCharacterEncoding());
}
}
-}
+}