Interface ResourceEngine
public interface ResourceEngine
The
ResourceEngine
is used to create implementations
of the Resource
interface that suit the targeted
resource. Different Resource
objects may be needed to
handle different files/directories or even applications. The request
URI specified must be a HTTP request URI as of RFC 2616.
The meaning of HTTP URI in this instance is the request URI from a HTTP/x.x request, as RFC 2616 and RFC 2396 defines it
Request-Line = Method SP Request-URI SP HTTP-Version CRLF Request-URI = "*" | absoluteURI | abs_path | authority absoluteURI = "http:" "//" host [":" port] [abs_path ["?" query]] abs_path = "/" path_segments path_segments = segment *( "/" segment )The
ResourceEngine
object must be prepared to accept
the request URI that come in the form outlined above. These can
include formats like
http://some.host/pub;param=value/bin/index.html?name=value http://some.host:8080/index.en_US.html some.host:8080/index.html /usr/bin;param=value/README.txt /usr/bin/compress.tar.gzThe
ResourceEngine
implementation should be able to
directly take a Request-URI as defined in RFC 2616 and translate
this into a Resource
. This keeps the objects semantics
simple and explicit, although at the expense of performance.- Author:
- Niall Gallagher
-
Method Summary
-
Method Details
-
resolve
This will look for and retrieve the requested resource. The target given must be in the form of a request URI. This will locate the resource and return theResource
implementation that will handle the target.- Parameters:
target
- the address used to identify the resource- Returns:
- this returns the resource used to handle the request
-