Code Notes

(A)cachePolicyObj is an instantiated object based upon the cache policy
   descriptor file.
(B)cachePolicyObj.getCache(-)will always return null, if ignore cache is
   set to true. 
(C)cachePolicyObj.isRecent(cacheBlockId) will return false, if the block 
   is null OR the cache block is not recent enough according to 
   reusableTimeStamp and reusableDeltaTime, where reusableTimeStamp take 
   precedence.
(D)pageContext.pushBody() would create a new buffered print writer to replace
   the original "out" print writer. pageContext.popBody() will restore the 
   "out" print writer object. Apart from caching character based data,  we 
    could cache byte based data. 
(E)You should perform putCache operation only when the cache block is not 
   found, not just because of the cache is not recent enough.
(F)cachePolicyObj.putCache(-) will not perform any operation, if ignore 
   cache is set to true.