JCLOUDS-894: Expose legacy Swift multipart operations

Not yet implemented
This commit is contained in:
Andrew Gaul 2015-04-27 17:38:10 -07:00
parent 4e3776a099
commit df3c91ef4a
2 changed files with 59 additions and 0 deletions

View File

@ -21,6 +21,7 @@ import static com.google.common.base.Preconditions.checkNotNull;
import static org.jclouds.Constants.PROPERTY_USER_THREADS;
import static org.jclouds.openstack.swift.options.ListContainerOptions.Builder.withPrefix;
import java.util.List;
import java.util.Set;
import javax.inject.Inject;
@ -33,6 +34,8 @@ import org.jclouds.blobstore.domain.Blob;
import org.jclouds.blobstore.domain.BlobAccess;
import org.jclouds.blobstore.domain.BlobMetadata;
import org.jclouds.blobstore.domain.ContainerAccess;
import org.jclouds.blobstore.domain.MultipartPart;
import org.jclouds.blobstore.domain.MultipartUpload;
import org.jclouds.blobstore.domain.PageSet;
import org.jclouds.blobstore.domain.StorageMetadata;
import org.jclouds.blobstore.domain.internal.PageSetImpl;
@ -47,6 +50,7 @@ import org.jclouds.blobstore.util.BlobUtils;
import org.jclouds.collect.Memoized;
import org.jclouds.domain.Location;
import org.jclouds.http.options.GetOptions;
import org.jclouds.io.Payload;
import org.jclouds.openstack.swift.CommonSwiftClient;
import org.jclouds.openstack.swift.blobstore.functions.BlobStoreListContainerOptionsToListContainerOptions;
import org.jclouds.openstack.swift.blobstore.functions.BlobToObject;
@ -336,4 +340,44 @@ public class SwiftBlobStore extends BaseBlobStore {
public void setBlobAccess(String containe, String namer, BlobAccess access) {
throw new UnsupportedOperationException("not implemented");
}
@Override
public MultipartUpload initiateMultipartUpload(String container, BlobMetadata blobMetadata) {
throw new UnsupportedOperationException("Legacy Swift does not support multipart uploads");
}
@Override
public void abortMultipartUpload(MultipartUpload mpu) {
throw new UnsupportedOperationException("Legacy Swift does not support multipart uploads");
}
@Override
public String completeMultipartUpload(MultipartUpload mpu, List<MultipartPart> parts) {
throw new UnsupportedOperationException("Legacy Swift does not support multipart uploads");
}
@Override
public MultipartPart uploadMultipartPart(MultipartUpload mpu, int partNumber, Payload payload) {
throw new UnsupportedOperationException("Legacy Swift does not support multipart uploads");
}
@Override
public List<MultipartPart> listMultipartUpload(MultipartUpload mpu) {
throw new UnsupportedOperationException("Legacy Swift does not support multipart uploads");
}
@Override
public long getMinimumMultipartPartSize() {
throw new UnsupportedOperationException("Legacy Swift does not support multipart uploads");
}
@Override
public long getMaximumMultipartPartSize() {
throw new UnsupportedOperationException("Legacy Swift does not support multipart uploads");
}
@Override
public int getMaximumNumberOfParts() {
throw new UnsupportedOperationException("Legacy Swift does not support multipart uploads");
}
}

View File

@ -165,6 +165,21 @@ public class SwiftBlobIntegrationLiveTest extends BaseBlobIntegrationTest {
}
}
@Override
public void testMultipartUploadNoPartsAbort() throws Exception {
throw new SkipException("Legacy Swift does not support multipart uploads");
}
@Override
public void testMultipartUploadSinglePart() throws Exception {
throw new SkipException("Legacy Swift does not support multipart uploads");
}
@Override
public void testMultipartUploadMultipleParts() throws Exception {
throw new SkipException("Legacy Swift does not support multipart uploads");
}
@Override
public void testSetBlobAccess() throws Exception {
throw new SkipException("unsupported in swift");