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
- 响应对象内容。