public static void GenerateDpow( [QueueTrigger("dpowrequest")] XbimCloudModel blobInfo, [Blob("images/{ModelId}{Extension}", FileAccess.Read)] Stream input, [Blob("images/{ModelId}.json")] CloudBlockBlob outputCobieBlob) { if (input != null) { ConvertDpowToCobie(input, outputCobieBlob); outputCobieBlob.Properties.ContentType = ".json"; } }
// This function will get triggered/executed when a new message is written // on an Azure Queue called queue. //public static void ProcessQueueMessage([QueueTrigger("queue")] string message, TextWriter log) //{ // log.WriteLine(message); //} public static void GenerateModel( [QueueTrigger("modelrequest")] XbimCloudModel blobInfo, [Blob("images/{ModelId}{Extension}", FileAccess.Read)] Stream input, [Blob("images/{ModelId}.wexBIM")] CloudBlockBlob outputWexbimBlob, [Blob("images/{ModelId}.json")] CloudBlockBlob outputCobieBlob) { if (input != null) { ConvertIfcToWexbimAndCobie(input, outputWexbimBlob, outputCobieBlob, blobInfo.Extension); outputWexbimBlob.Properties.ContentType = ".wexBIM"; outputCobieBlob.Properties.ContentType = ".json"; } }
public async Task <ActionResult> UploadIFC(HttpPostedFileBase ifcFile) { if (ifcFile == null) { return(Json(new ModelStateResponse() { State = "ERROR", Message = "Failed to upload IFC model." }, JsonRequestBehavior.AllowGet)); } var cloudModel = new XbimCloudModel { Extension = Path.GetExtension(ifcFile.FileName) }; CloudBlockBlob modelBlob = null; if (ModelState.IsValid) { if (ifcFile.ContentLength != 0) { modelBlob = await UploadAndSaveBlobAsync(ifcFile, cloudModel.ModelId); } if (modelBlob != null) { var queueMessage = new CloudQueueMessage(JsonConvert.SerializeObject(cloudModel)); await _modelRequestQueue.AddMessageAsync(queueMessage); Trace.TraceInformation("Created queue message for ModelId {0}", cloudModel.ModelId); return(Json(new ModelStateResponse() { ModelName = cloudModel.ModelId, State = "UPLOADED", COBieName = cloudModel.ModelId + ".json", WexBIMName = cloudModel.ModelId + ".wexBIM" }, JsonRequestBehavior.AllowGet)); } } return(Json(new ModelStateResponse() { ModelName = ifcFile.FileName, State = "ERROR", Message = "Invalid model state" }, JsonRequestBehavior.AllowGet)); }