sgammon/apptools — Issue #3: Document Services API
Author: sgammon
Created: 2011-11-02 19:54:27+00:00
State: open

Document the service layer, along with decorators, middleware, etc.

Classes:
--BaseService - base class for remote API services
--Internals - internals like factories and abstract classes for protoRPC integration

Middleware:
--AuthorizationMiddleware - middleware for authorizing remote api clients against the datastore/memcache
--AuthenticationMiddleware - middleware for authenticating remote api clients
--AuditMiddleware - middleware for recording what's going on
--CachingMiddleware - middleware for caching
--DebugMiddleware - middleware for debug/log management

Decorators:
--Caching
----cacheable - specify a full caching policy all at once
----memcacheable - specify a memcaching policy
----local_cacheable - specify a policy for threadlocal/threadglobal caching
----client_cacheable - specify a policy for in-browser caching
--Security
----whitelist - whitelist of users or IP's that __can__ access a method
----blacklist - blacklist of users or IP's that __cannot__ access a method
----authorized - specify an ACL key name, or a group a user must belong to (app-level)
----authenticated - specify a user must be logged in, or must be an admin (on appengine)
--Audit
----record
----dummy_record
--Debug
----loglevel
----reporting