public CloudFilesObject(final String basePath, final File file, final String region, final String container) { this(region, container); ByteSource byteSource = Files.asByteSource(file); this.payload = Payloads.newByteSourcePayload(byteSource); this.path = CloudFilesUtils.buildCloudFilesPath(basePath, file.getName()); }
@Test(expectedExceptions = IllegalArgumentException.class) public void testNoNameIsBad() { AzureBlob blob = injector.getInstance(AzureBlob.Factory.class).create(null); Payload payload = Payloads.newStringPayload(""); payload.getContentMetadata().setContentLength(5368709120000l); blob.setPayload(payload); HttpRequest request = HttpRequest.builder().method("PUT").endpoint("http://localhost").build(); BindAzureBlobMetadataToRequest binder = injector.getInstance(BindAzureBlobMetadataToRequest.class); binder.bindToRequest(request, blob); }
@Test(invocationCount = 5, timeOut = 5000) public void testPostContentDisposition() { Payload payload = newStringPayload("foo"); payload.getContentMetadata().setContentDisposition("attachment; filename=photo.jpg"); Multimap<String, String> headers = client.postPayloadAndReturnHeaders("", payload); assertEquals(headers.get("x-Content-Disposition"), ImmutableList.of("attachment; filename=photo.jpg")); payload.release(); }
@Test(invocationCount = 5, timeOut = 5000) public void testPostContentLanguage() { Payload payload = newStringPayload("foo"); payload.getContentMetadata().setContentLanguage("mi, en"); Multimap<String, String> headers = client.postPayloadAndReturnHeaders("", payload); assertEquals(headers.get("x-Content-Language"), ImmutableList.of("mi, en")); payload.release(); }
@Test(invocationCount = 5, timeOut = 5000) public void testPostContentEncoding() { Payload payload = newStringPayload("foo"); payload.getContentMetadata().setContentEncoding("gzip"); Multimap<String, String> headers = client.postPayloadAndReturnHeaders("", payload); assertEquals(headers.get("x-Content-Encoding"), ImmutableList.of("gzip")); payload.release(); }
public void testPutPayloadWithGeneratedMD5AndNoContentType() throws SecurityException, NoSuchMethodException, IOException { ByteSource byteSource = ByteSource.wrap("whoops".getBytes(UTF_8)); Payload payload = Payloads.newByteSourcePayload(byteSource); payload.getContentMetadata().setContentLength(byteSource.size()); payload.getContentMetadata().setContentMD5(byteSource.hash(Hashing.md5()).asBytes()); Invokable<?, ?> method = method(TestTransformers.class, "put", Payload.class); GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.<Object> of(payload))); assertRequestLineEquals(request, "PUT http://localhost:9999 HTTP/1.1"); assertNonPayloadHeadersEqual(request, ""); assertPayloadEquals(request, "whoops", "application/unknown", true); }
public void testPutPayloadWithGeneratedMD5AndNoContentType() throws SecurityException, NoSuchMethodException, IOException { Payload payload = newStringPayload("whoops"); calculateMD5(payload); Invokable<?, ?> method = method(TestTransformers.class, "put", Payload.class); GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.<Object> of(payload))); assertRequestLineEquals(request, "PUT http://localhost:9999 HTTP/1.1"); assertNonPayloadHeadersEqual(request, ""); assertPayloadEquals(request, "whoops", "application/unknown", true); }
public void testPutPayloadContentDisposition() throws SecurityException, NoSuchMethodException, IOException { Invokable<?, ?> method = method(TestTransformers.class, "put", Payload.class); Payload payload = newStringPayload("whoops"); payload.getContentMetadata().setContentDisposition("attachment; filename=photo.jpg"); GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.<Object> of(payload))); assertRequestLineEquals(request, "PUT http://localhost:9999 HTTP/1.1"); assertNonPayloadHeadersEqual(request, ""); assertPayloadEquals(request, "whoops", "application/unknown", "attachment; filename=photo.jpg", null, null, false); }
public void testPutPayloadContentEncoding() throws SecurityException, NoSuchMethodException, IOException { Invokable<?, ?> method = method(TestTransformers.class, "put", Payload.class); Payload payload = newStringPayload("whoops"); payload.getContentMetadata().setContentEncoding("gzip"); GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.<Object> of(payload))); assertRequestLineEquals(request, "PUT http://localhost:9999 HTTP/1.1"); assertNonPayloadHeadersEqual(request, ""); assertPayloadEquals(request, "whoops", "application/unknown", null, "gzip", null, false); }
public void testPutInputStreamPayload() throws SecurityException, NoSuchMethodException, IOException { Payload payload = newInputStreamPayload(Strings2.toInputStream("whoops")); payload.getContentMetadata().setContentLength((long) "whoops".length()); Invokable<?, ?> method = method(TestTransformers.class, "put", Payload.class); GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.<Object> of(payload))); assertRequestLineEquals(request, "PUT http://localhost:9999 HTTP/1.1"); assertNonPayloadHeadersEqual(request, ""); assertPayloadEquals(request, "whoops", "application/unknown", false); }
public void testPutPayloadContentLanguage() throws SecurityException, NoSuchMethodException, IOException { Invokable<?, ?> method = method(TestTransformers.class, "put", Payload.class); Payload payload = newStringPayload("whoops"); payload.getContentMetadata().setContentLanguage("en"); GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.<Object> of(payload))); assertRequestLineEquals(request, "PUT http://localhost:9999 HTTP/1.1"); assertNonPayloadHeadersEqual(request, ""); assertPayloadEquals(request, "whoops", "application/unknown", null, null, "en", false); }
@Test public void test() { HttpResponse response = HttpResponse.builder().statusCode(200).payload( Payloads.newInputStreamPayload(getClass().getResourceAsStream("/complete-multipart-upload.xml"))) .build(); ETagFromHttpResponseViaRegex parser = new ETagFromHttpResponseViaRegex(new ReturnStringIf2xx()); assertEquals(parser.apply(response), "\"3858f62230ac3c915f300c664312c11f-9\""); }
@Test public void testWithASmallSet() { HttpRequest result = binder.bindToRequest(request, ImmutableSet.of("key1", "key2")); Payload payload = Payloads .newStringPayload("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Delete>" + "<Object><Key>key1</Key></Object><Object><Key>key2</Key></Object></Delete>"); payload.getContentMetadata().setContentType(MediaType.TEXT_XML); assertEquals(result.getPayload(), payload); }
public void testWithoutToken() { HttpResponse response = HttpResponse.builder() .statusCode(200) .message("ok") .payload(Payloads.newPayload(getClass().getResourceAsStream("/list_basic.xml"))).build(); BoundedSet<DirectoryEntry> result = createFn().apply(response); assertEquals(ImmutableSet.copyOf(result), values()); assertEquals(result.getToken(), null); }
public void testPutInputStreamPayloadEnclosingGenerateMD5() throws SecurityException, NoSuchMethodException, IOException { Invokable<?, ?> method = method(TestTransformers.class, "put", PayloadEnclosing.class); PayloadEnclosing payloadEnclosing = new PayloadEnclosingImpl( newInputStreamPayload(Strings2.toInputStream("whoops"))); calculateMD5(payloadEnclosing); GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.<Object> of(payloadEnclosing))); assertRequestLineEquals(request, "PUT http://localhost:9999 HTTP/1.1"); assertNonPayloadHeadersEqual(request, ""); assertPayloadEquals(request, "whoops", "application/unknown", true); }
@Test public void testPassWithMinimumDetailsAndPayload5GB() { HttpRequest request = HttpRequest.builder().method("PUT").endpoint("http://localhost").build(); Payload payload = Payloads .newStringPayload("<CompleteMultipartUpload><Part><PartNumber>1</PartNumber><ETag>\"a54357aff0632cce46d942af68356b38\"</ETag></Part></CompleteMultipartUpload>"); payload.getContentMetadata().setContentType(MediaType.TEXT_XML); request = binder.bindToRequest(request, ImmutableMap.<Integer, String> of(1, "\"a54357aff0632cce46d942af68356b38\"")); assertEquals(request.getPayload().getRawContent(), payload.getRawContent()); assertEquals(request, HttpRequest.builder().method("PUT").endpoint("http://localhost").payload( payload).build()); }
@Test public void testEncodeAsOpenSSH() throws IOException, InvalidKeySpecException, NoSuchAlgorithmException { String encoded = SshKeys.encodeAsOpenSSH((RSAPublicKey) KeyFactory.getInstance("RSA").generatePublic( SshKeys.publicKeySpecFromOpenSSH(Payloads.newPayload(getClass().getResourceAsStream("/test.pub"))))); assertEquals(encoded, Strings2.toStringAndClose(getClass().getResourceAsStream("/test.pub")).trim()); }
@Test public void testAlreadyHasMD5() { Payload payload = Payloads.newPayload("foo"); payload.getContentMetadata().setContentMD5(new byte[] {}); HttpMessage payloadEnclosing = HttpMessage.builder().payload(payload).build(); assertEquals(fn.apply(payloadEnclosing), new byte[] {}); }
public void testAddFormParamAddsAnotherValue() { HttpRequest request = HttpRequest.builder().method("GET").endpoint("http://foo") .payload("foo=bar").build(); Payload payload = Payloads.newStringPayload("foo=bar&foo=baz"); payload.getContentMetadata().setContentType(FORM_DATA.toString()); assertEquals(request.toBuilder().addFormParams(ImmutableMultimap.of("foo", "baz")).build(), HttpRequest .builder().method("GET").endpoint("http://foo").payload(payload).build()); }
/** * Replaces the current payload with one that is a urlencoded payload including the following * parameters and any formerly set. * * @see HttpRequest#getPayload() */ public T replaceFormParams(Multimap<String, String> parameters) { checkNotNull(endpoint, "endpoint"); Multimap<String, String> map = payload != null ? queryParser().apply(payload.getRawContent().toString()) : LinkedHashMultimap.<String, String> create(); for (Map.Entry<String, Collection<String>> entry : parameters.asMap().entrySet()) { map.replaceValues(entry.getKey(), entry.getValue()); } payload = newUrlEncodedFormPayload(map); return self(); }