public class SASmeta { public static void main(String[] args) throws URISyntaxException, FileNotFoundException, StorageException, IOException { URI baseuri = new URI("http://grassy.blob.core.windows.net"); CloudBlobClient blobclient = new CloudBlobClient(baseuri); MyUploadBlob("container1","sr=c&sv=2012-02-12&sig=b%2BK%2FmX8r7dLCVxs5PSPmmji1L6kSxNupp9SKF7yj27w%3D&si=r",blobclient); } public static void MyUploadBlob(String containerName, String containerSAS, CloudBlobClient blobClient) throws URISyntaxException, StorageException, FileNotFoundException, IOException { String blobName = "image1.jpg"; String localFileName = "c:\\myimages\\image1.jpg"; URI uri = new URI(blobClient.getEndpoint().toString() + "/" + containerName + "/" + blobName + "?" + containerSAS); CloudBlockBlob sasBlob = new CloudBlockBlob(uri, blobClient); HashMap<String, String> user = new HashMap<String, String>(); user.put("firstname", "Joe"); user.put("lastname", "Smith" ); user.put("age", "28"); user.put("presenter", "no"); sasBlob.setMetadata(user); File fileReference = new File(localFileName); sasBlob.upload(new FileInputStream(fileReference), fileReference.length()); System.out.println("The blob: " + blobName + " has been uploaded to:"); System.out.println(uri); } }
URI uri = new URI(blobClient.getEndpoint().toString() + "/" + containerName + "/" + blobName + "?" + containerSAS); CloudBlockBlob sasBlob = new CloudBlockBlob(uri, blobClient);
URI uri = new URI(blobClient.getEndpoint().toString() + "/" + containerName + "/" + blobName +
assertTrue(pageBlob.exists()); assertEquals(dir1.getContainer().getName(), pageBlob.getContainer().getName()); assertEquals(dir1.getServiceClient().getEndpoint().toString(), pageBlob.getServiceClient().getEndpoint() .toString()); assertEquals("Dir1" + delimiter + "PageBlob", pageBlob.getName()); assertTrue(blockBlob.exists()); assertEquals(dir1.getContainer().getName(), pageBlob.getContainer().getName()); assertEquals(dir1.getServiceClient().getEndpoint().toString(), blockBlob.getServiceClient().getEndpoint() .toString()); assertEquals("Dir1" + delimiter + "BlockBlob", blockBlob.getName()); assertEquals(dir1.getServiceClient().getEndpoint().toString(), subDirectory.getServiceClient().getEndpoint() .toString()); assertEquals(new URI(container.getUri().getScheme(), container.getUri().getAuthority(), container.getUri() assertEquals(pageSnapshot.getName(), pageSnapshotDir1.getName()); assertEquals(dir1.getContainer().getName(), pageSnapshotDir1.getContainer().getName()); assertEquals(dir1.getServiceClient().getEndpoint().toString(), pageSnapshotDir1.getServiceClient() .getEndpoint().toString()); assertEquals(pageSnapshot.getUri().toString(), pageSnapshotDir1.getUri().toString()); assertEquals(pageSnapshot.getParent().getPrefix(), pageSnapshotDir1.getParent().getPrefix()); assertEquals(blockSnapshot.getName(), blockSnapshotDir1.getName()); assertEquals(dir1.getContainer().getName(), blockSnapshotDir1.getContainer().getName()); assertEquals(dir1.getServiceClient().getEndpoint().toString(), blockSnapshotDir1.getServiceClient() .getEndpoint().toString()); assertEquals(blockSnapshot.getUri().toString(), blockSnapshotDir1.getUri().toString()); assertEquals(blockSnapshot.getParent().getPrefix(), blockSnapshotDir1.getParent().getPrefix());
@Test public void testLocationModeWithMissingUri() throws URISyntaxException, StorageException { CloudBlobClient client = TestHelper.createCloudBlobClient(); CloudBlobClient primaryOnlyClient = new CloudBlobClient(client.getEndpoint(), client.getCredentials()); CloudBlobContainer container = primaryOnlyClient.getContainerReference("nonexistingcontainer");
assertEquals(endpoint.getPrimaryUri(), client.getEndpoint());
@Test public void testCloudStorageAccountClientMethods() throws URISyntaxException { StorageCredentialsAccountAndKey cred = new StorageCredentialsAccountAndKey(ACCOUNT_NAME, ACCOUNT_KEY); CloudStorageAccount account = new CloudStorageAccount(cred, false); CloudBlobClient blob = account.createCloudBlobClient(); CloudQueueClient queue = account.createCloudQueueClient(); CloudTableClient table = account.createCloudTableClient(); CloudFileClient file = account.createCloudFileClient(); // check endpoints assertEquals("Blob endpoint doesn't match account", account.getBlobEndpoint(), blob.getEndpoint()); assertEquals("Queue endpoint doesn't match account", account.getQueueEndpoint(), queue.getEndpoint()); assertEquals("Table endpoint doesn't match account", account.getTableEndpoint(), table.getEndpoint()); assertEquals("File endpoint doesn't match account", account.getFileEndpoint(), file.getEndpoint()); // check storage uris assertEquals("Blob endpoint doesn't match account", account.getBlobStorageUri(), blob.getStorageUri()); assertEquals("Queue endpoint doesn't match account", account.getQueueStorageUri(), queue.getStorageUri()); assertEquals("Table endpoint doesn't match account", account.getTableStorageUri(), table.getStorageUri()); assertEquals("File endpoint doesn't match account", account.getFileStorageUri(), file.getStorageUri()); // check creds assertEquals("Blob creds don't match account", account.getCredentials(), blob.getCredentials()); assertEquals("Queue creds don't match account", account.getCredentials(), queue.getCredentials()); assertEquals("Table creds don't match account", account.getCredentials(), table.getCredentials()); assertEquals("File creds don't match account", account.getCredentials(), file.getCredentials()); }