public void write()

in commands/src/main/java/org/jclouds/karaf/commands/blobstore/BlobStoreCommandBase.java [156:176]


   public void write(BlobStore blobStore, String bucket, String blobName, Blob blob, PutOptions options, boolean signedRequest) throws Exception {
      if (blobName.contains("/")) {
         String directory = BlobStoreUtils.parseDirectoryFromPath(blobName);
         if (!Strings.isNullOrEmpty(directory)) {
            blobStore.createDirectory(bucket, directory);
         }
      }

      if (signedRequest) {
         BlobStoreContext context = blobStore.getContext();
         HttpRequest request = context.getSigner().signPutBlob(bucket, blob);
         HttpClient httpClient = context.utils().http();
         HttpResponse response = httpClient.invoke(request);
         int statusCode = response.getStatusCode();
         if (statusCode != 200 && statusCode != 201) {
            throw new IOException(response.getStatusLine());
         }
      } else {
         blobStore.putBlob(bucket, blob, options);
      }
   }