Exemplo n.º 1
0
        /// <summary>Creates a new resolver, adds the given schema definitions and registers an exception schema if available.</summary>
        /// <param name="settings">The settings.</param>
        /// <param name="definitions">The definitions.</param>
        public static SwaggerToCSharpTypeResolver CreateWithDefinitions(CSharpGeneratorSettings settings, IDictionary <string, JsonSchema4> definitions)
        {
            var exceptionSchema = definitions.ContainsKey("Exception") ? definitions["Exception"] : null;

            var resolver = new SwaggerToCSharpTypeResolver(settings, exceptionSchema);

            resolver.AddSchemas(definitions
                                .Where(p => p.Value != exceptionSchema)
                                .ToDictionary(p => p.Key, p => p.Value));

            return(resolver);
        }
        internal SwaggerToCSharpGeneratorBase(SwaggerService service, SwaggerToCSharpGeneratorSettings settings)
        {
            _service  = service;
            _settings = settings;

            foreach (var definition in _service.Definitions.Where(p => string.IsNullOrEmpty(p.Value.TypeNameRaw)))
            {
                definition.Value.TypeNameRaw = definition.Key;
            }

            var exceptionSchema = _service.Definitions.ContainsKey("Exception") ? _service.Definitions["Exception"] : null;

            Resolver = new SwaggerToCSharpTypeResolver(settings.CSharpGeneratorSettings, exceptionSchema);
            Resolver.AddSchemas(service.Definitions.Where(p => p.Value != exceptionSchema).ToDictionary(p => p.Key, p => p.Value));
        }