/** * Calculates the md5 on a payload, replacing as necessary. */ public static <T extends PayloadEnclosing> T calculateMD5(T payloadEnclosing) throws IOException { checkNotNull(payloadEnclosing, "payloadEnclosing"); Payload newPayload = calculateMD5(payloadEnclosing.getPayload()); if (newPayload != payloadEnclosing.getPayload()) payloadEnclosing.setPayload(newPayload); return payloadEnclosing; } }
public static byte[] toByteArrayOrNull(PayloadEnclosing response) { if (response.getPayload() != null) { InputStream input = response.getPayload().getInput(); try { return toByteArray(input); } catch (IOException e) { propagate(e); } finally { closeQuietly(input); } } return null; }
public static byte[] toByteArrayOrNull(PayloadEnclosing response) { if (response.getPayload() != null) { InputStream input = response.getPayload().getInput(); try { return toByteArray(input); } catch (IOException e) { propagate(e); } finally { closeQuietly(input); } } return null; }
/** * Calculates the md5 on a payload, replacing as necessary. */ public static <T extends PayloadEnclosing> T calculateMD5(T payloadEnclosing) throws IOException { checkNotNull(payloadEnclosing, "payloadEnclosing"); Payload newPayload = calculateMD5(payloadEnclosing.getPayload()); if (newPayload != payloadEnclosing.getPayload()) payloadEnclosing.setPayload(newPayload); return payloadEnclosing; } }
public static byte[] toByteArrayOrNull(PayloadEnclosing response) { if (response.getPayload() != null) { InputStream input = response.getPayload().getInput(); try { return toByteArray(input); } catch (IOException e) { propagate(e); } finally { closeQuietly(input); } } return null; }
/** * Calculates the md5 on a payload, replacing as necessary. */ public static <T extends PayloadEnclosing> T calculateMD5(T payloadEnclosing) throws IOException { checkNotNull(payloadEnclosing, "payloadEnclosing"); Payload newPayload = calculateMD5(payloadEnclosing.getPayload()); if (newPayload != payloadEnclosing.getPayload()) payloadEnclosing.setPayload(newPayload); return payloadEnclosing; } }
public static byte[] toByteArrayOrNull(PayloadEnclosing response) { if (response.getPayload() != null) { InputStream input = response.getPayload().getInput(); try { return toByteArray(input); } catch (IOException e) { propagate(e); } finally { closeQuietly(input); } } return null; }
public void input(PayloadEnclosing request) { Payload oldContent = request.getPayload(); Payload wiredPayload = newPayload(input(oldContent.getInput())); copyPayloadMetadata(oldContent, wiredPayload); request.setPayload(wiredPayload); }
public static byte[] toByteArrayOrNull(PayloadEnclosing response) { if (response.getPayload() != null) { InputStream input = response.getPayload().getInput(); try { return toByteArray(input); } catch (IOException e) { propagate(e); } finally { closeQuietly(input); } } return null; }
public void input(PayloadEnclosing request) { Payload oldContent = request.getPayload(); Payload wiredPayload = newPayload(input(oldContent.getInput())); copyPayloadMetadata(oldContent, wiredPayload); request.setPayload(wiredPayload); }
public static byte[] toByteArrayOrNull(PayloadEnclosing response) { if (response.getPayload() != null) { InputStream input = response.getPayload().getInput(); try { return toByteArray(input); } catch (IOException e) { propagate(e); } finally { closeQuietly(input); } } return null; }
public void input(PayloadEnclosing request) { Payload oldContent = request.getPayload(); Payload wiredPayload = newPayload(input(oldContent.getInput())); copyPayloadMetadata(oldContent, wiredPayload); request.setPayload(wiredPayload); }
public byte[] apply(Object from) { checkNotNull(from, "thing to md5"); PayloadEnclosing payloadEnclosing; if (from instanceof PayloadEnclosing) { payloadEnclosing = (PayloadEnclosing) from; } else { payloadEnclosing = HttpMessage.builder().payload(Payloads.newPayload(from)).build(); } if (payloadEnclosing.getPayload().getContentMetadata().getContentMD5() == null) try { Payloads.calculateMD5(payloadEnclosing); } catch (IOException e) { Throwables.propagate(e); } return payloadEnclosing.getPayload().getContentMetadata().getContentMD5(); }
/** * Content stream may need to be read. However, we should always close the http stream. * * @throws IOException */ public static byte[] closeClientButKeepContentStream(PayloadEnclosing response) { byte[] returnVal = toByteArrayOrNull(response); if (returnVal != null && !response.getPayload().isRepeatable()) { Payload newPayload = Payloads.newByteArrayPayload(returnVal); MutableContentMetadata fromMd = response.getPayload().getContentMetadata(); MutableContentMetadata toMd = newPayload.getContentMetadata(); copy(fromMd, toMd); response.setPayload(newPayload); } return returnVal; }
public byte[] apply(Object from) { checkNotNull(from, "thing to md5"); PayloadEnclosing payloadEnclosing; if (from instanceof PayloadEnclosing) { payloadEnclosing = (PayloadEnclosing) from; } else { payloadEnclosing = HttpMessage.builder().payload(Payloads.newPayload(from)).build(); } if (payloadEnclosing.getPayload().getContentMetadata().getContentMD5() == null) try { Payloads.calculateMD5(payloadEnclosing); } catch (IOException e) { Throwables.propagate(e); } return payloadEnclosing.getPayload().getContentMetadata().getContentMD5(); }
/** * Content stream may need to be read. However, we should always close the http stream. * * @throws IOException */ public static byte[] closeClientButKeepContentStream(PayloadEnclosing response) { byte[] returnVal = toByteArrayOrNull(response); if (returnVal != null && !response.getPayload().isRepeatable()) { Payload newPayload = Payloads.newByteArrayPayload(returnVal); MutableContentMetadata fromMd = response.getPayload().getContentMetadata(); MutableContentMetadata toMd = newPayload.getContentMetadata(); copy(fromMd, toMd); response.setPayload(newPayload); } return returnVal; }
public byte[] apply(Object from) { checkNotNull(from, "thing to md5"); PayloadEnclosing payloadEnclosing; if (from instanceof PayloadEnclosing) { payloadEnclosing = (PayloadEnclosing) from; } else { payloadEnclosing = HttpMessage.builder().payload(Payloads.newPayload(from)).build(); } if (payloadEnclosing.getPayload().getContentMetadata().getContentMD5() == null) try { Payloads.calculateMD5(payloadEnclosing); } catch (IOException e) { Throwables.propagate(e); } return payloadEnclosing.getPayload().getContentMetadata().getContentMD5(); }
/** * Content stream may need to be read. However, we should always close the http stream. * * @throws IOException */ public static byte[] closeClientButKeepContentStream(PayloadEnclosing response) { byte[] returnVal = toByteArrayOrNull(response); if (returnVal != null && !response.getPayload().isRepeatable()) { Payload newPayload = Payloads.newByteArrayPayload(returnVal); MutableContentMetadata fromMd = response.getPayload().getContentMetadata(); MutableContentMetadata toMd = newPayload.getContentMetadata(); copy(fromMd, toMd); response.setPayload(newPayload); } return returnVal; }
@Test(groups = "live", dependsOnMethods = "testRewrite") public void testDownload() throws IOException { PayloadEnclosing impl = api().download(BUCKET_NAME, UPLOAD_OBJECT_NAME); ContentMetadata meta = impl.getPayload().getContentMetadata(); assertNotNull(impl); assertNotNull(impl.getPayload()); assertNotNull(meta); assertEquals(meta.getContentType(), "text/plain"); testPayload.getPayload().getContentMetadata().setContentDisposition("attachment"); assertEquals(ByteStreams2.toByteArrayAndClose(impl.getPayload().openStream()), ByteStreams2.toByteArrayAndClose(testPayload.getPayload().openStream())); }
/** * Content stream may need to be read. However, we should always close the http stream. * * @throws IOException */ public static byte[] closeClientButKeepContentStream(PayloadEnclosing response) { byte[] returnVal = toByteArrayOrNull(response); if (returnVal != null && !response.getPayload().isRepeatable()) { Payload newPayload = Payloads.newByteArrayPayload(returnVal); MutableContentMetadata fromMd = response.getPayload().getContentMetadata(); MutableContentMetadata toMd = newPayload.getContentMetadata(); copy(fromMd, toMd); response.setPayload(newPayload); } return returnVal; }