public Exception AttemptAPIVersionSetConversion(CLICreatorArguments cliArguments) { try { YAMLReader yamlReader = new YAMLReader(); APITemplateVersionSet versionSet = yamlReader.ConvertYAMLFileToAPIVersionSet(cliArguments.apiVersionSetFile); return(null); } catch (Exception ex) { return(ex); } }
public async Task <APITemplate> CreateAPITemplateAsync(OpenApiDocument doc, CLICreatorArguments cliArguments) { YAMLReader yamlReader = new YAMLReader(); // create api schema with properties APITemplate apiSchema = new APITemplate() { name = doc.Info.Title, type = "Microsoft.ApiManagement/service/apis", apiVersion = "2018-06-01-preview", properties = new APITemplateProperties() { contentFormat = "swagger-json", contentValue = await CreateOpenAPISpecContentsAsync(cliArguments), subscriptionRequired = IsSubscriptionRequired(doc), protocols = CreateProtocols(doc), serviceUrl = doc.Servers[0].Url, subscriptionKeyParameterNames = CreateSubscriptionKeyParameterNames(doc), description = doc.Info.Description, displayName = doc.Info.Title, apiVersion = cliArguments.apiVersion ?? doc.Info.Version, apiRevision = cliArguments.apiRevision ?? "", apiVersionSetId = cliArguments.apiVersionSetId ?? "", path = cliArguments.path ?? "", apiRevisionDescription = cliArguments.apiRevisionDescription ?? "", apiVersionDescription = cliArguments.apiVersionDescription ?? "", apiVersionSet = cliArguments.apiVersionSetFile != null?yamlReader.ConvertYAMLFileToAPIVersionSet(cliArguments.apiVersionSetFile) : null, authenticationSettings = cliArguments.authenticationSettingsFile != null?yamlReader.ConvertYAMLFileToAuthenticationSettings(cliArguments.authenticationSettingsFile) : null, // assumptions type = "http", apiType = "http", wsdlSelector = null } }; // create resources List <APITemplateResource> resources = new List <APITemplateResource>(); SchemaTemplateCreator schemaCreator = new SchemaTemplateCreator(); List <SchemaTemplate> schemaTemplates = schemaCreator.CreateSchemaTemplates(doc); OperationTemplateCreator operationCreator = new OperationTemplateCreator(); List <OperationTemplate> operationTemplates = operationCreator.CreateOperationTemplates(doc); resources.AddRange(schemaTemplates); resources.AddRange(operationTemplates); apiSchema.resources = resources.ToArray(); return(apiSchema); }