sunlabs.brazil.handler
Class SupplyHandler
java.lang.Object
sunlabs.brazil.handler.SupplyHandler (view source)
- All Implemented Interfaces:
- Handler
public class SupplyHandler
- extends Object
- implements Handler
Sample Handler for dispatching different users to different url's
based on a special http authentication header.
This is a re-implementation of the supplier.net content server
using the new server apis (e.g. its not used for anything anymore).
This handler was originally designed to be a "virtual web site", where
credentials are passed in from an upstream proxy. Those credentials are
used to provide different views based on the particular credentials supplied.
The following configuration properties are used:
- mapFile
- properties file
- prefix
- url prefix
- default
- default map
- header
- http header (authentication)
- realm
- The authentication realm (basic)
SupplyHandler
public SupplyHandler()
init
public boolean init(Server server,
String prefix)
- Description copied from interface:
Handler
- Initializes the handler.
- Specified by:
init
in interface Handler
- Parameters:
server
- The HTTP server that created this Handler
.
Typical Handler
s will use Server.props
to obtain run-time configuration information.prefix
- The handlers name.
The string this Handler
may prepend to all
of the keys that it uses to extract configuration information
from Server.props
. This is set (by the Server
and ChainHandler
) to help avoid configuration parameter
namespace collisions.
- Returns:
true
if this Handler
initialized
successfully, false
otherwise. If
false
is returned, this Handler
should not be used.
respond
public boolean respond(Request request)
- Dispatch and handle the request.
This version looks at the supplier id, rewrites the url based on
that supplier, then lets the default handler do it.
- Specified by:
respond
in interface Handler
- Parameters:
request
- The Request
object that represents the HTTP
request.
- Returns:
true
if the request was handled. A request was
handled if a response was supplied to the client, typically
by calling Request.sendResponse()
or
Request.sendError
.