in SamplesV2/UntarAzureFilesWithAzureFunction/src/ExtractFunction/DecompressFile.cs [18:42]
public static async Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req,
ILogger log)
{
dynamic data = JsonConvert.DeserializeObject(await new StreamReader(req.Body).ReadToEndAsync());
string inputFileName = data.fileName;
log.LogInformation("Request received to extract file {inputFileName}.", inputFileName);
CloudFileClient fileClient = LoadFileClient();
CloudFileShare sourceFileShare =
fileClient.GetShareReference(Environment.GetEnvironmentVariable("SourceFileShareName"));
CloudFileDirectory rootDirectory = sourceFileShare.GetRootDirectoryReference();
CloudFile sourceFile = rootDirectory.GetFileReference(inputFileName);
if (!await sourceFile.ExistsAsync())
{
return new NotFoundObjectResult("Source file does not exist.");
}
CloudFileDirectory destinationDirectory = await LoadDestinationDirectory(sourceFile, rootDirectory);
dynamic returnObject = await ExtractionManager.ExtractAndUploadFiles(log, sourceFile, destinationDirectory);
return new OkObjectResult(returnObject);
}