public ConvertDataRequest( string inputData, ConversionInputDataType inputDataType, string registryServer, bool isDefaultTemplateReference, string templateCollectionReference, string rootTemplate) { EnsureArg.IsNotNullOrEmpty(inputData, nameof(inputData)); EnsureArg.IsNotNull <ConversionInputDataType>(inputDataType, nameof(inputDataType)); EnsureArg.IsNotNull(registryServer, nameof(registryServer)); EnsureArg.IsNotNull(templateCollectionReference, nameof(templateCollectionReference)); EnsureArg.IsNotNullOrEmpty(rootTemplate, nameof(rootTemplate)); InputData = inputData; InputDataType = inputDataType; RegistryServer = registryServer; IsDefaultTemplateReference = isDefaultTemplateReference; TemplateCollectionReference = templateCollectionReference; RootTemplate = rootTemplate; }
public async Task <IActionResult> ConvertData([FromBody] Parameters inputParams) { CheckIfConvertDataIsEnabled(); ValidateParams(inputParams); string inputData = ReadStringParameter(inputParams, ConvertDataProperties.InputData); string templateCollectionReference = ReadStringParameter(inputParams, ConvertDataProperties.TemplateCollectionReference); string rootTemplate = ReadStringParameter(inputParams, ConvertDataProperties.RootTemplate); ConversionInputDataType inputDataType = ReadEnumParameter <ConversionInputDataType>(inputParams, ConvertDataProperties.InputDataType); // Validate template reference format. if (!ImageInfo.IsValidImageReference(templateCollectionReference)) { _logger.LogInformation("Templates collection reference format is invalid."); throw new RequestNotValidException(string.Format(Resources.InvalidTemplateCollectionReference, templateCollectionReference)); } // Validate template registry has been configured. bool isDefaultTemplateReference = IsDefaultTemplateReference(templateCollectionReference); string registryServer = ExtractRegistryServer(templateCollectionReference); if (!isDefaultTemplateReference) { CheckIfRegistryIsConfigured(registryServer); } var convertDataRequest = new ConvertDataRequest(inputData, inputDataType, registryServer, isDefaultTemplateReference, templateCollectionReference, rootTemplate); ConvertDataResponse response = await _mediator.Send(convertDataRequest, cancellationToken : default); return(new ContentResult { Content = response.Resource, ContentType = "text/plain", }); }