Package com.restfb

Class ETagWebRequestor

All Implemented Interfaces:
WebRequestor

public class ETagWebRequestor
extends DefaultWebRequestor
WebRequestor with ETag-support.

The ETagWebRequestor caches all GET-requests with an ETag header field in a SoftHashMap and uses the ETag on the next request as If-None-Match header field if the same URL is requested.

Is the response status code 304 (NOT MODIFIED) the old response from cache is used.

Attention: even 304 responses count as request at Facebook and so they count against the throttling limits. Facebook suggests to use them for data that change only frequently

Further information regarding ETag at Facebook can be found here: https://developers.facebook.com/blog/post/627/

Attention 2: If excessively used with a lot of URLs, the SoftHashMap can lead to a performance degradation