EPrints4 Core Roadmap
Revision as of 14:39, 6 February 2014 by Sf03r@ecs.soton.ac.uk (talk | contribs) (Created page with '=EPrints4 Core Development= Trying to divide the work into smaller tasks (and questions where relevant). ==Request Handler / Page Controllers== This deals with how HTTP reques…')
EPrints4 Core Development
Trying to divide the work into smaller tasks (and questions where relevant).
Request Handler / Page Controllers
This deals with how HTTP requests are handled by EPrints: when a request is made by a client (curl, browser..) a number of headers/parameters must be processed (e.g. Accept, Content-Type, EPrints' cookies, auth etc). This is the entry point of any web requests to the system. The main module is EPrints::Apache::Handler (formerly known as Apache::Rewrite).
- Low-level filters for processing of:
- Cookies (eprints_session, eprints_lang)
- URL encoding
- specific HTTP headers: Accept, Content-Type, Content-Length, Content-Range, Content-MD5 (?), ETag (?)
- System initialisation:
- Repository object init (with language selection, via cookie/default lang)
- Protocol (HTTP, HTTPS?)
- Basic security aspects
- detect invalid requests/URL paths (e.g. containing a dot '.')
- Low-level redirects or custom actions via Trigger
- Call for Controller(s) to handle the request (e.g. CRUD if /id/..., UI, storage (file delivery) etc.)