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()); }
/** * @see HttpMessage#getPayload() */ public T payload(ByteSource payload) { this.payload = Payloads.newByteSourcePayload(checkNotNull(payload, "payload")); return self(); }
/** * @see HttpMessage#getPayload() */ public T payload(ByteSource payload) { this.payload = Payloads.newByteSourcePayload(checkNotNull(payload, "payload")); return self(); }
/** * @see HttpMessage#getPayload() */ public T payload(ByteSource payload) { this.payload = Payloads.newByteSourcePayload(checkNotNull(payload, "payload")); return self(); }
/** * @see HttpMessage#getPayload() */ public T payload(ByteSource payload) { this.payload = Payloads.newByteSourcePayload(checkNotNull(payload, "payload")); return self(); }
protected Payload doSlice(ByteSource content, long offset, long length) { return Payloads.newByteSourcePayload(content.slice(offset, length)); }
protected Payload doSlice(byte[] content, long offset, long length) { checkArgument(offset <= Integer.MAX_VALUE, "offset is too big for an array"); checkArgument(length <= Integer.MAX_VALUE, "length is too big for an array"); // TODO(adriancole): Make ByteArrayPayload carry offset, length as opposed to wrapping here. return Payloads.newByteSourcePayload(ByteSource.wrap(content).slice(offset, length)); }
protected Payload doSlice(byte[] content, long offset, long length) { checkArgument(offset <= Integer.MAX_VALUE, "offset is too big for an array"); checkArgument(length <= Integer.MAX_VALUE, "length is too big for an array"); // TODO(adriancole): Make ByteArrayPayload carry offset, length as opposed to wrapping here. return Payloads.newByteSourcePayload(ByteSource.wrap(content).slice(offset, length)); }
protected Payload doSlice(byte[] content, long offset, long length) { checkArgument(offset <= Integer.MAX_VALUE, "offset is too big for an array"); checkArgument(length <= Integer.MAX_VALUE, "length is too big for an array"); // TODO(adriancole): Make ByteArrayPayload carry offset, length as opposed to wrapping here. return Payloads.newByteSourcePayload(ByteSource.wrap(content).slice(offset, length)); }
private Payload newPayload(String value) { return Payloads.newByteSourcePayload(ByteSource.wrap(value.getBytes(Charset.forName("UTF-8")))); } }
private static Payload payload(long bytes, String hash, String contentType, Date expires) { Payload payload = Payloads.newByteSourcePayload(ByteSource.empty()); payload.getContentMetadata().setContentLength(bytes); payload.getContentMetadata().setContentType(contentType); payload.getContentMetadata().setExpires(expires); if (hash != null) { payload.getContentMetadata().setContentMD5(HashCode.fromBytes(base16().lowerCase().decode(hash))); } return payload; } }
private static Payload payload(long bytes, String hash, String contentType, Date expires) { Payload payload = Payloads.newByteSourcePayload(ByteSource.empty()); payload.getContentMetadata().setContentLength(bytes); payload.getContentMetadata().setContentType(contentType); payload.getContentMetadata().setExpires(expires); if (hash != null) { payload.getContentMetadata().setContentMD5(HashCode.fromBytes(base16().lowerCase().decode(hash))); } return payload; } }
private static Payload payload(long bytes, String hash, String contentType, Date expires) { Payload payload = Payloads.newByteSourcePayload(ByteSource.empty()); payload.getContentMetadata().setContentLength(bytes); payload.getContentMetadata().setContentType(contentType); payload.getContentMetadata().setExpires(expires); if (hash != null) { payload.getContentMetadata().setContentMD5(HashCode.fromBytes(base16().lowerCase().decode(hash))); } return payload; } }
public void testDeleteSinglePartObjectWithMultiPartDelete() throws Exception { String objectName = "testDeleteSinglePartObjectWithMultiPartDelete"; for (String regionId : regions) { getApi().getObjectApi(regionId, defaultContainerName).put(objectName, newByteSourcePayload(ByteSource.wrap("swifty".getBytes()))); DeleteStaticLargeObjectResponse resp = getApi().getStaticLargeObjectApi(regionId, defaultContainerName).delete(objectName); assertThat(resp.status()).isEqualTo("400 Bad Request"); assertThat(resp.deleted()).isZero(); assertThat(resp.notFound()).isZero(); assertThat(resp.errors()).hasSize(1); getApi().getObjectApi(regionId, defaultContainerName).delete(objectName); } }
@Override @BeforeClass(groups = "live") public void setup() { super.setup(); String key = UUID.randomUUID().toString(); for (String regionId : getApi().getConfiguredRegions()) { getApi().getAccountApi(regionId).updateTemporaryUrlKey(key); getApi().getContainerApi(regionId).create(containerName); getApi().getObjectApi(regionId, containerName) .put(name, newByteSourcePayload(ByteSource.wrap("swifty".getBytes()))); } }
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); }
private static UploadFileResponse createFile(ObjectApi objectApi, String bucketId, String fileName) throws IOException { ByteSource byteSource = TestUtils.randomByteSource().slice(0, 1024); Payload payload = Payloads.newByteSourcePayload(byteSource); payload.getContentMetadata().setContentLength(byteSource.size()); String contentSha1 = byteSource.hash(Hashing.sha1()).toString(); String contentType = "text/plain"; payload.getContentMetadata().setContentType(contentType); Map<String, String> fileInfo = ImmutableMap.of("author", "unknown"); UploadUrlResponse uploadUrl = objectApi.getUploadUrl(bucketId); return objectApi.uploadFile(uploadUrl, fileName, contentSha1, fileInfo, payload); } }
public void testPutPayloadEnclosingGenerateMD5() throws Exception { Invokable<?, ?> method = method(TestTransformers.class, "put", PayloadEnclosing.class); ByteSource byteSource = ByteSource.wrap("whoops".getBytes(UTF_8)); PayloadEnclosing payloadEnclosing = new PayloadEnclosingImpl(Payloads.newByteSourcePayload(byteSource)); payloadEnclosing.getPayload().getContentMetadata().setContentLength(byteSource.size()); payloadEnclosing.getPayload().getContentMetadata().setContentMD5(byteSource.hash(Hashing.md5()).asBytes()); 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); }
static Payload payload(long bytes, String contentType, Date expires) { Payload payload = newByteSourcePayload(ByteSource.empty()); payload.getContentMetadata().setContentLength(bytes); payload.getContentMetadata().setContentType(contentType); payload.getContentMetadata().setExpires(expires); return payload; } }
@Override public Void call() throws Exception { Payload payload = Payloads.newByteSourcePayload(expected); payload.getContentMetadata().setContentType("image/png"); Blob blob = view.getBlobStore().blobBuilder(name).payload(payload).contentLength(expected.size()).build(); view.getBlobStore().putBlob(container, blob); assertConsistencyAwareBlobExists(container, name); blob = view.getBlobStore().getBlob(container, name); byte[] actual = ByteStreams2.toByteArrayAndClose(blob.getPayload().openStream()); assertThat(actual).isEqualTo(expected.read()); view.getBlobStore().removeBlob(container, name); assertConsistencyAwareBlobDoesntExist(container, name); return null; }