package org.theonefx.wcframework.mvc.wcweb;
import javax.servlet.http.HttpServletRequest;
import org.theonefx.wcframework.utils.StringUtils;
/**
* @File : RequestPath.java
* @ClassName : RequestPath
* @Author : 陈曦
* @Date : 2012-4-1 下午02:35:13
* @Version : v1.0
* @Description : 请求路径包装器
*/
public class RequestPather {
private String url;
private String path;
private String suffix;
public RequestPather(String req) {
String url = req;
setUrl(url);
if (null != url) {
int lio = 0;
if (!url.endsWith("/")) {
int ll = url.lastIndexOf('/');
lio = url.lastIndexOf('.');
if (lio < ll)
lio = -1;
}
if (lio > 0) {
setPath(url.substring(0, lio));
setSuffix(url.substring(lio + 1));
} else {
setPath(url);
setSuffix("");
}
} else {
setPath("");
setSuffix("");
}
}
public RequestPather(HttpServletRequest req) {
String url = req.getPathInfo();
if (null == url)
url = req.getServletPath();
setUrl(url);
if (null != url) {
int lio = 0;
if (!url.endsWith("/")) {
int ll = url.lastIndexOf('/');
lio = url.lastIndexOf('.');
if (lio < ll)
lio = -1;
}
if (lio > 0) {
setPath(url.substring(0, lio));
setSuffix(url.substring(lio + 1));
} else {
setPath(url);
setSuffix("");
}
} else {
setPath("");
setSuffix("");
}
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getPath() {
return path;
}
public void setPath(String path) {
this.path = path;
}
public String getSuffix() {
return suffix;
}
public void setSuffix(String suffix) {
this.suffix = suffix;
}
@Override
public String toString() {
return StringUtils.isBlank(suffix) ? path : path + "." + suffix;
}
}