You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@abdera.apache.org by jm...@apache.org on 2006/08/30 23:48:24 UTC
svn commit: r438654 [2/2] - in /incubator/abdera/java/trunk: client/
client/src/main/java/org/apache/abdera/protocol/cache/
client/src/main/java/org/apache/abdera/protocol/client/
client/src/main/java/org/apache/abdera/protocol/util/ client/src/test/ja...
Modified: incubator/abdera/java/trunk/server/src/main/java/org/apache/abdera/protocol/server/servlet/ServletRequestContext.java
URL: http://svn.apache.org/viewvc/incubator/abdera/java/trunk/server/src/main/java/org/apache/abdera/protocol/server/servlet/ServletRequestContext.java?rev=438654&r1=438653&r2=438654&view=diff
==============================================================================
--- incubator/abdera/java/trunk/server/src/main/java/org/apache/abdera/protocol/server/servlet/ServletRequestContext.java (original)
+++ incubator/abdera/java/trunk/server/src/main/java/org/apache/abdera/protocol/server/servlet/ServletRequestContext.java Wed Aug 30 14:48:22 2006
@@ -33,20 +33,16 @@
import org.apache.abdera.protocol.server.ServerConstants;
import org.apache.abdera.protocol.server.target.Target;
import org.apache.abdera.protocol.server.target.TargetResolver;
-import org.apache.abdera.protocol.util.CacheControlParser;
+import org.apache.abdera.protocol.util.AbstractRequest;
+import org.apache.abdera.protocol.util.CacheControlUtil;
public class ServletRequestContext
+ extends AbstractRequest
implements RequestContext, ServerConstants {
private Target target = null;
private Abdera abdera = null;
private HttpServletRequest servletRequest = null;
- private long maxage = -1;
- private long maxstale = -1;
- private long minfresh = -1;
- private boolean nocache = false;
- private boolean nostore = false;
- private boolean notransform = false;
private String method = null;
public ServletRequestContext(
@@ -55,7 +51,7 @@
HttpServletRequest request) {
this.abdera = abdera;
this.servletRequest = request;
- get_ccp();
+ CacheControlUtil.parseCacheControl(getCacheControl(), this);
target = resolver.resolve(getUri().toString());
}
@@ -133,8 +129,9 @@
}
@SuppressWarnings("unchecked")
- public List<String> getHeaderNames() {
- return Collections.list(servletRequest.getHeaderNames());
+ public String[] getHeaderNames() {
+ List<String> list = Collections.list(servletRequest.getHeaderNames());
+ return list.toArray(new String[list.size()]);
}
public URI getPathInfo() {
@@ -166,99 +163,8 @@
return servletRequest.getInputStream();
}
- public String getAccept() {
- return servletRequest.getHeader("Accept");
- }
-
- public String getAcceptCharset() {
- return servletRequest.getHeader("Accept-Charset");
- }
-
- public String getAcceptEncoding() {
- return servletRequest.getHeader("Accept-Encoding");
- }
-
- public String getAcceptLanguage() {
- return servletRequest.getHeader("Accept-Language");
- }
-
- public String getAuthorization() {
- return servletRequest.getHeader("Authorization");
- }
-
- public String getCacheControl() {
- return servletRequest.getHeader("Cache-Control");
- }
-
- public String getContentType() {
- return servletRequest.getHeader("Content-Type");
- }
-
public Date getDateHeader(String name) {
return new Date(servletRequest.getDateHeader(name));
}
-
- public String getIfMatch() {
- return servletRequest.getHeader("If-Match");
- }
-
- public Date getIfModifiedSince() {
- return getDateHeader("If-Modified-Since");
- }
-
- public String getIfNoneMatch() {
- return servletRequest.getHeader("If-None-Match");
- }
-
- public Date getIfUnmodifiedSince() {
- return getDateHeader("If-Unmodified-Since");
- }
-
- private void get_ccp() {
- String cc = getCacheControl();
- if (cc != null) {
- CacheControlParser ccparser = new CacheControlParser(cc);
- for (String directive : ccparser) {
- directive = directive.toLowerCase();
- if (directive.equals("max-age")) {
- maxage = Long.parseLong(ccparser.getValue(directive));
- } else if (directive.equals("max-stale")) {
- maxstale = Long.parseLong(ccparser.getValue(directive));
- } else if (directive.equals("min-fresh")) {
- minfresh = Long.parseLong(ccparser.getValue(directive));
- } else if (directive.equals("no-cache")) {
- nocache = true;
- } else if (directive.equals("no-store")) {
- nostore = true;
- } else if (directive.equals("no-transform")) {
- notransform = true;
- }
- }
- }
- }
- public long getMaxAge() {
- return maxage;
- }
-
- public long getMaxStale() {
- return maxstale;
- }
-
- public long getMinFresh() {
- return minfresh;
- }
-
- public boolean getNoCache() {
- return nocache;
- }
-
- public boolean getNoStore() {
- return nostore;
- }
-
- public boolean getNoTransform() {
- return notransform;
- }
-
}