public abstract class AbstractMethodHandler
extends java.lang.Object
HTTP 请求处理抽象类。
默认的和扩展的 HTTP 请求处理类都要继承本类。例如,自定义 HTTP 请求处理器的过程如下:
一个简单的扩展 HTTP 请求处理类的实现如下,该处理器仅处理 GET 请求,并只生成 XML 格式的表述:
public class MyMethodHandler extends AbstractMethodHandler {
public void handleGet(ResourceBase targetResource, Request request, Response response) {
// TODO Auto-generated method stub
Encoder encoder = null;
if (targetResource.isResourceExist()) {
//强制使用 XML 表述生成器。
encoder = new XMLEncoder();
Object content = targetResource.getResourceContent();
if (content != null) {
// 不管请求如何,都返回XML格式的资源的表示。
Representation entity = encoder.toRepresentation(MediaType.TEXT_XML, content);
response.setEntity(entity);
response.setStatus(Status.SUCCESS_OK);
} else {
// 资源没有表示。
response.setStatus(Status.SUCCESS_NO_CONTENT);
}
} else {
// 处理资源不存在异常。
response.setStatus(Status.CLIENT_ERROR_NOT_FOUND);
}
}
public void handleHead(ResourceBase arg0, Request arg1, Response arg2) {
// TODO Auto-generated method stub
}
public void handleOptions(ResourceBase arg0, Request arg1, Response arg2) {
// TODO Auto-generated method stub
}
public void handlePost(ResourceBase arg0, Request arg1, Response arg2) {
// TODO Auto-generated method stub
}
public void handlePut(ResourceBase arg0, Request arg1, Response arg2) {
// TODO Auto-generated method stub
}
public void handleDelete(ResourceBase arg0, Request arg1, Response arg2) {
}
}
| 构造器和说明 |
|---|
AbstractMethodHandler() |
| 限定符和类型 | 方法和说明 |
|---|---|
abstract void |
handleDelete(ResourceBase targetResource, Request request, Response response)
DELETE 请求处理抽象方法。
|
abstract void |
handleGet(ResourceBase targetResource, Request request, Response response)
GET 请求处理抽象方法。
|
abstract void |
handleHead(ResourceBase targetResource, Request request, Response response)
HEAD 请求处理抽象方法。
|
abstract void |
handleOptions(ResourceBase targetResource, Request request, Response response)
OPTIONS 请求处理抽象方法。
|
abstract void |
handlePost(ResourceBase targetResource, Request request, Response response)
POST 请求处理抽象方法。
|
abstract void |
handlePut(ResourceBase targetResource, Request request, Response response)
PUT 请求处理抽象方法。
|
public abstract void handleGet(ResourceBase targetResource,
Request request,
Response response)
GET 请求处理抽象方法。
提供对 GET 请求的处理功能。
targetResource - 目标资源,即 GET 请求的目标。request - 请求对象内容。response - 响应对象内容。
public abstract void handlePut(ResourceBase targetResource,
Request request,
Response response)
PUT 请求处理抽象方法。
提供对 PUT 请求的处理功能。
targetResource - 目标资源,即 PUT 请求的目标。request - 请求对象内容。response - 响应对象内容。
public abstract void handlePost(ResourceBase targetResource,
Request request,
Response response)
POST 请求处理抽象方法。
提供对 POST 请求的处理功能。
targetResource - 目标资源,即 POST 请求的目标。request - 请求对象内容。response - 响应对象内容。
public abstract void handleDelete(ResourceBase targetResource,
Request request,
Response response)
DELETE 请求处理抽象方法。
提供对 DELETE 请求的处理功能。
targetResource - 目标资源,即 DELETE 请求的目标。request - 请求对象内容。response - 响应对象内容。
public abstract void handleHead(ResourceBase targetResource,
Request request,
Response response)
HEAD 请求处理抽象方法。
提供对 HEAD 请求的处理功能。
targetResource - 目标资源,即 HEAD 请求的目标。request - 请求对象内容。response - 响应对象内容。
public abstract void handleOptions(ResourceBase targetResource,
Request request,
Response response)
OPTIONS 请求处理抽象方法。
提供对 OPTIONS 请求的处理功能。
targetResource - 目标资源,即 OPTIONS 请求的目标。request - 请求对象内容。response - 响应对象内容。