string IBlobStorageService.GetBlobUri(BlobStorageModel blobStorageModel) { var container = this.cloudBlobClient.GetContainerReference(blobStorageModel.StorageContainer); var blockBlob = container.GetBlockBlobReference(blobStorageModel.BlobName); return(blockBlob.Uri.AbsoluteUri); }
void IBlobStorageService.DeleteBlob(BlobStorageModel blobStorageModel) { var container = this.cloudBlobClient.GetContainerReference(blobStorageModel.StorageContainer); if (container.Exists()) { var blockBlob = container.GetBlockBlobReference(blobStorageModel.BlobName); blockBlob.DeleteIfExists(); } }
OrganizationModel IOrganizationService.GetOrganization() { var organization = this.dbContext.Organization.WhereActiveOrganization().FirstOrDefault(); var organizationModel = new OrganizationModelMapping().Map(organization); if (organizationModel != null && organization.OrganizationLogo != null) { var blobStorageModel = new BlobStorageModel { BlobName = organization.OrganizationLogo, StorageContainer = ApiConfiguration.BlobPublicContainer, }; organizationModel.OrganizationLogoUri = this.blobStorageService.GetBlobUri(blobStorageModel); } return(organizationModel); }
void IBlobStorageService.UploadBlob(BlobStorageModel blobStorageModel) { var container = this.cloudBlobClient.GetContainerReference(blobStorageModel.StorageContainer); if (container.CreateIfNotExists()) { if (blobStorageModel.IsPublicContainer) { container.SetPermissions(new BlobContainerPermissions { PublicAccess = BlobContainerPublicAccessType.Blob }); } } var blockBlob = container.GetBlockBlobReference(blobStorageModel.BlobName); blockBlob.Properties.ContentType = blobStorageModel.BlobType; blockBlob.UploadFromStream(blobStorageModel.Blob); }
void IBlobStorageService.RenameBlob(BlobStorageModel oldBlob, string newBlobName) { var container = this.cloudBlobClient.GetContainerReference(oldBlob.StorageContainer); var blockBlob = container.GetBlockBlobReference(oldBlob.BlobName); if (blockBlob.Exists()) { var newBlob = container.GetBlockBlobReference(newBlobName); newBlob.Properties.ContentType = blockBlob.Properties.ContentType; newBlob.StartCopy(blockBlob); blockBlob.Delete(); } else { throw new InvalidOperationException("Blob does not exist."); } }
ResponseModel IPiServerService.UpdatePiServer(PiServerModel model) { var data = this.dbContext.PiServer.WhereActivePiServer(f => f.PiServerID == model.PiServerID).FirstOrDefault(); if (data == null) { return(new ResponseModel { Message = "Pi Server does not exists or user does not have a permission.", Status_Code = (int)StatusCode.Error }); } else { if (!string.IsNullOrWhiteSpace(model.PiServerDesc)) { data.PiServerDesc = model.PiServerDesc; data.ModifiedBy = this.context.Current.UserId; data.ModifiedOn = DateTime.UtcNow; this.dbContext.SaveChanges(); } } if (model.RoomScheduleFile != null && !string.IsNullOrWhiteSpace(model.RoomScheduleFileType)) { var blobStorageModel = new BlobStorageModel { BlobName = ApiConfiguration.BlobPrefix + data.PiServerName + ApiConstant.CsvFileType, BlobType = model.RoomScheduleFileType, Blob = model.RoomScheduleFile, StorageContainer = ApiConfiguration.BlobPrivateContainer }; this.blobStorageService.UploadBlob(blobStorageModel); } return(new ResponseModel { Message = "Pi Server details Updated", Status_Code = (int)StatusCode.Ok }); }
ResponseModel IOrganizationService.AddOrganization(OrganizationModel model) { var organization = this.dbContext.Organization.FirstOrDefault(); var responseMessage = string.Empty; if (organization != null) { if (!string.IsNullOrWhiteSpace(model.OrganizationName)) { organization.OrganizationName = model.OrganizationName; } if (!string.IsNullOrWhiteSpace(model.OrganizationDesc)) { organization.OrganizationDesc = model.OrganizationDesc; } if (!string.IsNullOrWhiteSpace(model.OrganizationAddress)) { organization.OrganizationAddress = model.OrganizationAddress; } if (!string.IsNullOrWhiteSpace(model.OrganizationLogoName)) { organization.OrganizationLogo = model.OrganizationLogoName; } organization.ModifiedBy = this.context.Current.UserId; organization.ModifiedOn = DateTime.UtcNow; responseMessage = "Organization Updated successfully."; } else { if (string.IsNullOrWhiteSpace(model.OrganizationName)) { return(new ResponseModel { Message = "Organization name required to create new organization", Status_Code = (int)StatusCode.Error }); } organization = new Organization(); organization.OrganizationName = model.OrganizationName; organization.OrganizationDesc = model.OrganizationDesc; organization.OrganizationAddress = model.OrganizationAddress; organization.OrganizationLogo = model.OrganizationLogoName; organization.CreatedBy = this.context.Current.UserId; organization.CreatedOn = DateTime.UtcNow; organization.ModifiedBy = this.context.Current.UserId; organization.ModifiedOn = DateTime.UtcNow; organization.IsActive = true; organization.IsDeleted = false; this.dbContext.Organization.Add(organization); responseMessage = "Organization added successfully."; } this.dbContext.SaveChanges(); if (model.OrganizationLogo != null && model.OrganizationLogoContentType != null && model.OrganizationLogoName != null) { var blobStorageModel = new BlobStorageModel { BlobName = model.OrganizationLogoName, BlobType = model.OrganizationLogoContentType, Blob = model.OrganizationLogo, StorageContainer = ApiConfiguration.BlobPublicContainer, IsPublicContainer = true }; this.blobStorageService.UploadBlob(blobStorageModel); } return(new ResponseModel { Message = responseMessage, Status_Code = (int)StatusCode.Ok }); }