> +            if ((read = input.read(content)) == -1) {
> +               return null;
> +            }
> +         } catch (IOException e) {
> +            throw Throwables.propagate(e);
> +         }
> +
> +         return createPayload((content.length == read) ? content : 
> Arrays.copyOf(content, read));
> +      }
> +
> +      private Payload createPayload(byte[] content) {
> +         Payload payload = null;
> +
> +         if (content.length > 0) {
> +            payload = new ByteArrayPayload(content);
> +            ContentMetadata cm = 
> metaData.toBuilder().contentLength((long)content.length).contentMD5(null).build();

> Is .contentMD5(null) required?

Good question.  It's probably redundant (md5 should be null anyway in these 
cases), but  `BasePayloadSlicer#copyMetadataAndSetLength` did it this way, and 
so I adopted it as a convention; To be explicit regarding the expectations for 
that attribute.

Do you think it should be removed?

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/192/files#r8112859

Reply via email to