# Jigsaw
Sample code

Jigsaw Home / Documentation Overview
This documents has the following sections:

- Standard frames
- Filter frames
- Standard resources

# Standard frames

- ResourceFrame
  The generic frame class.
- ProtocolFrame
  The generic protocol frame.
- HTTPFrame
  The basic frame for all HTTP accessible resources.
- CgiFrame
  A frame that allows you to run CGI/1.1 compliant scripts. This is, of course, not the best, nor the recommended way of extending Jigsaw.
- NegotiatedFrame
  A frame that handles negotiation among a given set of variant resources.
- PostableFrame
  The basic frame class for handling the HTTP POST method.
- RedirecterFrame
  A frame that handle internal redirection.
- RelocateFrame
  A frame that handle HTTP redirection.
- VirtualHostFrame
  A top level frame that will handle virtual hosts as described in HTTP/1.1 specification.

# Filter frames

- ResourceFilter
  The top filter class.
- GenericAuthFilter
  This filter provides several ways of protecting part of your information space, using BasicAuthentication.
- AccessLimitFilter
  Limit the number of simultaneous accesses to a resource.
- CounterFilter
  Count the number of traversals or hits of its target.
- DebugFilter
  Print incoming request and outgoing replies.
- ErrorFilter
  The error filter allows you to redefine on the fly all error messages emitted by Jigsaw by using internal redirections: all errors are then emitted by some other resource (which can be any of the Jigsaw supported resources).
- GZIPFilter
  This filter will compress "on the fly" the content of replies using GZIP.
- HeaderFilter
  Enforces a specific header value on all replies.
- LogFilter
  The log filter allows you to get very detailed logging of transactions for a particular sub-space of your web server.
- ProcessFilter
  A filter that will process a reply's content through any external filter program.
- PutFilter
  This filter update the PutListResource.
- GrepPutFilter
  This PutFilter allows you to control the content of puted documents.
- PutSizeFilter
  This filter allows you to limit the size of puted documents

# Standard resources

- Resource
  The generic resource class in Jigsaw.
- FramedResource
  This resource can be associated with frames. This is the base resource used.
- AbstractContainer
  This is the generic resource container class.
- ContainerResource
  This resource can manage and store its children.
- ExternalContainer
  This container can have a specific and external store.
- DirectoryResource
  The directory resource.
- PassDirectory
  A directory resource that emulates the CERN-server PASS rule. (May manage content negotiation)
- VirtualHostResource
  Just a base for the VirtualHostFrame. It handles the URI lookup.
- FileResource
  The basic file resource.