/** * @see HttpMessage#getPayload() */ public T payload(String payload) { this.payload = Payloads.newStringPayload(checkNotNull(payload, "payload")); return self(); }
public Payload get(String path) { if (path.equals("/etc/passwd")) { return Payloads.newStringPayload("root"); } else if (path.equals(temp.getAbsolutePath())) { return Payloads.newStringPayload("rabbit"); } throw new RuntimeException("path " + path + " not stubbed"); }
public HttpRequest filter(HttpRequest request) { checkNotNull(request.getPayload(), "request is not ready to wrap; payload not present"); Credentials current = creds.get(); String body = request.getPayload().getRawContent().toString(); Payload wrappedPayload = Payloads.newStringPayload(new StringBuilder() .append(format(SOAP_PREFIX, current.identity, current.credential)).append(body).append(SOAP_SUFFIX) .toString()); wrappedPayload.getContentMetadata().setContentType("application/xml"); return request.toBuilder().payload(wrappedPayload).build(); } }
@BeforeClass public void setup() throws InvalidKeySpecException, NoSuchAlgorithmException, IOException { KeyFactory keyfactory = KeyFactory.getInstance("RSA"); PrivateKey privateKey = keyfactory.generatePrivate(Pems.privateKeySpec(Payloads.newStringPayload(PRIVATE_KEY))); PublicKey publicKey = keyfactory.generatePublic(Pems.publicKeySpec(Payloads.newStringPayload(PUBLIC_KEY))); keyPair = new KeyPair(publicKey, privateKey); openSshKey = SshKeys.encodeAsOpenSSH(RSAPublicKey.class.cast(publicKey)); }
@Test public void testRSAPKCS1PublicKeySpecPem() throws IOException, InvalidKeySpecException, NoSuchAlgorithmException { String encoded = Pems.pem(KeyFactory.getInstance("RSA").generatePublic( Pems.publicKeySpec(Payloads.newStringPayload(PUBLIC_KEY_PKCS1)))); assertEquals(encoded, PUBLIC_KEY_PKCS1.replaceAll("\n", ls)); }
@Test public void testX509CertificatePem() throws IOException, CertificateException { String encoded = Pems.pem(Pems.x509Certificate(Payloads.newStringPayload(CERTIFICATE), CertificateFactory.getInstance("X.509"))); assertEquals(encoded, CERTIFICATE.replaceAll("\n", ls)); }
@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 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); }
@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(expectedExceptions = IllegalArgumentException.class) public void testOver5GBIsBad() { S3Object object = injector.getInstance(S3Object.Factory.class).create(null); Payload payload = Payloads.newStringPayload(""); payload.getContentMetadata().setContentLength(5368709120000l); object.setPayload(payload); object.getMetadata().setKey("foo"); HttpRequest request = HttpRequest.builder().method("PUT").endpoint("http://localhost").build(); BindS3ObjectMetadataToRequest binder = injector.getInstance(BindS3ObjectMetadataToRequest.class); binder.bindToRequest(request, object); }
@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(expectedExceptions = IllegalArgumentException.class) public void testNoContentLengthIsBad() { AzureBlob blob = injector.getInstance(AzureBlob.Factory.class).create(null); Payload payload = Payloads.newStringPayload(""); payload.getContentMetadata().setContentLength(null); blob.setPayload(payload); blob.getProperties().setName("foo"); HttpRequest request = HttpRequest.builder().method("PUT").endpoint("http://localhost").build(); BindAzureBlobMetadataToRequest binder = injector.getInstance(BindAzureBlobMetadataToRequest.class); binder.bindToRequest(request, blob); }
@Test(expectedExceptions = IllegalArgumentException.class) public void testOver64MBIsBad() { AzureBlob blob = injector.getInstance(AzureBlob.Factory.class).create(null); Payload payload = Payloads.newStringPayload(""); payload.getContentMetadata().setContentLength(64 * 1024 * 1024l + 1); blob.setPayload(payload); blob.getProperties().setName("foo"); HttpRequest request = HttpRequest.builder().method("PUT").endpoint("http://localhost").build(); BindAzureBlobMetadataToRequest binder = injector.getInstance(BindAzureBlobMetadataToRequest.class); binder.bindToRequest(request, blob); }
@Test(expectedExceptions = IllegalArgumentException.class) public void testOver5GBIsBad() { SwiftObject object = injector.getInstance(SwiftObject.Factory.class).create(null); Payload payload = Payloads.newStringPayload(""); payload.getContentMetadata().setContentLength(5 * 1024 * 1024 * 1024l + 1); object.setPayload(payload); object.getInfo().setName("foo"); HttpRequest request = HttpRequest.builder().method("PUT").endpoint("http://localhost").build(); BindSwiftObjectMetadataToRequest binder = injector.getInstance(BindSwiftObjectMetadataToRequest.class); binder.bindToRequest(request, object); }
public void testPutPayloadChunkedNoContentLength() throws SecurityException, NoSuchMethodException, IOException { Invokable<?, ?> method = method(TestTransformers.class, "putXfer", Payload.class); GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.<Object> of(newStringPayload("whoops")))); assertRequestLineEquals(request, "PUT http://localhost:9999 HTTP/1.1"); assertNonPayloadHeadersEqual(request, "Transfer-Encoding: chunked\n"); assertPayloadEquals(request, "whoops", "application/unknown", false); }
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 testPutPayloadEnclosing() throws SecurityException, NoSuchMethodException, IOException { Invokable<?, ?> method = method(TestTransformers.class, "put", PayloadEnclosing.class); GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.<Object> of(new PayloadEnclosingImpl(newStringPayload("whoops"))))); assertRequestLineEquals(request, "PUT http://localhost:9999 HTTP/1.1"); assertNonPayloadHeadersEqual(request, ""); assertPayloadEquals(request, "whoops", "application/unknown", false); }
public void testPutPayloadEnclosingGenerateMD5() throws SecurityException, NoSuchMethodException, IOException { Invokable<?, ?> method = method(TestTransformers.class, "put", PayloadEnclosing.class); PayloadEnclosing payloadEnclosing = new PayloadEnclosingImpl(newStringPayload("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); }
public void testAbortMultipartUpload() throws SecurityException, NegativeArraySizeException, NoSuchMethodException { Invokable<?, ?> method = method(AWSS3AsyncClient.class, "abortMultipartUpload", String.class, String.class, String.class); GeneratedHttpRequest request = processor.createRequest(method, ImmutableList.<Object> of("bucket", "foo", "asdsadasdas", 1, Payloads.newStringPayload(""))); assertRequestLineEquals(request, "DELETE https://bucket." + url + "/foo?uploadId=asdsadasdas HTTP/1.1"); assertNonPayloadHeadersEqual(request, "Host: bucket." + url + "\n"); assertPayloadEquals(request, "", "application/unknown", false); assertResponseParserClassEquals(method, request, ReleasePayloadAndReturn.class); assertSaxResponseParserClassEquals(method, null); assertFallbackClassEquals(method, VoidOnNotFoundOr404.class); checkFilters(request); }