Exemplo n.º 1
0
        public IHttpActionResult Put(string id)
        {
            // Create a retrieve operation that takes a music entity.
            TableOperation getOperation = TableOperation.Retrieve <SampleEntity>(partitionTitle, id);

            // Execute the retrieve operation.
            TableResult getOperationResult = table.Execute(getOperation);

            // Construct response including a new DTO as apprporiatte
            if (getOperationResult.Result == null)
            {
                return(NotFound());
            }
            else
            {
                // Get the operation results
                SampleEntity sampleEntity = (SampleEntity)getOperationResult.Result;

                //Delete existing Blobs
                deleteOldBlobs(sampleEntity);

                //Assign the names of the blobs to Mp3BlobName
                String mp3BlobName = string.Format("{0}{1}", Guid.NewGuid(), ".mp3");

                //Get the mp3Blob Reference
                var mp3Blob = blobStorageService.getCloudBlobContainer().GetBlockBlobReference("audio/" + mp3BlobName);

                //The Request to be excuted and displayed
                var request = HttpContext.Current.Request;

                //Set the content type
                mp3Blob.Properties.ContentType = "audio/mpeg3";

                //Executing the upload
                mp3Blob.UploadFromStream(request.InputStream);

                //Getting the url
                var baseUrl = Request.RequestUri.GetLeftPart(UriPartial.Authority);

                //Assigning the Url by the id
                String sampleURL = baseUrl.ToString() + "/api/data/" + id;


                sampleEntity.Mp3Blob       = mp3BlobName;
                sampleEntity.SampleMp3Url  = sampleURL;
                sampleEntity.SampleMp3Blob = null;
                sampleEntity.SampleDate    = DateTime.Now;

                // Create the Update operation
                var updateOperation = TableOperation.InsertOrReplace(sampleEntity);
                // Execute the Update operation.
                table.Execute(updateOperation);

                var queueMessageSample = new SampleEntity(partitionTitle, id);
                cloudQueueService.getCloudQueue().AddMessage(new CloudQueueMessage(JsonConvert.SerializeObject(queueMessageSample)));


                return(StatusCode(HttpStatusCode.NoContent));
            }
        }
Exemplo n.º 2
0
        public IHttpActionResult Put(string id)
        {
            // Create a retrieve operation that takes a music entity.
            TableOperation retrieveOperation = TableOperation.Retrieve <VideoEntity>(partitionName, id);

            // Execute the retrieve operation.
            tableClient = storageAccount.CreateCloudTableClient();
            table       = tableClient.GetTableReference("Videos");
            TableResult retrievedResult = table.Execute(retrieveOperation);

            // Construct response including a new DTO as apprporiatte
            if (retrievedResult.Result == null)
            {
                return(NotFound());
            }
            else
            {
                VideoEntity sampleEntity = (VideoEntity)retrievedResult.Result;
                deleteOldBlob(sampleEntity);

                String mp4BlobName = string.Format("{0}{1}", Guid.NewGuid(), ".mp4");

                var mp4Blob = BlobStorageService.getCloudBlobContainer().GetBlockBlobReference("origin/" + mp4BlobName);
                var request = HttpContext.Current.Request;
                mp4Blob.Properties.ContentType = "video/mp4";

                mp4Blob.UploadFromStream(request.InputStream);
                mp4Blob.SetMetadata();

                var    baseUrl   = Request.RequestUri.GetLeftPart(UriPartial.Authority);
                String sampleURL = baseUrl.ToString() + "/api/data/" + id;
                sampleEntity.Mp4Blob       = mp4BlobName;
                sampleEntity.SampleMp4URL  = sampleURL;
                sampleEntity.SampleMp4Blob = null;

                TableOperation updateOperation = TableOperation.InsertOrReplace(sampleEntity);
                // Execute the insert operation.
                table.Execute(updateOperation);

                var queueMessageSample = new VideoEntity(partitionName, id);
                _queueStorageService.getCloudQueue().AddMessage(new CloudQueueMessage(JsonConvert.SerializeObject(queueMessageSample)));

                return(StatusCode(HttpStatusCode.NoContent));
            }
        }
Exemplo n.º 3
0
 private CloudQueue getSoundbiteMakerQueue()
 {
     return(_queueStorageService.getCloudQueue());
 }
Exemplo n.º 4
0
 private CloudQueue getAudioMakerQueue()
 {
     return(_queueStorageService.getCloudQueue());
 }
 /// <summary>
 /// Returns an instance of the sample queue
 /// </summary>
 /// <returns></returns>
 protected CloudQueue getsamplegeneratorQueue()
 {
     return(_queueStorageService.getCloudQueue());
 }