package com.hundsun.jresplus.web.cache;
import java.io.Serializable;
import javax.servlet.http.Cookie;
public class PageCookie implements Serializable {
private static final long serialVersionUID = 8628587700329421486L;
private String name;
private String value;
private String comment;
private String domain;
private int maxAge;
private String path;
private boolean secure;
private int version;
private boolean httpOnly = false;
private boolean isNosession = false;
public PageCookie(Cookie cookie) {
this.name = cookie.getName();
this.value = cookie.getValue();
this.comment = cookie.getComment();
this.domain = cookie.getDomain();
this.maxAge = cookie.getMaxAge();
this.path = cookie.getPath();
this.secure = cookie.getSecure();
this.version = cookie.getVersion();
if (cookie instanceof com.hundsun.jresplus.web.nosession.cookie.Cookie) {
com.hundsun.jresplus.web.nosession.cookie.Cookie nosessionCookie = (com.hundsun.jresplus.web.nosession.cookie.Cookie) cookie;
httpOnly = nosessionCookie.isHttpOnly();
isNosession = true;
}
}
public Cookie toCookie() {
Cookie cookie;
if (isNosession) {
com.hundsun.jresplus.web.nosession.cookie.Cookie nosessionCookie = new com.hundsun.jresplus.web.nosession.cookie.Cookie(
this.name, this.value);
nosessionCookie.setHttpOnly(httpOnly);
cookie = nosessionCookie;
} else {
cookie = new Cookie(this.name, this.value);
}
cookie.setComment(this.comment);
if (this.domain != null) {
cookie.setDomain(this.domain);
}
cookie.setMaxAge(this.maxAge);
cookie.setPath(this.path);
cookie.setSecure(this.secure);
cookie.setVersion(this.version);
return cookie;
}
}