public List <LogKeyValueItem> Generate()
        {
            var logItems = new List <LogKeyValueItem>();

            logItems.Add(ValidateVersioning());
            if (logItems.Any(x => x.LogCategory == LogCategoryType.Error))
            {
                return(logItems);
            }

            logItems.AddRange(ScaffoldSrc());
            if (projectOptions.PathForTestGenerate != null)
            {
                logItems.AddRange(ScaffoldTest());
            }

            CopyApiSpecification();

            var operationSchemaMappings = OpenApiOperationSchemaMapHelper.CollectMappings(projectOptions.Document);

            logItems.AddRange(GenerateContracts(operationSchemaMappings));
            logItems.AddRange(GenerateEndpoints(operationSchemaMappings));
            logItems.AddRange(PerformCleanup(logItems));
            return(logItems);
        }
Exemplo n.º 2
0
        public ApiOperationSchemaMap(string schemaKey, SchemaMapLocatedAreaType locatedArea, string path, OperationType operationType, string?parentSchemaKey)
        {
            this.SchemaKey       = schemaKey;
            this.LocatedArea     = locatedArea;
            this.Path            = path;
            this.OperationType   = operationType;
            this.ParentSchemaKey = parentSchemaKey;

            this.SegmentName = OpenApiOperationSchemaMapHelper.GetSegmentName(this.Path);
        }
        public List <LogKeyValueItem> Generate()
        {
            var logItems = new List <LogKeyValueItem>();

            logItems.AddRange(ScaffoldSrc());

            var operationSchemaMappings = OpenApiOperationSchemaMapHelper.CollectMappings(projectOptions.Document);

            logItems.AddRange(GenerateContracts(operationSchemaMappings));
            logItems.AddRange(GenerateEndpoints(operationSchemaMappings));
            logItems.AddRange(PerformCleanup(logItems));
            return(logItems);
        }
Exemplo n.º 4
0
    protected override ISyntaxCodeGenerator CreateGenerator(
        ApiProjectOptions apiProject)
    {
        ArgumentNullException.ThrowIfNull(apiProject);

        // Verify spec file supported for unit test
        Assert.Single(apiProject.BasePathSegmentNames);
        var segmentName             = apiProject.BasePathSegmentNames.First();
        var operationSchemaMappings = OpenApiOperationSchemaMapHelper.CollectMappings(apiProject.Document);

        // Construct SUT
        return(new SyntaxGeneratorEndpointControllers(NullLogger.Instance, apiProject, operationSchemaMappings, segmentName));
    }
Exemplo n.º 5
0
    public bool Generate()
    {
        ScaffoldSrc();

        var operationSchemaMappings = OpenApiOperationSchemaMapHelper.CollectMappings(projectOptions.Document);

        GenerateContracts(operationSchemaMappings);
        if (!this.ExcludeEndpointGeneration)
        {
            GenerateEndpoints(operationSchemaMappings);
        }

        PerformCleanup();
        return(true);
    }
Exemplo n.º 6
0
    public bool Generate()
    {
        logger.LogInformation($"{AppEmojisConstants.AreaGenerateCode} Working on server api generation ({projectOptions.ProjectName})");

        var isVersionValid = ValidateVersioning();

        if (!isVersionValid)
        {
            return(false);
        }

        ScaffoldSrc();

        CopyApiSpecification();

        var operationSchemaMappings = OpenApiOperationSchemaMapHelper.CollectMappings(projectOptions.Document);

        GenerateContracts(operationSchemaMappings);
        GenerateEndpoints(operationSchemaMappings);
        PerformCleanup();

        return(true);
    }