yegor256/s3auth — pull request #103 by carlosmiranda (2014-02-07 01:41:35+00:00)
Title: Issue #88 Exposed Age HTTP Header

Spec: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.6

Based on my interpretation of the HTTP 1.1 specification, Age does not actually pertain to the age of the actual object (say, the way "Last-Modified" does) but is used for caching purposes.

However, `ObjectMetaData` exposes neither an `Age` that we can pass along nor a `Date` which indicates the time that the resource has been generated. Thus my presumption is every resource is returned from S3 "on-demand". This explains the calculation of age as the time from when the request was first received by S3Auth to the time that the resource was retrieved (and consequently, the response being generated). Thus, the Age being returned represents the "freshness" of S3Auth's generated response, and indicates to any intermediate proxy caches whether they should refresh their copies or not.

I hope that makes sense. Maybe this is incorrect, let me know what you think.