protected static void uploadFileToBlob( String storageAccountName, String storageContainer, String fileName, String filePath) throws InvalidKeyException, URISyntaxException, StorageException, InterruptedException, IOException { MockCloudBlobClient blobClient = createBlobClient(storageAccountName, storageAccountKey); MockCloudBlobContainer container = blobClient.getContainerReference(storageContainer); MockCloudPageBlob pageblob = container.getPageBlobReference(fileName); File source = new File(filePath + fileName); pageblob.upload(new FileInputStream(source), source.length()); // make sure it created and available, otherwise vm deployment will fail with storage/container // still creating boolean found = false; while (found == false) { // Loop over blobs within the container and output the URI to each of them for (MockListBlobItem item : container.listBlobs()) { if (item.getUri().getPath().contains(fileName) == true) { found = true; } } if (found == false) { Thread.sleep(1000 * 10); } else if (!IS_MOCKED) { Thread.sleep(1000 * 20); } } }
protected static void cleanBlob(String storageAccountName, String storageContainer) { // Create the blob client MockCloudBlobClient blobClient = null; try { blobClient = createBlobClient(storageAccountName, storageAccountKey); } catch (InvalidKeyException e) { e.printStackTrace(); } catch (URISyntaxException e) { e.printStackTrace(); } if (blobClient != null) { MockCloudBlobContainer container = null; try { container = blobClient.getContainerReference(storageContainer); } catch (URISyntaxException e) { } catch (StorageException e) { } try { container.breakLease(0); } catch (StorageException e) { } try { container.delete(); } catch (StorageException e) { } try { while (container.exists()) { Thread.sleep(1000); } } catch (StorageException e) { e.printStackTrace(); } catch (InterruptedException e) { e.printStackTrace(); } } }
protected static void createStorageContainer(String storageAccountName, String storageContainer) throws Exception { MockCloudBlobClient blobClient = createBlobClient(storageAccountName, storageAccountKey); MockCloudBlobContainer container = blobClient.getContainerReference(storageContainer); container.createIfNotExists(); // make sure it created and available, otherwise vm deployment will fail with storage/container // still creating boolean found = false; while (found == false) { Iterable<MockCloudBlobContainer> listContainerResult = blobClient.listContainers(storageContainer); for (MockCloudBlobContainer item : listContainerResult) { blobhost = item.getUri().getHost(); if (item.getName().contains(storageContainer) == true) { blobhost = item.getUri().getHost(); found = true; } } if (found == false) { Thread.sleep(1000 * 30); } else if (!IS_MOCKED) { Thread.sleep(1000 * 60); } } }