Example usage for org.apache.http.impl.client.cache FileResource FileResource

List of usage examples for org.apache.http.impl.client.cache FileResource FileResource

Introduction

In this page you can find the example usage for org.apache.http.impl.client.cache FileResource FileResource.

Prototype

public FileResource(final File file) 

Source Link

Usage

From source file:gr.wavesoft.webng.io.cache.DiskCacheStorage.java

private HttpCacheEntry unserialize(byte[] bytes, String key) {
    try {/*w  w w .  j a va  2  s . c  om*/
        InputStream is = new ByteArrayInputStream(bytes);
        ObjectInputStream ois = new ObjectInputStream(is);

        // Read data
        Date dReq = new Date(ois.readLong());
        Date dRes = new Date(ois.readLong());
        StatusLine statusLine = (StatusLine) ois.readObject();
        Header[] responseHeaders = (Header[]) ois.readObject();

        // Close streams
        ois.close();
        is.close();

        // Build response
        HttpCacheEntry hce = new HttpCacheEntry(dReq, dRes, statusLine, responseHeaders,
                new FileResource(new File(baseDir + "/" + itemPrefix + key + ".cache")));

        return hce;

    } catch (ClassNotFoundException ex) {
        systemLogger.except(ex);
        return null;
    } catch (UnsupportedEncodingException ex) {
        systemLogger.except(ex);
        return null;
    } catch (IOException ex) {
        systemLogger.except(ex);
        return null;
    }
}

From source file:it.tidalwave.bluemarine2.downloader.impl.SimpleHttpCacheStorage.java

/*******************************************************************************************************************
 *
 * /*w  w  w  .java  2s .c  o  m*/
 *
 ******************************************************************************************************************/
@Nonnull
private HttpCacheEntry entryFrom(final @Nonnull Path cacheContentPath, final @Nonnull HttpResponse response) {
    final Date date = new Date(); // FIXME: force hit?
    //                        new Date(Files.getLastModifiedTime(cacheHeadersPath).toMillis());
    final Resource resource = exists(cacheContentPath) ? new FileResource(cacheContentPath.toFile()) : null;

    List<Header> headers = new ArrayList<>(Arrays.asList(response.getAllHeaders()));

    if (neverExpiring) {
        headers = headers.stream().filter(header -> !NEVER_EXPIRING_HEADERS.contains(header.getName()))
                .collect(Collectors.toList());
        headers.add(new BasicHeader("Expires", "Mon, 31 Dec 2099 00:00:00 GMT"));
    }

    return new HttpCacheEntry(date, date, response.getStatusLine(), headers.toArray(new Header[0]), resource);
}