Class ChunkedUploadPayload

  • All Implemented Interfaces:
    Closeable, AutoCloseable, org.jclouds.io.Payload

    public class ChunkedUploadPayload
    extends org.jclouds.io.payloads.BasePayload<org.jclouds.io.Payload>
    • Field Summary

      • Fields inherited from class org.jclouds.io.payloads.BasePayload

        content, contentMetadata, written
    • Constructor Summary

      Constructors 
      Constructor Description
      ChunkedUploadPayload​(org.jclouds.io.Payload payload, int blockSize, String timestamp, String scope, com.google.common.io.ByteProcessor<byte[]> hmacSHA256, String seedSignature)  
    • Constructor Detail

      • ChunkedUploadPayload

        public ChunkedUploadPayload​(org.jclouds.io.Payload payload,
                                    int blockSize,
                                    String timestamp,
                                    String scope,
                                    com.google.common.io.ByteProcessor<byte[]> hmacSHA256,
                                    String seedSignature)
    • Method Detail

      • constructSignedChunk

        protected byte[] constructSignedChunk​(int userDataLen,
                                              byte[] userData)
        Returns a chunk for upload consisting of the signed 'header' or chunk prefix plus the user data. The signature of the chunk incorporates the signature of the previous chunk (or, if the first chunk, the signature of the headers portion of the request).
        Parameters:
        userDataLen - The length of the user data contained in userData
        userData - Contains the user data to be sent in the upload chunk
        Returns:
        A new buffer of data for upload containing the chunk header plus user data
      • release

        public void release()
        Specified by:
        release in interface org.jclouds.io.Payload
        Overrides:
        release in class org.jclouds.io.payloads.BasePayload<org.jclouds.io.Payload>
      • isRepeatable

        public boolean isRepeatable()
        Specified by:
        isRepeatable in interface org.jclouds.io.Payload
        Overrides:
        isRepeatable in class org.jclouds.io.payloads.BasePayload<org.jclouds.io.Payload>