예제 #1
0
 public DbBlobContainer(DbStorageAccount account, Microsoft.WindowsAzure.DevelopmentStorage.Store.BlobContainer container)
 {
     StorageStampHelpers.CheckContainerName(container.ContainerName, Microsoft.Cis.Services.Nephos.Common.Storage.ContainerType.BlobContainer, false);
     this.StorageManager  = account.StorageManager;
     this._container      = container;
     this.OperationStatus = account.OperationStatus;
     this.Account         = account;
 }
예제 #2
0
 internal DbTableContainer(DbStorageAccount account, Microsoft.WindowsAzure.DevelopmentStorage.Store.TableContainer container)
 {
     StorageStampHelpers.CheckContainerName(container.CasePreservedTableName, Microsoft.Cis.Services.Nephos.Common.Storage.ContainerType.TableContainer, false);
     this.StorageManager  = account.StorageManager;
     this._tableContainer = container;
     this.OperationStatus = account.OperationStatus;
     this.Account         = account;
 }
예제 #3
0
 internal static Microsoft.WindowsAzure.DevelopmentStorage.Store.BlobContainer LoadBlobContainer(DevelopmentStorageDbDataContext context, Microsoft.WindowsAzure.DevelopmentStorage.Store.BlobContainer container)
 {
     StorageStampHelpers.CheckContainerName(container.ContainerName, Microsoft.Cis.Services.Nephos.Common.Storage.ContainerType.BlobContainer, false);
     Microsoft.WindowsAzure.DevelopmentStorage.Store.BlobContainer blobContainer = (
         from c in context.BlobContainers
         where (c.AccountName == container.AccountName) && (c.ContainerName == container.ContainerName)
         select c).FirstOrDefault <Microsoft.WindowsAzure.DevelopmentStorage.Store.BlobContainer>();
     if (blobContainer == null)
     {
         throw new ContainerNotFoundException();
     }
     return(blobContainer);
 }
예제 #4
0
        private IEnumerator <IAsyncResult> CreateContainerImpl(DateTime?expiryTime, byte[] serviceMetadata, byte[] applicationMetadata, AsyncIteratorContext <NoResults> context)
        {
            IStringDataEventStream verboseDebug = Logger <INormalAndDebugLogger> .Instance.VerboseDebug;

            object[] objArray = new object[] { expiryTime, serviceMetadata, applicationMetadata, this.Timeout };
            verboseDebug.Log("CreateContainerImpl({0},{1},{2},{3})", objArray);
            IAsyncResult asyncResult = this.StorageManager.AsyncProcessor.BeginExecute((TimeSpan param0) => {
                StorageStampHelpers.CheckContainerName(this._container.ContainerName, Microsoft.Cis.Services.Nephos.Common.Storage.ContainerType.BlobContainer, false);
                using (DevelopmentStorageDbDataContext dbContext = DevelopmentStorageDbDataContext.GetDbContext())
                {
                    this._container.ServiceMetadata = serviceMetadata;
                    this._container.Metadata        = applicationMetadata;
                    dbContext.BlobContainers.InsertOnSubmit(this._container);
                    dbContext.SubmitChanges();
                }
            }, this.Timeout, context.GetResumeCallback(), context.GetResumeState("DbBlobContainer.CreateContainerImpl"));

            yield return(asyncResult);

            this.StorageManager.AsyncProcessor.EndExecute(asyncResult);
        }