
artoria.servlet.RequestBean Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of artoria-extend Show documentation
Show all versions of artoria-extend Show documentation
Artoria is a java technology framework based on the facade pattern.
The newest version!
package artoria.servlet;
import artoria.time.DateUtils;
import artoria.util.MapUtils;
import artoria.util.StringUtils;
import java.util.Date;
import java.util.List;
import java.util.Map;
import static artoria.common.constant.Numbers.ONE;
import static artoria.common.constant.Numbers.ZERO;
import static artoria.common.constant.Symbols.*;
/**
* Request bean.
* @author Kahle
*/
public class RequestBean {
private Date receiveTime;
private String requestURL;
private String method;
private String contentType;
private String remoteAddress;
private String remotePort;
private String characterEncoding;
private Map cookies;
private Map> headers;
private Map> parameters;
public Date getReceiveTime() {
return receiveTime;
}
public void setReceiveTime(Date receiveTime) {
this.receiveTime = receiveTime;
}
public String getRequestURL() {
return requestURL;
}
public void setRequestURL(String requestURL) {
this.requestURL = requestURL;
}
public String getMethod() {
return method;
}
public void setMethod(String method) {
this.method = method;
}
public String getContentType() {
return contentType;
}
public void setContentType(String contentType) {
this.contentType = contentType;
}
public String getRemoteAddress() {
return remoteAddress;
}
public void setRemoteAddress(String remoteAddress) {
this.remoteAddress = remoteAddress;
}
public String getRemotePort() {
return remotePort;
}
public void setRemotePort(String remotePort) {
this.remotePort = remotePort;
}
public String getCharacterEncoding() {
return characterEncoding;
}
public void setCharacterEncoding(String characterEncoding) {
this.characterEncoding = characterEncoding;
}
public Map getCookies() {
return cookies;
}
public void setCookies(Map cookies) {
this.cookies = cookies;
}
public Map> getHeaders() {
return headers;
}
public void setHeaders(Map> headers) {
this.headers = headers;
}
public Map> getParameters() {
return parameters;
}
public void setParameters(Map> parameters) {
this.parameters = parameters;
}
@Override
public String toString() {
StringBuilder builder = new StringBuilder();
builder.append("---- General ----").append(NEWLINE);
builder.append("Request URL: ");
builder.append(requestURL).append(NEWLINE);
builder.append("Request Method: ");
builder.append(method).append(NEWLINE);
builder.append("Remote Address: ");
builder.append(remoteAddress).append(COLON);
builder.append(remotePort).append(NEWLINE);
if (StringUtils.isNotBlank(characterEncoding)) {
builder.append("Character Encoding: ");
builder.append(characterEncoding).append(NEWLINE);
}
builder.append("---- Headers ----").append(NEWLINE);
for (Map.Entry> entry : headers.entrySet()) {
List valList = entry.getValue();
String key = entry.getKey();
if (StringUtils.isBlank(key)) { continue; }
StringBuilder keyBuilder = new StringBuilder();
if (key.contains(MINUS)) {
String[] split = key.split(MINUS);
for (String word : split) {
keyBuilder.append(StringUtils.capitalize(word));
keyBuilder.append(MINUS);
}
int length = keyBuilder.length();
if (length > ZERO) { keyBuilder.deleteCharAt(length - ONE); }
}
else { keyBuilder.append(StringUtils.capitalize(key)); }
StringBuilder valBuilder = new StringBuilder();
for (String val : valList) { valBuilder.append(val).append(COMMA); }
int length = valBuilder.length();
if (length > ZERO) { valBuilder.deleteCharAt(length - ONE); }
builder.append(keyBuilder).append(": ");
builder.append(valBuilder).append(NEWLINE);
}
if (MapUtils.isNotEmpty(parameters)) {
builder.append("---- Parameters ----").append(NEWLINE);
for (Map.Entry> entry : parameters.entrySet()) {
List valList = entry.getValue();
String key = entry.getKey();
for (String val : valList) {
builder.append(key).append(": ");
builder.append(val).append(NEWLINE);
}
}
}
builder.append("---- ").append(DateUtils.format(receiveTime));
builder.append(" ----").append(NEWLINE);
return builder.toString();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy