forked from loafle/openapi-generator-original
* [core] Normalizing vendor extension naming According to [OAS 2.0][1] and [OAS 3.0][2] Specifications: > Allows extensions to the OpenAPI Schema. The field name MUST begin with x-, > for example, x-internal-id. The value can be null, a primitive, an array or an object. > Can have any valid JSON format value. This commit attempts to define a [clear identifier design format][3] of maintaining lower-kebab casing and following the x- prefix defined by OAI Specification. Following a convention that matches that used by others (see [autorest][4]), we will remove any confusion about naming strategies for template authors and customizers. Following the lower-kebab convention will allow us to convert from camelCase and missing prefixes to the desired format. For example, these conversions are simple to make for template consistency: * customValue => x-custom-value * x-customValue => x-custom-value * x-custom-value => x-custom-value This convention also allows us to define a single standard for use across all generators. This means no occurrence of x-operationId in one generator and x-operation-id in another. [1]: https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#patterned-objects [2]: https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#specificationExtensions [3]: https://tools.ietf.org/html/draft-wilde-registries-01#section-3.4 [4]: https://github.com/Azure/autorest/tree/master/docs/extensions * Incorporate feedback to avoid race/blocking in OnceLogger * Remove unnecessary additional log config * Add tests,comments for OnceLogger * Test caffeine cache with FakeTicker